Javascript 未修改加载记录之前的Netsuite脚本
我试图在用户打开采购订单时修改它。这似乎是一个非常简单的例子,但似乎不起作用。在GUI中,我没有看到测试备忘录。在脚本调试中,备注字段为空 由于调试,我知道脚本正在运行Javascript 未修改加载记录之前的Netsuite脚本,javascript,oracle,netsuite,suitescript,Javascript,Oracle,Netsuite,Suitescript,我试图在用户打开采购订单时修改它。这似乎是一个非常简单的例子,但似乎不起作用。在GUI中,我没有看到测试备忘录。在脚本调试中,备注字段为空 由于调试,我知道脚本正在运行 /** * Update Drop Ship PO with route Information * * @author Patrick * @NApiVersion 2.0 * @NScriptType UserEventScript */ define(['N/search', 'N/record'],
/**
* Update Drop Ship PO with route Information
*
* @author Patrick
* @NApiVersion 2.0
* @NScriptType UserEventScript
*/
define(['N/search', 'N/record'],
function(search, record) {
function beforeLoad(context) {
var newRecord = context.newRecord;
newRecord.setValue({fieldId: 'memo', value: 'this is a test'});
log.debug({title: 'memo', details: newRecord.getValue({fieldId: 'memo'})});
return true;
}
return {
beforeLoad: beforeLoad
};
});
我假设它与我可以修改的记录有关,但我一生都无法在文档中找到一个工作示例。任何帮助都将不胜感激 您不能在beforeLoad中修改现有记录上的字段;有关详细信息,请参阅beforeLoad的帮助页面。以下是加载前限制的一个片段: 加载/访问联机表单时,无法触发beforeLoad用户事件。 无法为加载前加载脚本中加载的记录操纵数据。如果尝试更新加载前加载中加载的记录,则忽略该逻辑。 可以为在beforeLoad用户事件中创建的记录操纵数据。 将子自定义记录附加到其父项或将子自定义记录从其父项分离会触发编辑事件。
第二个要点与您的问题相关。您不能在beforeLoad中修改现有记录上的字段;有关详细信息,请参阅beforeLoad的帮助页面。以下是加载前限制的一个片段: 加载/访问联机表单时,无法触发beforeLoad用户事件。 无法为加载前加载脚本中加载的记录操纵数据。如果尝试更新加载前加载中加载的记录,则忽略该逻辑。 可以为在beforeLoad用户事件中创建的记录操纵数据。 将子自定义记录附加到其父项或将子自定义记录从其父项分离会触发编辑事件。 第二个要点与您的问题相关。newRecord.setValue在加载前不起作用。如果使用如下所示的newRecord.submitFields,效果会更好
newRecord.submitFields({
id: newRecord.id,
type: newRecord.type,
values: {'memo', 'this is a test'}
});
希望能有帮助 newRecord.setValue在加载前无法工作。如果使用如下所示的newRecord.submitFields,效果会更好
newRecord.submitFields({
id: newRecord.id,
type: newRecord.type,
values: {'memo', 'this is a test'}
});
希望能有帮助