Page History
Learn more about the functions ISNULL, ISUNKNOWN, IFUNKNOWN, IS A, TYPE OF, ISACTIVE, GUID.
Overview
Function | Description |
---|---|
ISNULL | Checks whether a value is unknown. |
ISUNKNOWN | Replaces a value if that value is unknown. |
IFUNKNOWN | Alternative notation of the ISUNKNOWN function, which increases readability especially for long expressions. |
IS A | Checks the entity type of an instance. |
TYPE OF | Determines the entity type of an instance. |
ISACTIVE | Determines if an instance of a specific entity type is currently active. |
GUID | Generates a globally unique identifier which can later be used to uniquely mark and recognize a desired element. |
Functions
Include Page Miscellaneous function ISNULL Miscellaneous function ISNULL
Include Page Miscellaneous function ISUNKNOWN Miscellaneous function ISUNKNOWN
Include Page Miscellaneous function IFUNKNOWN Miscellaneous function IFUNKNOWN
Include Page Miscellaneous function IS A Miscellaneous function IS A
Include Page Miscellaneous function TYPE OF Miscellaneous function TYPE OF
Include Page Miscellaneous function ISACTIVE Miscellaneous function ISACTIVE
Include Page Miscellaneous function GUID Miscellaneous function GUID
Table of Contents | ||
---|---|---|
|
ISNULL
This function checks whether a value is unknown
Syntax
Code Block |
---|
ISNULL(expression) |
- expression - Expression that is checked.
Return type
- boolean - TRUE of the attribute is unknown, FALSE otherwise
Examples
Suppose the following data model.
...
- for Bob,
ISNULL ( Person.SequenceNumber )
= FALSE - for Jane,
ISNULL ( Person.SequenceNumber )
= TRUE
ISUNKNOWN
This function replaces a value if that value is unknown.
Syntax
Code Block |
---|
ISUNKNOWN(expression, value) |
- expression- Expression of which the value has to be returned if that value is known.
- value - Value to return if the attribute value is unknown.
Return type
- any type, equals the attribute type
Examples
Suppose the following data model.
...
- for Jane,
ISUNKNOWN ( Person.SequenceNumber , 999 )
= 999 - for Mary,
ISUNKNOWN ( Person.SequenceNumber , 999 )
= 667
IS A
Use this function to check the type of an instance. The function returns TRUE if the selected instance is of the specified entity.
Syntax
Code Block |
---|
instance IS A entity_name |
- instance - Instance to check.
- entity_name - Name of the entity as string.
Return type
- boolean
Examples
Suppose a domain model in which there is a singleton entity Residence
that has a multivalued relation hasRooms
with Room
. Room
is the base entity for singleton Kitchen
and not singletons Bedroom
and Bathroom
.
If you want to determine the number of bedrooms is the residence:
COUNT ( COLLECT Room FROM Residence.hasRooms WHERE ( Room IS A “Bedroom” ) )
If you want to determine the number of bathrooms is the residence:
COUNT ( COLLECT Room FROM Residence.hasRooms WHERE ( Room IS A “Bathroom” ) )
TYPE OF
Use this function to determine the type of an instance. The function returns the name of the entity.
Syntax
Code Block |
---|
TYPE OF base_entity |
- base_entity - Name of the instance's base entity.
Return type
- string
Examples
Suppose a domain model in which there is a singleton entity Residence
that has a multivalued relation hasRooms
with Room
. Room
is the base entity for singleton Kitchen
and not singletons Bedroom
and Bathroom
.
- for the
Kitchen
instance the expressionTYPE OF Room
= “Kitchen” - for the
Bedroom
instances the expressionTYPE OF Room = “Bedroom”
= TRUE
CHANNEL
You can get the name of the current channel by using the system attribute system.channel. This is a predefined system attribute, so you don’t have to create it yourself.
At run-time the system returns a string value with the channel you choose while logging on. This value is assigned to the attribute system.channel.
LANGUAGE
You can get the name of the current language by using the system attribute system.language. This is a predefined system attribute, so you don’t have to create it yourself.
At run-time the system returns a string value with the language that you choose while logging on. This value is assigned to the attribute system.language.
PAGE
You can get the name of the current page by using the system attribute system.currentpage. This is a predefined system attribute, so you don’t have to create it yourself.
At run-time the system returns a string value with the page name of the page you are on, this value is assigned to the attribute system.currentpage.
PRIVILEGES
You can get the name of the current privileges by using the system attribute system.privileges. This is a predefined system attribute, so you don’t have to create it yourself.
At run-time the system returns a list of string values of the privileges that you choose while logging on. These values are assigned to the attribute system.privileges.
AUTHORIZATIONROLES
Authorizationroles have been replaced with Privileges. For backwards compatibility, after logging on to the runtime, the system.authorization roles
attribute will be filled with the user's privileges.
See also:
EVENT
You can capture the parameters associated with an event by using the system attribute system.event. This is a predefined system attribute, so you don’t have to create it yourself.
At run-time the system returns the string values with the parameters associated with the event on the current page. This value is assigned to the attribute system.event.
Beside these user defined event parameters, there are some container types that come with their own built-in buttons. Standard container types with this behaviour are:
...
Even though some action labels are the same, the system handles them in a different way, this depends on the context. For instance ‘Edit’ will open an existing instance, ‘Add’ will create a new instance, however the action ‘_edit_instance’ is the same.
Special behaviour of the AQ_InstanceSelector
The AQ_InstanceSelector adds the following actions to system.event, depending on the action that was taken in the instance selector:
...
...
...
...
...