Chat now with support
Chat with Support

Identity Manager 9.0 LTS - Configuration Guide

About this guide One Identity Manager software architecture Customizing the One Identity Manager default configuration Customizing the One Identity Manager base configuration One Identity Manager schema basics Editing the user interface
Object definitions for the user interface User interface navigation Forms for the user interface Statistics in One Identity Manager Extending the Launchpad Task definitions for the user interface Applications for configuring the user interface Icons and images for configuring the user interface Using predefined database queries
Localization in One Identity Manager Process orchestration in One Identity Manager
Mapping processes in One Identity Manager Setting up Job servers
The One Identity Manager Service functionality Tracking changes with process monitoring Conditional compilation using preprocessor conditions Scripts in One Identity Manager
Visual Basic .NET scripts usage Notes on message output Notes on using date values Tips for using Windows PowerShell scripts Using dollar ($) notation Using base objects Calling functions Pre-scripts for use in processes and process steps Using session services Using #LD-notation Script library Support for processing scripts in the Script Editor Creating and editing scripts in the Script Editor Copying scripts in the Script Editor Testing scripts in the Script Editor Testing script compilation in the Script Editor Overriding scripts Permissions for running scripts Editing and testing script code with the System Debugger Extended debugging in the Object Browser
One Identity Manager query language Reports in One Identity Manager Adding custom tables or columns to the One Identity Manager schema Web service integration One Identity Manager as SCIM 2.0 service provider Processing DBQueue tasks One Identity Manager Service configuration files

Preprocessor conditions in objects

IMPORTANT: Each modification to preprocessor objects requires recompiling the One Identity Manager database.

You can enter a preprocessor condition directly for certain objects.

To enter a preprocessor condition

  • In the Preprocessor condition property, enter the preprocessor expressions of the configuration parameters. You can link preprocessor expressions together with AND, OR, NOT, ().

Example:

The column Person.RiskIndexCalculated should only be shown in the interface if the risk function is set.

The following preprocessor conditions are entered in the column definition (DialogColumn table).

Table 132: Example for preprocessor conditions
Table Column Preprocessor condition

Employee

RiskIndexCalculated

COMPLIANCE

If a preprocessor-relevant configuration parameter is enabled or disabled, tasks are created for the DBQueue Processor to calculate all preprocessor and calculation tasks for the affected objects. The Disabled by preprocessor option is updated for each object. If the re-interpretation of the preprocessor conditions leads to a change in the option, the preprocessor interpretation tasks that follow are generated for the dependent objects. User permissions can also be affected. After DBQueue Processor has processed the tasks, the database needs to be recompiled.

The interpretation of preprocessor conditions has the following effects:

  • If a table is disabled by a preprocessor condition then all the columns and object definitions that relate to the table and the user interface forms and the associated navigation are disabled.

  • If a primary key column is disabled, all foreign key columns that relate to it are disabled.

  • If a primary key member is disabled according to the preceding rule (for example, in the case of many-to-many tables), then this primary key’s table and all further columns belonging to this table are also disabled.

    This method has the advantage that, for example, when a table such as ADSGroup is disabled then all assignments are automatically disabled, such as the table, DepartmentHasADSGroup.

NOTE: In the Designer, you can find an overview of existing preprocessor dependencies in the One Identity Manager Schema > Preprocessor dependencies category.

Related topics

Preprocessor conditions in VB.Net expressions

IMPORTANT: Every modification to preprocessor conditions in VB.Net expressions requires recompiling the One Identity Manager database.

Preprocessor conditions can be used in VB.Net expressions. Script code that is dependent on a preprocessor condition has to be passed in an #if...then...#else statement. To formulate the preprocessor condition, use the preprocessor expressions of the preprocessor-related configuration parameters. You can link preprocessor expressions together with AND, OR, NOT, ().

The interpretation of the preprocessor conditions is not carried out until the script is generated.

Syntax

#If <preprocessor_condition_1>

’ code, for this preprocessor condition

#ElseIf <preprocessor_condition_2> then

’ code, for this preprocessor condition

#Else

' other code

#Endif

Example:

The ITSHOP preprocessor condition is entered in the column definition (DialogColumn table) for the ADSGroup.IsForITShop column. The template in the ADSGroup.DisplayName column should reference the IsForITShop column. In order to remain compatible, the following construction has to be used for the template:

#If ITSHOP Then

If $IsForITShop:Bool$ And $UID_AccProduct$ <> "" Then

Value = $FK(UID_AccProduct).Ident_AccProduct$

Else

value = $cn$

End If

#Else

value = $cn$

#End If

Related topics

Evaluation of preprocessor conditions during compilation

In order to become effective on a systemwide basis, every modification to preprocessor relevant configuration parameters as well as modifications to preprocessor conditions on objects and VB.Net expressions requires the One Identity Manager database to be recompiled.

The following is true for compiling:

  • Internal program code in the form of an #if...then...#else statement is created for objects that have a preprocessor condition. Program code in sections whose preprocessor condition does not apply, do not exist for the compiler and are therefore not parsed. These objects are assumed not to exist.

  • VB.Net expressions that contain preprocessor conditions are compiled. The program code exists. The interpretation of the preprocessor conditions is not carried out until the script is generated.

These templates are valid for compiling:

  • Templates for columns that are disabled by preprocessor conditions are not compiled and the resulting relations are not saved in the DialogNotification table. These columns are therefore considered to be non-existent.

  • Templates that relate to disabled columns cause a compiler error message if the corresponding part of code is not linked in a preprocessor statement.

Scripts in One Identity Manager

Scripts are used in One Identity Manager to monitor and maintain data consistency and customer business logic in the database. Scripts can be used to:

  • Test column values

  • Trigger events

  • Create, change, and delete objects and therefore manipulate the database.

Detailed information about this topic
Related Documents

The document was helpful.

Select Rating

I easily found the information I needed.

Select Rating