我只是一个新手,所以请原谅我的任何愚蠢错误。
我有两个代码,一个用于客户端脚本页面 init,另一个用于suitlet 脚本。我正在尝试做的是套件脚本上的表单和子列表,然后使用客户端脚本 getValue 函数将现有记录字段传递给子列表表单。
这可能吗?如何?
这是我的主要代码:(payrollf 是子列表的已保存搜索功能)
/**
* @NApiVersion 2.x
* @NScriptType Suitelet
* @NModuleScope SameAccount
*/
define(['N/log', 'N/record','N/search', 'N/ui/serverWidget'],
/**
* @param {log} log
* @param {search} search
* @param {serverWidget} serverWidget
* @param {record} record
*/
function(log, record, search, serverWidget) {
/**
* Definition of the Suitelet script trigger point.
*
* @param {Object} context
* @param {ServerRequest} context.request - Encapsulation of the incoming request
* @param {ServerResponse} context.response - Encapsulation of the Suitelet response
* @Since 2015.2
*/
function onRequest(context) {
var request=context.request;
var response=context.response;
var form=serverWidget.createForm({
title:'Payroll Initiation'
});
var sublist = form.addSublist({
id: 'custpage_payrollsublist',
type: serverWidget.SublistType.LIST,
label: 'Payroll Sublist'
});
var payrollf=payroll();
sublist.addField({
id: 'custpage_amnt',
label: 'Amount',
type: serverWidget.FieldType.TEXT
})
sublist.addField({
id: 'custpage_date1',
label: 'Effective From',
type: serverWidget.FieldType.DATE
})
sublist.addField({
id: 'custpage_rate',
label: 'Rate',
type: serverWidget.FieldType.TEXT
})
sublist.addField({
id: 'custpage_date2',
label: 'Effective Through',
type: serverWidget.FieldType.DATE
})
var path= form.clientScriptModulePath='SuiteScripts/ClientSuitlet.js';
payrollf.run().each(function(){
var counter=0;
sublist.setSublistValue({
id: 'custpage_amnt',
line: counter,
value: path.Amount,
});
sublist.setSublistValue({
id: 'custpage_rate',
line: counter,
value: Rate,
});
sublist.setSublistValue({
id: 'custpage_date1',
line: counter,
value: date1,
});
sublist.setSublistValue({
id: 'custpage_date2',
line: counter,
value: date2,
});
counter++;
return true;
});
response.writePage(form);
}
Client Script code on page initialization:
function pageInit(context) {
var currRecord=context.currentRecord;
var Amount=currRecord.getValue('amnt');
var Rate=currRecord.getValue('rate');
var date1=currRecord.getValue('date1');
var date2=currRecord.getValue('date2');
}