Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The rights granted in a role of the yuuvis® RAD rights management can be accompanied by a clause that further refines them. The clause represents the "where ..." part of an eSQL statement. So any clause will be constructed as follows: "select * from dms:typename where <clause>". This page gives you examples of the possible clauses that can be used in this context.
It is important to know that the rights controlling the visibility of an object - 'Available' and 'Display' - will be precompiled and written to the Elasticsearch database. Thus, statements with dynamic parts such as currentuserid() or dateadd() will not work for these rights!

...

Statement

Description

exists (select 1 from sysversionedcreationtraceOwner2user r join org:sysuser u where r.sysid1=sysid and r.sysid2=u.sysid and u.sysname='user4711')

The right will be granted to all objects (of the corresponding object type) where the creator of the currently active version was user4711.
This means either the object is in version 1 and user4711 was the creator, or the object is in version 2 or higher and user4711 was the last modifier.

exists (select 1 from sysversionedcreationtraceOwner2user r where r.sysid1=sysid and r.sysid2=currentuserid())

The right will be granted to all objects (of the corresponding object type) where the creator of the currently active version was the currently logged-in user.
This means either the object is in version 1 and the currently logged-in user was the creator, or the object is in version 2 or higher and the currently logged-in user was the last modifier.

WARNING: This is a dynamic statement. Do not use this for the 'Available' or 'Display' right.

exists (select 1 from sysversionedcreationtraceOwner2user r where r.sysid1=sysid and r.sysid2='user4711' and sysversionumber=1)The right will be granted to all objects (of the corresponding object type) where the creator of the first version was user4711. 
This means user4711 created the (first version of the) item.

...

Statement

Description

sysitemid = id'ED01B5E5996648088D0A474C37962C93'

The right will be granted to the object (of the corresponding object type) that has the item ID "ED01B5E5996648088D0A474C37962C93"

longnumber = 123456789LThe right will be granted to all objects (of the corresponding object type) where the field "longnumber" has the value 123456789.
string1 = 'ipsum'The right will be granted to all objects (of the corresponding object type) where the field "string1" has the value "ipsum".
catalogfield = 'english'The right will be granted to all objects (of the corresponding object type) where the field "catalogfield" has the catalog entry with data value "english".
orderstable containsrowwithcondition(orderstablerecord.order = 'order4711')

The right will be granted to all objects (of the corresponding object type) where the table "orderstable" has a row where the column order has the value "order4711". 
This also applies to multi-tagging fields which are technically a table with one column. In this case, any chip has to have the value "order4711".

...