2016-03-28 14 views
0

suitscriptsを使用して非在庫アイテムを在庫アイテムに変換したいと思います。suitscriptで非在庫アイテムを在庫アイテムに変換

商品詳細ページの在庫に変換ボタンがありますが、このボタンを使用したくないことがわかります。私は5000以上の非在庫アイテムを在庫に変更する必要があるので、5000回以上繰り返すことは望ましくありません。

ですから、私はこのアクションを自動化するスクリプトを作りたいと思います。

すぐにあなたからのご意見をお待ちしております。ベストに関しては

答えて

0

これは、このような一般的な質問ですので、さて、あなたはあなたのための仕事をするために、いくつかのSuiteScriptを書くことができます。しかし、あなたが何をしていても、特にあなたがカスタムフィールドを持っている場合は、自分自身でフィールドマッピングを行う必要があります。

function transformItem(internalId) { 
    var source = nlapiLoadRecord('noninventoryitem', internalId); 
    var destination = nlapiCreateRecord('inventoryitem'); 
    var MAPPING = { 
     'itemid': 'itemid', 
     . . . 
    }; 
    Object.keys(MAPPING).map(function (from_field) { 
     var to_field = MAPPING[from_field]; 
     destination.setFieldValue(to_field, source.getFieldValue(from_field)); 
     return null; 
    }); 
    nlapiSubmitRecord(destination); 
} 

利用可能な非インベントリ項目フィールドのリストhereが表示されます。マッピングを取得したら、変換する各製品に対してこの関数を呼び出すことができます。

+1

これは実際にあなたのアイテムを変換しないだろう、それだけでインベントリ項目としてコピーを作成します。したがって、非在庫品目との以前の取引は、新しい在庫品目の履歴内で追跡されません。 – erictgrubaugh

+0

Ericのポイントにエコーして追加します。非インベントリアイテムとインベントリアイテムはNetSuiteでは異なる概念なので、直接変換することは不可能です。新しい在庫アイテムを作成する場合は、前のトランザクションに戻って編集(スクリプトを使用)して在庫履歴を作成することもできます。 – TonyH

関連する問題