メインコンテンツにスキップ

NetSDLジョブの失敗を防止するための大規模エクスポートデータ管理

対応者:Ask Ada

日本では、SFCC Business Manager が 5,000 行を超える大規模な注文(SFCC の api.dw.io.XMLStreamReader.getXMLObject().maxElements 上限 5,000 要素を超過)に起因する問題に直面しています。これらの過大な注文は、当該注文だけでなく、他の正常な注文の NetSDL へのエクスポートも妨げる大きな障害となります。本ガイドでは、テックチームがこの問題を解消し、エクスポートの停滞を解消するために取るべき手順を解説します。

前提条件

1. Demandware with Ease - Chrome Web Store

この拡張機能は Salesforce Commerce Cloud B2C(Demandware)向けのもので、WebDAV ファイル操作を可能にし、再処理済みファイルのアップロードを行えます。この拡張機能がないと、ファイルを閲覧することはできますが、編集はできません。

WebDav ファイルアクセスのインストール方法とキー生成の詳細については、こちらをクリックしてください。

2. Notepad ++

Notepad++では、「Find All in Current Document」機能を使ってXML内の各<order>要素を簡単に特定し、それぞれの注文が何行にわたっているかを確認できます。

ダウンロードリンクにアクセスするには、こちらをクリックしてください

手順

1. SFCC Business Manager の本番インスタンスで、管理 > オペレーション > ジョブ に移動し、[Export Placed Orders] をクリックします。大規模な注文が処理をブロックしてジョブが繰り返し失敗している状況で、システムが3分ごとに追加の注文をエクスポートしようとするのを防ぐため、Enabled オプションのチェックを外してこの機能を無効化してください。

2. Go to 管理 >開発セットアップ > , click on フォルダーブラウザー

3. 以下の手順で、[Impex > src > order > ToysRUs_JP] に移動し、[tmp] をクリックします。

4. XML ファイルの一覧が表示されるので、最新の XML ファイルをダウンロードしてください。

5. Notepad ++ を使用して XML ファイルを開きます。
Ctrl+F を押して [order order-no] を検索し、[Find All in Current Document] をクリックします。

6. 下部ウィンドウで、各<order>要素に対応するすべての行番号を確認します。

7. これらの<order>要素について、行番号が5000行を超えているものを特定します。
このデータをExcelのワークシートにコピーして分析してください。
Excelの[検索と置換]機能と[区切り位置]機能を使用し、各注文番号の行数差を計算する数式を作成します。

フォーマット前

フォーマット後

8. 注文番号4700975636が9909行で構成されていることを特定したので、次のステップに進むことができます。

9. SFCC Business Manager の本番環境にログインし, マーチャントツール > 注文 > 注文 へ移動して、問題のある注文を検索・特定してください。

10. 属性タブの [次の日付以降にエクスポート] にある値をすべてクリアします。
[適用] をクリックして変更を保存します。
また、この注文番号については日本チームに別途対応するよう連絡してください。

11. XML ファイルに戻り、<order order-no: 4700975636> 要素全体(開始タグから閉じタグ </order> まで)を削除し、ドキュメントを保存します。

12. 管理 > サイトの開発 > 開発セットアップ に移動し、[WebDAV URLをコピー]をクリックします。

13.

(日本語インターフェースはありません)

別のブラウザタブを開き、URLを貼り付けます。
既存のファイルが他にあればすべて削除してください。
次に、先ほど更新した再処理済みのXMLファイルをドロップし、[保存]をクリックして続行します。

14. Impex > src > order > ToysRUs_JP > orders に移動し、既存の XML ファイルを削除してください。

15. 管理 > オペレーション > ジョブ に移動し、[JP - Process Exported Orders] をクリックして、[ただちに実行] をクリックします。

16. Impex > src > order > ToysRUs_JP > tmp に移動し、アップロードしたファイルがこの場所から削除されていることを確認してください。

18. 管理 > オペレーション > ジョブ に移動し、[JP - Generate Export Order XML] をクリックして、[ただちに実行] をクリックします。

18. 日本のITチームに、注文がNetSDLに正常にエクスポートされたことを確認してください。

19. ジョブ「Export Placed Orders」の一時停止中に蓄積されたバックオーダーを処理する必要があります。
Impex > src > order > ToysRUs_JP > orders に移動し、最新の XML ファイルをダウンロードしてください。
続いて、このフォルダ内にあるファイルをダウンロードしてください。

20. XMLファイルのサイズを確認してください。1MBを超えている場合は、1MB未満となるように複数の小さなXMLファイルに分割してください。たとえば、ファイルサイズが5.2MBの場合は、6つのファイルに分割します。

21. Impex > src > order > ToysRUs_JP > tmp に移動し、各ファイルを個別にアップロードしてください。アップロードごとにジョブ「JP - Process Exported Orders」を実行します。
たとえばファイルが3つある場合は、1つ目をアップロードしてジョブを実行し、残りのファイルについても同様の手順を繰り返してください。

22. 「JP - Generate Export Order XML」ジョブを実行してください。

23. これらの注文がNetSDLに正常にエクスポートされたことを、日本のITチームに確認してください。

24. 注文が正常にエクスポートできたことを確認したら、ジョブ「Export Placed Orders」を再度有効化してください。

こちらの回答で解決しましたか?