Join the #BuildWithBuildAgent Challenge! Get recognized, earn exclusive swag, and inspire the ServiceNow Community with what you can build using Build Agent.  Join the Challenge.

Reference field limited to the current Application Scope

amjadelmerabet
Tera Expert

Hello Community,

 

I'm working on a catalog item with a reference field for the Tables table. For some reason, the choices are limited to the current selected Application Scope even though I have no filter to only get the tables defined on my current scope. From my understanding, it seems like a default behavior of ServiceNow but I would like to know if there is a way to change this to retrieve all the records regardless of the Application Scope.

 

Update: After doing some tests in my PDI, I found out that this is happening only because the variable is part of a Multi-Row Variable Set.

 

Thanks,

1 ACCEPTED SOLUTION

amjadelmerabet
Tera Expert

The issue was caused by the advanced reference qualifier applied to the reference variable and not because the variable was inside the multi-row variable set. We solved it by adding the attribute allow_public=true.
Thanks to everyone who tried to help 😉.

View solution in original post

5 REPLIES 5

Veer
Tera Guru

@amjadelmerabet 

I dont think we can able to achieve this, scope protects applications artifacts and its data if app administration is enabled. I will still open this query to rest of the community to respond. 

Please mark this as helpful /  accepted solution if it resolves your issue.

Thanks & Regards

Veer

amjadelmerabet
Tera Expert

By the way, this only happens in the Portal and not on the backend.

sunil maddheshi
Tera Guru

@amjadelmerabet 

Yes, this is a default behavior in ServiceNow where reference fields pulling from the sys_db_object (Tables table) are limited to the current application scope. This is controlled by ServiceNow's Application Scope Protection to prevent cross-scope data access. May be You can give a try like below:

Navigate to System Applications > Studio , Open your current application's settings. somewhere Under Cross-Scope Access, look for sys_db_object. Grant Read Access to the table from other scopes.

 

Please mark helpful/correct if this helps you!

 

 

For some reason, this happens only when the variable is part of a Multi-Row Variable Set. So I don't know if the Cross-Scope Access is different in MRVSs because other than that I'm able to select from all the tables without an issue.