我在销售订单上有一个自定义的“通讯簿”字段,用于货运单,但是我无法将完整的地址提供给NetSuite中的文本字段

时间:2019-06-10 19:00:19

标签: javascript netsuite suitescript2.0 clientscript

我们经常需要在我们的销售订单上添加第三个地址,以指示将送货单发送至何处。为此,我创建了两个自定义字段custbody_vcc_3_p_b_a和custbody_vcc_xtra_add_txt。

第一个字段是与通讯录绑定的列表/记录类型。第二个是文本区域。

我需要根据实体过滤第一个字段,然后将所选通讯录记录的完整地址填充到文本区域字段中。

地址簿字段中的“采购和过滤”选项卡不好,它不允许我对实体进行过滤,因此我需要以某种方式使用脚本进行过滤。

对于采购,NetSuite给我一条错误消息,指示我的地址簿字段与getSubrecord函数不兼容。

/**
 *@NApiVersion 2.x
 *@NScriptType ClientScript
 */
define(['N/record'],
 function(record) {
   function fieldChanged(context) {
     var subrec = currentRecord.getSubrecord({
              fieldId: 'custbody_vcc_3_p_b_a' //address book field
});

var address = subrec.getValue({
    fieldId: 'address' //I've also tried addrtext
});

if (recordfieldname === 'custbody_vcc_3_p_b_a') 

currentRecord.setValue({
    fieldId: 'custbody_vcc_xtra_add_txt',
    value: address
});
};

return {

 fieldChanged: fieldChanged,

 };
 });

错误是SSS_INVALID_FIELD_ON_SUBRECORD_OPERATION。当我将脚本作为1.0 API尝试作为用户事件脚本使用时,错误是相似的,但更为明显。

1 个答案:

答案 0 :(得分:0)

那么您想将在custbody_vcc_3_p_b_a中选择的地址的文本复制到您的文本区域(custbody_vcc_xtra_add_txt)中吗?

尝试

var address = subrec.getValue({
    fieldId: 'shipaddress' 
});