【问题标题】:Convert non inventory item to inventory item via suitescript通过suitescript将非库存项目转换为库存项目
【发布时间】:2016-03-28 10:07:54
【问题描述】:

我想使用套件脚本将一些非库存物品转换为库存物品。

我知道项目详细信息页面上有转换为库存按钮,但我不想使用此按钮。我有超过 5000 多个非库存项目需要更改为库存,所以我不想重复 5000 多次。

所以我想构建脚本来自动执行此操作。

期待很快收到您的来信。最好的尊重

【问题讨论】:

    标签: javascript netsuite suitescript


    【解决方案1】:

    好吧,既然这是一个通用的问题,您可以编写一些 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。获得映射后,您可以为要转换的每个产品调用此函数。

    【讨论】:

    • 这实际上不会转换您的项目,它只会创建一个副本作为库存项目。因此,任何先前与非库存项目的交易都不会在新库存项目的历史记录中进行跟踪。
    • 回应并补充 Eric 的观点。直接转换是不可能的,因为非库存项目和库存项目在 NetSuite 中是不同的概念。如果您确实创建了新的库存项目,您还可以返回并(使用脚本)编辑以前的交易以创建库存历史记录。
    猜你喜欢
    • 1970-01-01
    • 2012-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多