Auto generate PDF of RITM with related list and attach to the RITM itself
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 hours ago
I want to auto generate a PDF whenever the request is completed and auto attach the PDF to the actual RITM.
The PDF should contain all variable information along with the Approver related list
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2 hours ago - last edited 2 hours ago
Hi @mr18 ,
A few Questions before I answer to the above requirement
- Which ServiceNow release are you on (e.g., Washington, Vancouver, Utah)?
- Do you have the Document Generation plugin (and prefer a template‑driven approach), or should we go with the code approach?
1) DocGen is a ServiceNow no‑code/low‑code feature that lets you:
- Create a Word template
- Fill it with dynamic data (fields, variables, related lists, approvals)
- Auto-generate PDF or DOCX
- Attach or email the output
How it works
- Create a Word template
- Create a Data Source (drag‑and‑drop or scripted)
- Create a Flow Designer action to generate the document
- Generate output as PDF
Basically if Document Generation plugin is installed then it is easy to achieve the requirement.
2) There is a developer‑built solution using:
- Business Rules / Script Includes / Flow Designer Script step
- HTML to PDF API (PDF Generation Utils plugin or custom library) //make sure this plugin is active
- Code to fetch variables, approvals, MRVS, etc.
- Code to build the HTML
- Code to convert HTML → PDF
- Code to attach it to the record
Please mark as helpful if this gives you some guidance to achieve the requirement.
Thanks & Regards
Yamsani Bhavani
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
2 hours ago
check this link which has script from Piyush
Generate PDF file for catalog variables and attach it to RITM
also check this link
When catalog item is submitted, attach variables to RITM as a PDF
💡 If my response helped, please mark it as correct ✅ and close the thread 🔒— this helps future readers find the solution faster! 🙏
Ankur
✨ Certified Technical Architect || ✨ 9x ServiceNow MVP || ✨ ServiceNow Community Leader
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
13m ago
Hello @mr18 ,
This can acheived using After update business rule .
(function executeRule(current, previous /*null when async*/ ) {
// Add your code here
var v = new sn_pdfgeneratorutils.PDFGenerationAPI();
var gr = new GlideRecord("sc_req_item");
var html = "";
if (gr.get(current.sys_id)) {
var ga = new GlideRecord('sysapproval_approver');
var app = [];
ga.addQuery('sysapproval', current.sys_id);
ga.query();
while (ga.next()) {
app.push(ga.getDisplayValue('approver'));
}
html += "<h2>RITM Details</h2>";
html += "<b>RITM Number:</b> " + gr.number + "<br/>";
html += "<b>Requested For:</b> " + gr.getDisplayValue('requested_for') + "<br/>";
html += "<b>Requested By:</b> " + gr.getDisplayValue('opened_by') + "<br/>";
html += "<b>Catalog Item:</b> " + gr.getDisplayValue('cat_item') + "<br/>";
html += "<b>State:</b> " + gr.getDisplayValue('state') + "<br/>";
html += "<b>Priority:</b> " + gr.getDisplayValue('priority') + "<br/>";
html += "<b>Assignment Group:</b> " + gr.getDisplayValue('assignment_group') + "<br/>";
html += "<b>Assigned To:</b> " + gr.getDisplayValue('assigned_to') + "<br/>";
html += "<b>Short Description:</b> " + gr.short_description + "<br/>";
html += "<b>Description:</b> " + gr.description + "<br/>";
html += "<b>Approval List:</b> " +
(app.length > 0 ? app.join(', ') : 'No Approvers')
+ "<br/>";
}
var result = v.convertToPDF(html, "sc_req_item", current.sys_id, "RITM_PDF");
gs.info(JSON.stringify(result));
})(current, previous);
If you want to some styling so you can also add that using css .
If this helps you then you can mark it as helpful and accept as solution.
Regards,
Aditya,
Technical Consultant
