Javascript SuiteScript 2.0:根据所选帐户行将搜索结果动态添加到自定义列列表中
希望你能帮忙 我正在尝试将保存的搜索结果添加到使用用户事件脚本“动态”创建的自定义列列表中。我曾经成功地使用SuiteScript1.0,但现在过渡到2.0,这似乎是不可能的 为了演示我的代码,我首先构建一个UE脚本,使用“serverWidget”模块创建一个自定义列列表:Javascript SuiteScript 2.0:根据所选帐户行将搜索结果动态添加到自定义列列表中,javascript,netsuite,suitescript,suitescript2.0,suitescript1.0,Javascript,Netsuite,Suitescript,Suitescript2.0,Suitescript1.0,希望你能帮忙 我正在尝试将保存的搜索结果添加到使用用户事件脚本“动态”创建的自定义列列表中。我曾经成功地使用SuiteScript1.0,但现在过渡到2.0,这似乎是不可能的 为了演示我的代码,我首先构建一个UE脚本,使用“serverWidget”模块创建一个自定义列列表: if (recordType === 'journalentry') { log.debug('works') var objLineSublist
if (recordType === 'journalentry') {
log.debug('works')
var objLineSublist = getForm.getSublist({id: 'line'});
// Add several custom fields to the form
var entityField = objLineSublist.addField({
id: 'custpage_entity',
type: serverWidget.FieldType.SELECT,
label: 'Entity'
});
}
我的UE脚本很好用
我现在创建一个客户端脚本;首先检查帐户类型是否为应收或应付,并根据选择的帐户类型,使用保存的搜索中的客户或供应商数据填充自定义列表(custpage_实体)。由于这是一个客户端脚本,我无法访问serverWidget模块的属性来捕获子列表字段(与我在UE脚本上使用它的方式相同)。我注意到“currentRecord.getField”对象,我可以用它来代替它,但遗憾的是它不起作用。这是我的密码:
var customEntity = currentRecord.getField({fieldId: 'custpage_entity'});
log.debug('customEntity', customEntity);
if (getAcctType === 'AcctRec' || getAcctType === 'AcctPay') {
var recordType = '';
if (getAcctType === 'AcctRec')
recordType = 'customer'
else recordType = 'vendor';
log.debug('getAcctType', getAcctType + ' | ' + recordType);
// Insert a blank option.
customEntity.insertSelectOption({ value: 'test', text: 'test' })
//Execute saved search
var getCustomerResults = getEntityListFromSearch(recordType);
getCustomerResults.run().each(function(result){
// .run().each has a limit of 4,000 results
customEntity.insertSelectOption({
value: result.getValue({name: 'internalid'}),
text: result.getValue({name: 'entityid'})
})
return true;
});
}
如果你能帮助我做错事,那将是非常有帮助的!
我应该注意:我需要它来处理客户端脚本中“帐户”列字段的字段更改。您需要在服务器端(UE脚本)的下拉列表或客户端脚本中的pageInit事件中插入您的选项(但这只适用于没有字段更改的情况)
我建议在UE脚本中创建两个不同的下拉列表,插入选项,一个用于供应商,一个用于客户,并添加一个CSS类来隐藏它们。在fieldChange事件中,根据用户选择,使用CSS显示正确的下拉列表。谢谢@Emerson,您有什么可以分享的例子吗?