オプション
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
09-20-2022 10:52 PM
連投で申し訳ありません。
以下の2パターンの実装方式を検討しました。
【実現方法①】
要求アイテム(sc_req_item)独自のコピーUIアクションを作成する
<スクリプトの内容>
・「GlideappCalculationHelper」で既存の要求に要求アイテムを追加
<コピー前>
要求A
┗要求アイテム① ← コピー対象
┗要求アイテム②
┗要求アイテム③
<コピー後>
要求A
┗要求アイテム① ← コピー対象
┗要求アイテム②
┗要求アイテム③
┗要求アイテム④ ※要求アイテム①のコピー
================================================================
【実現方法②】
要求(sc_request)のコピーUIアクションを活用する
<スクリプトの内容>
・「GlideappScriptHelper」で要求と要求アイテムをコピー
・コピーして作成された要求アイテムの中で不要なものを削除
<コピー前>
要求A
┗要求アイテム① ← コピー対象
┗要求アイテム②
┗要求アイテム③
<コピー後>
要求B
┗要求アイテム④ ※要求アイテム①のコピー
┗要求アイテム⑤ ←削除
┗要求アイテム⑥ ←削除
実現方法①の方がデメリットが少ないと判断し、動作確認しましたがコピーされない状況です。
システムログにもエラーメッセージがでておらず、どこが悪いかお分かりでしたらご教示いただけますと幸いです。
var catItemId = current.sys_id;
var requestId = current.request;
var helper = new GlideappCalculationHelper();
try {
helper.addItemToExistingRequest(requestId, catItemId, "1");
gs.addInfoMessage(gs.getMessage('Request copied successfully'));
} catch (e) {
var catalogExceptionUtils = new CatalogExceptionUtils();
if(catalogExceptionUtils.isCartException(e)) {
gs.addErrorMessage(e.getMessage());
}
}