これは、このような一般的な質問ですので、さて、あなたはあなたのための仕事をするために、いくつかの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が表示されます。マッピングを取得したら、変換する各製品に対してこの関数を呼び出すことができます。
出典
2016-03-28 02:07:54
2ps
これは実際にあなたのアイテムを変換しないだろう、それだけでインベントリ項目としてコピーを作成します。したがって、非在庫品目との以前の取引は、新しい在庫品目の履歴内で追跡されません。 – erictgrubaugh
Ericのポイントにエコーして追加します。非インベントリアイテムとインベントリアイテムはNetSuiteでは異なる概念なので、直接変換することは不可能です。新しい在庫アイテムを作成する場合は、前のトランザクションに戻って編集(スクリプトを使用)して在庫履歴を作成することもできます。 – TonyH