サードパーティから JSON を受け取り、条件付きで数量を解析する必要があります... 項目の使用のタイプに応じて、「ReplacementCount」または「ServiceCount」は「数量」になり、その他を削除または無視する必要があります. 「lineitemfieldname」の両方が > 0 になることはありません。常にどちらかになります。
私は最初の if ステートメントに取り組んでいますが、2 番目には決して... JSON オブジェクト/値の if ステートメントを正しく処理していないことは確かですが、解決方法がわかりません。
サンプルの JSON は次のとおりです。
{"recordtype":"salesorder","item":
[{"InventoryManagementKey":"20001","InvoiceDay":"9/10/2015","ReplacementAmount":0.0000,"ReplacementCount":500,"ServiceAmount":0.0000,"ServiceCount":0}]}
JSON を処理するサーバー側スクリプトのフラグメントを次に示します。
for(var lineitemfieldname in lineitemobject)
{
var lineitemfieldvalue = lineitemobject[lineitemfieldname];
if(lineitemfieldname == 'ServiceCount' && lineitemfieldvalue != 0)
{
if(lineitemfieldname == 'InventoryManagementKey')
{
lineitemfieldname = 'item';
}
if(lineitemfieldname == 'ServiceCount')
{
lineitemfieldname = 'quantity';
}
delete 'ServiceAmount';
delete 'ReplacementAmount';
delete 'ReplacementCount';
delete 'invoiceDay';
record.setCurrentLineItemValue('item',lineitemfieldname,lineitemfieldvalue);
}
}