I am a geek. There is no way around it, and I have accepted my fate as such.
I became a developer because I so enjoyed the process of creation, the tinkering, and numbers. Do you have to love those same things to be a great programmer? Certainly not. A wild sense of curiosity doesn’t hurt, though.
Some of that curiosity and my tinkering habit has led me to an example of leveraging the Developer Console to gain a better understanding of SuiteScript. Using the Console’s “timer” API, I was able to very quickly illustrate the performance difference between loading a record to read a field value versus using the lookups we explored last week.
require(["N/record", "N/search"], function (r, s) {
console.time("Load Record");
var customerId = r.load({
type: r.Type.SALES_ORDER,
id: 874
}).getValue({fieldId: "entity"});
console.log(customerId);
console.timeEnd("Load Record");
console.time("Lookup");
var customerId2 = s.lookupFields({
type: r.Type.SALES_ORDER,
id: 874,
columns: ["entity"]
}).entity[0].value;
console.log(customerId2);
console.timeEnd("Lookup");
});
I won’t give away the results here; to satisfy your curiosity, I recommend you copy and paste this into your own Console to see the results for yourself.