Best approach to make a field editable only after approval and closure on a catalog request?

dhotreshwet
Kilo Contributor

Hi Experts,

I have a requirement on a custom request process (GE/IGO).

Requirement:

Create a new custom field on the backend form (RITM/Request record).

The field should remain read-only while the request is in the approval process.

Once all approvals are completed (approved) and the request is closed/completed, the Legal team should be able to edit only this specific field to add additional information if changes are identified later.

There is also a requirement to allow attachments to be added after the request has been closed.

Questions:

What is the recommended ServiceNow approach to make a field editable only after approvals are completed and the record is closed?

Would a combination of ACLs, UI Policies, or Client Scripts be the best solution?

Has anyone implemented a similar requirement where only selected fields remain editable on a closed request while the rest of the record stays read-only?

What is the best way to allow attachments on a closed record without reopening it?

Any guidance or best practices would be appreciated.

Thanks!

1 ACCEPTED SOLUTION

Tanushree Maiti
Tera Patron

Hi @dhotreshwet 

 

1. UI policy and UI policy Action is best option

2. Yes. if sc_task is closed completed, in that case you need to implement it by Client script/UI policy on SC_task. Make sure in trigger condition, you are mentioning catalog name else impact is global.

3. using ACL 

 

Try this,

 

  1. Add the variable in the catalog item
  • Navigate to Service Catalog > Maintain Items and open your specific Catalog Item.
  • Scroll to the Variables related list and Add the variable.
  • Ensure the Global field is set to True

 

  1. 2.  Hide Variable on Catalog Item and RITM
  • On the Catalog Item form, scroll down and find the Catalog UI Policies related list. Click New.
  • Name the policy and set the conditions (if any).
  • Check the Applies on Catalog Item view and Applies on Requested Item view checkboxes, and uncheck them if they are already active.
  • Save the UI Policy
  • scroll to the Catalog UI Policy Actions related list and click New.
  • Select your variable from the Variable name dropdown.
  • Set Visible to False 
  • Click Submit

 

  1. Make Variable Mandatory on Catalog Task
  • Create another UI Policy,
  • Check Applies to Catalog Task to ensure it fires exclusively on the SC Task form, and uncheck the other views if you haven't already.
  • scroll to the Catalog UI Policy Actions related list and click New.
  • Select your variable from the Variable name dropdown.
  • Set Visible to True and Mandatory to True.
  • Click Submit

Attchment:

The restriction is enforced through ACLs, so you can create a new row-level ACL on  sys_attachment to permit create, delete, or other actions when the table matches the specified condition.

 

Please Accept the solution if it assisted you with your question & Mark this response as Helpful.
Regards
Tanushree Maiti
ServiceNow Technical Architect
LinkedIn: https://www.linkedin.com/in/tanushreemaiti

View solution in original post

1 REPLY 1

Tanushree Maiti
Tera Patron

Hi @dhotreshwet 

 

1. UI policy and UI policy Action is best option

2. Yes. if sc_task is closed completed, in that case you need to implement it by Client script/UI policy on SC_task. Make sure in trigger condition, you are mentioning catalog name else impact is global.

3. using ACL 

 

Try this,

 

  1. Add the variable in the catalog item
  • Navigate to Service Catalog > Maintain Items and open your specific Catalog Item.
  • Scroll to the Variables related list and Add the variable.
  • Ensure the Global field is set to True

 

  1. 2.  Hide Variable on Catalog Item and RITM
  • On the Catalog Item form, scroll down and find the Catalog UI Policies related list. Click New.
  • Name the policy and set the conditions (if any).
  • Check the Applies on Catalog Item view and Applies on Requested Item view checkboxes, and uncheck them if they are already active.
  • Save the UI Policy
  • scroll to the Catalog UI Policy Actions related list and click New.
  • Select your variable from the Variable name dropdown.
  • Set Visible to False 
  • Click Submit

 

  1. Make Variable Mandatory on Catalog Task
  • Create another UI Policy,
  • Check Applies to Catalog Task to ensure it fires exclusively on the SC Task form, and uncheck the other views if you haven't already.
  • scroll to the Catalog UI Policy Actions related list and click New.
  • Select your variable from the Variable name dropdown.
  • Set Visible to True and Mandatory to True.
  • Click Submit

Attchment:

The restriction is enforced through ACLs, so you can create a new row-level ACL on  sys_attachment to permit create, delete, or other actions when the table matches the specified condition.

 

Please Accept the solution if it assisted you with your question & Mark this response as Helpful.
Regards
Tanushree Maiti
ServiceNow Technical Architect
LinkedIn: https://www.linkedin.com/in/tanushreemaiti