我们所有客户的发票都是按月订阅,基于当月数量(每个月的发票都不同)。我们已将SalesForce的每月数量链接到NetSuite客户记录,我希望每个月的发票自动更新为正确的数量。
我们当前通过csv导入更新数量。每个发票只有一个订单项,我认为这会使此过程相对容易。我目前有保存的搜索,如下面的代码所示,带来了数量字段,因此我们可以重新导入。
/**
*@NApiVersion 2.x
*@NScriptType ScheduledScript
*/
define(['N/search', 'N/record', 'N/email', 'N/runtime'],
/**
*
* @param {search} search
* @param {record} record
* @param {email} email
* @param {runtime} runtime
*/
function(search, record, email, runtime) {
function execute(context) {
var searchid = runtime.getCurrentScript().getParameter({'name': 'custscript_customsearch630'});
search.load({'id': searchid}).run().each(function(result){
var newQuantity = result.getValue({'name': 'custentitynumber_lives.customer'});
var internalId = result.getValue({'name': 'internalid'});
var invoice = record.load({'type': record.Type.INVOICE,'id': internalId,'isDynamic': true});
var sublistId = 'item';
invoice.selectLine({'sublistId': sublistId, 'line' : 1});
invoice.setCurrentSublistValue({'sublistId': sublistId, 'fieldId':'quantity', 'value': newQuantity});
invoice.commitLine({'sublistId': sublistId});
invoice = invoice.save({'ignoreMandatoryFields': true})
return true;
});
}
return {
'execute': execute
};
});
我目前为此收到以下错误:
{"type":"error.SuiteScriptError","name":"USER_ERROR","message":"Please choose an item to add","stack":["anonymous(N/serverRecordService)"