0

ディストリビューターの製品、価格、在庫状況の外部フィードから NetSuite の在庫アイテム レコードを更新する SuiteApp があります。

多通貨ベンダー機能が有効になっているサイトに遭遇するまで、これは完全に機能します。

この機能を有効にすると、'itemvendor' リストの 'purchaseprice' フィールドを設定しても、購入価格が更新されなくなります (ただし、エラーは返されません)。

setLineItemValue() を使用し、selectLineItem()、setCurrentLineItemValue()、commitLineItem() を purchaseprice フィールドと vendorprices フィールドの両方で使用しようとしましたが、これを機能させることはできません。

複数通貨ベンダー機能が有効になっている場合、既存の在庫アイテム レコードのアイテム ベンダー ラインのベンダー購入価格をどのように更新する必要がありますか?

私たちのコード

        var inventoryItem = nlapiLoadRecord('inventoryitem', 109430);
        inventoryItem.selectLineItem('itemvendor', 1);      
        inventoryItem.setCurrentLineItemValue('itemvendor', 'purchaseprice',10.99);
        inventoryItem.commitLineItem('itemvendor');
        nlapiSubmitRecord(inventoryItem);

ありがとう、

4

1 に答える 1

2

簡単な解決策を見つけました。最初にベンダー エントリ情報を削除し、新しいコストでエントリを再度挿入します。

    var inventoryItem = nlapiLoadRecord('inventoryitem', 109430);
    inventoryItem.removeLineItem('itemvendor', 1);

    inventoryItem.setLineItemValue('itemvendor', 'vendor', 1, 976);
    inventoryItem.setLineItemValue('itemvendor', 'preferredvendor', 1, 'T');
    inventoryItem.setLineItemValue('itemvendor', 'vendorcode', 1, 'PL244 Black');
    inventoryItem.setLineItemValue('itemvendor', 'purchaseprice', 1, 11.99);

    nlapiSubmitRecord(inventoryItem);
于 2015-09-18T23:18:49.977 に答える