NetSuite/SuiteScript 2.0 - 如何将新客户分配给支持案例

NetSuite/SuiteScript 2.0 - How to Assign New Customer to Support Case

我有一个 AfterSubmit UserEventScript(支持案例)可以正确执行以下操作:

  1. 加载关联的自定义记录类型
  2. 使用该自定义记录创建具有地址的新客户
  3. 将新客户保存到数据库

            newCustomer.commitLine({
                sublistId: 'addressbook'
            });
    
            newCustomer.save({
                enableSourcing: true,
                ignoreMandatoryFields: false
            });
    

关于我的问题,在支持案例中用这个新创建的客户替换旧客户的后续步骤是什么?我尝试了以下代码,但它记录了一个 "undefined" 值。

          recordSubmitted.setValue({
            fieldId: "companyid",
            value: newCustomer.companyId            
          }); 

保存函数返回新客户记录的内部ID。您要分配给的字段具有脚本 ID 'company'。所以:

    var custId = newCustomer.save({
        enableSourcing: true,
        ignoreMandatoryFields: false
    });

   recordSubmitted.setValue({
        fieldId: 'company',
        value: custId            
   }); 

通常,如果您选择不同的客户来分配个案,您应该考虑该不同的客户是否已经存在,这样您可能已经加载了其他客户或通过搜索找到了它。

从加载和验证:

   recordSubmitted.setValue({
        fieldId: 'company',
        value: differentCustomer.getValue({fieldId:'internalid'})            
   }); 

通过搜索您可能会直接获得 ID:

var custId = null;
mySearch.run().each(function(res){
    if(test(res)){
       custId = res.id;
       return false;
    }
    return true;
});

if(custId) recordSubmitted.setValue({
    fieldId: 'company',
    value: custId            
});