428 views

Description

While importing the entitlements it may fail with error as below:

""

The custom column field 'sys id' is mandatory but was not present"

""

Release or Environment

Jakarta++

Cause

Somehow the sys_id column on tables alm_license and/or alm_asset is marked as mandatory. OOB this is not mandatory.

Resolution

Option #1:

You can check the dictionary versions and see why/how the sys_id is marked as mandatory? If any customizations exist please review and revert it to OOB so that it is not mandatory.

Option #2:

Run the below script in "Scripts - Background" to mark the dictionary as not mandatory. (Run it for alm_asset as needed and if applicable)
Script:
runIt();
function runIt(){
     var gr = new GlideRecord('sys_dictionary');
     gr.get('SysIDof_Dictionary'); // Replace the Sys ID of alm_licese.sys_id OR alm_asset.sys_id column as needed.
     if(gr){
              gr.mandatory = 'false';
              gr.setWorkflow(false);
              gr.update();
            }
}

Option #3 (Strongly Recommended):

Please reach out to ServiceNow Technical support team and they will investigate why the dictionary changed and they will apply the changes for you on DB level, especially for production instances.

Additional Information

Article Information

Last Updated:2020-06-30 12:41:08
Published:2020-06-30
Pasted image.png[View]Pasted image.png[View]