The resource.name is the real name of your sheet (ex. : "My dashboard").
If you want to work with the ID of the sheet, you should use resource.id.
You will find this ID in QMC / App Objects and add the ID column.
One more things :
You can simplify this ((user.@Stream_Access="Assistant" and resource.@Stream_Access="Assistant"))
with this ((user.@Stream_Access=resource.@Stream_Access))
=> User and Stream with the same @Stream_Access values will have access.
No need to create multiple values for "Assistant", then "xxx" and so on...
Hi Christophe ,
You answered exactly what I was looking , Really appreciated.
I have tried to implement your solution and checked to App Objects and found every sheet has an resource id and we can use it instead of Name , Quiet enough , Now what is happening now I have written a code as below:
(user.name="Jarvis" and resource.objectType="sheet" and resource.name="Budget Analysis")
Then I have achieved what I want, I logged in with JARVIS and I found only Budget Analysis sheet is visible to Jarvis ,Now problem is when I open this Budget Analysis sheet I found there is no visibility of charts ,Its Blank or invalid visuals
When I try to write code as:
resource.id="TqwwFf"or resource.name="Sales vs Budget"
Sales vs Budget is one of the charts which are available on Budget Analysis sheet and TqwwFf is the Object ID the same chart which I got from developer hub then single configurator .
but still no chart is visible
I wondered why Chart names are coming under app.object i.e Sales vs Budget in resource name even if they are not app objects because when I look at the app Object folder there only sheet names are available, Please explain this
Please provide me solution how can I see the visuals or charts when I restrict one sheet to one user and explain me what I am doing wrong if it is
I know this issue too. It's when you disabling Stream security rules. If you look at this it, this rules says to give access to AppObject except loadmodel and app_appscript.
It seems to also disable some visual abality. I don't really understand.
It's better to create a new rule, based on the Stream rule. In this new rule you will add :
and resource.objectType != "sheet".
So every others object type will be allow except loadmodel, app_appscript and sheet.
The sheet visibility are managed by the new rule we spoke before.
I found one another very easy way , Almost the same you told me initially, We just need to modify the same security rule which we have written for restrict concern user JARVIS to one single sheet with OR condition as :
(user.name="Jarvis" or resource.objectType="masterobject" or resource.name="*")
It will give visual access to the concern sheet and it is working fine.
Please clarify below terms :
loadmodel is the same which is data model schema ?
app_appscript. : ETL script we writes in scripting engine ?
what you mentioned this time same I found initially when I started working on it, I was confused why do I want to add resource.objectType != "sheet" in Stream access rule , I thought this should be in APP. Object template, Please clarify with this in detail , how can I restrict any app object in stream access rule ?