Nicolas Bean
11/12/2021, 9:47 PMbattk
11/12/2021, 9:53 PMNicolas Bean
11/12/2021, 9:53 PM/*******************************************************************
*
*
* Name: JAM_SUE_billRelatedPO.js
* @NApiVersion 2.x
* @NScriptType UserEventScript
* Version: 0.0.1
*
*
* Author: Nicolas Bean
* Purpose: Populates the "related purchase order" field
* Script: The script record id
* Deploy: The script deployment record id
*
*
* ******************************************************************* */
define(['N/record', 'N/search', 'N/log'],
function(record, search, log) {
function afterSubmit(context) {
var rec = context.newRecord;
log.debug('afterSubmit rec', rec);
var recid = rec.id;
log.debug('afterSubmit recid', recid);
var recordType = rec.type;
log.debug('recordType', recordType);
try {
var relatedpo = getRelatedPO(recid);
log.debug('relatedpo', relatedpo);
if (relatedpo.relatedpo != null && relatedpo.relatedpo != '' && relatedpo.override == false) {
record.submitFields({
type: recordType,
id: recid,
values: {
custbodyrel_po: relatedpo.relatedpo
}
});
log.debug('setting PO value');
} else {
return false;
}
} catch (e) {
log.debug('Error reads: ', e.name + e.message);
}
function getRelatedPO(internalid) {
var vendorbillSearchObj = search.create({
type: "vendorbill",
filters: [
["type", "anyof", "VendBill"],
"AND",
["internalid", "anyof", internalid],
"AND",
["mainline", "is", "T"]
],
columns: [
search.createColumn({
name: "internalid",
label: "Internal ID"
}),
search.createColumn({
name: "createdfrom",
label: "Created From"
}),
search.createColumn({
name: "internalid",
join: "createdFrom",
label: "Internal ID"
}),
search.createColumn({
name: "custbodyrel_po_override",
label: "Override Purchase Order"
}),
search.createColumn({
name: "formulatext",
formula: "{createdfrom}",
label: "Formula (Text)"
})
]
});
var tempres = vendorbillSearchObj.run().getRange(0, 999);
if (tempres.length > 0) {
var temprelatedpo = tempres[0].getValue({
name: "internalid",
join: "createdFrom"
});
var tempoverride = tempres[0].getValue({
name: "custbodyrel_po_override"
})
log.debug('temprelatedpo + override', temprelatedpo + " + " + tempoverride);
}
return {
relatedpo: temprelatedpo,
override: tempoverride
};
}
}
return {
afterSubmit: afterSubmit
};
});
battk
11/12/2021, 10:02 PMsetting PO value
battk
11/12/2021, 10:03 PMbattk
11/12/2021, 10:03 PMbattk
11/12/2021, 10:06 PMNicolas Bean
11/12/2021, 10:06 PMbattk
11/12/2021, 10:06 PMbattk
11/12/2021, 10:07 PMNicolas Bean
11/12/2021, 10:07 PMNicolas Bean
11/12/2021, 10:07 PMNicolas Bean
11/12/2021, 10:07 PMNicolas Bean
11/12/2021, 10:07 PMNicolas Bean
11/13/2021, 1:47 PMNicolas Bean
11/15/2021, 11:04 PM