- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-02-2024 01:31 AM - edited 01-03-2024 01:43 AM
There is a custom M2M table created by mistake in GRC: Risk Management scope. The M2M definition record in "sys_m2m" table has been deleted, but the table definition in "sys_db_object" table still exists, along with the field definitions and label configurations. I wanted to delete this table and capture the deletion in an update set, so that it can be moved to other instances as well. However, the delete UI action is not visible in the table definition record. I have seen other community page solutions pointing to deactivate an ACL but I wanted to check if it is possible to do this without making changes to an OOTB ACL, possibly via a fix script.
Please suggest if this is achievable.
Thanks.
Edit: Reason why I posed the question is that it is not possible to delete the table as it was created with a name prefix "sn_risk" and not with the prefix "u_", making it impossible to delete the table manually. Hence required solution to delete it via script.
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-02-2024 02:08 AM
Hello @Kirthika D ,
You can below below snippet in background script.
var tableDeletion = new TableUtils();
tableDeletion.dropAndClean('Table_nam_here');
Kindly mark the answer ✔️ Correct or Helpful ✔️ If it addresses your concern.
Regards,
Siddhesh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-03-2024 12:13 AM - edited 01-03-2024 08:59 AM
Never mind, I just found that checking the "unloadable" checkbox in the fix script creates customer updates for the changes done by executing the script. This helps.
Thank you,
Kirthika D
Edit: TableUtils is not accessible from outside Global scope, but it can be called from Global scope to delete tables in other scopes.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-02-2024 04:32 AM
Hi @Kirthika D ,
Please refer to - https://www.servicenow.com/community/developer-forum/delete-a-many-to-many-definition/m-p/1502001
Regards,
Aakash
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
01-02-2024 11:09 PM
Hi @ab_2511 , thanks for the reply. I had referred this content earlier and mentioned in my question that I do not want to take the approach of deactivating the ACL. Also as mentioned earlier, the M2M definition has already been deleted, this question only concerns the table and its fields that are remaining.
Thanks,
Kirthika D