Cannot delete record(s) from background script
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 08:12 AM
This is the script I'm trying to run (in Global scope):
(function () {
gs.print("First, deleting any old records.");
var record = false;
record = new GlideRecord('sn_wsd_core_workplace_profile');
record.query();
if (record.next()) {
gs.print("Deleting "+record.getRowCount()+' sn_wsd_core_workplace_profile records.');
record.deleteMultiple();
}
record = new GlideRecord('sn_wsd_core_space');
record.query();
if (record.next()) {
gs.print("Deleting "+record.getRowCount()+' sn_wsd_core_space records.');
record.deleteMultiple();
}
record = new GlideRecord('sn_wsd_core_floor');
record.query();
if (record.next()) {
gs.print("Deleting "+record.getRowCount()+' sn_wsd_core_floor records.');
record.deleteMultiple();
}
record = new GlideRecord('sn_wsd_core_building');
record.query();
if (record.next()) {
gs.print("Deleting "+record.getRowCount()+' sn_wsd_core_building records.');
record.deleteMultiple();
}
record = new GlideRecord('sn_wsd_core_campus');
record.query();
if (record.next()) {
gs.print("Deleting "+record.getRowCount()+' sn_wsd_core_campus records.');
record.deleteMultiple();
}
record = new GlideRecord('sn_wsd_core_site');
record.query();
if (record.next()) {
gs.print("Deleting "+record.getRowCount()+' sn_wsd_core_site records.');
record.deleteMultiple();
}
record = new GlideRecord('sn_wsd_core_region');
record.query();
if (record.next()) {
gs.print("Deleting "+record.getRowCount()+' sn_wsd_core_region records.');
record.deleteMultiple();
}
}();
This is the result I get:
*** Script: First, deleting any old records.
*** Script: Deleting 41 sn_wsd_core_workplace_profile records.
Security restricted: Delete operation against 'sn_wsd_core_workplace_profile' from scope 'rhino.global' has been refused due to the table's cross-scope access policy
*** Script: Deleting 41 sn_wsd_core_space records.
Security restricted: Delete operation against 'sn_wsd_core_space' from scope 'rhino.global' has been refused due to the table's cross-scope access policy
*** Script: Deleting 1 sn_wsd_core_floor records.
Security restricted: Delete operation against 'sn_wsd_core_floor' from scope 'rhino.global' has been refused due to the table's cross-scope access policy
*** Script: Deleting 1 sn_wsd_core_building records.
Security restricted: Delete operation against 'sn_wsd_core_building' from scope 'rhino.global' has been refused due to the table's cross-scope access policy
*** Script: Deleting 1 sn_wsd_core_campus records.
Security restricted: Delete operation against 'sn_wsd_core_campus' from scope 'rhino.global' has been refused due to the table's cross-scope access policy
*** Script: Deleting 1 sn_wsd_core_site records.
Security restricted: Delete operation against 'sn_wsd_core_site' from scope 'rhino.global' has been refused due to the table's cross-scope access policy
*** Script: Deleting 1 sn_wsd_core_region records.
Security restricted: Delete operation against 'sn_wsd_core_region' from scope 'rhino.global' has been refused due to the table's cross-scope access policy
Well, this sucks. So I change my application scope to "Workplace Safety Management", run the script, same issue.
So then, while I'm still in Workplace Safety Management scope, I go to each of those tables and click the "Delete" checkbox:
I even go into the Workspace Location table (which is extended by most of the above listed tables) and set "Can delete" to true:
I try running the script... same result!
So then I do my least favorite thing of all in ServiceNow... open Studio (bleh)
Then try to go into settings:
But oh look, isn't this lovely:
I mean c'mon.
Anyone know what magic mantra's I need to chant to allow me to run some scripts to clean out old records?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 08:54 AM
Hi,
Have you also looked at System Applications > Application Cross-Scope Access?
You may also need to create a record here (operation delete) for this action.
The table settings are 1 thing, this would be the 2nd.
Not restricted caller.
Please mark reply as Helpful/Correct, if applicable. Thanks!
Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 09:02 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 09:18 AM
Would you consider not running this from global scope in background? Perhaps use another scope and ensure these steps are done to allow it, etc. and run the script to get this over with?
Please mark reply as Helpful/Correct, if applicable. Thanks!
Please consider marking my reply as Helpful and/or Accept Solution, if applicable. Thanks!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 09:32 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 09:28 PM
