我想根据结果动态创建字段ID。我有一个非常基本的脚本来展示我正在尝试做的事情。它仍然不检索信息。我尝试使用+而不是concat(''custitem '+ testtext +''')。当我记录字段名称时-它正确地显示'custitemdoe_jane'。
您可以看到脚本以两种不同的方式使用公式。这能做到吗??
/**
* This script looks for RTAs - updates the purchase Order and the CT record
*
* @NApiVersion 2.x
* @NScriptType ScheduledScript
* @NModuleScope SameAccount
*/
define(['N/file', 'N/search', 'N/record', 'N/format', 'N/email'],
function(file, search, record, format, email) {
function execute(scriptContext) {
var texty = '\'custitem';
var testtext = 'doe_jane';
var texty3 = '\'';
var fieldname = texty.concat(testtext);
var fieldname = fieldname.concat(texty3);
log.debug('fieldname', fieldname);
//这里的最终结果是带引号的'custitemdoe_jane'
var itemfix = record.load({
type: record.Type.INVENTORY_ITEM,
id: 488,
isDynamic: false
});
var values = itemfix.getText({fieldId: fieldname});
var values2 = itemfix.getValue({fieldId: fieldname});
log.debug('values', values);
log.debug('values', values2);
var values3 = itemfix.getText({fieldId: fieldname.concat(texty3)});
var values4 = itemfix.getValue({fieldId: fieldname.concat(texty3)});
log.debug('values', values3);
log.debug('values', values4);
//以上都是空的
itemfix.save({
enableSourcing: true
});
}
return {execute: execute};
});
1条答案
按热度按时间von4xj4u1#
您的主要问题是字段名称中可能没有引号。所以你需要有
custitemdoe_jane
而不是'custitemdoe_jane'
。如果你知道你在做什么(我没有得到你的代码的目的),根据在
var testtext
中更改的值生成fieldname
,你至少需要:而不是:
有这个(这些是最小的修改,为了清楚起见):
这样,您将拥有'custitemdoe_jane'作为字段名称,这至少是一个有效的名称。