Run transform in server side script

sumeet_n
Kilo Guru

Hello All,

Is there any way to "run transforms" in server side script? any APIs?

14 REPLIES 14

You need to have the transform map and import set created ahead of time.


See example below:



var transformMapSysID = '';//Your sys_id here


var transformMap = new GlideRecord('sys_transform_map');


transformMap.get(transformMapSysID);



var importSetSysID = '';//Your sys_id here


var igr = new GlideRecord('sys_import_set');


igr.get(importSetSysID);



ServiceNow Nerd
ServiceNow Developer MVP 2020-2022
ServiceNow Community MVP 2019-2022

Thank you Paul, this is really helpful. I greatly appreciate your help. The example is really insightful.


Hi Paul,



can we get the result of the transform initiation? like which record was inserted/updated the sysid etc



Regards


These functions are also available for GlideImportSetTransformerWorker, which may help:



getImportSetRun ()
getOutputSummary ()
getParentController ()
getProgressID ()
getProgressMessage ()
getProgressState ()
getProgressTable ()
getWorkerThreadID ()

Don't forget to mark this thread as correct if you have got your answer



ServiceNow Nerd
ServiceNow Developer MVP 2020-2022
ServiceNow Community MVP 2019-2022

Hi Paul,



Thanks for your time.



I am using the class like



var t = new GlideImportSetTransformerWorker(igr.sys_id, transformMap.sys_id);  


          t.setProgressName("Transforming: " + igr.number + " using map " + transformMap.name);  


          t.setBackground(true);  


          t.start();


gs.log("summary: "+ t.getOutputSummary ());



it gives me an illegal access exception. Any idea how can iii get the summary?



Regards