7px
12/03/2020, 5:59 AMbattk
12/03/2020, 6:10 AMbattk
12/03/2020, 6:10 AMbattk
12/03/2020, 6:12 AMbattk
12/03/2020, 6:13 AM7px
12/03/2020, 6:31 AM/**
* @NApiVersion 2.x
* @NScriptType Suitelet
*/
define(['N/render','N/record'], function(render,record) {
var exports = {};
function onRequest(context) {
var id = parseInt(context.request.parameters.custom_id,10);
var renderer = render.create();
var transactionFile = render.transaction({
entityId: id,
printMode: render.PrintMode.PDF
});
renderer.setTemplateByScriptId({
scriptId:'CUSTTMPL_PFI'
});
context.response.writeFile(transactionFile);
}
exports.onRequest = onRequest;
return exports;
});
This successfully generates the PDF, but doesn't follow the template I assigned it to.battk
12/03/2020, 6:32 AMbattk
12/03/2020, 6:32 AMbattk
12/03/2020, 6:34 AM7px
12/03/2020, 7:06 AM/**
*@NApiVersion 2.x
*@NScriptType Suitelet
*/
define(['N/render', 'N/record'], function(render, record) {
var exports = {};
function renderRecordToPdfWithTemplate(context) {
var renderer = render.create();
renderer.setTemplateByScriptId({
scriptId:'CUSTTMPL_PFI'
});
renderer.addRecord('record', record.load({
type: record.Type.ESTIMATE,
id: parseInt(context.request.parameters.custom_id,10)
}));
var invoicePdf = renderer.renderAsPdf();
}
exports.onRequest = renderRecordToPdfWithTemplate;
return exports;
});
This one won't even generate a PDF. I feel like I'm missing something on the template binding part from earlier, but I just can't quite figure it out.battk
12/03/2020, 7:23 AMfunction onRequest(context) {
var id = parseInt(context.request.parameters.custom_id, 10);
var renderer = render.create();
var transactionFile = render.transaction({
entityId: id,
printMode: render.PrintMode.PDF,
});
renderer.setTemplateByScriptId({
scriptId: "CUSTTMPL_PFI",
});
context.response.writeFile(transactionFile);
}
is equivalent to
function onRequest(context) {
var id = parseInt(context.request.parameters.custom_id, 10);
var transactionFile = render.transaction({
entityId: id,
printMode: render.PrintMode.PDF,
});
context.response.writeFile(transactionFile);
}
battk
12/03/2020, 7:24 AMrenderer
except set its templatebattk
12/03/2020, 7:25 AMrender
and write that in your responsebattk
12/03/2020, 7:25 AMrenderer
in your outputbattk
12/03/2020, 7:26 AMinvoicePdf
, but does nothing with itbattk
12/03/2020, 7:26 AM