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:20 AM
Can't you just go to the table definition and click the "Delete records" UI action if you're trying to delete all records?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 08:40 AM
Yes, but this is part of a much larger automation process. It must be done in script.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 08:23 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
‎12-31-2020 08:38 AM
