How to block new record creation on a table?

garth
Kilo Expert

We are transitioning people from one instance to another. I want to block new records from being inserted into a few tables, let's use incident, for example, but still allow work to proceed on existing records.

What's the easiest way to do this? Can I just pull up the table in "Tables" and uncheck "Create" on the Application Access tab for All application scopes, or do I need to put in an ACL?

If an ACL, what would that look like, without affecting access to the fields on the fields on the table?

Thanks!

1 ACCEPTED SOLUTION

DirkRedeker
Mega Sage

Hi

I recommend to create a new Before INSERT business rule on each table, you want users from creating new record. In each business rule, just CANCEL the INSERT operation.

that way, you do not need to play with ACLs and you can turn on/off that business rule any time you want to.

 

Let me know if that answers your question and mark my answer as correct and helpful, please.

Thanks and BR

Dirk

View solution in original post

4 REPLIES 4

Prateek kumar
Mega Sage

how about write a before insert business rule and abort submission.

https://docs.servicenow.com/bundle/newyork-application-development/page/script/business-rules/concep...

https://developer.servicenow.com/app.do#!/api_doc?v=newyork&id=r_GlideRecord-newRecord


Please mark my response as correct and helpful if it helped solved your question.
-Thanks

Giles Lewis
Giga Guru

You cannot simply disable the "create" ACLs, because that will give "create" permission to everyone.  You need put in a replacement "create" ACL that blocks access.  Also, if the user has admin role, then the ACL will not stop them.

The beautiful thing about the business rules are that they cannot be bypassed, and you get a really nasty error message when you try to insert a record. And you can easily deactivate the business rules when you are ready.

The ACLs are a more elegant solution, but the business rules might be simpler.

 

 

DirkRedeker
Mega Sage

Hi

I recommend to create a new Before INSERT business rule on each table, you want users from creating new record. In each business rule, just CANCEL the INSERT operation.

that way, you do not need to play with ACLs and you can turn on/off that business rule any time you want to.

 

Let me know if that answers your question and mark my answer as correct and helpful, please.

Thanks and BR

Dirk

garth
Kilo Expert

All three replies pointed me in the right direction, thanks. That was as easy and effective as I hoped it would be.