无法通过内部ID找到特定客户的特定地址

时间:2016-11-29 18:37:46

标签: netsuite suitescript

我试图通过特定客户的内部ID找到特定地址。目前,我正在尝试提取地址1'和'地址2'列。

function getAddrById(addressid,invcustomerid) {
  try {
    var filters = new Array();
    filters[0] = new nlobjSearchFilter('internalid', null, 'is', invcustomerid);

        var columns = new Array();
        columns[0] = new nlobjSearchColumn('address1');

        var searchResult = nlapiSearchRecord('customer', null, filters , columns);
        debugger;

        if (!searchResult || searchResult.length < 1) {
            nlapiLogExecution('DEBUG', 'XML HEAD', 'not supported address');
            return;
        }

        if(searchResult) {
            for (var i = 0 ; i < searchResult.length; i++) {
            alert(searchResult[i].getValue('address1'));
        };
        };
    } catch(e) {
        nlapiLogExecution('ERROR', 'Try/catch error', e.message);
    }
}

...这里我得到了特定客户的所有地址子记录,但我只想要一个内部id指定的子记录,而不是列出客户的所有相关地址。

1 个答案:

答案 0 :(得分:3)

columns[0] = new nlobjSearchColumn('addr1');

应该是:

columns[0] = new nlobjSearchColumn('address1');

在您自己的链接中,您应该使用记录底部“搜索列”列表中的内部ID,而不是“字段”。