Custom Activity Property Designer
Select Related Object
The Custom Activity Property Designer is used to configure a value of an activity property which expects a reference to a configuration item object or a list of objects. The Designer can be adapted to the needs of the activity property to guarantee the full compliance of the selected object references with the activity logic. Depending on the data type of the related property, the dialog allows to select either a single object or several objects. The Designer provides four possible ways to refer to the related objects.
Static Mode
This mode is used for selecting one or several objects that are available in the production database at a design time. As far as references to objects that are selected in this mode are kept as constant values, we recommend that you use this mode only if the objects cannot be or are not likely to be deleted afterward.
Depending on the configuration, the static data can be presented either as a plain list or as a hierarchical tree.
In the above screenshot, the appearance of the Select Related Object for the Responsible Role property is presented. It is designed to get a single non-mandatory object of the Security Role configuration item.
Dynamic Mode
Unlike the Static mode, which works with the static values, the Dynamic mode prepares the list of the ASQL queries that are executed on a workflow runtime to query data from the production database. The Designer can be configured to have a predefined query execution context, when the queried configuration item and filter expression are predefined, or to allow the workflow author thoroughly define the query.
For properties which accept several object references, the Dynamic mode allows selecting several column queries. On runtime the queries will be executed one by one, and the aggregated distinct result is assigned to the property.
Base-CI | Specifies the queried data definition. This value can be fixed depending on the configuration. You can use the icons to view a list of items or to search for an entry. |
Filter Expression | Filtering expression for the Query. Not allowed for editing until the Base-CI value is specified. |
Select a Related Object |
Shows the tree of the Schema relations of the selected Base CI. Each node can be expanded to get the Schema relations of the data definition that is related to the node. You can select only those relations that match the property target object. |
Custom Expression | In case of complex relation between the selected Base CI and queried objects, which cannot be defined via the Schema relations tree, it can be specified as a custom column ASQL expression. |
Selected Expressions | Shows the list of the selected ASQL expressions. This control is available only for properties that refer to several objects. |
Variable Mode
This mode uses the workflow arguments or variables to refer to the configuration item object. In case of the single object selection, the Designer lists all workflow arguments and variables of the System.Guid available in the Activity scope. In case of several related objects it also lists the variable which keeps the list of Guids (e.g. System.Guid[]).
The workflow author should be very careful to use this mode for assigning related objects, because the Designer logic cannot validate whether the selected variable contains the proper data. Therefore, it is very important to follow the instruction tip on the dialog top, which explains which data expects a property.
Expression Mode
In this mode you can use VB expressions for related objects in the Activity Designer. It is available in all Activity Designers and allows "multiple" expressions if a "multiple" relation cardinality has been defined. An integrated check minimizes errors; it allows only expressions that are actually valid (the syntax is checked during the input).
The related objects always relate to the selected data definition.
Configure Get Data Designer
This Designer helps to configure a query to the Matrix42 Workspace Management data layer and sets the mapping of the query result to the workflow variables.
Data Definition | Data definition that is used for the query. |
Where Expression | Specifies the ASQL where expression to filter the query result. See Where Expression Builder. |
Outputs | Defines the list of the query columns and their mapping to the workflow variables. |
Add button | Adds the new query column and assigns the workflow variable to store the result column value. |
Remove button | Removes the selected output column. |
Where Expression Builder
This Designer is provided for facilitating the process of the where expression authoring. For the data definition that is provided with the operation context, the Designer builds the Schema tree, where the data definition attributes are displayed as non-expandable nodes, whereas the relations are displayed as expandable nodes. After the tree is opened, it is dynamically extended with the related data definition schema.
Double-click a Schema tree node to generate an ASQL expression for the attribute or relation that is associated with the selected node and concatenate it with the resulting where expression by using a delimiter, defined either by OR or AND radio button. In addition, a parameter with the data type of the selected attribute is added to the Parameters list, to which the workflow variable should be assigned. For cases when the where expression cannot be automatically generated with the simple choice of a Tree node, it can be manually written in the Expression text box, and appropriate parameters for it can be manually managed with the Add/Remove buttons.
Data Definition | Name of the queried data definition that is provided with the dialog context. |
Expression | The resulting ASQL where expression with the specified parameters, which are used to pass dynamic values to ASQL statements. |
Parameters | Parameters that should be used in the expression. Using the parameters is a simple way to use the workflow context data in the expression. To add a parameter, you should specify the unique name, .NET type, and pick the workflow variable/argument of the same type that is available in the Activity scope. After the parameter is added, it can be addressed with the @name syntax in the expression.
For example: Name such as ‘%’ + @paramString + ’%’ and ID <> @paramGuid and ID in (@paramArray) |
Add button | Pop ups a modal dialog for adding a new parameter. |
Remove button | Removes the selected parameter from the list. |
Clear button | Closes the Where Expression Builder dialog with empty result. |
Select Attribute Designer
This Designer is used to specify the Schema attribute or ASQL column expression that should be obtained from the production database and define the workflow variable to keep the selected value. The dialog provides two ways to define the resulting column expression:
- Select an attribute in the Schema tree which has been built for the provided data definition.
- Write the entire ASQL column expression manually by using the ASQL Expression mode.
The Designer evaluates the provided expression to identify the data type of the result, and resets the workflow variables drop-down to display only variables of a proper data type. If a variable for storing the value is not available, it can be immediately created by using the Create Variable feature. After the variable is selected, the configuration is considered to be finished.
Data Definition | Name of the queried data definition that is provided with the dialog context. |
Current Expression | The resulting ASQL column expression. |
Create Variable button | Opens a dialog for creating a new workflow variable with the Current Expression data type. |
Select Variable Designer
The universal Custom Activity Designer is used to facilitate the process of setting the workflow variable or VB script expression to the activity property.
The Designer lists the workflow variables and arguments that are available in the activity scope. The data type of these variables and arguments matches the data type of the related property. For example, on the picture above only variables of the System.Guid[] type are displayed. The Type Expression mode uses the VB Script expression to define the property value. For the output properties only the Select Variable mode is available.
Select Pickup Value Designer
The Designer is used for defining the pickup value for the activity property.
The dialog provides two modes for assigning the pickup value to meet different implementation scenarios. For cases when the pickup value is a constant, it can be selected from available values in the static mode. For dynamic scenarios, the pickup value can be assigned to an Integer variable (e.g. selected from the database with the GetData activity) and then selected in the Variable mode.
Clear button: Closes the dialog and clears the Property value.
Define PowerShell Parameters
The Designer is used for defining PowerShell scripts for the Script property.
Use the Script property to insert a PS script. If this script contains any input parameters, they are listed under the Parameters property with the respective types.
Configure Object Attributes
This control is used to configure the attributes of configuration items. There are two variants - Create and Update, with identical dialog behaviors. Both variants can also be used to create and update multifragments. Mandatory fields (with two red asterisks) should be completed, otherwise it is not possible to save the changes.
Example for Create Object
Example for Update Fragments:
By Filter Expression | Here you can define filter expressions for the appropriate activity. |
By Object References | Here you can select variables for the appropriate activity. |
Show All Attributes | All available attributes are displayed (the checkbox is selected) or hidden (the checkbox is not selected) for the selected argument. If nothing has been configured, all attributes are always displayed accordingly. If individual attributes have been configured, this option is not selected. |
Localizable Text Box Designer
This control is used to enter text content which allows the usage of "placeholders". Placeholders are replaced with the runtime data during the workflow execution. Based on the property's needs, the appearance of the control can be configured to provide various features:
- HTML or Plain Text
The text in the HTML mode can be defined either in HTML designer or directly in plain HTML code. This mode activates additional Toolbar buttons for formatting the selected text, for inserting a hyperlink, and inserting a dynamic table.
- Single-line or Multiline
- Localizable Text
The control is used to specify a text for each culture that is supported by the system.
The language bar at the top of the dialog shows the flags that are associated with the culture. The green checkbox over a flag signals whether a text for the flag culture is provided. Click the opaque flag to switch to the active culture text.
Toolbar buttons:
- - Add place holder
Inserts a placeholder to the current cursor position. Click this button to open the Select Variable Designer for picking the workflow variable, the value of which will be injected to the text during the execution of the related workflow activity. The UI element, which represents a placeholder in the HTML designer, can be formatted as any other element.
- - Add dynamic table
Inserts a data-bound table into the HTML formatted multi-line content. Click the toolbar button to open the Configure dynamic table dialog for configuration table data source query and Table appearance. On runtime the result of the Query is rendered instead of the table placeholder.
Data Definition | Data definition for the query. |
Where Expression | Specifies the ASQL where expression for filtering the query result. Click the control lookup button to open the Where Expression Builder dialog. |
Columns |
List of columns that are defined for the table. Each table column defines an ASQL expression to get data from the database as well as attributes for adjusting column appearance and data formatting. Name: Title of a column. |
Up/Down buttons | Adjust the position of a selected column. |
Add button | Opens a modal dialog for adding new columns. |
Remove button | Removes the selected column. |
Format | Specifies table appearance styles, e.g. table font and table title background. The Width 100% checkbox specifies whether the layout is flexible and stretched to the entire container width. |
Sort by | Specifies a column based on which the query result set should be sorted. |
Direction | Sorting order for the values that are specified in the Sort by column. |
Configure Multi-String Data Designer
The control is used to select properties of an object that should be retrieved from an external system. It is available in the Get LDAP Entries activity. The control dialog is a list of rows with a drop-down combo box in each row. You can type or select a property that should be fetched. The list contains some properties of the User, Group, and Computer objects. If the type of the object that will be read is specified, only relevant properties are available for selection.
Double-click a row to open a drop-down or enter a property name.
Remove button: Use this button to remove the currently selected property from the list.
Edit Ldap Properties Designer
This control is designed for specifying a set of attributes that will be passed for an object that is synchronized to an LDAP server. It is used in the Update Ldap Entry and Create Ldap Entry activities.
Add button: Inserts an empty row where a new attribute can be added.
Name | Type an attribute name or select it from the list. The list contains some properties of the User, Group, and Computer objects. If the type of the object that will be read is already specified in the activity, only relevant properties are available for selection. |
Type | Type of attribute value. |
Variable / Argument / Expression | Open the Select Variable designer to set the source of the attribute value. |
Remove button: Use this button to remove the currently selected property from the list.
Arguments
This designer is used for passing variables between a main workflow and a nested workflow (a sub-workflow or a client workflow).
Double-click an empty row to add a new argument.
Name | Enter the source argument. Its value will be passed. |
Direction | Select the direction based on whether the argument should be passed to the nested workflow, returned to the main workflow or first passed to the nested workflow and then returned to the main workflow. |
Value | Enter the target argument. It will contain the passed value. |