我正在尝试根据部门交易正文字段填充部门行项目字段,请协助检查我的代码是否正确..我是套房新手。
var itemDepartment = nlapiGetFieldValue('department');
var nlapiSetCurrentLineItemValue = nlapiSetCurrentLineItemValue('item', 'department_display', itemDepartment);
它一直声明department_display
不是内部ID。
请指教。
谢谢。
如果是客户端脚本,您可以尝试设置文本吗?部门列字段的ID是“部门”
var itemDepartment = nlapiGetFieldText('department');
nlapiSetCurrentLineItemText('item','department',itemDepartment);
部门列字段的ID也是部门,与标题字段相同。因此,你的代码片段的第二行应该是:
nlapiSetCurrentLineItemValue('item','department',itemDepartment);
编辑根据下面的评论,请在下面找到完整的代码片段,以便在提交之前填写客户的行部门:
function onBeforeSubmit(type) {
if (type == 'create' || type == 'edit') {
var customerId = nlapiGetFieldValue('entity');
var itemDepartment = nlapiLookupField('customer',customerId, 'custentity_department');
var itemCount = nlapiGetLineItemCount('item');
for (var i = 1; i <= itemCount; i++) {
nlapiSetLineItemValue('item', 'department', i, itemDepartment);
}
}
}
另外,作为旁注,您不必加载整个记录以获取字段值。你应该使用nlapiLookupField代替。它更快,更安全,更少api使用。