Skip to main content

Run a test load data from script calling processor

this is a modified version of the 'test load 20 records' ui action
create this as a copy
in the condition, add a condition to restrict it to the data source in question
in this example a file import

instead of having to redirect to the sys_import.do java processor, this can be done in script as follows:
(instance calls itself via httprequest to access the processor, this can enable users without permissions but who can see the UI action to perform a test load on the data source with the file attached)
-------------


current.update();
 //--below is OOTB code, commented out but principles reused
/*var redirectStr = "sys_import.do?"; // the URI
redirectStr += "import_source=data_source"; // this is a Data Source import
redirectStr += "&sysparm_data_source=" + current.sys_id; // the sys_id of this
redirectStr += "&sysparm_tablename=" + current.import_set_table_name; // always create the same test
redirectStr += "&sysparm_recreate_table=false"; // we dont want to overwrite existing
redirectStr += "&sysparm_tablelabel=" + current.name;
redirectStr += "&create_new_module=ON";
redirectStr += "&sysparm_extends=sys_import_set_row"; // always extends this
redirectStr += "&selected_application=import_sets";
redirectStr += "&sysparm_default_state=test";
redirectStr += "&max_rows=2"; // change this number if you want more test rows*/

try{
           
            var url='https://<your_instance>.service-now.com/'+'sys_import.do';
//--credentials must correspond to a user with the correct permissions e.g. rest_service, within SN
            var request=new GlideHTTPRequest(url);
            request.setBasicAuth("servicenowuser", "servicenowpwd");
            request.addHeader('Accept', 'application/json');
            request.addParameter('import_source', 'data_source');
            request.addParameter('sysparm_data_source', current.sys_id);
            request.addParameter('sysparm_tablename', current.import_set_table_name);
            request.addParameter('sysparm_recreate_table', 'false');
            request.addParameter('create_new_module', 'ON');
            request.addParameter('sysparm_extends', 'sys_import_set_row');
            request.addParameter('selected_application', 'import_sets');
            request.addParameter('sysparm_default_state', 'test');
            request.addParameter('max_rows', '2');
            var response=request.get();
            gs.log('TESTRESP:' + response.getStatusCode(), 'processorresp');
           
          
           
           
}catch (ex){
            gs.addInfoMessage('error');
            gs.log(ex.toString(), 'processorErr');

var info = "Test loading 2 rows - ";

info += "<a style='text-decoration:underline;color:blue' href=sys_data_source.do?sys_id=" + current.sys_id + ">Return to data source</a><img width='3' src='images/s.gif'/>";

gs.addInfoMessage(info + '---TEST');
action.setRedirectURL(current);

Comments

Popular posts from this blog

Get URL Parameter - server side script (portal or classic UI)

Classic UI : var sURL_editparam = gs . action . getGlideURI (). getMap (). get ( ' sysparm_aparameter ' ); if ( sURL_editparam == 'true' ) { gs . addInfoMessage ( 'parameter passed ); } Portal : var sURL_editparam = $sp . getParameter ( " sysparm_aparameter " ); if ( sURL_editparam == 'true' ) { gs . addInfoMessage ( 'parameter passed ); }

ServiceNow - script include: build up the results as a JSON object (array) - example 2

function call var sCurrentGroupMembers = new <script_include> (). getGroupMembers ( group_sysid ); gs . print ( 'sCurrentGroupMembers:' + sCurrentGroupMembers ); var oGroupMembers = JSON . parse ( sCurrentGroupMembers ); gs . print ( JSON . stringify ( oGroupMembers . users )); oNewGroupMember = JSON . parse ( group_members ); var oGroupConfig = getGroupDeltas ( oGroupMembers . users , oNewGroupMember ); gs . print ( JSON . stringify ( oGroupConfig . remove )); gs . print ( JSON . stringify ( oGroupConfig . add )) output : *** Script: sCurrentGroupMembers: {"manager":"3b2649efdb0f8c10cc0652f3f39xxxxx", "email":"", "type":"33a2226edb99c340edfc7cbdae96xxxx", "description":"Created for xyz", "users":[{"user":"3b2649efdb0f8c10cc0652f3f396xxxx"},{"user":"856a8f71db3d73041b4ffc45ae96196a"},{"user":"3752771