脚本通过地址簿访问自定义地址字段
我在添加到地址表单中的自定义字段中设置文本值时遇到问题。脚本通过地址簿访问自定义地址字段
function fieldChanged_form(type, name) {
if (name == 'custentity_bsi_agycampus') {
var lnSeq = nlapiFindLineItemValue('addressbook', 'defaultbilling', 'T');
if (lnSeq > 0) {
console.log("selected line " + lnSeq);
nlapiSelectLineItem('addressbook', lnSeq);
var agency_campus = nlapiGetFieldText('custentity_bsi_agycampus');
nlapiSetCurrentLineItemValue('addressbook',
'custrecord_bsi_agy_div_bur_sd', agency_campus, true, true);
console.log('agency' + ',' + agency_campus);
}
nlapiCommitLineItem('addressbook');
console.log('after commit: '
+ nlapiGetCurrentLineItemValue('addressbook',
'custrecord_bsi_agy_div_bur_sd'));
}
}
这个脚本(适用于自定义代码选项卡下的客户表)将不会设置custrecord_bsi_agy_div_bur_sd从custentity_bsi_agycampus文本值(在客户表单的自定义字段)。但是,如果我将custrecord_bsi_agy_div_bur_sd更改为addr1(地址表单中的默认字段),它就像我想的那样工作。
这使我怀疑我是否能够通过“通讯录”访问我的自定义字段中的地址格式如你可以为所有其他地址字段。有没有人知道这个问题的答案,或有我如何解决这个问题的想法?
我相信你需要为子记录地址有效。在此之后玩一些图案:
// {nlobjSubrecord} Get one of the addresses off the sublist
var subrecord = {};
nlapiSelectLineItem('addressbook', 1);
subrecord = nlapiEditCurrentLineItemSubrecord('addressbook', 'addressbookaddress');
// Set the data on the subrecord
subrecord.setFieldValue('attention', 'Some Guy');
subrecord.setFieldValue('addr1', '1234 5th St');
subrecord.setFieldValue('addr2', 'Apt 234');
subrecord.setFieldValue('addrphone', '5558675309');
subrecord.setFieldValue('city', 'Scottsdale');
subrecord.setFieldValue('state', 'AZ');
subrecord.setFieldValue('country', 'US');
subrecord.setFieldValue('zip', '85260');
// Commit the subrecord to its parent before submitting the parent itself
subrecord.commit();
是的,自2014.2以来我相信你必须按照Eric的方式来做 – TMann
我在帮助文档中看到类似的内容,但首先你必须加载特定的记录。我正在努力使这项工作成为新客户。该记录尚未创建,目前还没有内部编号。如何访问像这样的新记录中的地址簿字段?我上面粘贴的代码用于将文本复制到新客户的地址簿字段中,例如companyname和addr1。我不明白为什么它会在这些领域,而不是我的自定义领域。 – Gus
这个答案中的代码应该工作得很好,无论记录是新的还是现有的。您可以选择现有的地址簿行或新的地址簿行,然后根据需要编辑或创建新的地址行,包括在自定义字段中设置值。 – erictgrubaugh
您试图设置的文本的价值是什么,作为custrecord_bsi_agy_div_bur_sd的值?它可能只接受数字数据吗? – TonyH
custrecord_bsi_agy_div_bur_sd是一个*格式的文本字段。它会接受字符串。 – Gus