Record fields is not editable
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
3 hours ago
Hi,
A bit new to ServiceNow but I will try to be concise as possible.
So we created this table and extended it from HCLS case. The table is under our own application scope. We added new fields on this table but since we extended this, there are a lot more existing. The problem now is that after creating the form view and trying to add record for it, the new fields are disabled.
Initial thought was that this is because of scope but if we try other views like HCLS, the fields are editable. Also tried changing scopes while editing the record but didn't do anything. I think, like ChatGPT suggested, that this isn't a scope issue because we can edit the record, just not the newly added fields. ChatGPT, the suggested to look into ACL and scripts but I am also not sure on those since we really didn't add any new scripts to disable or make read-only any or all fields. If there was, then it should affect also the other view. Taking also in consideration that these are only new fields that are disabled. In the screenshot I added, note that the 'Assigned To' is editable because it is an existing field.
I am not sure what else to check right now. Anybody had this issue?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
an hour ago
One of the possible reasons could be Missing Write ACLs for New Scoped Fields
When you create a custom table in a scoped application, ServiceNow automatically generates default table-level ACLs (Read, Write, Create, Delete). However, field-level security behaves differently.
Because the table is scoped, newly added fields sometimes do not inherit explicit write permissions for the user role unless an explicit wild-card (*) write ACL or field-specific write ACL covers them.
Why it works in HCLS view: The base HCLS view might be utilizing parent-level fields or evaluated under different baseline security contexts that grant implicit access, whereas your custom view under your application scope strictly enforces scoped security rules.
How to check & fix:
Navigate to System Security > Access Control (ACL).
Look for a write ACL where the Name matches your custom table and field
If no write ACL explicitly covers your custom fields for your user's role, create one:
Type: record
Operation: write
Name: Select your custom table and choose * (or the specific new field).
Requires Role: Add the roles that need permission to edit these fields
Hope this helps.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
52m ago
Thanks @KPNow. I think you are right. I checked the new fields and it indeed doesn't have any ACL. I compared this to the other fields that were inherited and they do have ACLs. The problem now is I can't add any ACL as I don't have the "New" button. I do have the admin role, tried to find a security_admin role but can't find it on our instance.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
44m ago
Even with a standard admin role, ServiceNow hides the New button on ACLs because security changes require an extra layer of privilege called security_admin. If you can't find that role in your instance, it usually means it hasn't been assigned to your user account yet.
To fix this, go to your user record and explicitly add the security_admin role to your profile. Once it's assigned, click your profile icon in the top right corner, select Elevate Roles, and check the box for security_admin. Refresh your page, and the New button will finally show up so you can create your ACLs.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
36m ago
Played around with the filters but still can't find the security_admin role:
I did try to also elevate my role to these but didn't do anything:
I this something I need to raise already to support?