I want to generate a pdf of selected records in a list?

trinadhgottipat
Kilo Expert

Hi All,

I want to generate a PDF of selected records in a list, when the user clicks on 'Generate PDF' UI action(List Choice),created by me.

Is there a way I could do this.

Thanks,

Trinadh.Developer Community Service ManagementdvpChuck Tomasi's BlogPradeep Sharma's Blog ctomasi

1 ACCEPTED SOLUTION

Hi Trinadh,



Have a List UI Action either List bottom button or List context menu as per your need.


Select the checkbox for client and add this function downloadPdf()


In the script section add the following code. What it does is it gets the pdf for only those records which are selected in the list layout.


I have tested it at my end and is working fine. It will take columns specific to a view and not the ones which you have added from gear icon.


If you want the columns which are present on the list layout then make the view as empty



Script


function downloadPdf(){



  var checked = g_list.getChecked(); // get's the sys_id of the checked records


  var query = "sys_idIN" + checked.toString();


  var rows = checked.split(",").length; // rows to be sent to the pdf function


  var view = "default"; // set this to default for columns present in default view for list layout


  //var view = ""; // set this to empty if you want all the columns present in the list layout including the customized ones.



  var dialog = new GwtPollDialog('u_sample_table', query, rows, view, 'unload_pdf');


  dialog.execute();


}



Mark Correct if this solves your issue and also hit Like and Helpful if you find my response worthy based on the impact.


Thanks


Ankur


Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

View solution in original post

28 REPLIES 28

@Gunjan Kiratkar 

the error clearly says GwtPollDialog is not defined so it won't work in UI builder.

So you might have to try something else.

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

Hi @Ankur Bawiskar ,

 

I have changed the code and now using below code, It is working as expected and exporting pdf file with selected records as well. But after that it gives below error.  

GunjanKiratkar_0-1700467878506.png

 

Code :

try {
    var checked = g_list.getChecked(); // get's the sys_id of the checked records
    var query = "sys_idIN" + checked.toString();
    var table = g_list.tableName;
    //var url = "/"+table+"_list.do?PDF&sysparm_query=" + query + "&sysparm_view=workspace";

    var url = table + "_list.do?PDF&sysparm_query=" + query + "&sysparm_view=workspace";
    //window.open(url);
    top.location.href = url;

} catch (ex) {
    var message = ex.message;
    alert("Errors: " + message);
}

 


Please Mark My Response as Correct/Helpful based on Impact
Regards,
Gunjan Kiratkar
2X ServiceNow MVP
Community Rising Star 2022
Youtube : ServiceNow Guy

@Gunjan Kiratkar 

will need to explore on this much

Regards,
Ankur
✨ Certified Technical Architect  ||  ✨ 9x ServiceNow MVP  ||  ✨ ServiceNow Community Leader

Hello Ankur,

I also have the same requirement but instead of PDF I need to generate the records in excel format for incident list.

Can you please help me with the same.

Thank you in advance.

 

Regards,
Shrey

I think you can achieve this easily by using a list filter and export.



Let's say you want to export only the active incidents assigned to you then


go to Incidents > open


and add a filter assigned to me



find_real_file.png



then if you go to export PDF then it will give only the filtered records.