/**
- @NApiVersion 2.x
- @NScriptType Restlet
*/
define([‘N/log’, ‘N/record’,‘./moment’,‘N/runtime’],
function (log, record,moment,runtime) {
function post(params) {
log.debug('参数', params)
var recordObj = record.load({
type: record.Type.PURCHASE_ORDER,
id: params.nsId,
isDynamic: true
});
//货币
recordObj.setText('currency','USD');
//供应商名称
recordObj.setText('entity',params.supplierName);
var dateFormat = runtime.getCurrentUser().getPreference('DATEFORMAT');
var tranDate = moment(params.ctStr, 'YYYY-MM-DD').format(dateFormat);
//日期
recordObj.setText({fieldId: "trandate", text: tranDate});
var tranDate2 = moment(params.deliveryDateStr, 'YYYY-MM-DD').format(dateFormat);
//交货日期
recordObj.setText({fieldId: "duedate", text: tranDate2});
//附注
recordObj.setText('custbody_k_note_appended',params.agreementMemo);
// 清除原组件
var lineCount = recordObj.getLineCount('item');
log.debug('行数:', lineCount);
for(var i = lineCount - 1; i >=0; i--) {
log.debug('索引:', i);
recordObj.removeLine({
sublistId: "item",
line: i
});
}
//子表
params.purchaseSkuPushNsVoList.forEach(function(i) {
// 行
recordObj.selectNewLine({
sublistId: 'item'
});
//货品NS内部识Id
recordObj.setCurrentSublistValue({
sublistId: 'item',
fieldId: 'item',
value: i.productSkuNsId
});
//数量
recordObj.setCurrentSublistValue({
sublistId: 'item',
fieldId: 'quantity',
value: i.qty
});
//单价
recordObj.setCurrentSublistValue({
sublistId: 'item',
fieldId: 'rate',
value: i.price
});
// 提交行
recordObj.commitLine({
sublistId: 'item'
});
})
// 保存
var recordId = recordObj.save({
enableSourcing: true,
ignoreMandatoryFields: true
});
return recordId;
}
return {
post: post
};
});