OneIM Configuration
OneIM Configuration
Configuration Guide
Copyright 2022 One Identity LLC.
ALL RIGHTS RESERVED.
This guide contains proprietary information protected by copyright. The software described in this
guide is furnished under a software license or nondisclosure agreement. This software may be used
or copied only in accordance with the terms of the applicable agreement. No part of this guide may
be reproduced or transmitted in any form or by any means, electronic or mechanical, including
photocopying and recording for any purpose other than the purchaser’s personal use without the
written permission of One Identity LLC .
The information in this document is provided in connection with One Identity products. No license,
express or implied, by estoppel or otherwise, to any intellectual property right is granted by this
document or in connection with the sale of One Identity LLC products. EXCEPT AS SET FORTH IN THE
TERMS AND CONDITIONS AS SPECIFIED IN THE LICENSE AGREEMENT FOR THIS PRODUCT,
ONE IDENTITY ASSUMES NO LIABILITY WHATSOEVER AND DISCLAIMS ANY EXPRESS, IMPLIED OR
STATUTORY WARRANTY RELATING TO ITS PRODUCTS INCLUDING, BUT NOT LIMITED TO, THE
IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, OR NON-
INFRINGEMENT. IN NO EVENT SHALL ONE IDENTITY BE LIABLE FOR ANY DIRECT, INDIRECT,
CONSEQUENTIAL, PUNITIVE, SPECIAL OR INCIDENTAL DAMAGES (INCLUDING, WITHOUT
LIMITATION, DAMAGES FOR LOSS OF PROFITS, BUSINESS INTERRUPTION OR LOSS OF
INFORMATION) ARISING OUT OF THE USE OR INABILITY TO USE THIS DOCUMENT, EVEN IF
ONE IDENTITY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. One Identity makes
no representations or warranties with respect to the accuracy or completeness of the contents of this
document and reserves the right to make changes to specifications and product descriptions at any
time without notice. One Identity does not make any commitment to update the information
contained in this document.
If you have any questions regarding your potential use of this material, contact:
One Identity LLC.
Attn: LEGAL Dept
4 Polaris Way
Aliso Viejo, CA 92656
Refer to our Web site (http://www.OneIdentity.com) for regional and international office
information.
Patents
One Identity is proud of our advanced technology. Patents and pending patents may apply to this
product. For the most current information about applicable patents for this product, please visit our
website at http://www.OneIdentity.com/legal/patents.aspx.
Trademarks
One Identity and the One Identity logo are trademarks and registered trademarks of One Identity
LLC. in the U.S.A. and other countries. For a complete list of One Identity trademarks, please visit
our website at www.OneIdentity.com/legal/trademark-information.aspx. All other trademarks are
the property of their respective owners.
Legend
About us 490
Contacting us 491
Index 493
The One Identity Manager Configuration Guide gives you an overview of the One Identity
Manager architecture and the basics of working with objects in One Identity Manager. It
describes the structure of the One Identity Manager schema and explains how to customize
and extend the One Identity Manager schema to specific requirements.
In addition, it details how to customize the user interface of the administration tools,
especially Manager and Launchpad. The guide explains how to extend the user interface
navigation, customize forms, create reports, or localize custom captions.
The basic rules for process orchestration are described in the One Identity Manager. It
describes how to customize processes to your requirements and your own processes. An
explanation of how to configure logging of data changes and information from process
handling is also provided. Advanced configuration settings for the Job server One Identity
Manager Service are described. In addition, you will find information about integrating
web services.
This guide is intended for end users, system administrators, consultants, analysts, and any
other IT professionals using the product.
NOTE: This guide describes One Identity Manager functionality available to the default
user. It is possible that not all the functions described here are available to you. This
depends on your system configuration and permissions.
Available documentation
You can access One Identity Manager documentation in the Manager and in the Designer by
selecting the Help > Search menu item. The online version of One Identity Manager
documentation is available in the Support portal under Technical Documentation. You will
find videos with additional information at www.YouTube.com/OneIdentity.
The basis for the One Identity Manager structure is classic 3-tier architecture. However, in
One Identity Manager the object layer (business logic) is shared. This allows high
performance gain due to separate time and location processing.
Database layer
The database represents the core of One Identity Manager. It fulfills the main tasks, which
are managing data and calculating inheritance. Object properties can be inherited along the
hierarchical structures, such as departments, cost centers, location, or business roles. For
data management, the database maps managed target systems and ERP structures as well
as compliance rules and access permissions.
The database is separated into two logical parts; payload and metadata. The payload
contains all the information required to maintaining data, such as information about
employees, user accounts, groups, memberships, operating data, approval workflows,
attestation, recertification, and compliance rules.
The metadata contains the description of the application data model and scripts for
formatting roles and templates or conditional interactions. One Identity Manager’s entire
system configuration, all the front-end control settings, and the queues for asynchronous
processing of data and processes are also part of the metadata.
Recalculation of inheritance is started by the database trigger logic. For this purpose, the
triggers place processing tasks in a task list known as the DBQueue. The DBQueue
Processor processes these tasks and recalculates inheritance of the respective database
objects. A table labeled JobQueue is used to store processing orders that are to be run by
the object layer.
A SQL Server or a managed instance in Azure SQL Database is used as the
database system.
Object layer
The object layer enables object oriented access to the database data. The VI.DB.DLL
generates entities for objects and collections. Entities use external session services for
loading (EntitySource) and saving (UnitOfWork) data objects. Save operations are grouped
The presentation layer comprises front-ends that are used to input and output data. There
are different front-ends for different tasks. For example, a different front-end is used to
configure One Identity Manager than that for managing employee data. The contents to be
displayed and the extent to which it can be altered is determined in conjunction with the
access permissions of the respective user through the object layer. Available front-end
solutions are both client and browser-based.
Clients connect to an application server storing business logic. The application server
provides a connection pool for accessing the database and ensures a secure connection
to the database. Clients send their queries to the application server, which processes
the objects, for example, by determining values using templates and sending the
results back to the clients. The data from the application is sent to the database when
an object is saved.
Clients can alternatively work without external application servers by retaining the object
layer themselves and accessing the database layer directly. In this case, only the part of
the object layer that is required for the acquisition process is mapped in the clients.
To implement browser-based user interfaces, there is an application running on a web
server that is based on a website render engine. Users use a web browser to access the
website that has been dynamically set up and customized for them. Data exchange
between database and web server can take place either directly or through the
application server.
Related topics
l Working with objects in One Identity Manager on page 21
l Inserting, modifying, and deleting an object in One Identity Manager on page 24
Objects and collections are mapped using entities. Entities are those data units that can be
called from the database and saved to the database. An entity corresponds to a row in a
table in the database. It contains data columns and some metavalues such as display
values and permissions.
Entities can contain either some or all columns in a table. In the first case, these are
flagged by the IsPartial property and cannot be changed.
There are three types of entities:
l Read-only
Data values can only be read. You cannot save the entities.
l Delayed logic
You can change and store the entities. The delayed logic mode runs all business logic
rules and methods when saving the entity. If the entity runs with an application
server, it exists on the client side and does not use server resources.
l Interactive
The entities have the following default methods for performing the database operations.
Method Description
EntitySource Creating new objects and collections or loading objects and collec-
tions
When an object is loaded, all the columns are loaded. When a collection is loaded, not all
the columns are loaded for performance reasons. The primary key columns are loaded and
all columns that are in the display template and those where an object is marked for
deletion. Defined display templates specify how each collection object is displayed in the
front-end. Defaults for each table's display template are stored in the One Identity Manager
schema and can be customized.
Objects recognize the following default events, which can be generated as a result
of saving.
Event Description
Processes can be linked to these events that run actions in different target systems, for
example, to add user accounts, add a home directory on a server, or write data to the One
Identity Manager database.
Insert an Object Insert UID is created and the object is added to the
object. does not database.
exist.
Delete Object Delete For objects that have the Marked for deletion
object. exists in (XMarkedForDeletion) property:
the
l The MarkForDeletion method is run.
database
Objects are locked and cannot be modified.
and is
loaded. l If deferred deletion > 0 days is configured, a
deferred operation is created for deletion.
The objects are initially disabled. During the
retention period, you have the option to
restore the objects. If a deleted object is
restored, the object properties are reset to
their state before deletion. The objects are
finally deleted when the deferred deletion
time period has expired.
l Object with deferred deletion on 0 days are
deleted immediately.
Related topics
l Inserting, modifying, and deleting an object in One Identity Manager on page 24
After saving the object in the front-end, run the following steps in the object layer:
l Start a transaction (Begin Transaction).
l The following steps are processed in parallel:
l Save the object in the database.
l Apply the templates and formatting scripts to dependent objects.
l Generate processing tasks for the One Identity Manager Service in the
Job queue.
l Generate processing tasks for the DBQueue Processor in the DBQueue.
l Generate a record of changes in the history.
l The transaction ends with success (Commit Transaction) or changes are rolled back if
an error occurs (Rollback Transaction).
The following figure shows the flow of data when an object is inserted.
You can customize large parts of the One Identity Manager default configuration. For
example, you can specify your own display names for columns or menu items or define
your own templates and formatting rule for column values.
If you customize a default configuration, the change is captured by a trigger and the default
configuration is copied into a configuration buffer. You can retrieve changes from the
configuration buffer and restore the default configuration in this way.
l Changes to data are labeled with the icon in front of the modified value. As long as
the changes have not been saved, you can restore them by clicking the icon.
l Changes to the default configuration are labeled with the Designer icon in the . To
restore the default configuration, click the icon.
Related topics
l Reloading changes dynamically on page 27
l Locking and unlocking individual properties for editing on page 29
l System configuration reports on page 30
Which columns are reloaded is defined in the data model. In the Designer, you can find an
overview of the semaphore in the category Base data > Advanced > Semaphore.
l To reload data after changes to a column, the column must be assigned to
the semaphore.
l To reload data after inserting or deleting in a table, the primary column key must be
assigned to the semaphore.
Changes Semaphore
Icons Image
Notification Notification
NOTE: To lock properties for editing, users require the Allow setting a change lock for
specific properties of individual objects program function (Common_
AllowPropertyLocks).
If certain users are allowed to lock properties for editing, you can assign the permissions
to the users through permissions groups.
l The QBM_PropertyLock permissions group is provided for non role-based
login. This group owns the program function. Add the system users to the
permissions groups. Administrative system users automatically obtain these
permissions groups.
Report Contents
System config- This report contains the description and settings of enabled config-
uration uration parameters.
Processes This report contains the description of all enabled default processes. The
process steps and their parameters as well as the scripts used and config-
uration parameters for a process are listed.
Process The report contains the description of all process components with their
Components tasks and parameters.
Templates This report contains the descriptions of all default templates including
affected columns, scripts used and configuration parameters.
Formatting This report contains the description of all default formatting rules
rules including scripts used and configuration parameters.
Scripts This report contains the description of all default scripts including config-
uration parameters used. The usage in processes, process steps,
templates, formatting rules and scripts is listed for each script.
Full report Full report about system configuration. The report summarizes the
information contained in the partial reports.
Report Contents
System config- This report contains the description and settings of enabled config-
uration uration parameters.
Processes This report contains the description of all enabled default processes. The
process steps and their parameters as well as the scripts used and config-
uration parameters for a process are listed.
Templates This report contains the descriptions of all default templates including
affected columns, scripts used and configuration parameters.
Formatting This report contains the description of all default formatting rules
rules including scripts used and configuration parameters.
Scripts This report contains the description of all default scripts including the
configuration parameters used. Process usage, process steps,
templates, formatting rules and scripts are listed for each script.
One Identity This report contains the description of custom One Identity Manager
Manager schema extensions (tables and columns). In addition, information about
schema customized database objects is also listed, such as database procedures,
functions, triggers, or view definitions.
Full report Full report about system configuration. The report summarizes the
information contained in the partial reports.
The base data includes the main settings for configuring One Identity Manager. They are
usually checked and customized on a one-off basis before the system goes into operation.
The base data contains the database connection data, authentication module usage,
languages used or the configuration parameter settings.
Related topics
l Overview of the database settings on page 32
l Changing database connection data on page 35
l Database configuration for a test, development, or productive environment on
page 36
l Changing the database staging level on page 37
l Language settings for displaying and maintaining the data on page 37
l Setting login languages on page 38
l Default country for determining working hours and public holidays on page 38
l Configuration parameters for system configuration on page 39
l Editing configuration parameters on page 39
l Creating custom configuration parameters on page 40
l For more information about the authentication modules, see the One Identity
Manager Authorization and Authentication Guide.
1. In the Designer, select the Base Data > General > Databases category.
2. Select the database in the List Editor.
3. The following information appears:
Property Meaning
Main database Identifies the database as the main database. The One Identity
Manager database is marked with this option when the schema
is installed the first time.
Customer prefix Customer ID for prefix. The customer prefix is used to create
and transfer customized scripts, processes, and extensions to
the One Identity Manager schema.
Module owner Module owner ID for prefix. The prefix is used to create and
transfer customized scripts, processes, and extensions to the
One Identity Manager schema.
Custom staging level Detailed information about staging levels. This information is
shown in the status bar of the programs in the database connec-
tion tooltip and in the installation overview in the Launchpad.
Status bar color The color of the status bar can be displayed in a different color
to the layout depending on the staging level. The color can be
defined by template and customized. The following colors are
defined as default:
l None - development system database is connected.
l Green - test environment database is connected.
l Yellow - production system database is connected.
Last compiler relevant Date and time of the last compiler relevant modification. If the
configuration date value is changed the database has to be recompiled.
Simulation started Time at which the last front-end simulation was started.
Stop DBQueue If this option is set for the main database, the DBQueue
Processor Processor does not process any more tasks. You can stop and
start the DBQueue Processor with the appropriate admin-
istrative permissions in Job Queue Info.
Stop One Identity If this option is set for the main database, the One Identity
Manager Service Manager Service does not process any more tasks. You stop
and start the service with the appropriate administrative
permissions in Job Queue Info.
For more information, see the One Identity Manager Process
Monitoring and Troubleshooting Guide.
Connection parameter Login data for the database user, database server, and the
database. The data is entered into the database during schema
installation.
Country (default) The default country. The country that is taken into account
when determining working hours and public holidays.
Database ID Identifier for the database. The database ID is taken from the
original database server and database data. The database ID
has to be recalculated if a database is created from a database
backup on another server. When a database is compiled, the
database ID is checked and changed if necessary.
setting if necessary.
Public key for encryp- The public key is entered by the Crypto Configuration program
tion and is needed for database encryption. For more information
about database encryption, see the One Identity Manager
Installation Guide.
Related topics
l Changing database connection data on page 35
l Database configuration for a test, development, or productive environment on
page 36
l Language settings for displaying and maintaining the data on page 37
l Default country for determining working hours and public holidays on page 38
1. In the Designer, select the Base Data > General > Databases category.
2. In the List Editor, select the database.
3. Select the Define connection string for database task.
4. Enter the connection data for the database.
l Server: Database server.
l (Optional) Windows Authentication: Specifies whether the integrated
Windows authentication is used. This type of authentication is not
recommended. If you decide to use it anyway, ensure that your environment
supports Windows authentication.
l User: The user's SQL Server login name.
l Password: Password for the user's SQL Server login.
l Database: Select the database.
5. Click OK.
6. Select the Database > Save to database and click Save.
1. In the Designer, select the Base Data > General > Databases category.
2. In the List Editor, select the database.
3. In the edit view, select the General tab.
4. Change the value of the Staging level property to Test environment,
Development system, or Production system.
5. Confirm the security prompt with Yes.
6. Select the Database > Save to database and click Save.
Related topics
l Database configuration for a test, development, or productive environment on
page 36
l DBQueue Processor configuration for test, development, or productive environments
on page 477
Maintenance of default data takes place in the default language. The default language for
an installation of One Identity Manager is English - United States [en-US]. The default
language is valid across the system. It is not recommended to change the default language
during working hours.
The language used in the user interface is the same as the language used when logging in
to the administration tools. When you log in for the first time, the system language is used
for displaying the user interface. Users can change their login language in the program
settings in all administration tools. This sets the language globally for all the user’s tools.
Therefore, the user does not have to set the login language in every tool separately.
Changes to the login language take effect after the tool is restarted.
Any language for which the Select in front-end option is activated can be used as a
login language.
Related topics
l Setting login languages on page 38
l Language-dependent data representation on page 210
1. In the Designer, select the Base data > Localization > Languages category.
2. In the List Editor, select the language.
3. In the Properties view, set the Select in front-end property to True.
4. Save the changes.
5. Select the Database > Save to database and click Save.
1. In the Designer, select the Base Data > General > Databases category.
2. In the List Editor, select the main database.
3. In the edit view, select the Settings tab.
4. In the Country (default), select the country.
5. Select the Database > Save to database and click Save.
1. In the Designer, select the Base data > General > Configuration
parameters category.
2. Select the configuration parameter in the Configuration Parameter Editor.
Related topics
l Creating custom configuration parameters on page 40
l Preprocessor-relevant configuration parameters on page 337
1. In the Designer, select the Base data > General > Configuration
parameters category.
2. Select the Custom configuration parameter and use the Insert context menu to
insert a new configuration parameter.
3. In the Configuration parameter view on the Properties tab, edit the main data of
the configuration parameter.
4. (Optional) If a configuration parameter only permits certain values, specify the
permitted values on the Options tab.
l To create a new option, click Insert.
l To deleted and option, click Delete.
5. Select the Database > Save to database and click Save.
Related topics
l Editing configuration parameters on page 39
l Configuration parameter properties on page 41
Property Description
Full name Full name of the configuration parameter. This consists of the name of
the parameter and the name of the parent parameter.
Display name The display name supplies the caption for the configuration parameter.
The display names can be stored as language-dependent.
NOTE: To show the display names in Configuration Parameter Editor,
select the Configuration parameter > Show captions menu item.
Configuration parameters that do not have a display name are
displayed in brackets (<<>>) in this mode. In addition, a tooltip with
the technical name is displayed.
Sort order The sort order affects how the configuration parameters are ordered in
the Configuration Parameter Editor.
NOTE: The sort order is only effective if the display names are
displayed in Configuration Parameter Editor.
Value Value of the configuration parameter. You must enter a value for every
configuration parameter. Even parent configuration parameters that
serve no purpose other than providing a structure must not be empty,
otherwise the child configuration parameters cannot be accessed. Some
configuration parameters have several permitted values. These are
specified using the configuration parameter options and can be selected
here. A description of the selected option is also shown.
TIP: You can edit the values of some configuration parameters in the
Configuration Parameter Editor in a separate wizard. Click ... next to
the input field to start the wizard.
Enabled Specifies whether the configuration parameter is set. If this option is set,
the configuration parameter is set. If this option is not set, then the
whole tree from this point on is considered disabled and the config-
uration parameter and its child parameters are considered not to exist.
Encrypted Configuration parameters are marked with this option when they contain
encrypted data, for example, passwords. When a new value is entered it
Related topics
l Editing configuration parameters on page 39
l Creating custom configuration parameters on page 40
l Configuration parameter options on page 42
l Preprocessor-relevant configuration parameters on page 337
Property Description
Related topics
l Editing configuration parameters on page 39
l Creating custom configuration parameters on page 40
l Configuration parameter properties on page 41
l Preprocessor-relevant configuration parameters on page 337
The One Identity Manager data model is grouped logically into modules. The modules are
linked through predecessor relationships. A module can have one or more predecessors.
Each module extends the schema by its own tables and scripts and installs its own default
objects, such as its own templates, scripts, or processes.
The functions of a module do not become available until the module is present in the
database. For example, attestation functions do not become available until the Attestation
Module is present. If the One Identity Manager report functions are going to be used, the
report subscriptions module must be present in the database.
The Configuration Module is always present. The Configuration Module contains metadata
that describes the application data model and scripts for formatting rules and templates or
conditional interactions. One Identity Manager's system configuration, all the front-end
control settings, and the queues for asynchronous processing of data and processes are
also part of the metadata. The metadata is described by the system data model.
The other modules contain all the information required to maintaining data (payload), such
as information about employees, user accounts, groups, memberships, and operating data,
approval workflows, attestation, recertification, and compliance rules. The user data is
described by the application data model.
The table definitions are stored in the DialogTable table. The column definition of all the
tables are stored in the DialogColumn table. The tables relations and column relations are
stored in the QBMRelation and DialogValidDynamicRef tables.
Related topics
l Overview of the One Identity Manager schema on page 44
l Table types and default columns in the One Identity Manager data model on page 48
l Notes on editing table definitions and column definitions on page 52
l Table definitions on page 53
l Column definitions on page 73
l Table relations on page 98
l Dynamic foreign key on page 102
TIP: When you select a table or column in the Designer, you can open the schema
overview using the Show table <table name> in schema and Show column
<column name> in schema tasks.
The schema overview has two modes for displaying the One Identity Manager schema.
l Displaying the data model
This mode gives you an overview of all tables including their columns and the
table relations.
l Displaying dependencies
This mode only displays those tables that have columns with dependencies due to
value templates. Tables and columns without dependencies are not shown.
Tables and their columns are displayed using a special control element. The name of the
database table is shown in the header of the control element. All other entries represent
columns in the table. Each control element entry has a tooltip. The tooltip content depends
on the display mode selected. The column entries are labeled with icons that mark
particular properties of the columns depending on the display mode.
Figure 6: Control elements for displaying database tables and their columns
A connector points to column entries that are related to it. You can navigate between the
connection points using the connector. When you select a connector the cursor changes to
an arrow icon. Double-click on the connector to move the view to other end of the
connector. The direction is indicated by the arrow icon. Movement is controlled with the
Options > Animate movements menu item. When the cursor passes over a connector a
tool tip, whose contents depends on the display mode, is shown.
You can use the quick overview to navigate faster around the schema view. On the lower
right edge of the schema overview there is a button which you use to open the quick
overview. The area of the schema overview that is currently shown in the window is marked
with a frame in the quick overview. Using the mouse you can move this frame around in the
view. The corresponding area of the schema overview is then shown in the window.
Related topics
l Displaying data models in the Designer on page 46
l Displaying the column dependencies based on templates on page 47
A table entry's tooltip contains the name of the table and the table's preprocessor
conditions. A column entry's tooltip contains the name of the column, description, data
type and the minimum and maximum length of the column.
A connector's tooltip shows the table relations. This tooltip contains the name of the tables
that are related to it and the table relation properties. A single mouse click on the connector
opens the table relation properties in the edit view.
Column entries are marked in the control with icons representing special properties, for
example the column's .Net data type.
Icon Meaning
Related topics
l Displaying the column dependencies based on templates on page 47
The tooltip for a table entry contains the name of the table. The tooltip for the column
entries contains the name of the column. If a column has a value template it is shown in the
tooltip. If the column does not have a value template itself but is referenced by value
templates belong to other columns then those columns are named in the tooltip.
When you select a column, the connections to other columns are highlighted in color. A
tooltip shows the sender and subscriber relationship of the column dependencies. The
tooltip contains the names of tables that refer to each other. The sender, subscriber, and
the part of the value template that gives the reason for the dependency are also shown.
Color Meaning
Related topics
l Displaying data models in the Designer on page 46
Table Description
type
Simple Simple tables are the most common form for storing data.
table
The following columns are defined for simple tables:
l Primary key, consisting of one column
l Object key (XObjectKey)
Many- Many-to-many or M:N tables contain the relationships between two other
to-many tables.
table
The following columns are defined for many-to-many tables:
l A two column primary key
Both columns are defined as foreign key columns on the referenced
table.
l Object key (XObjectKey)
Many- Many-to-all or M:all tables are a special type of assignment tables that were
to-all developed for One Identity Manager.
table
M:all tables are implemented if part of an assignment (all) can reference
different tables, meaning dynamically determined. Valid tables can be limited
in this way. For example, the owner of a group can be a user account or a
group.
You can define more foreign keys and dynamic foreign keys. These columns
must be defined as NULL.
Work Work tables are used to store data for which objects cannot be created. No
tables primary key is required for work tables. However, you can define up to two
primary keys.
Column Description
Primary key l If objects are generated from the table through the object
layer, the table requires a primary key.
l If a table represents a many-to-many mapping, a two
column primary key is defined. Both primary key columns
are defined as foreign key columns in the referenced
tables.
l No primary key is required for work tables.
l Primary key columns must be defined in Globally Unique
Identifier (GUID) format.
Default GUID's are created in the [0-9,a-f](8-4-4-4-12)
format.
Predefined module GUID's are mapped in the <MMM>-[0-
9,a-f](32) format, where <MMM> corresponds to the
module prefix. Custom module GUID's are created in the
<CCC>-[0-9,a-f](32) format. For more information, see
Working with a globally unique identifier module on page
63.
XObjectKey If objects are generated from the table through the object layer,
the table must have an object key column. The object key
(XObjectKey) is a unique key, which is capable of referencing
every object in the database.
XObjectKey syntax:
<Key><T>TableName</T><P>PrimaryKeyOfRow</P></Key>
with:
l TableName: table name
l PrimaryKeyOfRow: primary key column's GUID
Foreign key l The name of the foreign key column corresponds, as far as
possible, to the name of the references table's primary key.
l Foreign key columns are defined in GUID format.
l A table is reference through the referenced table's primary
key.
l If the foreign key column is part of a many-to-all table, the
column in the One Identity Manager schema is labeled with
the Part of key of many-to-all table option
(DialogColumn.IsMAllKeyMember).
Dynamic foreign key l Dynamic foreign keys are used if a reference can point to
different tables. For example, the manager of a user
account (<MMM>Account.ObjectKeyManagertable) can be
another user account (<MMM>Account table) or a group
(<MMM>Group table).
l Dynamic foreign keys reference the (XObjectKey) object
key of the permitted tables.
l Permitted tables can be limited. All tables are permitted, if
there are no restrictions.
l A dynamic foreign key is flagged in the One Identity
Manager schema with the Dynamic foreign key option
(DialogColumn.IsDynamicFK).
XUserUpdated
XMarkedForDeletion This column defines whether the object is marked for deletion.
The columns exists when:
l The deferred deletion function can be applied to the table.
l The table is synchronized again a target system and
outstanding objects can be handled.
XDateSubItem This column contains the change date for dependencies and is
Related topics
l Customizing the One Identity Manager default configuration on page 27
Table definitions
The One Identity Manager module table definitions are stored in the DialogTable table.
Predefined One Identity Manager schema table definitions are maintained through schema
installation and only a few properties can be modified.
Use the Designer's Schema Editor to edit One Identity Manager schema table definitions.
Table Meaning
types
Table The Table table type is used for simple tables, many-to-many tables, M:all
Base The Base table table type is used for simple tables, many-to-many tables,
table M:all tables, and work tables in order to define database views with the View
type. Examples of base tables include the BaseTree table for mapping roles and
organizations, and the BasetreeHas* assignment tables for assigning company
resources to organizations and roles.
View The View table type is used for database views on tables with the Base table
type. Database views with the View type represent subsets of the underlying
tables. Database views with the View type are mainly used to map roles. For
example, the database views Department, Locality and Profitcenter are
subsets of the Basetree base table.
Proxy The Proxy table type is used for database views on tables with the Table type
or on database views with the View type. Database views with the Proxy type
are union views of different tables. Columns are mapped between a database
view of the Proxy type and the underlying tables by means of the column
definitions and proxy view extensions. Database views with the Proxy type are
mainly used for mapping in the Unified Namespace.
Union The Union table type is used for database views on tables with the Table type
or on database views with the View, or Proxy type. Database views with the
Union type are union views of different tables and are used to group together
different object types with the same context. For example, the
QERAccProductUsage database view identifies which service items are used in
which IT Shop products. Database views with the Union type are mainly used
for editing the user interface and creating reports.
Read The Read only table type is used for database views on tables with the Table
only type or on database views with the View, Proxy, or Union type. Database
views with the Read only table type may be subsets or unions of the
underlying tables. Database views with the Read only type are for display only
and are mainly used for editing the user interface and creating reports.
Related topics
l Database views of the View type on page 54
l Database views of the proxy type on page 56
l Database views of the Union type on page 58
l Database views of the Read-only type on page 60
Table 16: Properties for defining a database view of the View type
Property Meaning
Condition for Restricting condition for creating the database view as a WHERE clause for
view defin- database queries. The condition relates to the underlying base table.
ition
Columns A reference is required for each column of the database view to a column
in the underlying base column. Make the assignment in the column defin-
ition.
Insert values Default settings for individual columns that are assigned when a new data
set is added. The values are entered in VB.Net syntax.
Example:
The Department table is defined as a database view of the View type. When you enter
data in the Department table, the UID_OrgRoot column should be populated with the
QER-V-Department value.
Property Value
Table Department
Type View
ment")
Related topics
l Table definition properties on page 67
l Column definition properties on page 90
l Defining insert values on page 131
l Creating new columns for database views with type view on page 444
l Database views of the proxy type on page 56
l Database views of the Union type on page 58
l Database views of the Read-only type on page 60
Table 18: Properties for defining a database view of the proxy type
Property Meaning
The extensions are linked to each other internally with the Union operator.
Condition Restricting condition for creating the database view as a WHERE clause for
for view database queries.
definition
Example:
The following mappings are required to map the ADSDomain table in the Unified
Namespace to the USRoot database view.
l The UNSRoot database view is entered as a proxy view in the ADSDomain table.
l The columns of the ADSDomain table to be mapped in the Unified Namespace
are given a reference to the corresponding columns in the proxy view.
For example, the Ident_Domain column in the ADSDomain table is mapped to the
Ident_root column of the UNSRoot proxy view.
l Columns that are expected in the UNSRoot database view but are not contained
in the ADSDomain table must be entered in the ADSDomain table as extensions to
the proxy view.
For example, the UNSRoot view expects input of the target system type in the
UID_DPRNameSpace column. This column is not in the ADSDomain tables.
Therefore, 'ADS-DPRNameSpace-ADS' as UID_DPRNameSpace is entered as an
extension to the proxy view in the ADSDomain table.
The DBQueue Processor generates the extended view definition from the data. The
following statement is a excerpt from the generated extension.
Related topics
l Table definition properties on page 67
l Column definition properties on page 90
l Database views of the View type on page 54
l Database views of the Union type on page 58
l Database views of the Read-only type on page 60
Table 19: Properties for defining a database view of the Union type
Property Meaning
Additional Database query as a SELECT statement for setting up the database view.
view defin-
NOTE: Never select NULL as <Column>. Instead, convert this explicitly to
ition
the requested value type.
Example:
convert(nvarchar(max), NULL) as <column>
convert(varchar(38), NULL) as UID_<column>
convert(varchar(138), NULL) as ObjectKey<column>
Several extensions for the view definition can be defined. The extensions
are linked to each other internally with the Union operator.
Condition Restricting condition for creating the database view as a WHERE clause for
for view database queries.
definition
Example:
The QERAccProductUsage table is defined as a database view of the Union type. In the
union view, you establish which service item is used in which products. The following
example shows an except from the definition based on system entitlements (table
ESet) and report subscriptions (RPSReport table).
Property Value
Table QERAccProductUsage
Type Union
Extension 1: ESet
Additional view
definition
Extension 2: RPSReport
Additional view
definition
(
select convert(varchar(11), null) as TableName, convert
(varchar(38), null) as UID_AccProduct, convert(varchar
(138), null) as XObjectKey where 1=0
union all
select xxTab.TableName, xxTab.UID_AccProduct,
xxTab.XObjectKey
from (
select 'ESet' as TableName, g.XObjectKey, g.UID_
AccProduct
from ESet g
) as xxTab
union all
select xxTab.TableName, xxTab.UID_AccProduct,
xxTab.XObjectKey
from (
select 'RPSReport' as TableName, g.XObjectKey,
g.UID_AccProduct
from RPSReport g
) as xxTab
) as x
Related topics
l Table definition properties on page 67
l Column definition properties on page 90
l Creating database views with Union type on page 449
l Database views of the View type on page 54
l Database views of the proxy type on page 56
l Database views of the Read-only type on page 60
Table 21: Properties for defining a database view of the Read-only type
Property Meaning
Additional Database query as a SELECT statement for setting up the database view.
view defin-
NOTE: Never select NULL as <Column>. Instead, convert this explicitly to
ition
the requested value type.
Example:
convert(nvarchar(max), NULL) as <column>
convert(varchar(38), NULL) as UID_<column>
convert(varchar(138), NULL) as ObjectKey<column>
Several extensions for the view definition can be defined. The extensions
are linked to each other internally with the Union operator.
When you add a column to a custom table, an entry is created in the
DialogColumn table. When you delete a column, the entry is removed from
the DialogColumn table. Changes to the schema of default database views
are not permitted.
Condition Restricting condition for creating the database view as a WHERE clause for
for view database queries. The condition is attached to the view definition generated
definition from the extension.
Related topics
l Table definition properties on page 67
l Column definition properties on page 90
l Creating database views with read-only type on page 447
l Using Common Table Expressions in read-only database views on page 449
l Database views of the View type on page 54
l Database views of the proxy type on page 56
l Database views of the Union type on page 58
script Description
IMPORTANT: Compile the database to bring the table scripts into effect.
Related topics
l Visual Basic .NET scripts usage on page 342
l Templates for generating values on page 74
l Creating formatting scripts on page 82
Syntax
Example:
l The Module GUID required and Module GUID permitted options are
enabled on the DialogGroup table. When creating a new permissions group, the
primary key is automatically generated in the format of a module GUID.
l For the AERole table only the Module GUID permitted option is set. To
ensure that your own application roles are added to the transport package,
create the application roles in the Object Browser with a module GUID.
NOTE:
l In the default case, the table's primary key is created with a default GUID.
To subsequently change a default GUID to a module GUID, you use the
Object Browser.
l GUIDs in tables that are labeled with IsNoReload = 1 in the QBM_VHeavyLoadTables
view cannot be changed.
IMPORTANT: Do not run the following steps for production databases. Only perform these
steps within the maintenance window. Otherwise, this could lead to inconsistent data.
1. In Object Browser select the object for which you want to change the default GUID.
2. Display the Properties context menu.
3. On the Methods tab select the SwitchToModuleGuid() method and click Run.
1. In Object Browser select the object for which you want to change the module GUID.
2. Display the Properties context menu.
3. On the Methods tab select the SwitchToNormalGuid() method and click Run.
Related topics
l Table definition properties on page 67
Example:
l For the Hardware table, you must ensure that the name of the hardware is
unique. For the Hardware table, a Hardware unique group with the Ident_
Hardewarelist column is created.
l For the ADSDomain table, the combination of the domain identifier and its
defined name must provide unique values. For the ADSDomain table, an
ADSDomain unique group with the Ident_Domain and DistinguishedName
columns are created.
Property Description
Error Text for an error message if the default error message is not to be
Message used. Customized error messages are shown in the form:
<table display name (Plural)>: <error message of the unique
group>
In the error you can include the following place holders:
l {0}: Display value of the other object that already has the same
value or has a value combination.
l {1}: The conflicting value.
The place holder syntax corresponds to a format place holder in Visual
Basic .NET.
Translate the given text using the button.
Ignore Specifies whether empty values are permitted in a unique group. This
empty option can only be set if all columns in the group can be empty.
values l If the option is set, empty values are permitted in the relevant
columns. If at least on of the relevant columns is not empty,
uniqueness is tested. If all the group's columns are empty,
uniqueness is not tested. This allows several data records to be
inserted that all have empty group columns.
l If this option is not set, empty values are permitted but only
once for each column. Several data records whereby all the
group's columns are empty, cannot be inserted.
TIP: To prevent empty values in a column, define a minimum length for the column in the
column definition.
Related topics
l Table definition properties on page 67
l Column definition properties on page 90
Example:
You define a deletion delay for each table. Use the following table properties:
l Deferred deletion [days] (default): Number of days to defer the delete operation.
If the value is 0, it is deleted immediately. Use this if all objects of a table are to be
handled with a defined deletion delay.
l Script (deferred deletion): Script in VB.Net syntax to determine an object-specific
deferred deletion. The script overwrites the value from the Deferred deletion
[days] property. For example, use the script to define different time periods for
individual objects in a table, depending on certain properties.
Example:
Related topics
l Table definition properties on page 67
Property Description
Usage type The table's usage type provides the basis for reports and the selection
of tasks for daily maintenance.
Permitted values are:
l Work tables: The table is a work table and contains
transaction data.
l Historical transaction data: The table contains transaction
data to create histories.
l Configuration: The table contains data for the system
configuration.
l Materialized data: The table contains materialized data. This
is recreated through DBQueue Processor calculations.
l Read-only data: The table contains read-only data.
l User data: The table contains user data.
Display name Display name for a single record in the table. Translate the given text
(singular) using the button.
Display name Displays table name The display name is used, for example, to
(plural) identify the table in a database search or for error output. Translate
the given text using the button.
Display template The display template is used to specify the form in which objects will
be represented, for example in the administration tool result list or in
reports. Translate the given text using the button.For more inform-
ation, see Display template for displaying a list on page 131.
NOTE: You do not need to enter a display template for many-to-
many tables. For these tables, the viDB.DLL forms the display
template from the foreign keys.
Display template Additional display template for individual tables containing the
(long) object's full name.
Hierarchy path Enter the foreign key columns here that should be used as a basis for
displaying tables hierarchically, for example, on assignment forms.
For more information, see Hierarchical display of data on assignment
forms on page 148.
Example:
An Active Directory user account (ADSAccount table) is typically
displayed on an assignment form below its Active Directory container
(UID_ADSContainer column). The Active Directory container
(ADSContainer table) is, on the other hand, displayed underneath its
Active Directory domain (UID_ADSDomain column). The path for the
hierarchy structure is entered as follows:
An alternative list for objects that do not have values in all foreign key
columns can be given after a pipe (|).
Example:
(UID_ADSContainer,UID_ADSDomain|UID_ADSDomain)
Cache Loading behavior for tables in the Designer. This data is only required
information for system tables. Cache information for a table is composed of the
sort order and loading behavior.
Preprocessor You can add preprocessor conditions to tables. The table is therefore
condition only available together with its columns when the preprocessor
condition is fulfilled. For more information, see Conditional compil-
ation using preprocessor conditions on page 336.
Deferred deletion Number of days to defer the delete operation. If the value is 0, it is
[days] deleted immediately. For more information, see Specifying deferred
deletion for objects on page 66.
Background color Color used to display the control for this table in the schema
overview.
Proxy view Reference to database view, type Proxy, which uses the table
content.
Example:
The database view UNSRoot is used to map the ADSDomain and
LDAPDomain tables in the Unified Namespace.
For more information, see Database views of the proxy type on page
56.
Extensions to List of columns as SQL text. These are used in the database view's
proxy view SELECT statement that is selected under Proxy view. For example,
use the extensions to the proxy view if columns are doubly mapped or
if additional proxy view need to be filled.
Example:
The view UNSRoot expects the target system type as input in the UID_
DPRNameSpace column. This column is not in the ADSDomain and
LDAPDomain tables.
The proxy view extension is defined as follows:
For more information, see Database views of the proxy type on page
56.
Logical disk store The table's logical disk store. Associated tables are grouped together
in logical disk stores. In the default installation, logical disk stores are
predefined for the table in each module of One Identity Manager and
the system tables. You cannot change the assignments. You can
create your own logical disk storage for grouping custom tables.
Supporting file groups on page 104
Scope hierarchy Comma delimited list of all foreign key columns required for display-
ing objects in the scope hierarchy in the Synchronization Editor. List
of all columns that lead to tables made available by the parent object.
Person object Path to the Person object for finding the person object within the table
path for table lookup search for user accounts and email addresses. The resulting
lookup support data is mapped in QBMSplittedLookup.SplittedElement. If the value
no is entered, no employee can be determined for groups or BaseTree
derivatives, for example.
Example:
In the case of Exchange Online mailboxes (O3EMailbox table), the
employee is determined through the Azure Active Directory user
accounts.
Enter the path to the person object as follows: FK(UID_AADUser).UID_
Person
Export for SPML This option determines whether the table should be exported for the
schema SPML schema.
Many-to-all table Marks assignment tables, which have a dynamic foreign key as
partner. For more information, see Table types and default columns
in the One Identity Manager data model on page 48.
No DB Transport Tables labeled with this option cannot be excluded from a custom
configuration package. These tables are excluded from data
transport.
Assign by event Specifies how assignments and deletions are handled in tables. This
option only applies to assignment tables (many-to-many tables) in
the application data model.
l If the option is not set, assignments, and deletions are dealt
with directly by the DBQueue Processor.
l If the option is set, tasks for the HandleObjectComponent process
component are set up in the Job queue. These tasks then carry
out the relevant operations. This makes it possible to link
specific processes directly to the Assign and Remove events. You
must implement this behavior on a custom basis.
Retain in memory Specifies whether the table contents for the data connection can be
buffered. The threshold is defined in the Common | Resid-
entTableLimit configuration parameter.
Module GUID Specifies whether a primary key with a Globally Unique Identifier
permitted module (GUID module) is permitted for objects. For more inform-
ation, see Working with a globally unique identifier module on page
63.
Module GUID Specifies whether a primary key with a Globally Unique Identifier
required module (GUID module) is required for objects. For more information,
see Working with a globally unique identifier module on page 63.
Type Table type. For more information, see Table types in One Identity
Manager on page 53.
Base table Only for database views: Reference to base tables that a view is
based on.
Condition for view Only for database views: Limiting condition for creating the database
definition view as WHERE clause for database queries.
Insert values Specify default settings for a column that is assigned when a new
data set is added. The values are entered in VB.Net syntax.
Selection script Only for database views: Selection script as VB.Net expression to
determine at runtime, whether the object passed belongs to this
database view.
Script Script in VB.Net syntax that is run after the object is loaded. For more
Script (OnSaving) Script in VB.Net syntax that is run before the object is saved. For
more information, see Table scripts on page 62.
Script (OnSaved) Script in VB.Net syntax that is run after the object is saved. For more
information, see Table scripts on page 62.
Script (OnDis- Script in VB.Net syntax that is run before the object is discarded. For
carding) more information, see Table scripts on page 62.
Script (OnDis- Script in VB.Net syntax that is run after the object is discarded. For
carded) more information, see Table scripts on page 62.
Number of rows Number of rows in the table The number of rows in the table is
determined once a day by maintenance tasks. The data material can
help to plan capacities and maintenance work on the database.
Basic record Maximum length of the data record with (clustered) main indexes.
lengths Only the reference is saved for LOBs. The LOB content itself is stored
in the HEAP. The basic record length is determined once a day by
maintenance tasks. The data material can help to plan capacities and
maintenance work on the database.
Table size The size of the table in MB. The size of the table in the database is
determined once a day by maintenance tasks. The data material can
help to plan capacities and maintenance work on the database.
Layout (Only for internal use) Information about the layout in the Designer.
information
Primary key 1 (Only for internal use) Name of the table's first primary key column.
The sort order of primary key 1 and primary key 2 corresponds to
the physical order in the schema.
Primary key 2 (Only for internal use) Name of the table's second primary key
column. The sort order of primary key 1 and primary key 2
corresponds to the physical order in the schema.
Columns for Comma delimited list of columns to be used for creating alternative
alternative rules object matching rules in an automatically created synchronization
project. If the One Identity Manager connector cannot identify a
system object through the primary object matching rule, it applies
the alternative rules to determine a matching system object. For
more information about this, see the One Identity Manager User
Guide for the One Identity Manager Connector.
CLR type for .NET class used to consider special cases when generating a synchron-
project generator ization project between two One Identity Manager databases.
Related topics
l Editing table definitions on page 67
Related topics
l Column dependencies for setting values on page 83
Column definitions
Column definitions for application and system data model tables are kept in the
DialogColumn table. The predefined column properties of the One Identity Manager schema
are maintained by the schema installation and cannot be edited apart from a few
exceptions.
In the Designer, you can edit the One Identity Manager schema's column definitions using
the Schema Editor.
Related topics
l Defining unique columns for tables on page 64
l Permitted column values on page 83
l Column dependencies for setting values on page 83
Property Description
Overwrites Specifies whether the template can overwrite or not. If this option is
set, the value template is always applied. If the option is not set, the
value template is only applied when the column is empty.
NOTE: The One Identity Manager schema only knows the values 0
and 1 for columns of Bool data type. The value 0 is the same as
empty. That means, if the Overwrites option disabled, the
template is run if the column value changes from 0 to 1.
Template Template script. Write the script in VB.Net syntax which allows all
VB.Net script functions to be used.
TIP: To display the columns that trigger a template, click Triggers
for this template.
IMPORTANT: Compile the database to bring the value template into effect.
TIP: Test compiling in the Designer using the Schema > Test compile menu item.
Related topics
l Preventing a change to a column on page 76
l Example of local value templates within an object on page 78
l Example of cross-object value templates on page 78
l Preprocessor conditions in VB.Net expressions on page 339
l Visual Basic .NET scripts usage on page 342
l Column definition properties on page 90
The user should not be able to change an employee‘s central user account. This
should be prevented by the value template.
l Define a custom value template for the Person.CentralAccount column.
l For the value templates, enable the Overwrites option.
l Extend the default value template with the following entry: ’$CentralAccount$.
’$CentralAccount$
If Not CBool(Session.Variables.Get("FULLSYNC")) Then
Value=VI_AE_BuildCentralAccount(GetValue("UID_
Person").String,$Lastname$, $Firstname$)
End If
Related topics
l Editing value templates on page 75
l Column definition properties on page 90
If, for example, the surname of an Active Directory user account (ADSAccount.Surname) is
derived from the surname of an employee (Person.Lastname), enter the template for the
ADSAccount.Surname column as follows:
Value = $FK(UID_Person),Person.Lastname$
If the employee’s surname changes, the last name of the Active Directory Jo User1anges,
too. The Person.Lastname column is therefore the sender and the ADSAccount.Surname
column is the receiver. The relation is mapped in the DialogNotification table as follows:
Related topics
l Column definition properties on page 90
Related topics
l Column definition properties on page 90
8 Number [0-9]+
16 Uppercase Uppercase
8192 Prevent XSS Certain characters that can be used for cross-site
characters scripting (XSS) are invalid. The < and > characters are
tested.
Testing only takes place if the QBM | XssCheck config-
uration parameter is set. If the QBM | XssCheck | Sync
configuration parameter is set, testing is also done
during synchronization.
Related topics
l Creating formatting scripts on page 82
l Column definition properties on page 90
IMPORTANT: Compile the database to bring the formatting script into effect.
TIP: Test compile using the Schema > Test compile menu item.
Example:
The value in the column Mail in the ADSAccount table should correspond to SMPT
format. If this is not the case, an error message is sent. The formatting script for the
ADSAccount.Mail column can be formulated as follows:
Dim str as String = Convert.ToString(Value)
If str.Length > 0 Then
If Not VID_IsSMTPAddress(str) Then
Throw New Exception("""" & str & """ is not a valid SMTP
address.")
End If
End If
Related topics
l Using predefined formatting types on page 80
l Visual Basic .NET scripts usage on page 342
l Column definition properties on page 90
1. Customizer
The dependencies between columns and an object are stored in customizers.
2. Custom defined dependencies
If circular dependencies occur whilst determining the order for setting the values, they are
stopped at the point of lowest priority.
Related topics
l Displaying the table definition Customizer on page 73
l Templates for generating values on page 74
IMPORTANT: Compile the database to bring the list of permitted values into effect.
Example:
In the Spare field no. 01 input field for an employee, the values internal and
external should be permitted. The list of permitted values is defined as followed:
1=internal 2=external
For an employee with the value 1, the display value internal is shown on the forms
in the Manager.
A special control element is used in the Manager to display columns for which a list of
permitted values has been defined. The control element is displayed as a simple input field
if no list is defined. If a list is defined the control element is shown as a menu.
Figure 10: Input field for list of defined values (with and without defined
entries)
The control element is only available for columns on default predefined forms as well as
custom columns (usually CustomProperty01-CustomProperty10).
Related topics
l Column definition properties on page 90
Defining bitmasks
You can only define bitmasks for columns with theint type.
NOTE: You can only enter or extend a bitmask for a column if the option Customizing
bitmasks is not allowed is not set.
To create a bitmask
Related topics
l Column definition properties on page 90
For more information about installing an application server and configuring the Web Portal
for full-text search, see the One Identity Manager Installation Guide.
The following applies for the configuration of the full text search:
Example:
l Only columns with the .Net data types string or text can be included in the full-
text search.
Exception: Columns that contain a list of permitted values, can always be included to
the full text search.
l Columns of tables with the Work tables or Historical transaction data usage type
cannot be included in the full-text search.
l Columns of assignment tables (M:N tables, M:all tables) cannot be included to the
full-text search.
Example:
The searched index is updated when changes are made to a table with indexed columns, to
referenced tables or translations.
Related topics
l Column definition properties on page 90
Example:
A system role is disabled until the release data is reached. During this time period,
the user must be prevented from changing the disabled option in the Manager.
To do this, a script is created specifying the edit permissions for the
ESet.IsInActive column.
If $ReleaseDate:Date$>Connection.LocalNow Then
Value = False
Else
Value = True
End If
Related topics
l Column definition properties on page 90
l Working with objects in One Identity Manager on page 21
Property Description
Sort order The sort order specifies the position for displaying the column on
the generic form and the custom tabs of the default form.
Columns with a value less than 1 are not displayed on the forms.
For more information, see Displaying custom columns and tables
on main data forms on page 145.
Group Group is used to display the column on general main data forms.
A new tab is created for each group on the generic form. For
more information, see Displaying custom columns and tables on
main data forms on page 145.
Base column If a database view has the View table type, the reference to the
column in the base table is entered here. For more information,
see Database views of the View type on page 54.
Example:
Defined list of values Marks whether the value in this column must correspond to the
values in the List of permitted values, or are empty. For more
information, see Permitted column values on page 83.
List of permitted If a column is enabled for editing the permitted values (that is,
values the Customizing permitted values list is not allowed option
is not set and the Defined list of values option is set), you can
add to or extend a value list. For more information, see Permitted
column values on page 83.
Customizing bitmask Specifies whether the bitmask can be customized for this column.
is not allowed For more information, see Defining bitmasks on page 85.
Defined bitmask Meaning of each bit position if the column contains a bitmask.
The first bit in the definition start with the index 0. For more
information, see Defining bitmasks on page 85.
Sort criteria of Sort criteria for displaying the values. You have the following
bitmask options:
l Bit position: Sort by position.
l Display: Sort by display value.
Syntax Syntax type of data in this column. The syntax type is used to
give One Identity Manager tools the appropriate syntax
highlighting or input assistance.
Permitted syntax types are:
l HTML: Input in HTML format.
l Picture: Images.
l SQL.Query: Full database queries.
l SQL.Special: Special syntax for database queries.
l SQL.WhereClause: WHERE clause for database queries.
l Text.Dollar: Input in $ notation.
l UNC: UNC path.
l URL: URL.
l VB.Class: Fulll VB.Net class definitions.
l VB.Instruction: VB.Net statements in the form Value =.
l VB.Method: Single methods or functions in VB.Net.
l XML: Input in XML format.
l ConnectionString: Input as a connection string.
l JSON: Input in JSON format.
l Color: Input of color codes.
Number of decimal Number of decimal places used to display values.For more inform-
places ation, see Defining decimal places for displaying values on page
79.
Date add-on Additional information about displaying date and time in One
Identity Manager tools.
Index weighting Column weighting in indexing. Used for indexing the full-text
search. Increasing weighting results in a higher position in the
search results.
If the value is less than or equal to 0, no indexing takes place. If
the value is greater than 0, the data value is indexed. Columns to
be indexed are assigned a weighting of 1 in the default install-
ation.
Data type in database Shows the .Net data type for the column. This is used internally
and cannot be edited. The Net data types are mapped internally
to SQL data types. If no value is given, the data type is taken
from the database schema.
Permitted syntax types are:
Primary key The primary key is given when the database is created.
UID column Specifies whether this is UID column. This option is only permiss-
ible for columns with the String .Net data type and a length of 38
characters.
Default value Specifies whether a default value is defined by a template for this
column.
BLOB value This option is used to label text columns whose data contents is
so large that they cannot be kept internally in one line in the SQL
sever and are therefore saved as a reference. This allows
speedier access to the data.
Log changes Specifies whether changes to this column are logged. For more
information, see Logging data changes on page 319.
Log changes when Specifies whether the column is to be logged when an object is
deleting deleted. For more information, see Logging data changes on
page 319.
Export for SPML Specifies whether the table is to be exported for the SPML
schema schema.
Not for export (XML This column is not exported in data transports. The property is
export) taken into account when data is transported between databases.
Not for import (XML This column is not imported in data transports. The property is
import) taken into account when data is transported between databases.
Multi-value specific- You can specify additional requirements on the values of an MVP
ation column. You have the following options:
l Unique: Set this option if the value must be unique.
l Case sensitive: Set this option if the case sensitivity
should be taken into account when the value is tested.
l Accent insensitive: Set this option if accent characters
should not be taken into account when the value is tested.
Permissions not For custom columns in a predefined table, permissions are not
issued automatically automatically assigned to predefined permissions groups, even
though the Common | AutoExtendPermissions configuration
parameter is set.
Column contains One column with a description can be labeled with this option per
description table. The description is only displayed on user interface assign-
ment controls.
Contains name proper- Specifies whether the column contains name properties.
ties for password Depending on the password policy configuration, columns with
check name properties may be included in the password check. For
more information about password policies, see the One Identity
Manager Operational Guide.
Column contains One column which maps hierarchy information in readable form
hierarchy information can be labeled with this option per table. The column is used to
map the hierarchy to the user interface assignment controls.
Part of alternative Alternative primary keys are already specified in the default
primary key version, but the definition can be customized. Alternative primary
keys are used for data transport amongst other things.
Part of the key of a Identifier of the foreign key of a many-to-all table The foreign key
many-to-all table and the dynamic foreign key of a many-to-all table are identified
with this option.
Show in wizards Specifies whether the column is offered in the Rule Editor for
compliance rules to create queries and in the Web Portal to
display tabular overviews.
Recursive key Specifies whether this column references a parent object. This
input is needed for displaying hierarchical tables.
Example:
In the ADSContainer table, the UID_ParentADSContainer column
contains the reference to the parent Active Directory container.
The UID_ParentADSContainer column is labeled with this option in
order to display this hierarchical link on forms.
Dynamic foreign key Dynamic foreign keys refer to the object key in other tables. The
object key comprises the table name and the values of the
primary key of the actual object. Permitted tables can be limited.
All tables are permitted, if there are no restrictions. For more
information, see Dynamic foreign key on page 102.
Proxy view column If the column is used in a database view of the Proxy type, the
corresponding column is entered in the view. For example, the
column ADSDomain.DisplayName is mapped in the UNSRoot view to
column RootObjectDisplay. For more information, see Database
views of the proxy type on page 56.
Table Lookup Support Each value in these columns is prepared for fast table lookup
support. The search is also supported by single values in MVP
columns. The internal mapping of prepared data in done in the
QBMSplittedLookup table.
Permitted values are:
l Central user account (CentralAccount)
You can extend the list of permitted values and customize the
results.
l In the Designer, flag columns containing a user account
name with the Central user account value in the Table
lookup support property.
l In the Designer, flag columns containing an email address
with the Email address value in the Table lookup
support property.
Max. length Maximum length of the column. If the value is equal to 0, the
length from the database schema is used.
Minimum Length Minimum length of the column. For columns that are displayed as
required input fields in the administration tools user interface, set
the minimum length to 1 or higher.
Column format Specify the format permitted for value in this column. For more
information, see Using predefined formatting types on page 80.
You can control the permitted format for the column with format-
ting types and formatting scripts.
Template Template script. Write the script in VB.Net syntax. This allows all
VB.Net script functions to be used. For more information, see
Editing value templates on page 75.
Threshold (stop) Limit for the number of objects changed directly by a template.
Once this limit has been reached, processing is stopped with an
Threshold (asynchron- Limit for the number of objects changed directly by a template.
ous) Once this limit has been reached, processing takes place
synchronously with the One Identity Manager Service. For more
information, see Restricting performance of value templates on
page 77.
Formatting script Formatting script for the column. The formatting script for
checking values is written in VB.Net syntax, which allows usage
of all VB.Net script functions.
Editability script Script for conditional editing of columns in One Identity Manager
tools. For more information, see Scripts for conditionally display-
ing and editing columns on page 88.
Template changed (Only for internal use) This indicates that the template was
changed.
Mapping direction Specifies the mapping direction that will be applied to this column
when synchronizing between two One Identity Manager
databases. For more information about this, see the One Identity
Manager User Guide for the One Identity Manager Connector.
For more information about this, see the One Identity Manager
Target System Synchronization Reference Guide.
Related topics
l Editing column definitions on page 89
l Visual Basic .NET scripts usage on page 342
Table relations
As you can see from the One Identity Manager data model, parent/child relations exist
between objects. If an object is processed by the One Identity Manager's object layer, all
ForeignKey (FK) objects that are related to this object can be accessed. Use VB.Net
notation to access objects access using relations.
NOTE: You can always edit table relations of custom tables. The table relation supplied
with the default tables can only be edited if the referential integrity has been tested using
the object layer.
Property Description
Only transport Specifies if the contents of the table should be transferred together with
as group the contents of the referenced table during data transports. You can
combine the values. Permitted values are:
l No value: Dependencies are not taken into account.
l CR direction: The table relations are labeled with the values CR
direction and FK direction. Superset handling is carried out.
l FK direction: All objects referenced by a foreign key are also
exported. Superset handling is carried out.
l Ignore in superset handling: Referenced objects that are in
the target system but not included in the transport package are
not deleted.
Example:
When a process is transported (JobChain table), the process steps (Job
table), events (JobEventGen and QBMEvent tables) and the process step
parameters (JobRunParameter table) should also be transported. This
should happen whether or not the process, a single process step or a
process step parameter is transferred to a transport package. The table
relations are labeled with the values CR direction and FK direction.
The parameter templates (JobParameter table) that are used in the
(JobRunParameter table) process step parameters must not be
transferred during the transport. The table relations are not labeled with
a value.
Update depend- When many-to-many entries are added, changed, or deleted, the value
encies modific- in the XDateSubItem column the associated parent entries is updated.
ation date Required for provisioning memberships in the target system.
Export for Specifies whether the table is to be exported for the SPML schema.
SPML schema
Parent object Specifies whether the parent object is added to the list of objects
in Job queue affected by a process. This can prevent the parent object from being
processed simultaneously more than once.
Parent relation Specifies who will run these referential integrity tests. Permitted values
test instance are:
l DLL: Checks through the object layer.
l Trigger: Triggers and constraints are implemented to monitor
the database. The triggers and constraints are created
automatically and modified as necessary taking the preset
restrictions of the DBQueue Processor into account. In the case of
customized tables, specify the test instance and the limitations of
the One Identity Manager schema extension.
l Nothing: No test.
Generated Identifier for triggers and constraints that are automatically generated
restriction test by the DBQueue Processor.
for parent
relation
Child relation Specifies who will run these referential integrity tests. Permitted values
test instance are:
l DLL: Checks through the object layer.
l Trigger: Triggers and constraints are implemented to monitor
the database. The triggers and constraints are created
automatically and modified as necessary taking the preset
restrictions of the DBQueue Processor into account. In the case of
customized tables, specify the test instance and the limitations of
the One Identity Manager schema extension.
l Nothing: No test.
Generated Identifier for triggers and constraints that are automatically generated
restriction test by the DBQueue Processor.
for child
relation
M:N relation Specifies whether the child relation can be reached by a many-to-many
relation.
Relation (base) Link to underlying base relation assuming a view is part of a the
relation.
Property Description
Parent Specifies who will run these referential integrity tests. Permitted
relation values are:
test l DLL: Checks through the object layer.
instance
l Trigger: Triggers and constraints are implemented to monitor
the database.
Child Specifies who will run these referential integrity tests. Permitted
relation values are:
test l DLL: Checks through the object layer.
instance
l Trigger: Triggers and constraints are implemented to monitor
the database.
Only The column content is always transported together with the content
transport of the referenced column.
as group
Parent Specifies whether the parent object is added to the list of objects
object in affected by a process. This can prevent the parent object from being
Job queue processed simultaneously more than once.
Related topics
l Table relations on page 98
l Table types and default columns in the One Identity Manager data model on page 48
1. In the Designer, select the One Identity Manager Schema > Logical disk
stores category.
2. Select the Object > New menu item.
3. Enter a name and description for the logical storage.
4. Assign custom tables to the logical disk store.
5. Select the View > Select table relations menu item and enable the DialogTable
table. This shows the Tables tab for assigning tables.
You can link logical storage with physical storage - the file groups - in the One Identity
Manager schema.
If, for example, tables with employee data and tables with Active Directory content are
created on different a data storage medium, performance can be improved by parallel
access through your own E/A controller. Performance can also be improved if, for example,
tables for processing DBQueue Processor tasks or table for handling processes in file
groups are grouped together.
NOTE: You cannot move the following groups into other file groups. If you do so, proper
functioning of the One Identity Manager database cannot be guaranteed.
l DialogColumn
l DialogTable
l DialogValidDynamicRef
l QBMDBQueueTask
l QBMDBQueueTaskDepend
l QBMModuleDef
l QBMModuleDepend
l QBMRelation
l QBMViewAddOn
l QBMDiskStoreLogical
l QBMDiskStorePhysical
WARNING: Only carry out the following steps for implementing file groups,
together with an experienced database administrator.
Ensure that the database cannot be accessed while file groups are being
set up, for example, by the Job server, application server, web server, user
interfaces, or the Web Portal. After restarting the DBQueue Processor, wait
for all DBQueue tasks to be processed before reconnecting the database.
IMPORTANT: Select a user that you use for migrating the database to run the
SQL queries.
1. Create your file groups. For more information about this, see the documents for your
currently installed version of SQL Server.
2. Synchronize the file groups to the One Identity Manager database. Run the query
below using a suitable program for carrying out SQL queries in the database.
exec QBM_PDiskStorePhysicalSync
3. In the Designer, assign physical storage to logical storage.
a. In the Designer, select the One Identity Manager Schema > Logical disk
stores category.
b. Select the logical disk store and in the Properties view, select the file group
under Physical disk store.
c. Select the Database > Save to database and click Save.
4. Disable processing of DBQueue Processor tasks and process handling. Run the
queries below using a suitable program for carrying out SQL queries in the database.
exec QBM_PWatchDogPrepare 1
exec QBM_PDBQueuePrepare 1
5. Move the tables into the configured file groups. Run the query below using a suitable
program for carrying out SQL queries in the database.
exec QBM_PTableMove
6. Reactivate the DBQueue Processor. Run the queries below using a suitable program
for carrying out SQL queries in the database.
exec QBM_PDBQueuePrepare 0,1
exec QBM_PWatchDogPrepare
Certain components of the One Identity Manager’s graphical user interface are stored in
the One Identity Manager schema and can be tailored to suit customer requirements.
Menu items in the navigation structure, interface forms, and task definitions can be
configured in this way.
Menu items, interface forms, and task definitions are assigned to permissions groups. The
user's effective components of the user interface depend on the authentication module
used for logging in to the One Identity Manager tools. If a user logs in to a One Identity
Manager tool, a system user is found and the available menu items, interface forms, task
definitions, and individual program functions are identified depending on the permission
groups to which this system user belongs and the adapted user interface is loaded.
Data is displayed as objects in the user interface. User interface objects are meta-objects.
You provide a selection of configurable elements that describes how the data stored in the
database is perceived. These objects enable data to be distinguished by specific properties.
They provide an additional control function for configuring the user interface. Hence,
interface forms and tasks are linked to object definitions, which means that different forms
and tasks are displayed in the user interface depending on which object is selected.
You can only modify the supplied user interface components to a certain extent and they
are overwritten by schema installation. You can integrate components of the default user
interface into your own user-defined user interface. If necessary you can disable individual
components of the default user interface to stop them from being displayed. The system
users provided are not effected by this limitation. Components labeled as disabled remain
so after schema installation.
Captions are used in the user interface to create user friendly names for different
components of the user interface such as menu items, tasks, and column names. You can
maintain multi-language display text in One Identity Manager which enables you to display
captions in different languages.
The default One Identity Manager installation is supplied in the English - United States
[en-US] and German - Germany [de-DE] language. You can add other languages to the
user interface and display text if required. In this instance, you must translate the text
before One Identity Manager goes live. There is a Language Editor in the Designer to help
you do this. A special control is provided in the One Identity Manager tools that aids multi-
language input.
Table 30: Example relationship between tables and user interface object
definitions
ESet System roles for IT Shop (ESet_ System roles that can be excluded from the
ITShop) IT Shop
IMPORTANT: You must compile the database for the selection criteria to come into effect.
Selection script to determine at runtime whether this data record concerns a system
role for the IT Shop:
Value = $IsForITShop:Bool$
Condition (WHERE clause) to determine whether this system role concerns the
IT Shop:
IsForITShop=1
Related topics
l Creating and editing object definitions on page 109
l Object definition properties on page 110
The current object definition is determined when an item in the administration tool result
list is selected. Valid object definitions and thereby the possible captions are determined by
selection scripts. From the possible display texts, the caption of the object definition with
the lowest sort order is shown.
Example:
Table 31: Captions depending on the sort order of the object definitions
When you select an employee in the result list, the related caption is System roles.
If the system role is also labeled for the IT Shop (IsForITShop=1), this object is
assigned to another object definition by means of the VB.Net expression and the
display text System roles for IT Shop is used.
Related topics
l Object definition properties on page 110
l Editing lists on page 129
1. In the Designer, select the User interface > Object definitions category.
2. Select one of the object definitions in the list.
- OR -
From the menu bar, add a new object definition using the Object > New menu item.
3. Enter the object definition's main data.
4. Select the Database > Save to database and click Save.
Related topics
l Customizing the One Identity Manager default configuration on page 27
l Object definition properties on page 110
Property Description
Exclusive Objects labeled with this option are considered exclusive. That means,
all other possible matching object definitions are not accepted as valid. If
several object definitions of one table are labeled as exclusive, the object
definition with the lowest sort order applies.
Display The display template specifies the form in which the data sets in the
template administration tool result lists are displayed.
Display name The object's display name is used, for example, to identify the table in a
database search or for error output. Display names can be given in more
than one language.
List caption Caption used to display the list title in the user interface.
Form caption Caption used to display the form title in the user interface.
Processing Object processing status. The processing status is used for creating
status custom configuration packages.
Condition Condition required for the object definition to be used for displaying in
lists. You define the condition as a valid WHERE clause for database
queries.
NOTE: The selection script and the condition must match. If one of the
properties is given then the other one also has to be given!
Insert values Default settings for fields that are assigned when a new data set is
added. The input is in VB.Net syntax.
NOTE: The database needs to be complied after changing modifying
the values.
Background Color, with which the control for this object is displayed in the schema
color overview.
Preprocessor Object definitions can have preprocessor conditions added. This means,
condition an object definition is only available when the preprocessor condition is
fulfilled.
Sort order The sort order is used for displaying the form title when an object is
selected. The smaller the sort order magnitude, the stronger the restric-
tions defined for the object.
Related topics
l Creating and editing object definitions on page 109
l Selection criteria for object definitions on page 108
l Using the captions for object definitions on page 108
l Display template for displaying a list on page 131
l Language-dependent data representation on page 210
l Defining insert values on page 131
l Conditional compilation using preprocessor conditions on page 336
l Icons and images for configuring the user interface on page 198
Navigation elements
Table 33: Types of menu items
Type Description
Menu Menu categories are displayed at the navigation top level and provide a
category method of grouping the data to be managed from different viewpoints.
Menu categories constitute entry points into the interface navigation view.
Menu categories are displayed as categories in the user interface.
Fixed menu Fixed menu items are used to organize data more clearly within menu
item categories. These menu items are always shown in the navigation view.
List properties can only be defined for fixed menu items. These specify how
the table entries are displayed in the user interface result list.
Detached Detached menu items are used to group other menu items or to define a
Menu Item main menu item for an application. For example, you can specify a web
interface home page with a detached menu item. Detached menu items
should always be created at the navigation top level. However, they do not
appear in the administration tools navigation view.
Link Links support the navigation configuration. They are used to reference
frequently accessed menu items. Parts of the navigation interface that
require an application several times, only need to be set up once. The refer-
enced menu items are always shown in navigation interface as opposed to
the links.
Main Form Main form elements are not menu items in the navigation view, but are
Element used as the main elements in object overview forms. All child menu items
are assigned to the main element.
Task Task categories are displayed at the navigation top level and are used to
category group together action-based processes. Task categories are not mapped in
the navigation view but on a special form in the administration tools.
Task Tasks are used to map single tasks within a task category. They are used,
for example, as starting points for administration tool wizards. Tasks are
always listed under a task category menu item. Task categories and their
tasks are not displayed in the navigation view but on a special form.
Statistics This menu item is used to display statistics. Statistics are typically
displayed in the info system. All statistics that are defined in one menu
level can be displayed on one form or as individual menu items. Statistics
can also be included as form elements.
Related topics
l Recommendations for editing menu navigation on page 114
l Tips for working with the User Interface Editor on page 115
l General menu item properties on page 124
l Creating database queries for data-dependent menu items on page 127
l Editing lists on page 129
l Using links in the navigation on page 132
l Working with overview forms on page 161
l Including statistics in the user interface on page 176
Related topics
l Navigation elements on page 112
l Assigning menu items to applications on page 123
l Assigning menu items to permissions groups on page 124
l Editing lists on page 129
l Using links in the navigation on page 132
l Using variables in the navigation on page 134
Related topics
l Selecting the user interface navigation view for editing on page 115
l Simulating user interface navigation during editing on page 118
1. In the Designer, select User interface > User interface navigation category.
2. Select the Modify user interface navigation task.
The menu items are loaded and displayed in the User Interface Editor for editing.
Related topics
l Loading menu navigation using an application on page 116
l Direct loading of menu items on page 116
l Loading menu items using permissions groups on page 117
l Loading menu navigation using a where clause on page 118
1. In the Designer, select User interface > User interface navigation category.
2. Select the Manager, the Designer, or the Launchpad.
3. Select the Edit navigation for application task.
The menu items are loaded and displayed in the User Interface Editor for editing.
Related topics
l Loading a complete user interface navigation on page 116
l Direct loading of menu items on page 116
l Loading menu items using permissions groups on page 117
l Loading menu navigation using a where clause on page 118
1. In the Designer, select User interface > User interface navigation category.
2. Select the Load wizard to edit user interface navigation task.
3. On the start page of the wizard, click Next.
4. On the Select loading method page, click .
5. The interface navigation of all applications from the database is displayed on the
Select navigation page. Enable the menu items that you want to load.
6. Click Finish to complete the wizard.
The menu items are loaded and displayed in the User Interface Editor for editing.
Related topics
l Loading a complete user interface navigation on page 116
l Loading menu navigation using an application on page 116
l Loading menu items using permissions groups on page 117
l Loading menu navigation using a where clause on page 118
1. In the Designer, select User interface > User interface navigation category.
2. Select the Load wizard to edit user interface navigation task.
3. On the start page of the wizard, click Next.
4. On the Select loading method page, click .
5. On the Select permissions group page, select the permissions groups whose
menu items you want to load.
You can restrict the permissions groups through a specific system user or directly
select the permissions groups.
6. Click Finish to complete the wizard.
The menu items are loaded and displayed in the User Interface Editor for editing.
Related topics
l Loading a complete user interface navigation on page 116
l Loading menu navigation using an application on page 116
1. In the Designer, select User interface > User interface navigation category.
2. Select the Load wizard to edit user interface navigation task.
3. On the start page of the wizard, click Next.
4. On the Select loading method page, click .
5. On the User-defined selection page, enter the WHERE clause to load the
navigation. Enter the WHERE clause manually or use the WHERE clause wizard.
6. Click Finish to complete the wizard.
The menu items are loaded and displayed in the User Interface Editor for editing.
Related topics
l Loading a complete user interface navigation on page 116
l Loading menu navigation using an application on page 116
l Direct loading of menu items on page 116
l Loading menu items using permissions groups on page 117
1. In the Designer, select User interface > User interface navigation category.
The menu items are loaded and displayed in the User Interface Editor for editing.
2. Define the simulation data.
a. In the User Interface Editor, select the menu Simulation > Define
simulation data.
NOTE: You can end the simulation at any time by closing the simulation window.
Use F9 to restart the simulation. The simulation data (system users and application)
are retained.
1. In the Designer, select User interface > User interface navigation category.
2. Select Load wizard to edit user interface navigation.
3. On the start page of the wizard, click Next.
4. On the Select loading method page, click .
5. On the Select permissions group page, select the permissions groups whose
menu items you want to copy.
You can restrict the permissions groups through a specific system user or directly
select the permissions groups.
6. On the Define target permissions group page, enter the following information.
l Copy to (new) permissions group: Permissions group to which the
individual elements of the navigation are copied.
l Enter the name of the new permissions group. Ensure that your
permissions groups begin with the customer prefix.
l Select an existing permissions group.
NOTE: After inserting, editing, or deleting a menu item, you must compile the database.
Related topics
l Creating a new user interface navigation on page 120
l Assigning menu items to applications on page 123
l Assigning menu items to permissions groups on page 124
l General menu item properties on page 124
1. In the Designer, select User interface > User interface navigation category.
2. Select the Load wizard to edit user interface navigation task.
3. On the start page of the wizard, click Next.
4. On the Select loading method page, click .
5. Click Finish to complete the wizard.
6. Edit the main data of the menu category. Enter at least the name of the menu item.
NOTE: After inserting, editing, or deleting a menu item, you must compile the database.
Related topics
l Copying existing user interface navigation for new permissions groups on page 119
l Creating new menu categories on page 122
l Assigning menu items to applications on page 123
l Assigning menu items to permissions groups on page 124
l General menu item properties on page 124
1. In the Designer, select User interface > User interface navigation category.
2. Select the Manager, the Designer, or the Launchpad.
3. Select the Edit navigation for application task.
The menu items are loaded and displayed in the User Interface Editor for editing.
4. Select the menu item you want to copy in the navigation overview.
5. Select one of the copy options in the context menu.
l Copy: Select this option to copy the selected menu item.
l Copy with child items: Select this option to copy the selected menu item and
its submenu items.
6. Select the menu item under which you want to create the menu item in the
navigation overview.
7. Select New.
8. Edit the main data of the menu item.
9. Assign an application and the permissions groups.
10. Select the Database > Save to database and click Save.
NOTE: After inserting, editing, or deleting a menu item, you must compile the database.
1. In the Designer, select User interface > User interface navigation category.
The menu items are loaded and displayed in the User Interface Editor for editing.
2. Select the menu item under which you want to create the menu item in the
navigation overview.
3. Select the New context menu item.
4. Edit the main data of the menu item.
5. Assign an application and the permissions groups.
6. Select the Database > Save to database and click Save.
NOTE: After inserting, editing, or deleting a menu item, you must compile the database.
Related topics
l Selecting the user interface navigation view for editing on page 115
l Creating a new user interface navigation on page 120
l Creating new menu categories on page 122
l Copying menu items on page 121
l Assigning menu items to applications on page 123
l Assigning menu items to permissions groups on page 124
l General menu item properties on page 124
1. In the Designer, select User interface > User interface navigation category.
The menu items are loaded and displayed in the User Interface Editor for editing.
2. Select the Menu item > New navigation category menu item.
3. Edit the main data of the menu category. Enter at least the name of the menu item.
NOTE: If the entry is to represent a task category, change the entry type of the
menu item to Task category.
4. Assign an application and the permissions groups.
5. Select the Database > Save to database and click Save.
NOTE: After inserting, editing, or deleting a menu item, you must compile the database.
Related topics
l Selecting the user interface navigation view for editing on page 115
l Creating new menu items on page 122
l Creating a new user interface navigation on page 120
l Assigning menu items to applications on page 123
l Assigning menu items to permissions groups on page 124
l General menu item properties on page 124
1. In the Designer, select User interface > User interface navigation category.
The menu items are loaded and displayed in the User Interface Editor for editing.
2. Select the menu item in the navigation overview.
3. In the edit view, select the Application view and then the application.
4. Select the Database > Save to database and click Save.
TIP: Use the Recursively assign application context menu to assign the application to
the selected menu item and its child menu items. Use the Recursively remove applic-
ation context menu to remove the application’s assignment to the selected menu item
and its child menu items.
1. In the Designer, select User interface > User interface navigation category.
The menu items are loaded and displayed in the User Interface Editor for editing.
2. Select the menu item in the navigation overview.
3. In the edit view, select the Permissions group view and select the
permissions groups.
4. Select the Database > Save to database and click Save.
TIP: Use the Assign permissions group recursively context menu to assign the
permissions group to the selected menu item and its child menu items. Use the Remove
permissions group recursively context menu to remove the permissions group assign-
ment to the selected menu item and its child menu items.
Related topics
l Assigning menu items to applications on page 123
Property Description
Menu item Unique menu item relation. You should assign descriptive names here if
possible. These are then propagated in the child structures. This makes
it easier to trace the position of child menu items. The parent menu item
and the hierarchy is determined by the insert position in the user
interface navigation. The menu item name can contain variables in
order to represent the menu items.
Caption Language-dependent caption for displaying the menu item in the user
interface. The caption for data-dependent menu items can contain fixed
strings and variables. The caption for recursive data-dependent menu
items is inherited from the parent menu item. Translate the given text
using the button.
Sort order If several menu items have the same parent menu item, the sort order
of the individual menu items specifies their position in the display order.
If the configuration flag Re-sort data submenu items by caption is
set for the parent menu item, the sort order specified here is invalid.
Icon Icon for displaying the menu item in the navigation If no icon is specified
for recursively data-dependent menu items, the icon from the parent
menu item is inherited.
Overlay icon VB.Net expression for defining overlays for the icon. Used to display the
definition status in the Launchpad.
Condition Specifies the conditions under which the menu item is displayed in the
navigation. The input must satisfy the WHERE clause database query
syntax. You can use variables to formulate a condition.
Configuration Special functions are set for menu items with the configuration flag. For
flag more information, see Table 35 on page 126.
Preprocessor You can add preprocessor conditions to menu items. This means that a
condition menu item is only available when the preprocessor condition is fulfilled.
NOTE: In the Designer, you can find an overview of existing
preprocessor dependencies in the One Identity Manager Schema
> Preprocessor dependencies category.
Show under This option marks the menu items in the Manager to be displayed in the
Configuration Description
flag
Auto-reload on If this configuration flag is set, the menu item is reloaded after new
insert data is added.
Hide on empty If no submenu items are generated for a menu item labeled the same
result way during runtime, the menu item is similarly hidden in the user
interface.
Not expandable Menu items that are labeled with this option cannot be opened even if
by user submenu items are available. The configuration flag is mainly used in
the info system for displaying statistics.
Ignore user No forms are provided in the result list for menu items with this option.
interface forms This can be useful to prevent navigating to objects in the list on an
in result list overview form. This is useful if, for example, forms are not defined for
some objects in the result list. Otherwise, an empty form is displayed.
Ignore user This configuration flag can be used for data-dependent menu items. If
interface forms the configuration flag is set, no object-dependent interface forms are
displayed when the menu item is selected in the user interface. This
configuration flag is mainly used for structuring the user interface for
Web front-ends.
Force open menu If this configuration flag is set, the menu item is always open. There is
item no test to see if the menu item is assigned to something, for example,
the interface form.
Re-sort data- This configuration flag can be used for data-dependent menu items.
dependent menu The configuration flag should be set if language-dependent data is
item by caption displayed. If the configuration flag is set, the data for menu navigation
to be shown is sorted by language after it is loaded.
Re-sort data This configuration flag can be used for lists. The configuration flag
result by caption should be set if language-dependent data is displayed. If the config-
uration flag is set, the data to be shown is sorted by language in the
result list after it is loaded.
only affects data-dependent menu items but also all submenu items.
Take navigation If this configuration flag is set, the location in the navigation where the
context into menu item is opened is taken into account when the objects are
account on loaded. If an object appears several times within a navigation
enabling structure, the content is loaded and displayed depending on the
location of the navigation structure.
If the configuration flag is not set, the data is retained, even if the
object is opened again from another location in the navigation.
Related topics
l Navigation elements on page 112
l Creating database queries for data-dependent menu items on page 127
l Editing lists on page 129
l Using links in the navigation on page 132
l Working with overview forms on page 161
l Including statistics in the user interface on page 176
l Extending the Launchpad on page 187
l Using variables in the navigation on page 134
l Icons and images for configuring the user interface on page 198
l Conditional compilation using preprocessor conditions on page 336
Property Description
Sort order Display elements are sorted by these table columns. The input must satisfy
the Order By syntax of database queries. Sorting is given by the columns of
the display template if no value is entered. You should use a sort order if
the data has a date or represents language-dependent data.
NOTE: For language-dependent sorting, use the Re-sort data
dependent menu item by caption configuration switch.
Condition Condition for limiting the number of results displayed. The input must
satisfy the WHERE clause database query syntax. You can use variables for
formulating a condition. If the menu items are recursively data-dependent
then variables have to be used.
NOTE: The condition must not contain a JOIN and the query may need to
be formulated as a subquery.
Unique The query result cannot contain doubled items. By setting option, any
doubt is eliminated.
Menu items that are labeled with the Unique option have to contain
variables in their names to achieve uniqueness.
If, for example, all software applications (Application table) are grouped
by language, the name of the corresponding menu item must contain a
variable, which references the UID_DialogCulture column in the
Application table.
NOTE: No interface forms are shown for objects that result from a
database query.
NOTE: The option is disabled if the configuration switch Force open
menu item is set.
Recursive This menu item is the recursive successor of the previous menu item. If the
invocation option is not set, the results are represented by a flat structure. Set the
option if the menu item is required to represent a hierarchical structure.
You have to define recursive data-dependent menu items below a data-
dependent item without recursion.
Related topics
l Creating new menu items on page 122
l General menu item properties on page 124
l Recursive data-dependent menu items on page 129
l Using variables in the navigation on page 134
Figure 12: Example of data-dependent menu items with recursive calling (left)
and without recursive calling (right)
Related topics
l Creating database queries for data-dependent menu items on page 127
l Using variables in the navigation on page 134
Editing lists
You can apply list properties to fixed and data-dependent menu items. These properties
determine how the table entries are displayed in the user interface result list.
For more information about general properties of menu items, see General menu item
properties on page 124. To define a list, you need to use the following properties:
Property Description
Display The display template for displaying table entries in the administration tool
template result lists are displayed. If a customer specific display template exists it is
used instead of the default display template.
Syntax: %column name%
Condition Condition for limiting the number of results. The input must comply with the
WHERE clause syntax of database queries. The condition relates to the given
object definition. The condition is consolidated with the condition which is
already stored for the object definition. The variables can be used that are
available in the navigation interface.
Sort order Columns to use for the list order. The input must satisfy the Order By syntax
of database queries. You should use a sort order if the data has a date or
represents language-dependent data. For language-dependent sorting, use
the configuration switch Re-sort data result by caption.
Insert Insert values initialize individual values when a new data set is added over
values the result list. Enter insert values in VB.Net syntax. When defining insert
values, you can apply the variables currently available in the navigation.
Insert in Specifies whether you are generally allowed to insert entries in the corres-
list ponding result list Whether or not users are allowed to insert entries
permitted depends on their permissions. For more information about assigning permis-
sions, see the One Identity Manager Authorization and Authentication
Guide.
Permit Specifies whether you are generally allowed to delete entries in the corres-
deletion in ponding result list. Whether or not users are allowed to delete entries
list depends on their permissions. For more information about assigning permis-
sions, see the One Identity Manager Authorization and Authentication
Guide.
Related topics
l Creating new menu items on page 122
l General menu item properties on page 124
l Display template for displaying a list on page 131
l Defining insert values on page 131
l Using variables in the navigation on page 134
l Language-dependent data representation on page 210
l Object definitions for the user interface on page 107
The display template for displaying a list can be described in the following syntax:
%columnname%
All the columns that belong to the table that will be displayed can be used in the display
template. Variables may not be used in display templates for lists.
Replacing the display template supports the ?? operator. Thus you can formulate
conditional display templates with the following syntax.
%columnname1??columnname2??columnname3%
%columnname1?? columnname2%
The first column that returns a value from the list of column names is used. Spaces are
permitted before and after the ?? operator. Spaces are not allowed at the beginning and
end of the conditional display template for performance reasons.
Example:
The Active Directory user account (ADSAccount table) should be shown as follows:
Common Name (fully qualified domain name)
The display template for the ADSAccount table to be specified for this purpose is:
%cn% (%CanonicalName%)
Related topics
l Editing lists on page 129
l Editing parameter value definitions on page 423
All the columns of the table to be displayed may be applied. You can use variable for
defining insert values.
Example:
Base.PutValue("IsITShopOnly", 1)
Base.PutValue("UID_ADSContainer", context.Replace("%cont%"))
NOTE: If you changed insert values, you must recompile the database.
Related topics
l Using variables in the navigation on page 134
To use links
1. Create the menu item that you want to use as the reference entry.
2. If necessary, create other menu items below the reference entry.
TIP:
l If the menu item is of the Link type, you can use the Follow link node context
menu to navigate to the reference entry.
l For a reference entry, you can use the Referenced by context menu to display all
links that refer to this reference entry and then navigate to these entries.
Related topics
l Creating new menu items on page 122
l General menu item properties on page 124
l Using variables in the navigation on page 134
The variables of the session object that are listed below are always available when the
menu items are being set up.
Variable Meaning
ShowCommonData Specifies whether system data is shown (1) or not shown (0) The
Related topics
l Creating and displaying variables on page 136
l General menu item properties on page 124
l Creating database queries for data-dependent menu items on page 127
l Editing lists on page 129
l Using links in the navigation on page 132
l Querying session object global variables on page 354
Display Any string Current Only used in data-dependent menu items. The
value object’s Multilingual and List of permitted values
To create variables
1. In the Designer, select User interface > User interface navigation category.
The menu items are loaded and displayed in the User Interface Editor for editing.
2. Select the menu item in the navigation overview.
3. In the edit view, select Variable definitions.
In this view, all the variable definitions that belong to the selected menu item are
displayed in tabular form with type, name, and assigned value.
TIP: To display variables inherited from parent nodes, click .
4. To create a variable, click and enter the following information.
l Type of variable: Select Column, Display value, or Text.
l Variable: Enter the name of the variable.
l Value: Enter the value of the variable. The value to be entered depends on the
variable type.
5. Select the Database > Save to database and click Save.
The actual value stored in the variable can be shown in the administration tools as
additional navigation information.
Related topics
l Using variables in the navigation on page 134
Related topics
l Editing user interface forms on page 139
l Disabling user interface forms on page 140
l Creating user interface forms on page 141
l Displaying custom columns and tables on main data forms on page 145
l Forms for custom extensions on page 146
l Replacing default forms with custom forms on page 149
l Working with overview forms on page 161
Related topics
l Tips for working with the Form Editor on page 140
l Disabling user interface forms on page 140
l Copying user interface forms on page 141
l Creating user interface forms on page 141
l Displaying custom columns and tables on main data forms on page 145
l Forms for custom extensions on page 146
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the Edit form task.
3. Select the user interface form in the Form Editor.
4. In the edit view, select the Properties view.
5. Select the User interface forms tab and set the Disabled option.
6. Select the Database > Save to database and click Save.
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the Edit form task.
3. In the Form Editor, select the user interface form you want to copy.
4. Select the Form > Insert menu item.
This creates a copy of the selected user interface form.
5. Edit the other user interface form main data.
6. Assign the user interface form to the applications and permissions groups.
7. (Optional) Assign the user interface form to the object definitions.
8. (Optional) Assign the user interface form to the menu items.
9. Select the Database > Save to database and click Save.
NOTE: Disable the original user interface form. Otherwise both forms are displayed in the
user interface.
Related topics
l Disabling user interface forms on page 140
l User interface form properties on page 150
l Assigning user interface forms to applications on page 142
l Assigning user interface forms to permissions groups on page 143
l Assigning user interface forms to object definitions on page 143
l Assigning user interface forms to menu items on page 145
l Creating user interface forms on page 141
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the Edit form task.
3. Select the Form > Insert menu item.
The Form Editor opens a new sheet form in the edit view.
4. On the Form definition tab, select a form template and enter the name of the form
definition.
5. On the User interface form tab, enter a form name and the caption. Edit the other
main data of the user interface form.
6. Assign the user interface form to the applications and permissions groups.
7. (Optional) Assign the user interface form to the object definitions.
8. (Optional) Assign the user interface form to the menu items.
9. Select the Database > Save to database and click Save.
Related topics
l User interface form properties on page 150
l Assigning user interface forms to applications
l Assigning user interface forms to permissions groups
l Assigning user interface forms to object definitions
l Assigning user interface forms to menu items on page 145
l Copying user interface forms on page 141
l Displaying custom columns and tables on main data forms on page 145
l Forms for custom extensions on page 146
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the Edit form task.
3. In the Form Editor, select the user interface form.
Related topics
l Creating user interface forms on page 141
l Assigning user interface forms to permissions groups on page 143
l Applications for configuring the user interface on page 195
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the Edit form task.
3. In the Form Editor, select the user interface form.
4. In the edit view, select the Permissions group view and select the
permissions groups.
5. Select the Database > Save to database and click Save.
Related topics
l Creating user interface forms on page 141
l Assigning user interface forms to applications on page 142
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the Edit form task.
3. In the Form Editor, select the user interface form.
4. In the edit view, select the Object assignment view and select the object definition.
5. Select the Database > Save to database and click Save.
Related topics
l Creating user interface forms on page 141
l Object definitions for the user interface on page 107
l Effects of object definitions when displaying interface forms on page 144
Example:
The following object definitions with interface forms are set up for the ESet table.
The following interface forms are displayed when an employee object fulfills the
System roles object definition:
l System role overview
Related topics
l Assigning user interface forms to object definitions on page 143
l Object definitions for the user interface on page 107
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the Edit form task.
3. In the Form Editor, select the user interface form.
4. In the edit view, select the Menu assignment view and select the menu item.
5. (Optional) Enable the Show in navigation option to open the form from the
navigation view.
6. Select the Database > Save to database and click Save.
Related topics
l Creating user interface forms on page 141
To display custom database table in the administration tool user interfaces and edit
the main data:
Separate tabs can be shown for custom column extensions to default tables on the
predefined main data forms.
The preceding features apply if the predefined main data form uses the VI_Generic_
MasterData form definition. Otherwise the following prerequisites are required for using
this functionality:
l Main data form already has tabs. Simple main data forms without tabs are
not extended.
l To change the sort order in which the input fields on the form are displayed, select
the Sort order property (DialogColumn.SortOrder) of the database columns.
Columns with a sort order of less that one are not displayed.
l Database columns are grouped. In the Designer, customize the Group property
(DialogColumn.ColumnGroup) in the column definition. Each group has its own tab.
The name of the tag corresponds to the group. If no group is specified, a tab with the
name Custom is displayed.
NOTE: Other special features apply to displaying custom schema extensions on the
UNSAccountB, UNSContainerB, UNSGroupB, UNSItemB, and UNSRootB tables. For more inform-
ation, see the One Identity Manager Administration Guide for Connecting to Custom
Target Systems.
Related topics
l Forms for custom extensions on page 146
l Editing user interface forms on page 139
l Column definition properties on page 90
Related topics
l Hierarchical display of data on assignment forms on page 148
l Configuration data for displaying many-to-many and object relations on forms
on page 155
l Replacing default forms with custom forms on page 149
ADSContainer UID_ADSDomain
You can specify an alternative list for objects that do not have values in all foreign
key columns after a pipe (|).
Example:
(UID_ADSContainer,UID_ADSDomain|UID_ADSDomain)
Related topics
l Table definition properties on page 67
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select hierarchical representation of the form overview. Set the Options >
Tree/list view menu option to do this.
Related topics
l Forms for custom extensions on page 146
Property Meaning
Form name The form name is used to quickly select interface forms, for example, in
the Designer.
TIP: The form name is displayed in the administration tool as extra
navigation information.
Caption Caption shown on the user interface form. The caption is used to
represent the user interface form in the task view and in the form
context menu of the user interface. Translate the given text using the
button.
Online help link The form's help key for navigating to the relevant chapter in the online
help.
Icon Icon marks the user interface form in the user interface.
Sort order The sort order determines the position of the interface form in the task
view and in the form’s context menu in the administration tools.
NOTE: When you enter objects in the Manager, the user interface form
of the Edit form type is always displayed with the lowest sort order.
Preprocessor User interface forms can be given a preprocessor condition. This means
condition that an interface form is only available when the preprocessor condition
is fulfilled.
NOTE: In the Designer, you can find an overview of existing
preprocessor dependencies in the One Identity Manager Schema
> Preprocessor dependencies category.
Control deactiv- Specifies which buttons in the toolbar are to be disabled in the front-
ation ends
Permitted values are:
l Insert object: The button is disabled.
l Update object: The button is disabled.
l Delete Object: The button is disabled.
l Save to database: The button is disabled
Deactivated Use this option to label interface forms that should not be shown in the
user interface.
NOTE: This change is also permitted for user interface forms in the
default user interface and is not overwritten on schema installation.
Show modal Specifies whether the form is displayed in a separate dialog box. Used
by wizards for entering data.
Configuration The configuration is used to limit the tables and columns on display.
Templates for the configuration data definition are found in the pop-up
list XML templates.
In the Properties section, you can transfer special properties of the
Insert values Insert values are only of relevance to interface forms of the Edit form
type. With them you can specify the default values for the columns that
are assigned when a new object is added. The input is in VB.Net syntax.
Related topics
l Form definitions and form templates on page 152
l Hierarchical display of data on assignment forms on page 148
l Defining insert values on page 131
l Conditional compilation using preprocessor conditions on page 336
Form templates
You can find all the form templates in the Designer in the User interface > Forms >
Form templates category. It is not usually necessary to define your own form templates.
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the user interface form in the Form Editor.
3. In the edit view, in Properties, select the Form template tab.
Property Meaning
Form The form template name is necessary for loading the form template from
template the form archive.
name
TIP: The form template name is shown in the administration tools as
additional navigation information.
Form archive Name of the form archive (Forms.*.vif), containing the form template.
Enabled for Specifies the intended use of the form template. Permitted values are:
l Visible in graphical interface
l Visible in web applications
l TimeTrace supported
l Multiobject editing possible
l Deferred operation possible
l Application server not supported
Info (I) Forms of the Info type are only used to display information. Changes
to data on these forms cannot be saved. These forms automatically
omitted by the automatic form selection in quick edit mode.
Edit (E) Forms of the Edit type are used to edit data. This is the first form to
be loaded by the automatic form selection in quick edit mode.
Grid (G) Forms of the Grid type are used to display data in tabular form.
MemberRelation Forms of the MemberRelation type are used to display the data in
(M)) an assignment list (many-to-many relations).
Report (R) Forms of the Report type are used to display data in a report form.
Virtual (V) Forms of the Virtual type are not available in the forms menu. This
form type is used to show editors in the Designer.
Wizard (W) Forms of the Wizard type are used to enter data by means of a
wizard. The forms are displayed in a modal dialog window.
Related topics
l Form definitions on page 154
l Hierarchical display of data on assignment forms on page 148
Form definitions
You can find form definitions in the Designer in the User interface > Forms > Form
definitions category. It is not normally necessary to define your own form definitions.
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. In the Form Editor, select the user interface form.
3. In the edit view in Properties, select the Form definition tab.
Property Meaning
Form definition Name of the form definition. This name is used for displaying the form
name definition in the Designer.
Form template Name of the form template to load from the form archive. A form
template can be used by several form definitions, such as the form
templates for displaying membership trees or the form template for
displaying reports. Use the button next to the input field to integrate a
new form template in the form definition.
Base form for By entering a form definition as a base for a sequence of forms, you can
form sequence create a group of form definitions for one object definition. All form
sequence form definitions contain the same base form. The definition of
the interface form can only be made for this base form. When the
interface form is loaded in the display, the referenced form definitions
for all other form definitions in the form sequence are also loaded. You
can navigate arbitrarily within the form sequence without leaving the
scope of the interface form.
Configuration The configuration data is used to describe the form properties. The defin-
ition of the form properties is written in XML notation.
Required A form definition can be assigned additional tables that are used to
tables display data.
NOTE: If one of the given tables is disabled by a preprocessor
condition then the form definition is also considered to be disabled and
the corresponding interface form is not shown in the user interface.
Related topics
l Form templates on page 152
l Configuration data for displaying many-to-many and object relations on forms
on page 155
Displaying relations
Example:
<Property
name="MNMembersColumnName"
value="UID_ADSPolicy" />
Using tabs
Use the components TabPage to display tabs for the mapped relations. Usually tabs are
used for forms that map multiple relations, such as FrmCommonTwoMemberRelation
or FrmCommonTwoChildRelation. TabPage1 maps the tab for Relation1, TabePage2
maps the tab for Relation2.
Related topics
l Forms for custom extensions on page 146
l Form definitions on page 154
The display text of the menu item, the display text for the objects to be shown and the
menu item icon are displayed in the header of a form element. Other data represents the
object properties and values. There is a tooltip for each property showing a description for
use. Some form element entries are highlighted in color when you click on them with the
mouse. You can jump to the referenced object by clicking on the entry with the mouse.
If the form element is used for mapping lists, the items are displayed with their names. The
number of items is shown in the form element header. There is also an icon in the form
element header for showing and hiding the items. There is no tooltip for list items.
Icon Meaning
NOTE: Objects marker for deletion are struck through on the overview form.
1. In the Designer, select the User interface > Forms > Overview forms category.
2. Select the Create new overview form task.
3. Enter the basic properties for the overview form.
Property Meaning
Menu item Name of the menu item. Assign descriptive names here if possible.
These are then propagated in the child structures.
Caption Caption shown on the user interface form. The caption is used to
represent the user interface form in the task view and in the form
context menu of the user interface. Translate the given text using
the button.
Parent menu Parent menu item for grouping together the overview forms; usually
item a menu category.
Group assign- Permissions group for which the form will be shown.
ment
Related topics
l Adding more form elements to overview forms on page 164
l Special features of editing overview forms on page 166
l Previewing an overview form during editing on page 168
l Customizing the form elements layout on page 167
l Disabling overview forms and form elements on page 169
l User interface navigation on page 111
1. In the Designer, select the User interface > Forms > Overview forms category.
2. Select the overview form, and then the Edit overview form task.
3. Select the view Object relations.
All the object foreign key relations (FK), object child relations (CR), and object
member relations (M:N) are displayed.
4. Select the object relation that you want to display and drag and drop it on an element
in the element area of the design view.
5. Select the type of menu item you want to create. You have the following options:
The following special features apply when you create form elements using the Create list
element reference and Create reference to data element context menus.
l The reference entries under the InfoSheets.QIM.Links menu item are used.
l If the required reference entries are not yet available, new reference entries are
created with the names InfoSheet.List.<table> or InfoSheet.Node.<table>.
l In the reference entry condition, a %<Table>WhereClause% variable is used.
l A variable with the Text variable type is used on the form element. A condition
formulated as a WHERE clause is assigned to these variables on the form element.
You can further modify this condition as required. In the Overview Form Editor's edit
view, edit the variable in the Variable definitions view.
TIP: Use the Create element context menu to create more menu items, links, or statist-
ics as form elements in the Overview Form Editor's design view. In this case, enter the
main data of the menu item, link, or statistics manually.
Related topics
l Creating overview forms on page 163
l Special features of editing overview forms on page 166
l Previewing an overview form during editing on page 168
l User interface navigation on page 111
l Using links in the navigation on page 132
l Using variables in the navigation on page 134
l Including statistics in the user interface on page 176
Special features of a user interface form for the main form element of an
overview form
l The user interface form is created using the VI_ElementNavigation form
definition. This form definition provides the control element for displaying the
overview form in the user interface.
l Enter the name of the main form element in the user interface form's configuration
data in the Properties section.
Example:
<DialogSheetDefinition FormatVersion="1.0">
<Properties>
<Property Name="OverviewNode">VI_Person_Person_
Overview</Property>
</Properties>
</DialogSheetDefinition>
If a form element is used for mapping lists, the items are displayed with their names. You
can jump to the referenced object by clicking on the entry with the mouse.
To prevent navigation to the referenced object, set the value of the configuration switch on
the menu item to Ignore user interface forms in result list. This is useful if, for
example, forms are not defined for some objects in the result list. Otherwise, an empty
form is displayed.
Related topics
l Creating overview forms on page 163
l Adding more form elements to overview forms on page 164
l Customizing the form elements layout on page 167
l User interface form properties on page 150
l Forms for custom extensions on page 146
1. In the Designer, select the User interface > Forms > Overview forms category.
2. Select the overview form and open it in the Overview Form Editor.
3. Select the form element in the design view.
4. Select the tab Layout in the Properties view and change the properties.
Property Meaning
Alignment Positioning of the form elements on the overview form. You cannot
align the main form element. The main form element is always
displayed in the middle of the overview form. All child menu items
are positioned relevant to the main form element.
Background Color for displaying the form element on the overview form The
color background color of the main form element cannot be configured.
When a link is set up, it is given the background color of the refer-
enced menu item.
max. similar If a menu item defines a list of items, each item in the menu item’s
elements result list is displayed in a separate form element.
count
Define up to how many items should be displayed in separate form
elements. If the number is exceeded the items are grouped into a
list and displayed in one form element. In this case, any given
columns are not displayed.
The items are shown with their display template. The number of
items is shown in the form element header. There is also an icon in
the form element header for showing and hiding the items.
TIP: If you want a list in the display template with no more than
two column names, you can use a table to create a two-column
display.
Display Specifies which columns from the valid object definition are to be
columns displayed in the form element. The columns for the main form
element refer to the object definitions of the associated overview
form. All other form elements get their object definitions from the
menu items. When a link is configured, the selected columns of the
referenced menu item are initially copy to the link. The order of
displaying the properties in a form element corresponds to the
The menu item display text, display text for the objects to be shown and the menu item
icon are displayed in the header of a form element.
TIP: You can open an interface form by clicking the caption in the form element header.
l To do this, assign a fixed menu item to the interface form that is allocated below
the main form element. The interface form, however, must refer to the main form
element, for example, a form for assigning this object.
l Use the option Navigation view in the form assignment view to access forms in
the user interface.
Related topics
l Using predefined formatting types on page 80
l Assigning user interface forms to menu items on page 145
1. In the Designer, select the User interface > Forms > Overview forms category.
2. Select the overview form and open it in the Overview Form Editor.
3. Select the main form element's table in Table in the Overview Form Editor's toolbar
and select a fixed object to use for the Object preview from.
NOTE: In the Object menu, select the No object item to end the preview.
1. In the Designer, select the User interface > Forms > Overview forms category.
2. Select the overview form and start the Form Editor with the Edit interface
form task.
3. Set the Disabled option.
4. Select the Database > Save to database and click Save.
1. In the Designer, select the User interface > Forms > Overview forms category.
2. Select the overview form and start the Overview Form Editor with the Edit overview
form <form name> task.
3. Select the form element in the design view.
4. Set the option Disabled.
5. Select the Database > Save to database and click Save.
You can also disable overview forms or single form elements using preprocessor conditions.
NOTE: In the Designer, you can find an overview of existing preprocessor dependencies
in the One Identity Manager Schema > Preprocessor dependencies category.
Related topics
l Deleting form elements on page 169
l Deleting overview forms on page 170
1. In the Designer, select the User interface > Forms > Overview forms category.
2. Select the overview form then select the Edit overview form task.
3. In the Overview Form Editor's design view, select the form element, and choose the
Delete element context menu item.
4. Select the Database > Save to database and click Save.
1. In the Designer, select the User interface > Forms > Overview forms category.
2. Select the overview form, and then Edit interface form.
3. In the context menu, select Delete.
4. In the Designer, select User interface > User interface navigation category.
The menu items are loaded and displayed in the User Interface Editor for editing.
5. In the navigation overview, select the menu item that was linked to the
overview form.
6. To delete the menu item and its child menu item, select the Delete context
menu item.
7. Select the Database > Save to database and click Save.
Related topics
l Deleting form elements on page 169
l Disabling overview forms and form elements on page 169
1. In the Designer, select the User interface > Statistic definitions category.
2. Select a statistic definition and then the Change main data task.
- OR -
To create a new statistic definition, select Object > New.
3. Enter the general properties on the General tab.
4. Enter the inventory query on the Queries tab.
5. Check the queries and statistic definition for errors.
l Use the Check query button to test each query.
The SQL query and its result are tested for validity. This checks the number of
columns, column relations, and data types.
l Use Check button to check the entire statistic definition.
To run the test, the statistic is saved in the database and the calculation is
simulated. After simulation, the simulated test calculation is removed from
the database.
6. Select the Database > Save to database and click Save.
Property Meaning
Display name This display name is used to show the statistic definition in the settings
for the info system in the administration tools. The display name forms
the title of a statistic. Translate the given text using the button.
NOTE: If a caption is entered in the menu item, it overwrites the
statistic definition display name.
Calculation Select the schedule for calculating the statistic information. The
schedule Calculate statistics, Calculate weekly statistics, and Calculate
monthly statistics on the 1st schedules are provided.
NOTE: In the Designer, enable the schedules for calculating statistics
in the Basic data > General > Schedules category. For more
information about editing schedules, see the One Identity Manager
Operational Guide.
Aggregate Use the aggregate function if the measurements query returns several
function values but there should only be one value displayed in the statistics.
Example:
Determines the number of employees for which a department head is
responsible. Use the SUM aggregate function to display a statistic with
the total number of employees in all departments for which one person
is responsible. Do not use an aggregate function to display statistics by
department.
Base Use the base aggregate function if a unique base value cannot be
aggregate attained from the measurements query.
function
NOTE:
l Aggregate and base aggregate functions are only evaluated if
the formulated measurement value query is limited by a
condition on the logged in user.
l Aggregate and base aggregate functions are only taken into
account for statistics that are displayed in the Web Portal.
Threshold Threshold factor in the value range from 0 to 1. This threshold factor is
green used to determine the percentage of the base measurement that
reflects a correct status.
Threshold red Threshold factor in the value range from 0 to 1. This threshold factor is
used to determine the percentage of the base measurement that
reflects an acceptable status.
Unit of Unit for measured values. The unit of measure is displayed in the info
measure system statistics. Translate the given text using the button.
Time scale Enter the display accuracy of the data on the time axis for statistic defin-
itions that contain a time query (for example, the number of new
employees in the last week). Permitted values are Hour, Day, Week,
Month, Quarter, and Year.
Measurement The number of measurement run (apart from the current measurement)
runs to archive to be archived for displaying in the history. Enter the value 0 if you only
want to retain the most recent measurement in each case.
Preprocessor You can add preprocessor conditions to statistics. This means that a
condition statistic definition is only available when the preprocessor condition is
fulfilled.
Instant calcu- Set this for statistic definitions, which are calculated at the moment they
lation are displayed in the Web Portal. If this option is not set, the statistics are
calculated during maintenance tasks.
Imported Specifies whether these statistics are calculated at the moment they are
statistic data displayed (for use in the Web Portal). If this option is not set, the statist-
ics are calculated asynchronously by the DBQueue Processor.
Related topics
l Querying statistic measurements on page 173
l Examples of statistic definitions on page 183
l Conditional compilation using preprocessor conditions on page 336
Property Meaning
Measurements Enter the complete database query in SQL syntax to determine the
query statistic measurements. The query must return the ElementName and
Base measure- Enter the complete database query in SQL syntax to determine the
ments query statistic measurements. The query must return the ElementName and
ElementValue columns as results.
To display statistic information in the Web Portal, you can also option-
ally output the ElementObjectKey, ElementObjectKey2, and
ElementValue2 columns.
You can, optionally, control the display order of statistic measure-
ments with the ElementOrder column. If the ElementOrder column does
not exist, they are sorted by the ElementName column.
The threshold factors entered in the fields Threshold green and
Threshold red refer to the result in the ElementValue column. To
determine the base measurement percentage, the result from column
ElementValue is applied with 100%.
NOTE: The name of the ElementName column in the base
measurements query must match the name of the ElementName
column in the measurements query.
Threshold factors are used to determine the percentage of the base measurement
that reflects a correct or acceptable status.
>= 75 unacceptable
<= 25 unacceptable
Related topics
l General properties statistic definitions on page 172
l Examples of statistic definitions on page 183
1. In the Designer, select a statistic definitions in the User Interface > Statistics
definitions category.
2. In the edit view, select the Properties view.
3. Select the Properties tab and set the Disabled option.
4. Select the Database > Save to database and click Save.
Related topics
l General properties statistic definitions on page 172
Property Meaning
Caption The caption given here, overwrites the statistic definition caption. Leave
this field empty if you want to use the statistic definition display name.
Diagram type Select the diagram type that is going to represent the statistic.
Background Background color of the form elements on the overview form. This layout
information is used if the statistic is used as a form element on an
overview form.
All menu items that are to be displayed in an application user interface have to be assigned
to a permissions group and an application.
Related topics
l Diagram types for visualizing statistics on page 179
l Examples of statistic definitions on page 183
l Creating new menu items on page 122
l Using reports in statistics on page 177
Related topics
l Creating and editing reports in the Report Editor on page 405
l Creating user interface forms on page 141
l Assigning user interface forms to menu items on page 145
l Creating new menu items on page 122
l Using simple reports in statistics on page 178
Related topics
l Creating user interface forms on page 141
l Assigning user interface forms to menu items on page 145
l Creating new menu items on page 122
l Using reports in statistics on page 177
Bar chart
A bar chart can be used to visualize comparisons between measurements. The actual
measurement of the ElementValue column and the identifier for ElementName column are
used to label the diagram.
Pie chart
A pie chart can be used to visualize the measurements as a percentage of the base
measurement. The actual measurement of the ElementValue column and the identifier for
ElementName column are used to label the diagram.
Line diagram
A line diagram can be used to visualize a data sequence over a specified time period. The
time axis is scaled in proportion to the time scale given in the statistic definition. The
number of measurements in the line diagram results from measurement runs that are
entered in the statistic definition from the history data. Click with the mouse on a point of
measurement and a tooltip showing the measurement is displayed.
Traffic light
A traffic light diagram can be used to visualize the state of the system. The state is
indicated by the color. The threshold factors given in the statistic definition determine when
which status is reached.
Color State
Green correct
Yellow acceptable
Red unacceptable
The actual measurement of the ElementValue column and the identifier for ElementName
column are used to label the diagram.
A tachometer diagram can be used to visualize the state of the system in more detail than
in a traffic light diagram. The base measurement is also displayed. The state is indicated by
the color. The threshold factors given in the statistic definition determine when which
status is reached. The actual measurement of the ElementValue column and the identifier
for ElementName column are used to label the diagram.
Thermometer
A thermometer diagram can be used to visualize the state of the system in more detail that
in a traffic light diagram. The state is indicated by a color scale on the side of the diagram.
The threshold factors given in the statistic definition determine when which status is
reached. The actual measurement of the ElementValue column and the identifier for
ElementName column are used to label the diagram.
Table
This diagram type can be used to visualize the measurements in table form. Enter a
number of archived measurements runs in the statistic definition, to present the data over
The number of people in the company should be displayed in the statistics. This statistic
should be calculated daily. The statistics definition could look like:
Statistic: CountEmployees
To display the statistics in the Manager in the Employees > Info system category, the
following menu item is created:
Sort order 1
Example 2:
The number of external employees in the company should be displayed in the statistics.
This statistic should be calculated weekly. If more than 20% of employees in the company
are externals, the info system should display the state as acceptable instead of a correct. If
more than 80% are externals the state should be unacceptable.
Statistic: CountExternalEmployees
To display the statistics in the Manager in the Employees > Info system category, the
following menu item is created:
Sort order 2
The menu item is assigned to the Manager program and an application role and can then
be displayed in the Manager.
Example 3:
The number of employees, for which the current user is entered directly as manager,
should be represented in a statistic. Restrictions to the values for the current user are made
though a condition.
Statistic: CountEmployeesPersonHead
Description: Finds the number of employees for which the manager is responsible
on a daily basis.
Condition: ElementObjectKey in
(select XObjectKey from Person where uid_PersonHead =
'%useruid%')
Configure the web project in the Web Portal, to display statistics in the Web Designer
info system.
Example 4:
Internal and external employees, which the current user supervises as department
manager, should be represented in a statistic. Departments are added here separately to
determine clear results for displaying the measurement because a department manager
might be responsible for more than one department.
Description: Finds the number of internal and external employees per department
on a daily basis.
Condition: ElementObjectKey in
(select d.XObjectKey from Department d join helperheadorg hpo on
d.UID_Department = hpo.UID_Org where hpo.UID_PersonHead =
'%useruid%')
Aggregate SUM
function
Configure the web project in the Web Portal, to display statistics in the Web Designer
info system.
Example 5:
Ten employees with the highest risk index should be found and displayed in a statistic.
They should be sorted by measurement unit.
Statistic: Top10ActivePersonByRiskIndex
Description: Find ten active employees with the highest risk indexes on a daily
basis.
Configure the web project in the Web Portal, to display statistics in the Web Designer
info system.
Parameter Description
enabled Specifies whether the start button for the action is set.
Calling example:
Value = New NavigationNodeState("Ok", "QBM-33228392E9863141A9306B38ADF3D502",
#LD("Project is completed.")#)
Value = New NavigationNodeState("Error", "QBM-
a486f0eabf674392bbbdf8572453258c", #LD("Project is not completed.")#)
l You can use the condition to specify whether the task is only available for a direct
database connection or a connection over an application server. To do this, use the
variable SessionType.
Condition examples:
Related topics
l Creating new menu items and actions for the Launchpad on page 190
l User interface navigation on page 111
l Actions for the Launchpad on page 189
1. In the Designer, select the User interface > Launchpad Actions category.
2. Select the Launchpad action The following main data is mapped for a
Launchpad action.
Property Description
the tooltip.
Related topics
l Disabling task definitions
l Script for conditional displaying of tasks on page 193
l Properties of task definitions
To disable a task
1. In the Designer, select the task in the User interface > Task definitions category.
2. Select the Change main data task.
3. Set the Disabled option.
4. Select the Database > Save to database and click Save.
Related topics
l Creating and editing task definitions on page 191
l Script for conditional displaying of tasks on page 193
1. In the Designer, select the task in the User interface > Task definitions category.
2. Select the Change main data task.
3. Enter a Visibility script in VB.Net syntax. If the return value is false, task is not
displayed in any of the One Identity Manager tools.
4. Select the Database > Save to database and click Save.
Related topics
l Creating and editing task definitions on page 191
l Disabling task definitions on page 192
l Properties of task definitions on page 193
Property Meaning
Caption The display name is used to display the task in the administration tool
task view. Display names can be given in more than one language.
NOTE: The tasks are displayed in alphabetical order in the task view of
One Identity Manager.
Description Description of the task. The description is shown as a tooltip in the user
interface task view.
Enabled for This property specifies the intended use of the task.
Permitted values are:
l Fat Client: You can display the task in the graphical user interface.
l Web Client: You can display the task in web applications.
l Fat Client + Web Client: You can display the task in both the
graphical user interface and web applications.
Script Task script. You can use function calls or commando input in VB.Net state-
ments for the task script. The Base. syntax always accesses the object
that is currently loaded.
NOTE: The database needs to be complied after changing a task script.
Visibility Script for conditional displaying of tasks in One Identity Manager tools.
script For more information, see Script for conditional displaying of tasks on
page 193.
Disabled Specifies whether the task is displayed in the user interface. Disabled
tasks are never displayed in the user interface. Predefined system users
are not effected by this limitation. This modification is also permitted for
predefined default user interface tasks and is not overwritten when the
schema is installed.
Processing The processing status is used for creating custom configuration packages.
status
Program Program function, which is linked to the task definition. If a task definition
function is assigned a program function (QBMMethodHasFeature table) users can
only run this task if they have the necessary permissions groups. For
more information about managing permissions and running methods
using program functions, see the One Identity Manager Authorization and
Authentication Guide.
Related topics
l Creating and editing task definitions on page 191
l Task definitions for the user interface on page 191
l Visual Basic .NET scripts usage on page 342
l Using #LD-notation on page 355
l Language-dependent data representation on page 210
Product Meaning
Program properties
Table 61: Program properties
Property Meaning
Start menu item If the given start menu item is available to a system user in a
program’s navigation menu, the program navigates straight to this
position in the menu when it starts up. You can specify, for example, a
home page for a system user with this feature. This function is mainly
used by web interfaces.
Minimum Minimum version of the program that can run with the version of the
Version database in use. This input is used solely as information, the version
number is not verified.
Engine based Specifies whether menu navigation and forms can be assigned to the
program.
1. In the Designer, select the Base data > Security settings >
Programs category.
2. Select the View > Select table relations menu item and
enable the DialogProductHasAuthentifier table.
3. Click the Authentication module tab.
1. In the Designer, select the Base data > Security settings >
Programs category.
2. Select the View > Select table relations menu item and
enable the DialogProductHasSheet table.
3. Select the Form assignment tab.
1. In the Designer, select the Base data > Security settings >
Programs category.
2. Select the View > Select table relations menu item and
enable the DialogTreeInDialogProduct table.
3. Select the Menu assignment tab.
1. In the Designer, select the Base data > Security settings >
Programs category.
2. Select the View > Select table relations menu item and
enable the DialogUserConfiguration table.
3. Select the System user tab.
Permissions Permissions groups whose permissions are also valid for this program.
group
1. In the Designer, select the Base data > Security settings >
Programs category.
2. Select View > Select table relations and enable the
DialogGroupInProductLimited table.
3. Select the Permissions group tab.
Related topics
l Applications for configuring the user interface on page 195
State Usage
Normal Icons showing an enabled state. These icons must exist in the One Identity
Manager database.
Inverted Icons that show and enabled state on a black background. These icons can be
converted automatically.
Disabled Icons showing a disabled state. These icons must exist in the One Identity
Manager database.
1. In the Designer, select the Base data > General > Icons category.
2. Select the Object > New menu item.
3. Give the icon a name.
4. Upload the icon using .
5. Select the Database > Save to database and click Save.
1. In the Designer, select the Base data > General > Large images category.
2. Select the Object > New menu item.
3. Give the image a name.
4. Load the image using the button.
5. Save the image with the button.
The image is displayed with certain important image properties.
6. Select the Database > Save to database and click Save.
NOTE: If you edit icons or images that are used in a web application, you must compile
the API and the web application afterward with the Database Compiler.
1. In the Designer, select the Base data > Advanced > Predefined SQL category.
2. Select the Object > New menu item.
3. Edit the main data.
Property Description
Code Full database query SQL syntax. You can also use SQL parameters
in the query.
One Identity Manager requires country information at different stages, for example,
employee country and state assignments are accessed when email notifications are created
or IT Shop workflows are being determined. Language, time zones, public holidays, and
working hours are mapped as well as countries and states. The basis data is loaded into the
database during schema installation.
One Identity Manager supports language-dependent representation of data. You can use
this feature to edit display text in different languages for the One Identity Manager tool
user interfaces. You can also create multi-language text for process information output,
script processing as well as processing messages.
The default One Identity Manager installation is supplied in the English - United States
[en-US] and German - Germany [de-DE] language. You can add other languages to the
user interface and display text if required. In this instance, you must translate the text
before One Identity Manager goes live. There is a Language Editor in the Designer to help
you do this. A special control is provided in the One Identity Manager tools that aids multi-
language input.
To help you translate One Identity Manager, other languages are made available with the
Web Portal Language Pack.
NOTE: You will find the One Identity Manager Language Pack in the Support Portal under
https://support.oneidentity.com/.
Related topics
l Setting countries and states on page 203
l Editing countries on page 205
l Editing states on page 206
Related topics
l Specifying the standard hours for countries and states/provinces/counties on
page 204
l Displaying public holidays for countries and states on page 204
l Editing countries on page 205
l Editing states on page 206
1. In the Designer, select the Base data > Localization > Country >
Disabled category.
2. Select a country.
3. Set Enabled.
To enable a state
1. In the Designer, select the Base data > Localization > Country > <country
name> > States category.
2. Select a state.
3. Set Enabled.
Related topics
l Working in different time zones on page 202
l Editing countries on page 205
l Editing states on page 206
1. In the Designer, select the Base data > Localization > Country category.
2. Select a country.
3. Under Hours (default) specify the default working hours.
1. In the Designer, select the Base data > Localization > Country > <country
name> > States category.
2. Select a state.
3. Under Hours (default) specify the default working hours.
Related topics
l Determining working hours on page 202
Related topics
l Public holiday properties on page 209
l Determining working hours on page 202
To edit a country
1. In the Designer, select the Base data > Localization > Country category.
2. Select a country.
3. Edit the main data.
4. (Optional) Assign the language to the country.
a. Select View > Select table relations and enable the
DialogCountryHasCulture table.
b. On the Languages tab, select the languages.
5. (Optional) Assign the time zones to the country.
a. Select View > Select table relations and enable the
DialogCountryHasTimeZone table.
b. On the Time zones tab, select the time zones.
6. (Optional) Assign the public holidays to the country.
a. Select View > Select table relations and enable the
DialogCountryHoliday table.
b. On the Holidays tab, select the public holidays.
7. (Optional) Assign the states/provinces/counties to the country.
a. Select View > Select table relations and enable the DialogState table.
b. On the States tab, select the states.
Related topics
l Working in different time zones on page 202
l Setting countries and states on page 203
l Specifying the standard hours for countries and states/provinces/counties on
page 204
l Displaying public holidays for countries and states on page 204
l Editing states on page 206
l Country properties on page 207
To edit a state
1. In the Designer, select the Base data > Localization > Country > <country
name> > States category.
2. Select a state.
3. Edit the main data.
4. (Optional) Assign languages to the state.
a. Select View > Select table relations and enable the
DialogStateHasCulture table.
b. On the Languages tab, select the languages.
Related topics
l Working in different time zones on page 202
l Setting countries and states on page 203
l Specifying the standard hours for countries and states/provinces/counties on
page 204
l Displaying public holidays for countries and states on page 204
l Editing countries on page 205
l State properties on page 208
Property Description
Enabled If this option is set, this country is can be selected from the list in the
administration tools. This helps to limit the selection of time zones and
languages.
Daylight saving Specifies whether daylight saving time is taken into account when the
time difference to UTC time is calculated.
Hours (default) Specify the working hours which apply across the country. Working
hours are taken into account when calculating time periods, for example
in the IT Shop.
Country name Name of the country in the national language using the national script.
(national
language)
Capital city Name of the capital city in the national language using the national
(national script.
language)
ISO code (2- Two letter country code for this country. This data has to comply with
letter) ISO 3166, a standard for coding geographical units.
ISO code (3- Three letter country code for this country. This data has to comply with
letter) ISO 3166, a standard for coding geographical units.
ISO code Numeric country code for this country. This data has to comply with ISO
(numeric) 3166, a standard for coding geographical units.
Object class Object class for mapping country data in an LDAP schema.
Search mask Search mask for mapping country data in an LDAP schema.
UTC Offset Average time difference between country and UTC time. This value is
(average) calculated by the DBQueue Processor based on the country‘s time
zones.
Language Language and language code of the country. The language specifies the
language for email notification sent to users.
Time zones The country's time zone. The calculation of processes that are time
Related topics
l Working in different time zones on page 202
l Determining working hours on page 202
l Setting countries and states on page 203
l Specifying the standard hours for countries and states/provinces/counties on
page 204
l Displaying public holidays for countries and states on page 204
l Editing countries on page 205
l Editing states on page 206
State properties
Table 65: State properties
Property Description
State name Name of the state in the national language using the national script.
(national
language)
Enabled Use this option to mark the states that your system uses.
Daylight Specifies whether daylight saving time is taken into account when the
saving time difference to UTC time is calculated.
Hours Specify the working hours which apply across the state. Working hours
(default) are taken into account when calculating time periods, for example in the
IT Shop.
Capital city Name of the capital city in the national language using the national
(national script.
language)
Short name Code according to ISO 3166-2 for the state, such as CA for California or
SN for Saxony.
UTC Offset Average time difference between country and UTC time. This value is
(average) calculated by the DBQueue Processor based on the state‘s time zones.
Language Language and language code of the country. The language specifies the
language for email notification sent to users.
Time zones The country's time zone. The calculation of processes that are time
dependent, such as in the IT Shop, is taken in account by specifying a
time zone.
Related topics
l Working in different time zones on page 202
l Determining working hours on page 202
l Setting countries and states on page 203
l Specifying the standard hours for countries and states/provinces/counties on
page 204
l Displaying public holidays for countries and states on page 204
l Editing countries on page 205
l Editing states on page 206
Property Description
Date (ISO Format) The date of the public holiday is entered in ISO format, for
example, yyyy-mm-dd where:
yyyy - year, four digits
mm - month, two digits
dd - day, two digits
Public holiday name Name of the holiday in the national language using the
(national language) national script.
Processing status The processing status is used for creating custom config-
uration packages.
Related topics
l Determining working hours on page 202
l Displaying public holidays for countries and states on page 204
l Editing countries on page 205
l Editing states on page 206
Language-dependent data
representation
One Identity Manager supports language-dependent representation of data. You can use
this feature to edit display text in different languages for the One Identity Manager tool
user interfaces. You can also create multi-language text for process information output,
script processing as well as processing messages.
Related topics
l Language settings for displaying and maintaining the data on page 37
The translations are stored in the DialogMultiLanguage table. A key, the language and the
translation are entered into the table.
Example:
Related topics
l Flagging columns for translation on page 212
l Using the text memory for translation on page 214
l Displaying translations in the Language Editor on page 214
l Language settings for displaying and maintaining the data on page 37
l Using #LD-notation on page 355
The action is displayed in the Manager process view in the current user's login
language. The contents of the column DialogProcess.DisplayName are taken from the
column JobEventGen.ProcessDisplay. The column JobEventGen.ProcessDisplay may
use #LD notation to create the display string.
l Label the JobEventGen.ProcessDisplay column in the Multilingual property
with the values Translation source and #LD content.
l Label the DialogProcess.DisplayName column in the Multilingual property
with Translation target and as the Language dependecy, enter the
JobEventGen.ProcessDisplay column.
l In the Language Editor, translate the entries for the ProcessDisplay column of
the JobEventGen table.
Related topics
l Using the text memory for translation on page 214
l Displaying translations in the Language Editor on page 214
l Column definition properties on page 90
l Using #LD-notation on page 355
1. In the Designer, select the Base Data > Localization > Translatable texts
category.
2. Select the Object > New menu item and enter the translation key.
3. In the Language Editor, translate the entries for
QBMTranslationAddOnSource.Entrykey.
Related topics
l Flagging columns for translation on page 212
All translatable entries that are shown with their translation status in the Language Editor
translation table.
Properties Meaning
Source Specifies where the key comes from. Permitted values are Data,
Bitmask, List of permitted values, Part of a multi-value
column, DBQueue Processor, LD notation, Web, and
External.
TIP: Click with the mouse in a column header to sort by the selected column.
Related topics
l Showing usage of a translation on page 215
l Editing translations of a single table on page 216
l Editing all translations on page 217
l Changing translation keys on page 218
Related topics
l Editing translations of a single table on page 216
l Editing all translations on page 217
l Changing translation keys on page 218
After the changes have been committed to the main database, the system data must be
recalculated by the DBQueue Processor in order make the new multi-language data
available to all system users.
For more information on translating the permitted values of a column, see Permitted
column values on page 83.
Related topics
l Showing usage of a translation on page 215
l Editing all translations on page 217
l Changing translation keys on page 218
After the changes have been committed to the main database, the system data must be
recalculated by the DBQueue Processor in order make the new multi-language data
available to all system users.
Related topics
l Showing usage of a translation on page 215
l Editing translations of a single table on page 216
l Changing translation keys on page 218
Related topics
l Showing usage of a translation on page 215
One Identity Manager uses so called 'processes' for mapping business processes. A process
consists of process steps, which represent processing tasks and are joined by
predecessor/successor relations. This functionality allows flexibility when linking actions
and sequences to object events. Processes are modeled using process templates. A process
generator (Jobgenerator) is responsible for converting script templates in processes and
process steps into a concrete process in the ’Job queue’.
The One Identity Manager Service handles defined processes. The service has to be
installed on the One Identity Manager network server to run the processes. The server
must be declared as a Job server in the One Identity Manager database.
The One Identity Manager Service is the only One Identity Manager component authorized
to make changes in the target system.
To monitor the process handling, use the Job Queue Info program. For more information,
see the One Identity Manager Process Monitoring and Troubleshooting Guide.
Related topics
l Editing processes with the Process Editor on page 222
l Defining processes on page 224
l Running processes automatically on page 251
l Overview of process components on page 254
When you add a new process, an initial process document with one process element is
created. When you add a process step, the associated process step element is created.
Individual elements are linked to each other with a connector. Activate the connection
points with the mouse.
l To create a connection, click on a connection point, hold down the left mouse button
and pull a connector to the second connection point.
l To delete a connection, select a connection end-point again by clicking with the
mouse. Confirm the security prompt with OK.
Double-click on the process or process step element to open the respective edit view,
where you can make your changes.
Each element has a tooltip. A process element's tooltip displays the name and description
of the process. A process step element's tooltip displays the name and description of the
process step as well as the description of the process task used.
Each element contains a quick access menu bar. The icons represent special properties of
processes or process steps. The icon's tooltip shows more detailed information about a
Icon Meaning
Processing is split. The connection point on error and the connector to the
subsequent process step are colored yellow.
Runtime errors are ignored. The connection point is colored gray on error. No
process step is possible on error.
If an error occurs, no more process steps are handled for this process.
The process or process steps are customized. More information about the
customizations is shown in a tooltip.
Color Meaning
Blue Default.
You can drag and drop elements in the process document. Use Arrange in the context
menu to reset the elements to their default positions. The position of each element is
transferred to the One Identity Manager database when the entire process is saved. The
layout is therefore available to all users when you restart the Designer.
1. Create up a process.
2. Specify which events to trigger.
3. Create the process steps.
4. Edit the parameters.
5. Test the process.
6. Compiles the process.
Related topics
l Editing processes with the Process Editor on page 222
l Creating and editing processes on page 224
l Copying processes on page 225
l Creating and editing process steps on page 226
l Copying single process steps on page 227
l Copying process steps within a process on page 227
l Searching for entries within processes on page 228
l Process step parameters on page 234
l Events for processes on page 238
l Permissions for triggering processes on page 240
l Simulating process generation on page 241
l Checking the validity of a process on page 242
l Compiling processes on page 244
Related topics
l Copying processes on page 225
l Process properties on page 230
l Comparing processes on page 229
l Exporting and importing processes on page 229
Copying processes
To copy a process, a wizard is provided.
To copy a process
Option Meaning
Rename If you set this option, the wizard allows you to rename the individual
process process steps.
steps
Copy Enable this option so that events assigned to this process are also
events copied.
Disable Use this option to specify whether to disable the source process after it
source is copied. If you enable this option, the Do not generate option is
process enabled for the source process.
Disable Use this option to specify whether to disable the process after it is
copied copied. If you enable this option, the Do not generate option is
process enabled for the copied process.
5. On the Copy options page, specify the name of the new process.
Related topics
l Creating and editing processes on page 224
l Comparing processes on page 229
l Exporting and importing processes on page 229
Related topics
l Copying single process steps on page 227
l Copying process steps within a process on page 227
l Process step properties on page 231
Related topics
l Creating and editing process steps on page 226
l Copying process steps within a process on page 227
l Process step properties on page 231
Process Name
This searches for the text in the process and process steps.
Process Name
Related topics
l Creating and editing processes on page 224
Property Meaning
Name Name of the process. The name of the process must be unique. Label
custom processes with the CCC_ prefix.
Table The process is generated on the event from this base object (table).
Process VB.Net expression for displaying the display name in the process view.
information
term
Pre-script for The pre-script is run before other scripts are run. You can find global
generating variables with a pre-script or define process specific variables that can
then be used within the process and process steps, for example, in
generating conditions, sever selection scripts or parameters.
NOTE: When a process is being handled, the generating pre-script is
run first and then the generating condition is evaluated.
Generating Define a condition in VB.Net syntax for the process step, which is used to
condition decide whether the process is generated. If a generating condition is
given, the process is only generated if the condition is fulfilled.
You can find an example scripts on the installation medium in
QBM\dvd\AddOn\SDK\ScriptSamples.
Do not Use this option to decide whether a process will be generated. If the
generate option is set, the process will not be generated and cannot be compiled.
NOTE: If the option for processes is activated, this option also remains
activated during a schema update and is not reset.
Preprocessor You can specify a preprocessor condition for a process for conditional
Threshold Maximum number of processes for a queue that can be present at the
(warning) same time. A warning is sent if the number is exceeded. The One
Identity Manager Service continues handling processes all the same.
Threshold Maximum number of processes for a queue that can be present at the
(disable) same time. If this number is exceeded, other processes are set to the
Overlimit status and are not processed by the One Identity Manager
Service.
Related topics
l Using process-specific and global variables for the process definition on page 245
l Thresholds for handling processes on page 247
l Logging process information during process handling on page 321
l Conditional compilation using preprocessor conditions on page 336
l Visual Basic .NET scripts usage on page 342
Property Meaning
Process task Process task to run for the process component. When you select a
process task you define which action is run by the process step. The
process task parameter templates are copied to the process step as
parameters. This means that every process step that uses this process
task can pass other parameter values. The original is not altered.
Priority The priority sets the precedence in the Job queue for adding and
processing the process step. The values 1 to 15 are allowed. The higher
the value, the sooner the process step will be processed.
Priority defin- VB.Net expression for determining the priority depending on the
ition contents of the process.
If a process step contains a script for dynamically determining the
Process inform- VB.Net expression for displaying the display name in the process view.
ation term
Depth of detail Severity level for mapping process information.
Pre-script for The pre-script is run before other scripts are run. You can find global
generating variables with a pre-script or define process specific variables that can
then be used within the process, for example, in generating conditions,
sever selection scripts or parameters.
Generating Define a condition in VB.Net syntax for the process step, which is used to
condition decide whether the process step is generated. If a generating condition
is given, the process step is only generated if the condition is fulfilled.
Preprocessor You can specify a preprocessor condition for a process step for condi-
condition tional compiling. A process step is, therefore, only available if the prepro-
cessor condition is fulfilled.
Server Specifies the server types for this process step. Specifies the permitted
function server types for this process step. The selection must lead to a unique
result, for example SQL processing Server.
Script for If it is not possible for the Job Generator to decide which server to use
server based on the server function, you can use a selection script in VB.net
selection syntax for more a detailed evaluation.
Wait mode on If a specific condition is not fulfilled at a particular point in the process
error step, One Identity Manager Service can repeat the process step. Setting
this option results in the process step being re-run depending on latency
and retries.
Split Process steps that are only required for branching the process are
processing labeled with this option. An example could be a process step that checks
for the existence of a directory. Depending on the result returned, the
next step to be processed is either the next step on success or the next
step on error, without generating an error message.
Ignore errors Specifies whether runtime errors are ignored. In this case the following
process step is still carried out despite the previous step not being
correctly processed.
Stop on error If an error occurs when a process step is processed, the process step
remains in the job queue and is given the Frozen status. In this case, no
more process steps are collected for processing and they remain in the
Job queue. You can re-enable the process steps that have the Frozen
status in Job Queue Info program. For more information, see the One
Identity Manager Process Monitoring and Troubleshooting Guide.
If the Common | MailNotification | NotifyAboutWaitingJobs
configuration parameter is enabled, an email notification sent is sent in
addition if processes with the Frozen status occur, and a corresponding
entry is generated in the event log of the update server. Prerequisites for
using the notification system is an SMTP host set up for sending mail and
activation of the configuration parameter for mail notification.
Process steps that are generated by SQL from the database, can always
be labeled with the Stop on error option. You can configure this
behavior in the Common | DBJobCreateWithFreeze configuration
parameter.
Log errors to If this option is set, the error message from process handling is logged to
journal the system journal. Error messages from process handling can be
recorded in the process history.
Log mode You can enable an extended logging mode for process step messages in
Job Queue Info.
Use this logging mode to provide individual processing steps with
continuous extended logging. Use the Always value to log the messages
of the process step on success and on failure. Use the value Error to log
the messages of the process step on failure only.
DBQueue does Specifies whether or not to wait until the process step has been
not wait processed before continuing to process DBQueue Processor tasks. It is
only necessary to wait for process steps if a process step could change
data that is relevant to the DBQueue Processor tasks.
Related topics
l Checking the validity of a process on page 242
l Specifying the executing server on page 248
l Notifications about process step handling on page 249
l Using process-specific and global variables for the process definition on page 245
l Overview of process components on page 254
l Logging process information during process handling on page 321
l Conditional compilation using preprocessor conditions on page 336
l Visual Basic .NET scripts usage on page 342
Icon Meaning
Related topics
l Editing process step parameters on page 235
l Allocating parameter values on page 236
Property Meaning
Hidden Specifies whether the parameter is shown in the One Identity Manager
Service log file and in the Job Queue Info program. Values for hidden
parameters are shown as <HIDDEN>.
NOTE: Users with the program function Option to see the values of
hidden parameters in Job Queue Info (JobQueue_
ShowHiddenParameters) can view the hidden parameters in the Job
Queue Info. Assign the appropriate permissions group to the program
function.
Contains Specifies whether encrypted sequences are contained in this value. Use
encrypted this option, if partially encrypted sequences such as passwords are to be
components passed in complex parameters, for example Windows PowerShell scripts.
Encrypted parts of a parameter are shown as <Hidden> in the One Identity
Manager Service log file and in the Job Queue Info program.
Value Define value templates in VB.Net syntax. When a parameter is added, the
template value template is copied from the parameter template.
TIP: To restore the default value template, select the button in View
> Parameter and click the Template button in the Edit parameters
view.
Type Type of parameter. The IN, OUT and INOUT values are permitted.
Parameters of the OUT or INOUT type are parameters that a process
component can use to output a value. This value is then available in all
subsequent process steps in the process and can be used as a value for
parameters of the IN type.
Related topics
l Allocating parameter values on page 236
l Visual Basic .NET scripts usage on page 342
Related topics
l Properties of process step parameters on page 235
l Visual Basic .NET scripts usage on page 342
l Configuring the One Identity Manager Service on page 279
Event Comment
Insert Event created when an object is created. Available for all objects.
Update Event created when an object is changed. Available for all objects.
Delete Event created when an object is deleted. Available for all objects.
Execute The event is triggered by the DBQueue Processor when the activation time of
a deferred operation is reached.
Other events are provided by the Customizer.You can define other custom events to
trigger processes.
To create an event
Property Description
Sort order Specifies the sort order in which the processes are generated if
multiple processes refer to the same event of the base object.
Processes with a lower sort order are generated before processes
with a higher sort order.
Event VB.Net expression for displaying the display name in the process
process view.
information
Related topics
l Logging process information during process handling on page 321
l Permissions for triggering processes on page 240
Related topics
l Creating events for processes on page 239
Color Meaning
NOTE:
Double-click on a successfully generated process step in the edit window to display
properties and parameters with their specific values.
You can copy parameters values to the clipboard with Ctrl + C.
TIP:
l You can swap between the edit view and the simulation view using the Process >
View menu to post-process the processes.
l For every simulation, an entry is created in the toolbar of the Process Editor,
which you can use to rerun the simulation without having to specify the simulation
data again.
l To display the process generation protocol, select the Process > View > Process
generator log menu item.
To check a process
Icon Meaning
No errors found.
Errors.
Warning, Information.
TIP:
l Process or process step controls are highlighted in yellow to indicate a warning
or information. If errors occur, the process or process step controls are
highlighted in red.
l Double-click an error message in the Validity check view to jump to the
corresponding entry in the process.
The given parameter value does not correspond to required notation (value
=).
The two process step properties Ignore errors and Wait mode on error
are set. The process step is never repeated because all errors are ignored.
The two process step properties Ignore errors and Stop on error are set.
The process step never goes into a FROZEN state because all errors are
ignored.
The two process step properties Ignore errors and Split processing are
set. The split error is never processed.
Related topics
l Compiling processes on page 244
Compiling processes
Once you have created, imported, or made changes to a process, you need to compile it.
The process cannot be generated until it has been compiled.
NOTE: Before you compile a process, you should carry out a validity check of the process
and process steps.
Compiling takes place for each base object, that means that all processes that belong to a
base object are translated. The assemblies are created and placed on the workstation
where generating will take place. During translation, the source is checked for errors. This
process may required some time.
There are two methods for compiling a process in the Process Editor:
Local compiling
If the process has been test compiled, use this method to add assemblies that are
generated into the main database after compiling the process. Once the changes have be
integrated the altered processes are immediately available in the system.
Displaying errors
Error messages during compiling are displayed in Compiler errors. The source code is
displayed if errors occur during compilation. This view is only for displaying the source
code. It cannot be edited here.
NOTE:
l If several users edit processes of the same base object, any error messages are
also sent to other users. However, these cannot be changed by the current user.
l Double-clicking the error message in the Compiler errors view takes you straight
to the corresponding line in the process. Here, you can edit it.
l Double-clicking the error message in the Compiler errors view takes you straight
to the corresponding row if the source code view is activated.
Related topics
l Checking the validity of a process on page 242
Pre-script syntax
values("Name") = "value"
Example:
The process should only be generated for a full synchronization. The Session variable
FullSync is used for this. This variable can take the True and False values. The
variable is available to all processes that are generated within full synchronization.
The variable is queried in the pre-script for generating and the generating
condition. This way, loading of unnecessary objects is already prevented by
running the pre-script.
Generating pre-script:
If CBool(Session.Variables("FULLSYNC")) Then
values("Name1") = "value1"
values("Name2") = "value2"
...
End If
Generating condition:
Value = CBool(Session.Variables("FULLSYNC"))
Related topics
l Pre-scripts for use in processes and process steps on page 352
l Querying session object global variables on page 354
Prerequisites
l If the warning threshold is exceeded, a message is sent by email to a specified
recipient. The prerequisites for using the notification system are a SMTP host set up
for sending mail and the activation of the configuration parameter for mail
notification. For more information about configuring the email notification, see the
One Identity Manager Installation Guide.
l In the Designer, check the Common | MailNotification |
NotifyAboutWaitingJobs configuration parameter and enable this configuration
parameter if necessary. If the configuration parameter is enabled, an email
notification is sent if processes with the Overlimit status occur and a corresponding
entry is created in the update server’s event log.
To define thresholds
Related topics
l Process properties on page 230
Related topics
l Overview of server functions on page 267
l Process step properties on page 231
Example:
Value = "DIRECT:\Server01"
Related topics
l Visual Basic .NET scripts usage on page 342
l Selecting servers with server functions on page 248
l Process step properties on page 231
Property Meaning
NOTE: Email notifications are only sent during processing if all the data is entered
for a case (failure or success).
The process VID_SendMail (DialogDatabase table) is used to send email notifications from
the process handling. This process uses the parameters of the vid_InsertForSendMail
database procedure. To customize this process, create a copy of the process and edit it.
TIP:
To send the error messages logged by the One Identity Manager Service in case of an
error by email notification, the vid_InsertForSendMail database procedure supplies the
pcAdditionalMessage parameter.
To access this functionality, use the variable [AdditionalMessage] when you set up your
failure notification message.
Example of a message:
Value = "Process failed." & vbcrlf _
Related topics
l Visual Basic .NET scripts usage on page 342
l Using #LD-notation on page 355
l Process step properties on page 231
Icon Meaning
The process plan was not run. This state can occur if the task could not be
run to plan or if the schedule was re-enabled and the time had not been
reached for the initial run.
The current time (server time) does not lie between the start and end
times of the schedule.
TIP: To reload the start times of all process plans, use the Process plan >
Refresh menu item.
Related topics
l Starting a process plan immediately on page 252
l Creating and editing process plans on page 252
Related topics
l Displaying process plan status on page 251
l Creating and editing process plans on page 252
TIP: You can see which process is triggered by a process plan from the Edit process
context menu.
Related topics
l Displaying process plan status on page 251
l Starting a process plan immediately on page 252
l Process plan properties on page 253
Property Meaning
Name Name of the process plan. Translate the given text using the button.
Table Base object (table) for which the process plan will run.
Event Event to be run. All base object events are listed for new process plans.
Activation Schedule that contains the activation times for the process plan.
schedule
NOTE: Create a new schedule using next to the menu.
For more information about schedules, see the One Identity Manager
Operational Guide.
Max. Enter the number of hours after which the process plan should automat-
processing ically quit.
time
Condition Limiting condition for elements to which the scheduled task will be
applied. The input must satisfy the WHERE clause database query syntax.
Parameters List of parameters of a parameter collection that are set when the process
is generated from this process plan.
Component Description
ScriptComponent This process component run the scripts from the assem-
blies.
Related topics
l Overview of process components on page 254
l Properties of process components, process tasks, and parameter templates on
page 258
l The One Identity Manager Service functionality on page 276
l Running external processes with the StdioProcessor on page 279
Property Meaning
Max. instances This value specifies the maximum number of instances in which this
process component is allowed to run in a queue in the Job server.
Permitted values are:
l -1: All instances of this process component are processed
sequentially.
It must be ensured that these components are run exclusively on
one Job server, which means no other queue can exist to process
these components.
l 0: All instances of this process component can be processed
simultaneously.
l 1 or greater: The exact number of instances of a process
component, which are processed simultaneously.
Property Meaning
Operating Specifies the operating system on which the process task can be run. The
system class Win32, Linux and ALL values are permitted, where the ALL value
specifies that this process task is used on any operating system.
Max. This value specifies the maximum number of instances that can be run by
instances One Identity Manager Service in parallel per process task.
Permitted values are:
l -1: All instances of this process task are processed sequentially.
Other process task instances of the same process component are
not run simultaneously.
l 0: The maximum number of instances given for the process
component is used.
l 1 or greater: The exact number of instances of a process task,
which are processed simultaneously.
Last step in Specifies whether a process task is principally marks the end of a partial
the partial process tree.
process tree
Exclusive per Specifies whether the process task is run exclusively per object. If this
object option is enabled in a process task, only one process step with this process
task can be run for a specific object. There is no parallel processing.
DBQueue Specifies whether or not to wait until the process step has been processed
does not wait before continuing to process DBQueue Processor tasks. It is only
necessary to wait for process steps if a process step could change data
that is relevant to the DBQueue Processor tasks.
Property Meaning
Hidden Specifies whether the parameter is shown in the One Identity Manager
Service log file and in the Job Queue Info program. Values for hidden
parameters are shown as <HIDDEN>.
NOTE: The following users can view the hidden parameters in the Job
Queue Info.
l Administrative users
l In the Job Queue Info, users with the Option to see the values
of hidden parameters in Job Queue Info program
(JobQueue_ShowHiddenParameters) function
Related topics
l Changing the maximum number of instances for process tasks and process
components on page 257
l Displaying and editing process task exe types on page 256
l Parallel processing of processes by the One Identity Manager Service on page 278
l Running external processes with the StdioProcessor on page 279
Each Job server within the network must have a unique queue identifier. The process steps
are requested by the Job queue using exactly this queue name:
1. In the Designer, select the Base Data > Installation > Job server category.
2. Enter a new Job server using the Job servers > New menu item.
- OR -
Select the Job server to be edited in the Job server overview.
3. Edit the Job server's main data.
4. Select the View > Server functions menu item and specify the server
functionality.
5. Select the View > Machine roles menu item and assign roles to the server.
The machine roles expected by a server function, are already assigned.
Property Meaning
Coding Character set coding that is used to write files to the server.
Executing Name of the executing server. The name of the server that exists
server physically and where the processes are handled.
This input is evaluated when the One Identity Manager Service is
automatically updated. If the server is handling several queues, the
process steps are not supplied until all the queues that are being
processed on the same server have completed their automatic update.
Queue Name of the queue to handle the process steps. The process steps are
requested by the Job queue using this queue identifier. The queue identi-
fier is entered in the One Identity Manager Service configuration file.
Server Operating system of the server. This input is required to resolve the path
operating name for replicating software profiles. The values Win32, Windows,
system Linux, and Unix are permitted. If no value is specified, Win32 is used.
account, the service account domain, and the service account password
have to be entered for the server.
One Identity Specifies whether a One Identity Manager Service is installed on this
Manager server. This option is enabled by the QBM_PJobQueueLoad procedure the
Service moment the queue is called for the first time.
installed
The option is not automatically removed. If necessary, you can reset this
option manually for servers whose queue is no longer enabled.
Stop One Specifies whether the One Identity Manager Service has stopped. If this
Identity option is set for the Job server, the One Identity Manager Service does
Manager not process any more tasks.
Service
You can make the service start and stop with the appropriate admin-
istrative permissions in the Job Queue Info program. For more inform-
ation, see the One Identity Manager Process Monitoring and
Troubleshooting Guide.
Paused due to Specifies whether task processing for this queue has been stopped
unavailability because the target system that uses this Job server as a synchronization
of a target server is temporarily unavailable. As soon as the target system is
system available again, processing starts and all outstanding tasks are
performed.
For more information about offline mode, see the One Identity Manager
Target System Synchronization Reference Guide.
Port Port for showing the One Identity Manager Service log file in a browser.
No direct Specifies whether the Job server has a direct connection to the
database database. Enable this option if the Job server receives its processes
connection through an application server.
Connection If the Job server has no direct connection to the database, enter the
data connection data for the application service.
You can enter the connection data in the Designer, in the Base data >
Security settings > Connection data category.
Extended Additional information about Job servers. The UID of the Job server and
properties the details of creation and change (user, date) are displayed. These
cannot be edited.
Last timeout The time of the last check for loaded process steps with a dispatch value
check that exceeds the one in the Common | Jobservice | LoadedJob-
sTimeOut configuration parameter.
External port (For docker containers) Custom port for showing the One Identity
Manager Service log file in a browser.
Full server (For docker containers) Custom full server name complying with DNS
name external syntax.
Syntax:
<Name of servers>.<Fully qualified domain name>
Machine role Role of the Job server in One Identity Manager. Installation packages to
be installed on the Job server are found depending on the selected
machine role.
Related topics
l Overview of server functions on page 267
l Overview of machine roles on page 268
l Job server statistics on page 269
l Connection data for process generation on page 270
l JobServiceDestination on page 295
Some machine roles such as Web cannot be actively selected during the installation. These
machine roles are automatically assigned when different web applications are installed with
the Web Installer.
Machine roles for installing the One Identity Manager Service are linked with server
functions. The server function defines the functionality of a server in One Identity
Manager. One Identity Manager processes are handled with respect to the server function.
The server functions available are predefined when a server installed, based on the
selected machine role.
The installation packages and files to be installed on the computer or server are specified in
a machine role. The information about the machine role, the installation package and the
files is saved in the file InstallState.config during installation and are thus available for
automatic software update.
NOTE: If you use the Software Loader to import new files into the One Identity Manager
database, you should assign the files to a machine role. This ensures that the file are
distributed by automatic software update. For more information about automatic
software updates, see the One Identity Manager Installation Guide.
Related topics
l Overview of server functions on page 267
l Overview of machine roles on page 268
l Editing the Job server on page 262
The server function defines the functionality of a server in One Identity Manager. One
Identity Manager processes are handled with respect to the server function.
NOTE: More server functions may be available depending on which modules are installed.
Server Remark
function
Update This server automatically updates the software on all the other servers.
server The server requires a direct connection to the database server that One
Identity Manager database is installed on. It can run SQL tasks.
The server with the One Identity Manager database installed on it is
labeled with this functionality during initial installation of the schema.
SQL It can run SQL tasks. The server requires a direct connection to the
processing database server that One Identity Manager database is installed on.
server
Several SQL processing servers can be set up to spread the load of SQL
processes. The system distributes the generated SQL processes
throughout all the Job servers with this server function.
CSV script This server can process CSV files using the ScriptComponent process
server component.
SMTP host Server from which One Identity Manager Service sends email notifications.
Prerequisite for sending mails using One Identity Manager Service is SMTP
host configuration.
Related topics
l Machine roles and server functions on page 265
l Editing the Job server on page 262
l Overview of machine roles on page 268
Installation packages to be installed on the Job server are found depending on the selected
machine role.
Related topics
l Machine roles and server functions on page 265
l Overview of server functions on page 267
l Editing the Job server on page 262
To calculate statistics
l In the Designer, set the Common | JobQueueStats configuration parameter. If the
configuration parameter is enabled, the One Identity Manager Service statistics are
written to the JobQueueStats table.
l In the Designer, set the Common | JobQueueStats | MaxAge configuration
parameter and enter the retention period for the statistics in days.
For every action in the Job queue, such as inserting, changing, or deleting processes, new
statistic entries are created for the Job server. The DBQueue Processor task
QBMJobQueueStatsShrink compresses the statistics. The compression takes place for every
hour prior to the current hour.
1. In the Designer, select the Base Data > Installation > Job server category.
2. Start the Job Server Editor using the Edit Job server task.
3. Select the Job server to be edited in the Job server overview.
4. Use the Select columns context menu to select the columns with statistics.
These columns are highlighted in the color in the Job server view.
Related topics
l Configuring the One Identity Manager Service on page 279
l JobServiceDestination on page 295
TIP: Label one set of connection data for the application server as a Fallback connec-
tion. This connection data is used if you do not enter any reference to concrete connec-
tion data on the Job server.
1. In the Designer, select the Base data > Security settings > Connection
data category.
2. Using the Object > New menu item, enter new connection data.
3. Enter the following information.
Property Description
Display name Display name of the connection data. Using this display name,
you can select the connection data at the Job server entry.
Fallback connec- Label one of the sets of connection data for the application server
tion as a Fallback connection. This connection data is used if you
do not enter any reference to concrete connection data on the
Job server.
Related topics
l Connection data for process generation on page 270
l Entering Job server connection data on page 272
1. In the Designer, select the Base Data > Installation > Job server category.
2. Select the Job server to be edited in the Job server overview.
3. Edit the following data on the Properties tab.
l Enable the No direct database connection option for the Job server.
l Under Connection data, select the connection data for the application server.
Related topics
l Connection data for process generation on page 270
l Entering connection data for the application server on page 271
NOTE: To generate processes for the Job server, you need the provider, connection
parameters and the authentication data. In the default case, this information is determ-
ined from the database connection data. If the Job server runs through an application
NOTE: If you are working with an encrypted One Identity Manager database, see the
notes on working with an encrypted database in the One Identity Manager
Installation Guide.
1. In the Designer, select the Base Data > Installation > Job server category.
2. Start the Job Server Editor using the Edit Job server task.
3. Select the Job server to be edited in the Job server overview.
4. Select the Job server > Install service menu item.
This starts the One Identity Manager Service remote installation wizard.
5. On the start page of the wizard, click Next.
6. On the Configure service page, enter the One Identity Manager Service
configuration settings.
Initial configuration of the service is already predefined for the database connection.
To use this template, enter the connection data for process collection. In order to
extend the configuration, each configuration section of the One Identity Manager
Service is listed in the module list.
l For a direct connection to the database:
1. Select Process collection > sqlprovider.
2. Click the Connection parameter entry, then click the Edit button.
3. Enter the connection data for the One Identity Manager database.
l For a connection to the application server:
1. Select Process collection, click the Insert button and select
AppServerJobProvider.
2. Click the Connection parameter entry and click the Edit button.
3. Enter the connection data for the application server.
4. Click the Authentication data entry and click the Edit button.
5. Select the authentication module. Depending on the authentication
module, other data may be required, for example, user, and password.
For more information about One Identity Manager authentication
NOTE: In a default installation, the service is entered in the server’s service management
with the name One Identity Manager Service.
TIP: Use the Job server > Start HTTP request menu item to address the HTTP server
of the One Identity Manager Service for a Job server and display the different services of
the One Identity Manager Service.
Related topics
l Setting up Job servers on page 261
l The One Identity Manager Service functionality on page 276
l Configuring the One Identity Manager Service on page 279
Related topics
l Editing the Job server on page 262
l Installing the One Identity Manager Service on a Job server remotely on page 272
l AppServerJobProvider on page 294
l Connection data for process generation on page 270
The One Identity Manager Service enables the distribution throughout the network of
information that is administrated in the One Identity Manager database. The One Identity
Manager Service performs data synchronization between the database and any connected
target systems and runs actions at the database and file level.
Process steps are run by process components. The One Identity Manager Service also
creates an instance of the required process component and transfers the process step
parameters. Decision logic monitors the performance of the process steps and determines
how processing should continue depending on the results of the run process components.
For more information about installing and updating the One Identity Manager Service, see
the One Identity Manager Installation Guide.
For more information about logging and monitoring process handling and support for
troubleshooting, see the One Identity Manager Process Monitoring and
Troubleshooting Guide.
Related topics
l Handling processes with the One Identity Manager Service on page 277
l Parallel processing of processes by the One Identity Manager Service on page 278
l Running external processes with the StdioProcessor on page 279
l Configuring the One Identity Manager Service on page 279
l Setting up Job servers on page 261
l Process orchestration in One Identity Manager on page 220
When the One Identity Manager Service is downloaded, any requests that may still be in
the results queue are serialized in a file that is processed the next time the One Identity
Manager Service starts. This should ensure that no processing results go missing. The
backup files are kept in the local program data directory (%APPDATA%\One Identity\One
Identity Manager\JobService).
Related topics
l Configuring the One Identity Manager Service on page 279
l Setting up Job servers on page 261
Related topics
l Overview of process components on page 254
l Properties of process components, process tasks, and parameter templates on
page 258
l Changing the maximum number of instances for process tasks and process
components on page 257
Related topics
l Overview of process components on page 254
l Properties of process components, process tasks, and parameter templates on
page 258
l Displaying and editing process task exe types on page 256
l Configuring the One Identity Manager Service on page 279
Provider Description
JobDestination Description
Jobgate Description
The system initially searches for the parameter in the configuration file Jobservice.cfg in
order to determine the setups. If the parameter is not found, the file viNetwordService.exe
is automatically used. Thus the One Identity Manager Service can only work with the
configuration file viNetworkService.exe.config.
In the Designer, configure the One Identity Manager Service in the Base data >
Installation > Job server category or by using the Job Service Configuration program.
There is one unique section in the file for each of the different modules in One Identity
Manager Service.
Module Description
Configuration Standard configuration settings for One Identity Manager Service are
in this module.
LogWriter This module writes One Identity Manager Service messages to a log
file.
Request Use this module to configure the One Identity Manager Service as a
dispatcher dispatcher. The process requests from the child Job server are
buffered, processed, and forwarded.
Connection With this module you can set special configuration settings for the
behavior of the One Identity Manager Service.
HTTP authen- Use this module to specify how authentication works on an HTTP server
tication module so that extended services can be accessed, for example, displaying the
log file or the status display.
File with the In this module, you provide the data for files with a private key. Use
private key. this module if you are working with more than one private key.
1. In the Designer, select the Base Data > Installation > Job server category.
2. Start the Job Server Editor using the Edit Job server task.
TIP: Use the Job server > Start HTTP request menu item to address the HTTP server
of the One Identity Manager Service for a Job server and display the different services of
the One Identity Manager Service.
Related topics
l Configuring the One Identity Manager Service on page 279
l Template for the configuration file on page 285
l Selecting module types and editing parameters on page 286
l Validating the configuration file on page 287
Related topics
l Customizing the One Identity Manager Service configuration for a Job server
on page 284
l Selecting module types and editing parameters on page 286
l Validating the configuration file on page 287
When a item is selected in the module list, all possible parameters and their values are
displayed. You can change some values by clicking in input field or on the option button in
the Value column.
NOTE: The parameter description in each module contains the parameter name, in
brackets, which is used in the configuration file.
The following icons are used:
Icon Meaning
This parameter is added during run-time. The One Identity Manager Service
does not need to be restarted.
The parameter takes effect after the One Identity Manager Service is restarted.
Related topics
l Customizing the One Identity Manager Service configuration for a Job server
on page 284
l Template for the configuration file on page 285
l Validating the configuration file on page 287
To start the validity check in the One Identity Manager Service configuration
l Use the button to test the configuration.
Errors and warnings are sent to a message window.
Errors Output
Related topics
l Customizing the One Identity Manager Service configuration for a Job server
on page 284
l Template for the configuration file on page 285
l Selecting module types and editing parameters on page 286
You can configure any number of Job providers in one configuration file. The associated
configuration sections are determined by name. Therefore, you should rename Job
providers that are added.
MSSQLJobProvider
The MSSQLJobProvider handles One Identity Manager database process requests on a
SQL Server.
Parameters Description
Connection parameter Access data for the database server and the database to be used
(ConnectString) At least one user with the configuration user access level is
required for process collection. Some functions may require an
administrative user.
l Server: Database server.
l (Optional) Windows Authentication: Specifies whether
the integrated Windows authentication is used. This type
of authentication is not recommended. If you decide to use
it anyway, ensure that your environment supports
Windows authentication.
l User: The user's SQL Server login name.
l Password: Password for the user's SQL Server login.
l Database: Select the database.
Max. number of The process requests are internally cached. This parameter
pending requests defines the maximum number of cache entries. The default value
(RequestQueueLimit) is 1000.
Max. number of The process results are internally cached. This parameter
pending requests defines the maximum number of cache entries. The default value
(RequestQueueLimit) is 10000.
Results flush timeout The service can continue to write results to the database until
on shutdown in this timeout is reached. Input in seconds. The default value is 10
seconds seconds.
(FlushTimeoutSeconds)
FileJobProvider
Data transfer takes place in the FileJobProvider by means of files. Process requests and
results are written to file or read from file. These files can be processed by the
FileJobDestination.
Parameters Description
Backup of transferred If this option is enabled, all files (with or without errors) are
files (BackupFiles) moved to a Backup subdirectory. In the default case (not set) only
files with errors are saved.
Check file index If this option is set, the file name index is checked to see if has
(CheckInputIndex) increased in size. Files with the same or a lower index are not
processed. This option is not set by default.
Max. number of Maximum number of process steps that can be grouped together
process trees in a as a file. This allows limiting of the file size.
transfer file
(MaxListCount)
Use encryption Specifies whether the data is to be written to the files in encrypted
(UseEncryption) form.
NOTE: The setting for encryption must be identically configured
in the Job provider and the related Job destination.
Notification methods The Job provider supports three different methods for providing
(EventTypes) notification about new data.
l Timer: Newly stored data is queried at defined intervals.
l HTTP: The provider queries the parent Job server through
HTTP and processes the stored data once the server replies.
l FSEvent: Newly stored data is queried after a file system
event.
TIMER,FSEVENT
Remote host for HTTP If using the HTTP notification method, enter the name of the
notification remote host here to which the queries are transferred.
(HostName)
HTTP notification port If using the HTTP notification method, enter the port for transfer
(Port) here.
File lookup timer If using the TIMER notification method, enter the interval in milli-
interval (ms) seconds here.
(TimerInterval)
Input directory The module reads and processes the process files (*.fjg) in this
(InputDirectory) directory.
NOTE: Ensure that the Job provider and related Job destination
use the same directory. Input directory and output directory are
then reversed accordingly.
Automatic identi- If this option is enabled, the module automatically processes all
fication of subdir- the files in the subdirectories. Processing is not recursive.
ectories
(AutoSubDirectories)
FTPJobProvider
After the files have been created in the local directory, the FTPJobProvider connects to
the FTP server and transfers the files to the server. After a signal, a connection is set up to
the FTP Server and the data is transferred. The directories Request and Response are
expected to be found on the FTP Server. The names of these directories are fixed and
cannot be changed. The software components (Job provider/Job destination) deposit or
collect the files from here. The FTP user requires the necessary permissions to create,
rename, and delete files.
Parameters Description
Backup of transferred If this option is enabled, all files (with or without errors) are
files (BackupFiles) moved to a Backup subdirectory. In the default case (not set) only
files with errors are saved.
Check file index If this option is set, the file name index is checked to see if has
(CheckInputIndex) increased in size. Files with the same or a lower index are not
processed. This option is not set by default.
Max. number of Maximum number of process steps that can be grouped together
process trees in a as a file. This allows limiting of the file size.
transfer file
(MaxListCount)
Use encryption Specifies whether the data is to be written to the files in encrypted
(UseEncryption) form.
NOTE: The setting for encryption must be identically configured
in the Job provider and the related Job destination.
Notification methods The Job provider supports three different methods for providing
(EventTypes) notification about new data.
l Timer: Newly stored data is queried at defined intervals.
l HTTP: The provider queries the parent Job server through
HTTP and processes the stored data once the server replies.
l FSEvent: Newly stored data is queried after a file system
event.
commas.
Example:
TIMER,FSEVENT
Remote host for HTTP If using the HTTP notification method, enter the name of the
notification remote host here to which the queries are transferred.
(HostName)
HTTP notification port If using the HTTP notification method, enter the port for transfer
(Port) here.
File lookup timer If using the TIMER notification method, enter the interval in milli-
interval (ms) seconds here.
(TimerInterval)
Input directory The module reads and processes the process files (*.fjg) in this
(InputDirectory) directory.
NOTE: Ensure that the Job provider and related Job destination
use the same directory. Input directory and output directory are
then reversed accordingly.
Automatic identi- If this option is enabled, the module automatically processes all
FTP port (FTPPort) Port for FTP transfer The default port is port 21.
FTP password Password for the user account for FTP login.
(FTPPassword)
Related topics
l FileJobProvider on page 289
l FileJobDestination on page 297
l FTPJobDestination on page 299
HTTPJobProvider
The HTTPJobProvider receives process steps from a parent Job server. The data transfer
is carried out by HTTP.
Parameters Description
Remote user account User account for logging onto the HTTP server.
(RemoteUser)
RemotePassword Password for the user account for logging onto the HTTP server.
Related topics
l HTTPJobDestination on page 301
AppServerJobProvider
The AppServerJobProvider retrieves the process steps from the application server and
sends them to a job destination.
Parameters Description
Max. number of The process requests are internally cached. This parameter
pending requests defines the maximum number of cache entries. The default
(RequestQueueLimit) value is 1000.
Max. number of The process results are internally cached. This parameter
pending results defines the maximum number of cache entries. The default
(ResultQueueLimit) value is 10000.
JobServiceDestination
The JobServiceDestination module of the One Identity Manager Service performs the
actual handling of process steps. A JobServiceDestination requests the process steps
from the job provider, processes them using process components and returns the result.
Parameters Description
Environment variables for List of environment variables to set for external slot
external slots processes. Enter the variables in a pipe (|) delimited list.
(ExternalSlotEnvironment)
Syntax:
Variable1=value1|Variable2=value2...
Environment variables for List of environment variables to set for external 32-bit slot
external 32-bit slots processes. Enter the variables in a pipe (|) delimited list.
(ExternalSlotEnvironment32)
Syntax:
Variable1=value1|Variable2=value2...
Number of internal slots Number of internal process provided by the One Identity
(InternalSlots) Manager Service for the internal handling of process
components.
File with private key File with encryption information. The default file is
(PrivateKey) private.key.
The encryption file has to be in the installation directory of
all servers with One Identity Manager Service. If the One
Identity Manager Service finds a private key on start up, it
places it in the user-specific key container and deletes the
file from the hard drive.
To create a key file and encrypt database information, use
the Crypto Configuration program.
NOTE: If you are working with an encrypted One
Process request interval Interval in seconds after which the One Identity Manager
(StartInterval) Service requests new process steps The default value is
90 seconds. Suggestions for configuring the time interval
are calculated from Job server statistical data.
Interval for calculating statist- Interval in seconds in which the One Identity Manager
Max. external processor Specifies how often an external processor can be reused
reusage count before the process is unloaded and restarted. The value 0
(MaxExternalSlotReuse) indicates that the process is only unloaded when no longer
in use. The default value is 100.
Related topics
l Setting up Job servers on page 261
l Job server properties on page 263
l Job server statistics on page 269
l File module with private key on page 316
l Running external processes with the StdioProcessor on page 279
FileJobDestination
The FileJobDestination handles the process steps provided by the FileJobGate
(FileJobProvider or FTPJobProvider) and returns the results to the job provider.
Parameters Description
Backup of transferred If this option is enabled, all files (with or without errors) are
files (BackupFiles) moved to a Backup subdirectory. In the default case (not set) only
files with errors are saved.
Check file index If this option is set, the file name index is checked to see if has
(CheckInputIndex) increased in size. Files with the same or a lower index are not
processed. This option is not set by default.
Max. number of Maximum number of process steps that can be grouped together
process trees in a as a file. This allows limiting of the file size.
transfer file
(MaxListCount)
Use encryption Specifies whether the data is to be written to the files in encrypted
(UseEncryption) form.
NOTE: The setting for encryption must be identically configured
in the job provider and the related job destination.
Notification methods The job provider supports three different methods for providing
(EventTypes) notification about new data.
l Timer: Newly stored data is queried at defined intervals.
l HTTP: The provider queries the parent Job server through
HTTP and processes the stored data once the server replies.
l FSEvent: Newly stored data is queried after a file system
event.
Remote host for HTTP If using the HTTP notification method, enter the name of the
notification remote host here to which the queries are transferred.
(HostName)
HTTP notification port If using the HTTP notification method, enter the port for transfer
(Port) here.
File lookup timer If using the TIMER notification method, enter the interval in milli-
interval (ms) seconds here.
(TimerInterval)
Input directory The module reads and processes the process files (*.fjg) in this
(InputDirectory) directory.
NOTE: Ensure that the job provider and related job destination
use the same directory. Input directory and output directory are
then reversed accordingly.
ServerA
ServerB
where Request and Response are the directories specified in the
Input directory (InputDirectory) and Output directory
(OutputDirectory) parameters.
NOTE: You can only use the Timer notification method. The
HTTP and FSEvent notification methods are not available.
Automatic identi- If this option is enabled, the module automatically processes all
fication of subdir- the files in the subdirectories. Processing is not recursive.
ectories
(AutoSubDirectories)
ProviderID if more than one job provider is being processed by the One
Identity Manager Service, enter the name of the job provider to
be used. If this is empty the first Job provider is used.
Related topics
l FileJobProvider on page 289
l FTPJobProvider on page 291
l FTPJobDestination on page 299
FTPJobDestination
The FTPJobDestination handles the process steps provided in the FileJobGate
(FileJobProvider or FTPJobProvider) and returns the results to the Job provider.
Parameters Description
Backup of transferred If this option is enabled, all files (with or without errors) are
files (BackupFiles) moved to a Backup subdirectory. In the default case (not set) only
files with errors are saved.
Check file index If this option is set, the file name index is checked to see if has
(CheckInputIndex) increased in size. Files with the same or a lower index are not
processed. This option is not set by default.
Max. number of Maximum number of process steps that can be grouped together
process trees in a as a file. This allows limiting of the file size.
transfer file
(MaxListCount)
Use encryption Specifies whether the data is to be written to the files in encrypted
(UseEncryption) form.
NOTE: The setting for encryption must be identically configured
in the Job provider and the related Job destination.
Notification methods The Job provider supports three different methods for providing
(EventTypes) notification about new data.
l Timer: Newly stored data is queried at defined intervals.
l HTTP: The provider queries the parent Job server through
HTTP and processes the stored data once the server replies.
l FSEvent: Newly stored data is queried after a file system
event.
Remote host for HTTP If using the HTTP notification method, enter the name of the
notification remote host here to which the queries are transferred.
(HostName)
HTTP notification port If using the HTTP notification method, enter the port for transfer
(Port) here.
Monitoring interval If using the TIMER notification method, enter the interval in milli-
for input directory seconds here.
(TimerInterval)
Input directory The module reads and processes the process files (*.fjg) in this
(InputDirectory) directory.
NOTE: Ensure that the Job provider and related Job destination
use the same directory. Input directory and output directory are
then reversed accordingly.
ServerA
ServerB
Response
ServerA
ServerB
where Request and Response are the directories specified in the
Input directory (InputDirectory) and Output directory
(OutputDirectory) parameters.
NOTE: You can only use the Timer notification method. The
HTTP and FSEvent notification methods are not available.
Automatic identi- If this option is enabled, the module automatically processes all
fication of subdir- the files in the subdirectories. Processing is not recursive.
ectories
(AutoSubDirectories)
ProviderID if more than one Job provider is being processed by the One
Identity Manager Service, enter the name of the Job provider to
be used. If this is empty the first Job provider is used.
FTP port (FTPPort) Port for FTP transfer The default port is port 21.
FTP password Password for the user account for FTP login.
(FTPPassword)
Related topics
l FileJobProvider on page 289
l FTPJobProvider on page 291
l FileJobDestination on page 297
HTTPJobDestination
A HTTPJobDestination sends process steps to a child Job server. The data transfer is
carried out by HTTP.
Parameters Description
Remote user User account for logging onto the HTTP server.
account
(RemoteUser)
RemotePassword Password for the user account for logging onto the HTTP server.
Related topics
l HTTPJobProvider on page 293
Configuration module
The standard One Identity Manager Service configuration settings are specified in
this module.
Parameters Description
HTTP Header (HTTPHeader) HTTP header for status page. Pipe (|) delimited list of
headers in the form: "name1: value1|name2: value2".
Supported values are:
l X-Frame options: SAMEORIGIN
l X-Content type options: nosniff
l Content-Security-Policy: default-src 'self';script-
src 'self' 'unsafe-inline';style-src 'self' 'unsafe-
inline';img-src 'self' data:;font-src 'self' data:
l X-XSS-Protection: 1; mode=block
Example:
"X-Frame-Options: SAMEORIGIN|X-Content-
Type-Options:nosniff"
HTTPAddress If One Identity Manager Service is running on a
computer with several network cards, you can use this
parameter to define which service should work over
which IP address. If no IP address is entered, then all of
them are used.
HTTPPort Every One Identity Manager Service automatically
works as an HTTP server. This parameter specifies the
port that One Identity Manager Service works with. The
default value is port 1880.
The HTTP server is addressed by:
http://<server name>:<port number>
Logging of Job provider and Specifies whether the job provider ID and running
running instance instance are output in the log messages of the process
(LogDestinationAndProviderId) step.
Language Language used for error messages and outputs from
the One Identity Manager Service. Permitted values are
German and English. The default value is English.
Timeout after failed start The time to wait after a failed start before a retry is
(WaitTimeOnFailedStart) carried out. The default value is 90 seconds.
Timeout format:
hours:minutes:seconds
Retries on failed start Number of retries for the One Identity Manager Service
(RetriesOnFailedStart) to start up. The default value is 5.
Do not protect private keys If the One Identity Manager Service finds a private key
(DoNotProtectPrivateKeys) in the installation directory on startup, it places the key
in the Windows internal key container of its service
account and deletes the file from the hard drive. If this
option is enabled, the key files are not moved to the key
container.
Do not write the configuration By default, the service configuration is written to the
back to the database database. To prevent this, enable this option.
(DoNotWriteConfigBack)
Secrets allowed as Comma-delimited list of secret names that are allowed
replacements as replacements in parameters. In the directory under
(SecretsAllowList) SecretsFolder, there must be a file with the name of the
secret that contains the value.
Syntax:
&SECRET(Name)&
Example:
&SECRET(API_KEY)&
In the %SECRETS% folder, there must be a API_KEY file
containing the value.
Secrets folder (SecretsFolder) Path the secret files' repository that can be used by the
parameters. The path can take the form %Name%. Default
value is %SECRETS%.
Logwriter module
This module writes the One Identity Manager Service messages. The following module
types may be selected:
l EventLogLogWriter
l FileLogWriter
EventLogLogWriter
The EventLogLogWriter writes messages from the One Identity Manager Service to an
event log. To view the event log, you can use the results display in the Microsoft
Management Console, for example.
Parameters Description
EventLog Name of the event log to which the messages are written. The messages
are written to the application log with Application as the default value.
NOTE: If more than one One Identity Manager Service write event logs
on a server, make sure that the first eight letters in the log name are
unique on the server.
LogSeverity Severity levels of the logged messages.
Permitted values are:
l Info: All messages are written to the event log. The event log
quickly becomes large and confusing.
l Warning: Only warnings and exception errors are written to the
event log (default).
l Serious: Only exception messages are written to the event log.
EventID The ID of the messages written to the event log.
By default, the One Identity Manager Service only logs messages in the event log
Application.
1. On the Job server, manually add the file for theOne Identity Manager Service to write
to. You can use Windows PowerShell, for example, to do this.
a. Run Windows PowerShell as administrator on the Job server.
b. Run the following CmdLet:
New-EventLog -Source "Foobar" -LogName "<file name>"
2. Enter this file name in the One Identity Manager Service configuration file, in the
module EventLogWriter as the name for the event log.
3. Restart the computer.
4. Restart the One Identity Manager Service.
Related topics
l FileLogWriter on page 306
FileLogWriter
The FileLogWriter writes messages from One Identity Manager Service to a log file. The
log file can be displayed in a browser.
You call up the log file with the appropriate URL.
http://<server name>:<port number>
The default value is port 1880.
Parameters Description
Log file Name of the log file, including the directory name. Log information for
(OutputFile) the One Identity Manager Service is written to this file.
IMPORTANT: The directory specified for the file must exist. If the file
cannot be created, no error output is possible. Error messages then
appear under Windows operating systems in the event log or under
Linux operating systems in /var/log/messages.
Log rename In order to avoid unnecessarily large log files, the module supports the
interval functionality of exchanging the log file with a history list. The
(LogLifeTime) LogLifeTime specifies the maximum life of a log file before it is
renamed as backup. If the log file has reached its maximum age, the
file is renamed (for example, as JobService.log_20040819-083554)
and a new log file is started.
Timeout format:
day.hour:minutes:seconds
Process step log Retention time for process step logs. After this expires, the logs are
lifetime deleted.
(JobLogLifeTime)
Timeout format:
day.hour:minutes:seconds
For test purposes, you can enable logging of individual process steps
in the Job Queue Info. The processing messages of the process step is
written to a separate log with the Debug NLog severity. The files are
stored in the log directory.
Repository structure:
<Log directory>\JobLogs\<First 4 digits of the UID_Job>\Job_
<UID_Job>_<yyyymmdd>_<Timestamp>.log
Number of Maximum number of log files. If several log files exist, the oldest
history logs backup file is deleted when a new log file is created so that the limit is
(HistorySize) not exceeded.
Max. log file size Maximum size in MB of the log file. Once the log file has reached the
(MB) limit, it is renamed as a backup file and a new log file is created.
(MaxLogSize)
Add server name Specifies whether the server name is to be added to the log entries.
(AddServerName)
Parameters Description
Acts as proxy for Specifies whether the server is to act as a proxy server. Set this
other servers option if the server should be a proxy server.
(IsProxy)
ProxyInterval Time interval in seconds, after which the proxy server acting as
deputy for another server, should renew a request to the database.
The following guidelines can be used as orientation for the configuration of One Identity
Manager Service polling intervals in a cascading environment:
Table 115: Polling interval guidelines for One Identity Manager Service
The proxy mode of a root server ensures that, acting on behalf of the leaf server, process
steps are queried in shorter proxy intervals. When the root server is restarted, it may take
a while until all leaf servers have sent their first request (in this case a maximum of 600
seconds). However, the system then swings into action.
Parameters Description
Process generation log Directory of log files in which the instructions for process
directory (JobGenLogDir) generation generated by One Identity Manager Service
are recorded.
Disable reload beep When this parameter is set the beep is switched off that
(NoReloadBeep) is made when buffered dialog data is loaded.
Log BLOB reads Specifies whether read operations on text and binary
(LogBlobReads) LOB (BLOB) should be written to the SQL log.
Cache type (CacheType) Specifies how the data is cached. The default value is
MultipleFiles.
Cache reload interval Time in seconds after which the local cache should be
(CacheReloadInterval) updated. This parameter overwrites the setting in the
Common | CacheReload | Interval configuration
parameter.
Regular expression for stack This expression specifies when an extra stack trace is
trace positions written to the object log. If the current row in the object
(ObjectDumpStackExpression) log matches the regular expression, the stack trace is
written in the object log.
Sample expression: "Lastname"
If the current row contains the value "Lastname", the
stack trace is also copied to the log.
NOTE: This parameter is used for localizing errors. It is
not recommended to set this parameter in normal
working conditions on performance grounds.
TokenCertificateThumbprint Thumbprint of the certificate used to verify the security
token.
TokenCertificateFile Certificate file of the certificate to be used to verify the
security token. The certificate must support RSA encryp-
tion with SHA1, SHA256, or SHA512 and contain the
private key.
Supports read-only replicas in Specifies whether a second pool for read-only queries is
Azure (SupportReadScaleOut) supported in Azure. If the option is set, read-only queries
are supported This feature is available in Azure's
Premium and Business Critical tiers. For more
Parameter Description
QBMWebApplication.BaseURL column. A
OAuth2/OpenID Connect configuration is
assigned to the web application.
The following URL must be given in the
configuration and the connected external system
as the redirect URL.
https://<jobserver>:<port>/login
Cleanup after inactivity Specifies the time period after which the session
(RemoveSessionAfterInactivity) is removed from memory. The next time the
session is accessed, it is reestablished
transparently for the user. The default value is
00:10:00.
Timeout format:
hours:minutes:seconds
For more information about authentication modules, see the One Identity Manager
Authorization and Authentication Guide.
l WindowsHttpAuthentication
Use this authentication type to specify an Active Directory group, whose users can be
authenticated on the HTTP server.
Module parameters are:
l Group (Role): Active Directory group. A security ID (SID) or the Active
Directory group name in the domain of the Job server can be specified. If the
Active Directory group is not located in the domain of the Job server, the SID
must be used.
l Debug login errors (DebugLoginErrors): (Optional) User account
properties and groups are written to the log file to debug login problems.
Do not set this value in production environments as group assignments can
be written to the log.
NOTE: If a module is not specified, authentication is not required. In this case, all users
can access the services.
HTTPLogPlugin
The plugin writes a log file that records the One Identity Manager Service HTTP requests.
Enter the following parameter:
l Output file (LogFile)
Enter the name of the file that is to record the messages. The file is written in Apache
HTTP Server Combined Log Format.
ScheduleCommandPlugin
This plugin calls up an external program in regular intervals. This is useful, for example,
when process steps need to be routed over their own transfer methods.
Parameters Description
Command to Command to be run including command line option This command is run
run (Command) as a cmd and therefore built-in commands are possible.
Service start Command run when the One Identity Manager Service is started
command
(StartCommand)
Service start Command run when the One Identity Manager Service is stopped
command
(StopCommand)
Interval Interval (in seconds) at which the command should be called While the
between runs command is running, the timer is stopped so that the calls do not
(Interval) overlap. The default value is 60.
Command Specifies whether the command outputs are logged if successful. If this
output to log parameter is set, the command output is also written to the One Identity
file Manager Service's log file when successful. If the parameter is disabled,
(OutputToLog) only errors are written to the log file.
Severity level Message types used for messages that appear in the log file when the
(LogSeverity) transaction is successful. Permitted values are Info, Warning, and
Serious. The default value is Info.
RequestWatchDogPlugin
This plugin restarts One Identity Manager Service when less than a defined number of
requests are made within a specified interval.
Parameters Description
Minimum number of Minimum number of requests that must be made within the
requests (MinRequests) specified interval. The default value is 2.
PerformanceCounterPlugin
This plugin exports the One Identity Manager Service status values as performance
counter. Monitoring through a system monitor is thus enabled. The list of currently
available performance counters is displayed under
http://<servername>:1880/PerfCounter.
Parameters Description
Value types to Value types provided as performance counters Int and Long values
specify are directly output, while TimeSpan values are output as Long values
(CounterType) (numbe of milliseconds).
Polling interval Interval (in seconds) at which the performance counters are
(PollingInterval) exported
Category Category under which the performance counters of the One Identity
Manager Service are displayed. This information is required if several
One Identity Manager Services with this plugin are active on the
server.
NOTE: If, after restarting the One Identity Manager Service, an error of the type At
least one service could not be started occurs, enter the WMI Performance Adapter
service as dependent on the One Identity Manager Service.
DebugMailPlugin
If this plugin is enabled, email notifications generated by the One Identity Manager Service
are not sent but are kept in a drop folder. The file names contain the time stamp in this
case. If a mail contains HTML text, a *.html file is saved with the same name as the
descriptive *.txt file with the body. Email attachments are also saved in this way.
NOTE:
l The plugin only works for processes run internally in the One Identity
Manager Service.
l If this plugin is enabled, no email notifications are sent through the One Identity
Manager Service. This plugin is only used for localizing errors. It is not
recommended to set this parameter in normal working conditions.
ShareInfoPlugin
This plugin is required for solving Samba shares (smb.conf) under the Linux operating
system. The plugin solves UNC paths to local paths. This plugin does not required any
parameters.
NOTE: Install the plugin if the One Identity Manager Service runs copy actions between
servers with Linux operating system.
DatabaseAgentPlugin
This One Identity Manager Service plugin deploys the Database Agent Service. The
Database Agent Service controls processing of DBQueue Processor tasks. The plugin should
be configured on the Job server that performs the Update server server function. An
administrative user must be used for the database connection in the Job provider.
Enter the following parameter:
l Job provider IDs (ProviderIDs)
IDs of the Job providers to be used. Enter a list of job provider names separated by
the pipe symbol (|). If this is empty the first Job provider is used. If * is specified, all
Job providers are used.
Related topics
l JobServiceDestination on page 295
With One Identity Manager, it is possible to create a change history for objects and their
properties. This can be used to fulfill reporting duties for internal committees and legal
obligations for providing documentary evidence. Different methods can be used to track
changes within One Identity Manager. With this combination of methods, all changes that
are made in the One Identity Manager system can be traced.
l Recording data modifications
Modifications to data can be recorded for add or delete operations on objects, and up
to and including changes to individual object properties.
l Recording process information
Recording process information allows all processes and process steps to be tracked
while being processed by One Identity Manager Service.
l Recording messages in the process history
In the process history, success, and error messages from handling each process step
in the Job queues are recorded by the One Identity Manager Service.
All entries logged in One Identity Manager are initially saved in the One Identity Manager
database. The proportion of historical data to total volume of a One Identity Manager
database should not exceed 25 percent. Otherwise, performance problems may arise. You
must ensure that log entries are regularly removed from the One Identity Manager
database and archived. For more information about archiving data, see the One Identity
Manager Data Archiving Administration Guide.
The methods implemented by One Identity Manager allow monitoring of all modifications to
the system that are triggered by a user action. Each action in One Identity Manager is
labeled with a unique ID number. This ID number is called a GenProcID. All changes that
can be traced back to the same cause are given the same GenProcID and are grouped in
this way. If a previously stored action does not pass a GenProcID to the current action, a
new ID is automatically created.
If an action is triggered from the One Identity Manager’s object layer, the GenProcID is
written to the context data of the database connection. The logged in user is also noted in
the context data and is made available in this way.
A new GenProcID is generated by the trigger if an action takes place directly in the
database or through an application that works without the One Identity Manager object
layer. This GenProcID is valid for the duration of the database connect, which means that
all changes belong to the same action and link to the same GenProcID. The user data is
made up of the database user’s name, the MAC address and the workstation name as well
as the application name.
All actions (process triggers) that cause changes to the system, and their actual status
information, are logged internally in the DialogProcess status table. Logging takes
place independent of the chosen change history method. This log writing therefore
provides a starting point for monitoring and allows the changes based on one action to
be grouped together.
The following information is recorded for one action:
l ID number (GenprocID)
l Display name for the action
l Base object that the action is triggered for
l User that triggered the action
l Time of action
l Object key for selecting the process trigger
l Comment on the action
l Current process status
NOTE: The information is displayed in the Manager in the process view. For more
information, see the One Identity Manager Operational Guide.
Add, change, and delete operations can be recorded for objects. The GenProcID trigger is
also passed down so that the changes to one object can be grouped together. The data
changes are stored in the DialogWatchOperation and DialogWatchProperty tables. An entry
is also created in the status DialogProcess table for the triggering action.
The following information is collected for these operations:
Related topics
l Labeling columns for recording changes to data on page 320
l Basic rules for process monitoring on page 318
l Logging process information during process handling on page 321
Related topics
l Logging data changes on page 319
l Column definition properties on page 90
Processing deferred until <datetime> ::= <YYYY> - <MM> - <DD> <HH> : <NN> :
<SS>
where:
<YYYY> ::= 1980..9999
<MM> ::= 01..12
<DD> ::= 01..31
<HH> ::= 00..23<NN> ::= 00..59
<SS> ::= 00..59
Related topics
l Editing process information for processes on page 323
l Editing process information for process steps on page 323
l Editing process information for events on page 324
l Basic rules for process monitoring on page 318
l Logging data changes on page 319
Related topics
l Using #LD-notation on page 355
l Process properties on page 230
l Editing process information for process steps on page 323
l Editing process information for events on page 324
Related topics
l Using #LD-notation on page 355
l Process step properties on page 231
l Editing process information for processes on page 323
l Editing process information for events on page 324
If several processes point to one event, the event with a process information template is
found that has the lowest generating order specified in its process configuration. This
template is evaluated and shown in the process view in the Manager. For more information,
see the One Identity Manager Operational Guide.
Related topics
l Using #LD-notation on page 355
l Creating events for processes on page 239
l Editing process information for processes on page 323
l Editing process information for process steps on page 323
Value Meaning
ALL All process steps being handled are logged in the process
history.
ERRORorSELECTED Failed process steps and process steps labeled with the
Process history option are logged in the process history.
SELECTED Only process steps labeled with the Process history option
are logged in the process history.
Log entries in the process history are exported from the One Identity Manager database at
regular intervals. One Identity Manager provides various methods to do this. For more
information, see Archiving and deleting records on page 331.
Related topics
l Example of replacing the GenProcID on page 327
l Processing DBQueue tasks on page 477
Three processes run between two DBQueue Processor runs, each with its own GenProcID:
l P1: Software application A1 is assigned to the role O1
l P2: Software application A2 is assigned to the role O1
l P3: Software application A3 is assigned to the role O2
The following operations are in the DBQueue (DialogDBQueue table) and in the process
information:
OrgHasApp O1 P1
OrgHasApp O1 P2
OrgHasApp O2 P3
The operation OrgHasApp cannot be subdivided with respect to O1 because the union of
software applications is being calculated for O1. At this point, no more information is
available as to which GenProcID has been entered by the assignment for which software
application.
In order to achieve uniqueness for the combination of operation and object, a new
GenProcID P4 is introduced and the two O1 operations are compacted into this GenProcID.
P1 and P2 are noted in the DialogProcessSubstitute table as possible predecessors of P4
(but not clearly in the individual actions).
OrgHasApp O1 P4
OrgHasApp O2 P3
The following constellations can occur depending on whether the operation OrgHasApp is
processed as a single step or in bulk:
l Case 1) O1 is calculated and then O2.
l Case 2) O2 is calculated and then O1.
l Case 3) O1 and O2 are calculated together simultaneously in a bulk operation.
After these operations have been run and assuming that they all cause changes to the total
sets affected, the following situation arises:
OrgHasApp O2 P3
OrgHasApp O4 P4
OrgHasApp O2 P4
OrgHasApp O3 P4
PersonHasApp X P4
Before the next DBQueue Processor run, the GenProcID’s must be compressed again,
because the OrgHasApp operation did not produce a unique result for the object O2. P5 is
introduced with possible predecessors P4 and P3.
OrgHasApp O2 P5
OrgHasApp O4 P4
OrgHasApp O3 P4
PersonHasApp X P4
OrgHasApp O3 P5
PersonHasApp X P5
OrgHasApp O4 P4
OrgHasApp O3 P4
PersonHasApp X P4
OrgHasApp O3 P6
PersonHasApp X P5
OrgHasApp O4 P4
PersonHasApp X P4
PersonHasApp X P6
PersonHasApp X P5
PersonHasApp X P4
There is no uniqueness for object X such that P7 is introduced with possible predecessors
P4, P5 and P6.
OrgHasApp O1 P4
OrgHasApp O2 P3
OrgHasApp O1 P4
OrgHasApp O3 P3
OrgHasApp O3 P3
OrgHasApp O4 P4
OrgHasApp O2 P4
OrgHasApp O3 P4
PersonHasApp X P4
OrgHasApp O3 P5
OrgHasApp O4 P4
OrgHasApp O2 P4
PersonHasApp X P4
PersonHasApp X P5
PersonHasApp X P4
OrgHasApp O1 P4
OrgHasApp O2 P3
After the first step in the calculation the following entries are in the DBQueue:
OrgHasApp O4 P4
OrgHasApp O2 P4
OrgHasApp O3 P4
OrgHasApp O3 P3
PersonHasApp X P4
OrgHasApp O4 P4
OrgHasApp O2 P4
OrgHasApp O3 P5
PersonHasApp X P4
After the next step in the calculation, the following content is found
OrgHasApp O3 P4
PersonHasApp X P4
PersonHasApp X P5
After O3 has been calculated in the next run and has not created a new PersonHasApp
entry, only X exists with P4 and P5 because X already exists with P4.
PersonHasApp X P4
PersonHasApp X P5
For more information about setting up archiving of data in a History Database, see One
Identity Manager Data Archiving Administration Guide.
The records are deleted from the One Identity Manager database by DBQueue Processor
when the retention period has ended. In addition, all entries for triggered actions are
deleted if they have no corresponding records in those sections.
NOTE: If you do not specify a retention period, the records from that section are
deleted from the One Identity Manager database during daily DBQueue Processor
maintenance tasks.
Configuration Meaning
parameter
Common | ProcessState Exports the data changes. If this configuration parameter is not
| PropertyLog | IsToEx- set the information is deleted once the retention period has
port expired.
Configuration Meaning
parameter
Configuration Meaning
parameter
NOTE: Preprocessor conditions help stop the module being disabled. For example, SQL
procedures and triggers are still run even if the objects are disabled by preprocessor
conditions. To disabled a module, remove the module from the One Identity Manager
database. For more information about removing modules, see the One Identity Manager
Installation Guide.
Configuration parameters and their options define the possible preprocessor conditions. In
order to become effective on a system-wide 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.
Preprocessor-relevant configuration
parameters
IMPORTANT: The One Identity Manager database needs to be recompiled every time a
preprocessor-relevant configuration parameter and its options are changed.
The Preprocessor relevant parameter option is used to label a configuration parameter
as preprocessor relevant. A preprocessor expression is entered in the associated
configuration parameter option.
When a preprocessor relevant configuration parameter is set it is valid globally across
the system. The preprocessor condition does not come into effect until the database has
been compiled.
NOTE: Predefined preprocessor configuration parameters are overwritten during schema
installation. Define company-specific, preprocessor-relevant configuration parameters
and options in the Designer under the Custom configuration parameter.
1. In the Designer, select the Base data > General > Configuration
parameters category.
2. In the Configuration Parameter Editor, select the View > Preprocessor
definitions menu item.
The Preprocessor definitions view shows all preprocessor conditions. Double-click
an entry to display the configuration parameter.
NOTE: In the Designer, you can find an overview of existing preprocessor dependencies
in the One Identity Manager Schema > Preprocessor dependencies category.
Related topics
l Creating custom configuration parameters on page 40
l Preprocessor conditions in objects on page 338
l Preprocessor conditions in VB.Net expressions on page 339
l Evaluation of preprocessor conditions during compilation on page 340
Example:
NOTE: In the Designer, you can find an overview of existing preprocessor dependencies
in the One Identity Manager Schema > Preprocessor dependencies category.
Related topics
l Preprocessor-relevant configuration parameters on page 337
l Preprocessor conditions in VB.Net expressions on page 339
l Evaluation of preprocessor conditions during compilation on page 340
Syntax
#If <preprocessor_condition_1>
’ code, for this preprocessor condition
#ElseIf <preprocessor_condition_2> then
’ code, for this preprocessor condition
#Else
' other code
#Endif
Related topics
l Preprocessor-relevant configuration parameters on page 337
l Preprocessor conditions in objects on page 338
l Evaluation of preprocessor conditions during compilation on page 340
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:
l Test column values
l Trigger events
l Create, change, and delete objects and therefore manipulate the database.
l Time stamps, such as insert dates or modification dates, are stored in the database
with the respective UTC. The object layer transforms this time data into the currently
valid time zone data when an object is loaded. The user, therefore, sees all the values
Syntax
$<definition>:<data type>{<format>}$
If you are using dollar notation you need to ensure that the value is allocated the correct
data type. Dollar notation returns a String type by default.
Permitted data types are:
Binary
Bool
Byte
Date
Decimal
Double
Int
Long
Short
String (default)
Text
The format specification is optional. If the format is specified, the target type of the
expression is a string. If the format is not specified, it is the specified data type.
The format specifications correspond to the format strings of the string.format function for
the individual types. For more information about the format string, see
https://docs.microsoft.com/en-us/dotnet/standard/base-types/composite-
formatting#format-string-component.
Examples:
$MaxValidDays:Int{000}$
with the value 42 give the result "042"
$XDateUpdated:Date{t}$
gives "11:16"
NOTE: If you want to use a dollar $ sign in scripts, without it representing access to a
column name, you must mask it by doubling.
The Active Directory user display name should comprise of the first and last name of the
Active Directory user. The template for ADSAccount.Displayname is:
If $Givenname$<>"" And $Surname$<>"" Then
Value = $Surname$ & " " & $Givenname$
ElseIf $Givenname$<>"" Then
Value = $Givenname$
ElseIf $Surname$<>"" then
Value = $Surname$
End If
If an employee is disabled, the leaving date should be set. The template for
Person.Exitdate is:
If $IsInActive:bool$ Then
Value = Date.Today
End If
Syntax
$FK(<foreign key column>).<column name>:<data type>{<format>}$
An Active Directory user’s first name should based on the assigned employee. The template
for ADSAccount.Givenname is:
Value = $FK(UID_Person).Firstname$
Related topics
l Accessing local object columns on page 346
l Accessing the old column value on page 347
l Accessing the display value of a column on page 348
l Accessing references in comments on page 349
l Accessing metavalues of the local object on page 350
l Accessing objects' display values on page 350
Optional process step parameters are not generated if the value is set to Nothing or not
assigned in the value template. This makes it possible to limit the number of parameters for
target system components. If such a value should be cleared, an empty string should be
transferred instead of Nothing.
A value template may look like this:
If $Lastname[o]$ <> $Lastname$ Then
Value = $Lastname$
End If
NOTE: For some standard columns such as XDateInserted, XDateUpdated, XUserInserted,
XUserUpdated, XOrigin, XIsInEffect, and XMarkedForDeletion, the new values are only
mapped after saving the object. This means that when processing the templates, the new
column value is always the same as the old value (for example, $XDateUpdated[o]$ =
$XDateUpdated$).
Related topics
l Accessing local object columns on page 346
l Accessing columns of an object connected by a relation on page 347
l Accessing the display value of a column on page 348
l Accessing references in comments on page 349
l Accessing metavalues of the local object on page 350
l Accessing objects' display values on page 350
Syntax
$columnname[D]$
To access the display value of a column's old value, combine the [O] and [D] properties.
$column name[OD]$
$column name[DO]$
Example of use:
A list of permitted values is defined for the restriction type of the HCL Domino server
restrictions.
The display value for the server restriction should be formatted from the name of the HCL
Domino user and the display value of the restriction type.
Value = vid_Left($FK(UID_NotesUser).FullName1st$,39) & " [" & vid_Left
($NotesAgentMgrType[D]$, 22) & "]"
Related topics
l Accessing local object columns on page 346
l Accessing columns of an object connected by a relation on page 347
l Accessing the old column value on page 347
l Accessing references in comments on page 349
l Accessing metavalues of the local object on page 350
l Accessing objects' display values on page 350
An employee’s starting date is filled with a template. This template should run when the
employee’s surname changes. The template for Person.Entrydate is therefore:
'$Lastname$
Value = Date
Related topics
l Accessing local object columns on page 346
l Accessing columns of an object connected by a relation on page 347
l Accessing the old column value on page 347
l Accessing the display value of a column on page 348
Metavalue Meaning
IsLoaded This value specifies whether the object is loaded from the database.
IsChanged This value specifies whether the object is altered when it is loaded from
the database.
IsDifferent This value specifies whether the new value is different from the old value.
You can access to the column through: Columnname[C].
IsDeleted This value specifies whether the object is marked for deletion.
Related topics
l Accessing local object columns on page 346
l Accessing columns of an object connected by a relation on page 347
l Accessing the old column value on page 347
l Accessing the display value of a column on page 348
l Accessing references in comments on page 349
l Accessing objects' display values on page 350
Related topics
l Accessing local object columns on page 346
l Accessing columns of an object connected by a relation on page 347
l Accessing the old column value on page 347
l Accessing the display value of a column on page 348
l Accessing references in comments on page 349
l Accessing metavalues of the local object on page 350
Syntax
l Simple value assignment
Base.PutValue("<column>", <value>)
l Value assignment with variable replacement (value must be a character string)
Base.PutValue("<column>", context.Replace(<value>))
Example
Base.PutValue("IsForITShop", 1)
Base.PutValue("UID_ADSContainer", context.Replace("%cont%"))
Calling functions
Functions are stored in the script library (DialogScript table).
Related topics
l Using process-specific and global variables for the process definition on page 245
l Querying session object global variables on page 354
Syntax
Session.Config().GetConfigParm("<full path>")
When a configuration parameter is tested in a generating condition in VB.Net syntax, the
function returns a string. In order to compare this value to a numerical value, the
configuration parameter has to be set and contain a numerical value. This depends on the
implicit value type conversion from VB.Net. If the configuration parameter is not enabled,
the function returns an empty string ("") that cannot be compared to a numerical value.
This results in a VB.Net runtime error. Configuration parameter values are therefore always
compared to strings.
Do not use:
Session.Config().GetConfigParm("QER\Person\User\DeleteOptions\Homedir")=1
Use instead:
Session.Config().GetConfigParm("QER\Person\User\DeleteOptions\Homedir")="1"
In order to ensure that a logical value is always returned, the VID_IsTrue function
should be used.
Example
If VID_IsTrue(Session.Config().GetConfigParm
("QER\Person\User\DeleteOptions\Homedir")) Then ...
Related topics
l Testing for the existence of certain database entries on page 354
l Querying session object global variables on page 354
Syntax
Session.Source().Exists("<Tablename>","<WhereClause>")
Example
Session.Source().Exists("Person", "CentralAccount = '" & accnt & "' and uid_person
<> '" & uid_person & "'")
Related topics
l Querying configuration parameters on page 353
l Querying session object global variables on page 354
Syntax
Variables("<Variable name>")
Variable Meaning
Related topics
l Querying configuration parameters on page 353
l Testing for the existence of certain database entries on page 354
Using #LD-notation
#LD notation is used for displaying language-dependent information. #LD notation is
mainly used in process tracking and processing notification, but it can also be used in
scripts that are stored in the script library.
Process Job.NotifyAddress
handling
Job.NotifyAddressSuccess
notification
Job.NotifyBody
Job.NotifyBodySuccess
Job.NotifySender
Job.NotifySenderSuccess
Job.NotifySubject
Job.NotifySubjectSuccess
Templates DialogColumn.Template
DialogColumn.CustomTemplate
Formats DialogColumn.FormatScript
DialogColumn.CustomFormatScript
DialogTree.ListInsertValues
DialogSheet.InsertValues
Selection DialogTable.SelectScript
scripts
DialogObject.SelectScript
Process Job.GenCondition
generating
Job.PreCode
scripts
Job.ServerDetectScript
JobChain.GenCondition
JobChain.PreCode
Related topics
l Using #LD notation in process tracking on page 357
l Example of specifying the language or language variant on page 358
Example:
With InternalName = UserA, the following display texts are produced in the
process view.
Related topics
l Displaying translations in the Language Editor on page 214
Examples
l Output in the default language:
Value = #LD("Test: {0}", <parameter>)#
Value = #LD[""]("Test: {0}", <parameter>)#
l Output always in English
Value = #LD["en-US"]("Test: {0}", <parameter>)#
Value = #LD["english"]("Test: {0}", <parameter>)#
l Using a variable:
You do not need to enter the language in square brackets, it is optional. However, it is
important that the language statement is a String expression. If the language is not
specified or the resulting String expression is empty or Nothing, the language currently
set for the application is used for translation.
Script library
The script library contains source code for the scripts used in One Identity Manager. The
default scripts that we supply cannot be edited. These scripts are overwritten during
schema installation even if they are used in custom scripts.
NOTE: You can find detailed examples for syntax and usage of scripts on the installation
medium in the QBM\dvd\AddOn\SDK\ScriptSamples directory. You can find examples of unit
tests under QBM\dvd\AddOn\SDK\UnitTestSamples.
Scripts are displayed under Script Library in the Designer. You can gather all the
information about usage, for example, in column definitions, processes, or other scripts, in
the script overview.
Use the Script Editor to create, edit, and test scripts. To use Visual Studio's more extensive
debug and edit options, edit, and test the scripts in the System Debugger.
NOTE: Scripts for synchronization projects from the Synchronization Editor's script
library are not available in the Designer. For more information about the Synchron-
ization Editor script library, see One Identity Manager Target System Synchronization
Reference Guide.
Icon Meaning
Decreases insert.
Increases insert.
Inserts comments.
Removes comments.
Shortcut Description
PgUp Move up
F3 Search next.
Ctrl + H Replace.
Ctrl + Shift + Alt + Left Extend selected block by one word to the left.
arrow
Ctrl + Shift + Alt + Right Extend selected block by one word to the right.
arrow
Syntax highlighting
The input fields support syntax highlighting depending on the syntax type.
Auto-completion
You can use auto-completion when you write script code. The amount of scripted code to
enter is reduced by displaying the names of properties or functions that can be used. To use
auto-completion, use the shortcut Ctrl + SPACE in the relevant positions within the input
fields. The contents of the list is determined by the key words in the code.
Input fields that require data in VB.Net syntax support code snippets. In the Visual Basic
category, general code snippets are provided. The Object Layer category contains special
code snippets for the One Identity Manager object layer. In the SQL Formatter category,
code snippets database queries are formatted from VB.Net.
You can insert code snippets using the following options:
NOTE: If you select a code snippet directly using a shortcut or the icon, a short descrip-
tion and the shortcut name are displayed in a tooltip.
You can use custom code snippets. To do this, create a CustomSnippets directory in the One
Identity Manager installation directory to store the code snippets. Use Visual Studio
documentation to develop your own code snippets.
To sort custom code snippets, use the following syntax to enter a sort order in the code
snippet header in the code snippet file. When the code snippet is entered, the
numbering is hidden.
<Title>(1) Your title for the code snippet</Title>
<Title>(2) Your title for the code snippet</Title>
In input fields where a VB.NET term is expected, a help list opens when you enter $. All
properties of the current object are displayed. You can also see a tooltip with a detailed
description of the property. When you select a foreign key (FK) column, you can navigate to
the columns in the relevant table using the arrow keys. To end the selection in the target
column, press Enter or double-click. The complete $ notation for your selection should now
be shown in the input column. To close the help list without copying any data, press Esc or
leave the input field.
Icon Meaning
Table
Special properties
Script
Shortcut Action
Arrow left key, arrow right Navigate to the object above or below over the foreign
key key.
Property Description
Script code One Identity Manager scripts are written in VB.Net syntax, which
allows all VB.Net functions to be used. The values to be edited are
given as preprocessor instructions.
Locked Specifies whether the script is locked and therefore may not be
used. Locking the script is useful, for example, if it is currently being
edited.
To edit a script
1. In the Designer, select the script that you want to copy from the Script
Library category.
2. Select the Copy script task.
3. In the Copy script dialog, check the following information and correct if necessary.
Property Description
script The name of the new script is made up of the CCC_ prefix and the
name of the old script. You can change the name. Prefix custom
scripts with CCC_.
Script code The script code from the original is copied over. If necessary, you can
modify the script code of the script to copy beforehand.
Related topics
l Creating and editing scripts in the Script Editor on page 366
To test a script
Related topics
l Editing and testing script code with the System Debugger on page 371
All scripts are converted during compilation. The assemblies are created and placed on the
workstation where generating will take place. During the conversion, the script code is
tested for validity. This process may required some time.
Error messages are sent to the Compiler errors view. A double-click on the error message
takes you straight to the corresponding line in the script code view where you can edit it. It
can be modified at this point.
IMPORTANT: Once you have tested the script it needs to be added to the One Identity
Manager database and compiled with the Database Compiler. For more information, see
the One Identity Manager Operational Guide.
Overriding scripts
You might want to label scripts for overriding if there are limits to how much you can modify
default scripts. Scripts that can be overwritten are labeled with the overridable property.
NOTE: Only the default scripts that are supplied can be overriden. Custom scripts cannot
be overridden because these are saved in a Custom scripts script class.
IMPORTANT: After creating and editing the script, you should test compiling the script.
Compile the scripts in the script library for this script to take effect.
Syntax example
Public overridable Function My_Function() as Boolean
'script code of the original version
End Function
Public overrides Function My_Function() as Boolean
'Custom script code
End Function
Related topics
l Creating and editing scripts in the Script Editor on page 366
l Copying scripts in the Script Editor on page 367
l Testing script compilation in the Script Editor on page 369
l Testing scripts in the Script Editor on page 368
l Visual Basic .NET scripts usage on page 342
NOTE: To use the System Debugger with privileges without starting Visual Studio, you
must install the One Identity Manager components in a local directory which is not
controlled through user accounts.
Tables Tables.vb This script file contains all the table scripts.
1. Run the SystemLibrary.sln file in the One Identity Manager installation directory.
2. Check whether SystemDebugger is entered in Visual Studio as the start project.
3. Start the solution with F5 in Visual Studio.
4. Connect to the database.
5. Check the solution file directory and the options for creating the script library.
Options Meaning
Export system Specifies whether predefined scripts are loaded into the
scripts system library.
Export custom Specifies whether custom scripts are loaded into the system
scripts library.
Export locked Specifies whether only active scripts or also locked scripts
scripts are loaded from the script library.
Update project refer- Specifies whether references used in scripts are also loaded.
ences
6. Click OK.
The script library files are filled with data from the database.
7. Confirm reloading of each project in Visual Studio.
8. Start the solution with F5 in Visual Studio.
The source code generated for the solution is compiled.
9. Reconnect to the database.
Starts the System Debugger.
Related topics
l Testing script code in the System Debugger on page 374
l Saving changes to the database on page 377
Table 143: Functions for logging database queries and object actions
Icon Meaning
Starts recording.
Stops recording.
TIP: To find scripts more easily, you can use the following functions in the Scripts view.
l In the Find script field, enter the string to filter on.
l Modified scripts are marked with a * in the System Debugger.
l To find all modified scripts, click and apply the Changed scripts menu item.
Related topics
l Tips for editing script code in the System Debugger on page 373
l Saving changes to the database on page 377
l Testing scripts in the Script Editor on page 368
Action Meaning
1. In the System Debugger, select the column with the formatting script in Formats.
2. Select the object in Database object to which to apply the formatting script.
Related topics
l Tips for editing script code in the System Debugger on page 373
l Saving changes to the database on page 377
1. In the System Debugger, select the method in the Dialog methods area.
2. Select the object to apply the method to under Base object.
3. Check the Transaction with roll back option for running the methods.
Use this option to specify whether the method is run within a transaction with
subsequent rollback or whether the method is run immediately against the database.
4. Select Start.
The method starts running.
Related topics
l Tips for editing script code in the System Debugger on page 373
l Saving changes to the database on page 377
1. In the System Debugger, select the table and table script from the Tables view.
2. Select the object to test the table script on under Database object.
3. Check the Transaction with roll back option for running the table scripts.
Use this option to specify whether the table script is run within a transaction
with subsequent rollback or whether the table script is run immediately against
the database.
4. Select the following actions to test the table script.
Related topics
l Tips for editing script code in the System Debugger on page 373
l Saving changes to the database on page 377
1. In the System Debugger, select the script, template, formatting script, method, or
the table script.
2. Select the Scripts > Save script menu item.
This opens a dialog displaying the script name, database object, database
connection, and script code to be added.
3. Select a change label under Change labels to group your changes.
4. Click Save.
TIP: To save several scripts in the Scripts view, hold the CTRL key down, click on the
scripts and select the Scripts > Save script menu item.
NOTE: Ensure you recompile the database after making changes.
1. In the Database Compiler, on the Compiler settings page, set the Create debug
information option.
2. Select the Scripts including all dependencies compiler setting.
3. Start the compiler.
During compilation you will see more messages that refer to creating the debug
assemblies locally. Some compiler steps, for example, compiling web projects, are
skipped because they cannot be debugged locally.
The Database Compiler saves the assemblies and associated PDB files in the
%USERPROFILE%\AppData\Local\One Identity\One Identity Manager\AssemblyCache
directory on the local computer.
The source code is saved in the %USERPROFILE%\AppData\Local\One Identity\One Identity
Manager\AssemblyCache\Sources directory.
Therefore, the assemblies are not transferred to the database.
1. Start the Object Browser and select the Debug > Debugger start/stop
menu item.
Visual Studio opens and the Object Browser is connected to the debugger. This
process may take a few moments. If Visual Studio connection can be established, the
Manage breakpoints dialog opens.
2. In the Manage breakpoints dialog, you can define different breakpoints for scripts,
templates, format scripts, table scripts, processes, and task definitions.
l To define a new breakpoint, click and select one of the following options:
l Script processing: Adds a breakpoint of Script type. Under
Breakpoint operation, select a script.
l Column processing: Adds a breakpoint of Column type. Under
Breakpoint operation, select a format script, template, or script for
conditionally removing permissions.
l Table processing: Adds a breakpoint of Table type. Under Breakpoint
operation, select a table script.
l Process generation: Adds a breakpoint of Process type. Under
Breakpoint operation, select a process.
l Object method: Adds a breakpoint of Object method type. Under
Breakpoint operation, select a task definition.
l To use an existing breakpoint, select it in the list.
l To delete a breakpoint, select it in the list and click .
l To delete all breakpoints, click .
3. Click OK.
This closes the Manage breakpoints dialog. The breakpoint definitions are
transferred to Visual Studio.
NOTE: You can open the Manage breakpoints dialog again from the Debug >
Configure breakpoints menu.
4. In the Object Browser, run the actions that you want to debug, for example, call a
script, run a column template, or generate a process.
The moment the action is about to be run, Visual Studio is brought into the
foreground and opens the place in the source code with the selected breakpoint.
From this point on, all of Visual Studio's comprehensive debugging options are
available to you in full. For example, use F10 to step through the code line for line or
use F5 to continue with the program.
Related topics
l Creating local debug assemblies on page 378
l Troubleshooting debugging in the Object Browser on page 380
Cause
The system user has not been assigned the Allows local debug assemblies to be
created program function (Common_CompileForDebug) though their permissions groups.
Solution
In the Designer, assign the program function to a custom permissions group and add
the system user to this permissions group. For more information about controlling
conditions with program functions, see the One Identity Manager Authorization and
Authentication Guide.
Problem
Possible cause
l Visual Studio is not installed with the required options.
l The assemblies do not contain debug information.
Possible solutions
l Check your Visual Studio installation on the local workstation. For more information,
see Extended debugging in the Object Browser on page 377.
l Check the database connection. The debug assemblies always belong to a fixed
database. If another database connection is selected, the debug information is not
Problem
Cause
Breakpoints are shown as disabled if the assembly with the function to be debugged is yet
not loaded into memory. For example, the assemblies for generating processes are not
loaded into the application until the point of generation. From then on the breakpoint is
enabled and you can jump to it.
Problem
Breakpoints in Visual Studio are always shown as disabled and you cannot jump to them.
Possible cause
l The Object Browser still has the wrong assemblies loaded.
l The Object Browser could not find debug information for the assemblies.
Possible solution
If Visual Studio is connected the Object Browser, switch to Visual Studio and open the
Debug > Windows > Modules. Here you will find a list of all the modules that are loaded
and additional information.
The One Identity Manager query language can beOne Identity Manager used to create
queries or Where clause expressions against the One Identity Manager object layer.
For example, the One Identity Manager query language is used to communicate between
application servers and clients. Currently, you can use the One Identity Manager query
language in the Object Browser's query window .
The query language is not case sensitive. Keywords can be written in upper or lower case.
To be able to identify them more easily, keywords are always written in capital letters in the
following examples.
In a lot of parts, the query syntax is based on SQL syntax. This makes it easier to convert
simple Where clauses from SQL syntax to the query syntax.
Comments
There are two types of comments in the One Identity Manager query language. These are
analog to comments in SQL syntax:
Line comments
Line comments start with -- and end at the end of the line.
-- This is a line comment
Line comments do not have to be at the beginning of the line.
FROM Person -- This is a line comment too
Block comments
Block comments start with the /* and end with */. Block comments can span more
than one line.
/* This is a block comment
that spreads over
more than one line */
Identifier
In the One Identity Manager query language, identifiers always start with an ASCII
character in the range A to Z or with an underscore (_). Digits are valid only after the first
position. Identifiers can contain several parts delimited by dots (.).
String values
In the One Identity Manager query language, strings are enclosed in single quotes. Single
quotes within strings are masked by doubling the single quote. All string contents are
Unicode. The N character at the beginning of the string is allowed to ensure some
compatibility with SQL syntax. It has no special meaning.
Integer values
In the One Identity Manager query language, integer values contain digits and an optional
plus sign (+) or minus sign (-).
Decimal values
In the One Identity Manager query language, decimal values contain digits and an optional
plus sign (+) or minus sign (-). The decimal part is separated by a dot (.).
Parameter references
In the One Identity Manager query language, query parameters are specified in SQL
syntax.
@ParameterName
The parameter name matches the identifiers' definition.
Related topics
l Identifier on page 383
Related topics
l Using preformatted Where clauses on page 399
Query header
Data queries in the One Identity Manager query language always start with the
FROM keyword and a table name. An optional alias for the table can be specified
after the AS keyword.
FROM <table name>
FROM <table name> AS <table alias>
An alternative is to query directly using an object key.
Where clauses
Where-clauses in the One Identity Manager query language start with the WHERE keyword
and contain a condition that the resulting data must match. Unlike SQL syntax, multiple
Where clauses can be combined in a One Identity Manager query language query.
Related topics
l Conditions on page 393
Search clauses
In the One Identity Manager query language the SEARCH keyword is used to search for all
matching entries from the full text index. To use this type of clause, a full text index must
be installed and accessible from the application.
SEARCH 'Search string'
Select clauses
The One Identity Manager query language Select clauses describe the data that is fetched
from the underlying database. You define the minimum amount of returned data. The
Example
FROM Person
SELECT COLUMNS Firstname, Lastname, CentralAccount
In the case of returned entries, the table's display pattern and the display pattern (long)
can be overwritten by a display value clause. For more information, see Display value
clauses on page 391.
Select all columns of a table that are not marked as a BLOB field
SELECT NONLOBS
Selects all columns of the table that are not marked as a very long binary object or text
object by the DialogColumn.IsBlobExternal column.
Order by clauses
The Order by clause in the One Identity Manager query language, specifies the order in
which entries are returned.
ORDER BY <list of columns>
The column order can be specified by
l ASC or ASCENDING (Standard)
l DESC or DESCENDING
When display values are selected, a default order by clause is created for the
display columns.
Paging clauses
Paging operators of the One Identity Manager query language make it possible to return
only a subset of the selected entries.
Take clause
The Take clause specifies the maximum number of entries to be returned. If more than one
Take clause is specified, only the last take clause is effective.
Example
-- Return only the first ten persons from the result set
FROM Person SELECT DISPLAYS TAKE 10
Skip clause
The Skip clause specifies how many entries should be skipped from the beginning of the
results before the entries are returned.
SKIP <integer>
Example
-- Skip 50 persons and return the following 15
FROM Person SELECT DISPLAYS SKIP 50 TAKE 15
Example
FROM Person
SELECT DISPLAYS
DISPLAY '%Lastname%, %Firstname%'
LONGDISPLAY '%Lastname%, %Firstname% - %CentralAccount%'
Related topics
l Select clauses on page 388
Valid types are the .Net data types of the object layer defined in ValType enumeration. If
the type can be derived from the value, you do not have to give a type.
Related topics
l Identifier on page 383
l Parameter references on page 386
Query hints
Query hints (keyword HINT) can be used in the One Identity Manager query language to
provide the query processor with additional data. Query hints are used internally to provide
a context for additional permission queries to display columns that are only available when
loaded as display values for foreign keys of another table.
HINT 'Name' = 'Value'
Conditions
Conditions combine all expressions that filter the resulting entities according to one or
more criteria.
In the One Identity Manager query language, conditions can be linked with the AND and OR
operators. You can overwrite operator precedence with curly brackets ({ }). Conditions can
be inverted using the NOT keyword.
Example of a condition
WHERE Lastname = 'User'
AND (Firstname = 'Alex' OR Firstname = 'Sam')
Special conditions
n the One Identity Manager query language, use the PRIMARYKEY keyword to select
the entity with the matching primary key. The primary key must be given in object
key notation.
WHERE PRIMARYKEY 'Object Key'
Example
FROM Person
WHERE PRIMARYKEY '<Key><T>Person</T><P>99918ef1-113f-480a-8e6e-
704b1a3cf73a</P></Key>'
SELECT DISPLAYS
Use the KEY keyword to select the entity with the matching key. Keys can be object keys or
alternative object keys, each in their XML notation.
WHERE KEY 'Key'
Example
FROM ADSAccount
WHERE KEY '<Key><Table Name="ADSAccount" Key="c149784b-6386-45d7-a38d-
3c6e8e1b69d4"><Prop Name="UID_ADSAccount"><Value>c149784b-6386-45d7-a38d-
3c6e8e1b69d4</Value></Prop></Table></Key>'
SELECT COLUMNS cn
With the LIMITEDSQL keyword you use a preformatted Where clause from the
QBMLimitedSQL table. Any parameters used in it can be specified with the PARAMETER or the
PARAMETERS clause.
WHERE LIMITEDSQL 'Identifier'
<= Less than or equal to Value that matches the column type,
the parameter, or another column
>= Greater than or equal to Value that matches the column type,
the parameter, or another column
BITSSET The given bit positions are set Integer value or parameter
BITSNOTSET The given bit positions are not Integer value or parameter
set
Value lists
WHERE <Column> IN ( <Value>, <Value>, ...)
WHERE <Column> NOT IN ( <Value>, <Value>, ...)
All values must be of the same type and must be convertible to the column type.
Multivalued string
WHERE <Column> IN 'Separated string value'
WHERE <Column> NOT IN 'Separated string value'
Parameters
Parameter examples
WHERE Lastname IN @Lastnames
You can also use MVP syntax. The normal IN clause syntax should be preferred in this case.
For more information, see String values on page 384.
Examples
WHERE XDateInserted < DATE 3 MONTHS AGO
WHERE XDateInserted > DATE 5 MIN AGO
Examples
WHERE XDateInserted IN RANGE YESTERDAY
WHERE XDateInserted IN RANGE YESTERDAY
TIMEZONE 'W. Europe Standard Time'
WHERE XDateInserted IN RANGE LAST YEAR
WHERE XDateInserted IN RANGE THIS WEEK
TIMEZONE 'W. Europe Standard Time'
CULTURE 'de-DE'
WHERE XDateInserted IN RANGE 2020-01-01 TO 2020-02-01
TIMEZONE 'W. Europe Standard Time'
Related topics
l Date and time values on page 385
Example
FROM Person
WHERE 1 = 0
Comparing parameters
In the One Identity Manager query language, parameters can only be compared against
fixed values. All comparisons that are valid for columns can also be used for parameters.
NOTE: IN clauses and NOT IN clauses cannot be used.
Examples
WHERE @StringParameter = ''
WHERE @IntParameter > 5
WHERE @IntParameter BITSSET 4
Related topics
l Comparing columns on page 395
Example
FROM Person
WHERE [isnull(LastName, N'') = N'Einstein']
SELECT DISPLAYS
Related topics
l Preformatted Where clauses on page 386
One Identity Manager provides the means to create and run multi-object reports, including
totals and other aggregate functions. It is also possible to create groups and graphically
represent data. Predefined reports are supplied with the schema installation. You can
create and edit custom reports with Report Editor.
You can also send reports to specified email addresses using scheduled subscriptions. You
can create reports for the current state or over a specified period. For every report, you can
create different subscribable reports that can be requested by Web Portal users. In
addition, you can embed reports in the Manager or the Designer‘s user interface.
For more information about report subscription, see the One Identity Manager Report
Subscriptions Administration Guide and the One Identity Manager Web Designer Web
Portal User Guide.
New virtual data Opens a dialog box for creating a virtual data source.
source
Icon Meaning
Icon Meaning
Runs the filter and shows all reports that satisfy the filter condition. The filter
condition is interpreted internally as a LIKE comparison.
Edit Opens the property dialog box for the current report.
edit properties Loads the properties dialog box for the selected report.
View Description
Report list All reports are displayed by category. Uses a filter condition to limit the
number of reports displayed.
Edit view Reports are designed with the Report Designer in the edit pane. Using the
for Report Designer’s toolbar, you can place the controls you want on the report
reports form.
NOTE: Use the online help from Stimulsoft StimulReport.Net
(www.stimulsoft.com) as a basis for the report design.
Property Use the view edit the properties of the selected report. A default context
dialog box menu is available for input fields.
SQL log Database queries are listed in this view. Use query logging to look for errors
and to optimize the report during the design phase. For more information,
see Logging database queries on page 404.
1. In the Report Editor, select the Database > Settings menu item.
2. In the Language settings pane, modify the following:
l Language: Language used for formatting data, such as date formats, time
formats, and number formats.
l Other user interface language:Language for the user interface. The initial
program login uses the system language for the user interface. Changes to the
language settings take effect after the program has been restarted.The
language is set globally for all One Identity Manager programs, which means
the language setting does not have to be configured for each program
individually.
3. In the Behavior pane, modify the following:
l Show code tab: Specifies whether the tab for editing the script code is shown
in the Report Designer.
l Ask on save without change label: You should book changes to reports to a
change label. Set this option so that an alert box is called when changes are
1. In the Report Editor, open the log window using SQL log at the bottom of
the program.
2. (Optional) Use the Select column context menu, specify which columns are shown
in the log.
3. To start logging, select Start/Stop from the context menu.
4. To stop logging, select Start/Stop from the context menu again.
TIP: You can configure how the messages are displayed in the error log. To do this, switch
the log to advanced mode by clicking on the right of the column headers.
Icon Meaning
Logs debugger output. This setting should only be used for testing. (Info level
Debug)
Logs highly detailed information. This setting should only be used for analysis
purposes. The log file quickly becomes large and cumbersome. (Info level
Trace)
Buffer Sets the message buffer size. The buffer's level is displayed next to the field.
size
Stops logging.
Starts logging.
When you add or copy a report, the property dialog box opens first, which you use to enter
the general data for the report, the data source required and an parameters for the report
definition. Then a new report form is created in the edit view with the Report Designer. This
To copy a report
l In the Report Editor, select the report in the report list and then, in the context menu,
click Copy.
This creates a new report and the property dialog opens. The properties in the new
report are take from the original.
To edit a report
1. In the Report Editor, select the report in the report list and open it by double-clicking
or clicking Edit in the context menu.
This opens the report form in the Report Designer.
2. To open the property dialog, select the Report > Edit menu item.
To edit the report properties without loading the report in the Report Designer
l In the Report Editor, select the report in the report list and then Edit properties
from the context menu.
This opens the property dialog.
NOTE: After you have customized a report, you can mark it by setting change labels.
These change labels are offered in the Database Transporter as export criteria when a
customer transport package is created.
Property Meaning
Name Report name Label custom reports with the CCC_ prefix.
Display name Display name of the report. The display name is available when the
report is created as ReportAlias. It can, for example, be used to compose
the title of the report or the file name when you export a report in the
Web Portal. Translate the given text using the button.
The report display name can contain variables, permitted are system
variables such as report parameters. The variables are passed using a
percent character.
Example:
Name of report %variable%
Max. runtime Maximum number of seconds available to generate the report If this
[sec] period is exceeded, the report stops generating.
Description Report description. Translate the given text using the button.
Filter criteria Filter criteria for displaying the report in the web front-end.
Category Category for classifying reports. Permitted values are the Common,
Mail, Attestation, and Dashboard categories.
NOTE: When a data query is copied to the clipboard, a database query is generated in
SQL syntax, which you can run on the database with an appropriate SQL query tool. To
copy the data query, use the button next to Query module.
Related topics
l Using virtual data sources on page 426
Property Meaning
Query Full database query SQL syntax. The query must contain all the columns
used in the report. You can also use SQL parameters in the query. Add
these parameters subsequently to the report by entering them on the
Parameters tab.
Syntax for parameters:
@<parameter name>
Syntax for parameters of Date data type and a scope (time period
from/until):
@<parameter name>Start
@<parameter name>End
Example of usage in the SQL query:
and StartDate between @<parameter name>Start and @<parameter
name>End
Example:
The query should return the employees (Person table) assigned to an department.
The department (UID_Department) is found with the object key (XObjectKey). This is
passed as a parameter to the report. The query queries employee‘s first name
(firstname), last name (lastname), and department name (departmentname).
Select Firstname, Lastname, Departmentname
from person join Department
on person.uid_Department = department.uid_Department
where Department.XObjectKey = @ObjectKeyBase
Related topics
l Creating and editing data sources on page 408
l Report parameters on page 419
Property Meaning
Max. lines Maximum number of result lines for this query. If this number is exceeded,
the report stops generating.
Condition Condition for limiting the data set returned from the database table. You
formulate the condition as a valid WHERE clause for database queries. You
may use SQL parameters in the condition. Add these parameters
subsequently to the report by entering them on the Parameters tab.
Syntax for parameters:
@<Parametername>
Sort order The data queries are sorted by these database view columns.
Related topics
l Creating and editing data sources on page 408
l Report parameters on page 419
Property Meaning
Parent query In a parent query, restrictions are applied to the data record that are
passed on to subsequent queries, all members of a department, for
example. Parameters that are defined in the parent query are also
available in subsequent queries.
Resolve Set this option if the display value of the referenced object should be
foreign key returned in <column>_Display rather than the UID.
Condition Condition for limiting the data set returned from the table. You formulate
the condition as a valid WHERE clause for database queries. You may use
SQL parameters in the condition. Add these parameters subsequently to
the report by entering them on the Parameters tab.
Syntax for parameters:
@<Parametername>
Syntax for columns of a parent query:
@<name of parent query>.<column of the parent query>
Sort order The data queries are sorted by these table columns.
Related topics
l Creating and editing data sources on page 408
l Report parameters on page 419
Property Meaning
Parent query In a parent query, restrictions are applied to the data record that are
passed on to subsequent queries, all members of a department, for
example. Parameters that are defined in the parent query are also
available in subsequent queries.
Object key The object key can be queried directly or using a parameter. Add these
parameters subsequently to the report by entering them on the Paramet-
ers tab. Columns in a parent query are formatted with the following
syntax:
<parent query name>.<parent query column>
Min date or Use the minimum date to specify the point in time that the history data
range should start from. You can define the date directly or using a parameter.
In the case of a parameter, the minimum date of all affected entries in the
connected One Identity Manager History Database databases is determ-
ined. Add these parameters subsequently to the report by entering them
on the tab Parameters.
Resolve Set this option if the display value of the referenced object should be
foreign key returned rather than the UID.
Table 155: Columns from a data query using single object history
Column Meaning
Related topics
l Creating and editing data sources on page 408
l Report parameters on page 419
Property Meaning
Minimum Use the minimum date to specify the point in time that the history data
date or should start from. You can define the date directly or using a parameter.
range In the case of a parameter, the minimum date of all affected entries in the
connected One Identity Manager History Database databases is determ-
ined. Add these parameters subsequently to the report by entering them
Criteria Column, table, and value used for further narrowing down the objects
found. The value can be queried directly or as a parameter. Add these
parameters subsequently to the report by entering them on the tab
Parameters.
Table 157: Columns from a data query using single object history
Column Meaning
Example:
A history of all employees with the last name "Name1" should be created. The report
data can be defined in the following way:
Table: Employee
Related topics
l Creating and editing data sources on page 408
l Report parameters on page 419
Property Meaning
Parent query In a parent query, restrictions are applied to the data record that are
passed on to subsequent queries, all members of a department, for
example. Parameters that are defined in the parent query are also
available in subsequent queries.
Minimum Use the minimum date to specify the point in time that the history data
date or range should start from. You can define the date directly or using a parameter.
In the case of a parameter, the minimum date of all affected entries in the
connected One Identity Manager History Database databases is determ-
Criteria value The value of the criteria column can be queried directly or using paramet-
ers. Add these parameters subsequently to the report by entering them
on the Parameters tab. Columns in a parent query are formatted with
the following syntax:
<parent query name>.<parent query column>
Disabling Certain tables contain columns that can disable an object, for example,
columns the AccountDisable column in the ADSAccount table. Enter these columns if
an assignment should be labeled as "Deleted" when disabled and "Added"
if enabled.
Additional Enter the columns from the table that should also be available in the
object report.
columns
Additional Column of the table and value for further restriction of the base object.
criteria
The data query returns the following columns. In addition, columns are supplied that are
edited like object columns.
Column Meaning
OriginDisplay Display name of the bitmask for mapping the type of assignment.
Related topics
l Creating and editing data sources on page 408
l Report parameters on page 419
Property Meaning
Simulation Defines which part of the simulation analysis is shown in the report.
analysis
Permitted values are:
l Überblick: Shows which actions were triggered through changes
made during the simulation in an overview.
l Changed properties: Shows objects and their properties affected
by the changes made during simulation.
l DBQueue: Shows the calculation tasks for the DBQueue Processor
resulting from changes made during simulation.
Table 161: Data source front-end simulation result for compliance properties
Property Meaning
Related topics
l Creating and editing data sources on page 408
Report parameters
A report can contain several parameters that are determined when the report is created or
when an email notification is generated and passed to the report. The generated report is
then displayed or send by email to the subscriber corresponding to the report subscription
set up. The user can query the report parameters before the report is displayed. This
means, you can, for example, limit the time period or pass specific departments for
displaying the report.
Report parameters are grouped internally into parameter sets. A separate parameter set is
automatically created for very report, every subscribable report, and every report
subscription. The parameters and their settings are passed down in the sequence report-
>subscribable report->report subscriptions.
Define the report parameters to use when you create the report in the Report Editor. This is
where you specify which report parameters are viewable or writable and which are already
predefined in a subscribable report.
When you add a subscribable report viewable parameters are displayed in the Manager.
You can make further changes to these report parameters assuming they can be
overwritten. That means, you specify which report parameters can be viewed or
overwritten by Web Portal users and define parameter values.
Report parameters labeled as viewable and editable in subscribable reports, are shown to
Web Portal users when they are setting up their personal report subscriptions. If the report
parameters are editable, Web Portal users can modify the values in them.
NOTE: In the report, you must define all the report parameters that users can apply. For
example, when the report is displayed, when subscribable reports are generated in the
Manager, or in Web Portal report subscriptions.
Related topics
l Report parameters on page 419
l Editing general parameter settings on page 422
l Editing parameter value definitions on page 423
l Settings for calculating values on page 425
Property Description
Display User friendly name for the parameter. To display language dependent
name display names, translate the given text with the button.
Description Text field for additional explanation.Translate the given text with the
button.
Sort order Position of the parameter in the subscribable report view and in the Web
Portal.
Mandatory Specifies whether this is a mandatory parameter. You must give a value
parameter for a mandatory parameter.
Can be Specifies whether the parameter can be overwritten by Web Portal users
overwritten when a report subscription is created.
NOTE: The Parameter value and Default value are affected by the parameter value
definition. On the one hand, you can see this through dynamic customization of the
controls for selecting a parameter value, or on the other hand, through the default value
and the dynamic customization of the selectable values themselves. It is therefore
recommended that you edit these values last.
Property Description
Date add- Additional information about calculating date and time data for displaying in
on the user interface. The value can be edited if the Date data type is selected.
Value range Specifies whether the report parameter value has to be within a given
range. If Yes, additional fields appear.
Multivalue Specifies whether the parameter accepts multiple values. If Yes, users can
select multiple value from a list.
Multiline Specifies whether the parameter contents can have multiple lines. If Yes,
line breaks are permitted.
List of Additional data for the data source List of permitted values.
permitted
List of values permitted in this parameter in the value=display name
values
notation. If an = is no given, the entry counts as both value and display
name.
Example: 1=internal 2=external
To display language dependent display names, translate each display name
using the button.
Overwrite Specifies whether an empty parameter value overwrites the default value.
empty
If this option is disabled, the default value is overwritten if a parameter
value
value is not given.
Example Example of the parameter. The example value is used to create a report
value preview.
If a value range is given, the Example value (from) and the Example
value (to) are displayed.
Default Default value of the parameter. This is used if the user does not specify a
value parameter value and the Overwrite empty value option is not set.
If a value range is given, the Default value (from) and the Default
value (to) are displayed.
Related topics
l Editing report parameters on page 421
l Editing general parameter settings on page 422
l Settings for calculating values on page 425
l Display template for displaying a list on page 131
Property Description
Valuation Script in VB.Net syntax for modifying the parameter value. The script can
script be used as a formatting script and the existing parameter value modified or
reset the parameter value.
Validation Script in VB.Net syntax for checking permitted values of parameters. Create
script a script that checks the user input.
Script for Script in VB.Net syntax that is run when values change. The script is used to
value dynamically determine whether a parameter is read-only or mandatory, for
changes example.
Example:
The P2 parameter should be a mandatory field when the P1 parameter has
the value Mandatory field. The following script must be stored with the P1
parameter:
ParameterSet("P2").IsMandatory = (Value IsNot Nothing AndAlso
Value.ToString() = "Pflichtfeld")
The parameter's script properties always generate a script with the notation:
public void OnPropertyChanged_<UID-Parameter>(DialogParameterSet ParameterSet,
DialogParameter Parameter)
{ ... }
public void Valid_<UID-Parameter>(DialogParameterSet ParameterSet,
DialogParameter Parameter)
{ ... }
public void Valid_<UID-Parameter>(DialogParameterSet ParameterSet,
DialogParameter Parameter)
{ ... }
The current value of the parameter is passed on the Value member variables and the
parameter itself on the Entity variable. DialogParameterSet and DialogParameter are
passed as arguments to the method. These are not the entities but the parameter classes
from the VI.DB.
Related topics
l Editing report parameters on page 421
l Editing general parameter settings on page 422
l Editing parameter value definitions on page 423
Related topics
l Creating and editing data sources on page 408
Icon Meaning
1. Select the column you want to add to the report in the Dictionary tab.
2. Position the column on the report form using "drag and drop".
This creates a new control element on the report form which includes some
predefined variables.
TIP: You can add other control elements as necessary with the Report Designer
tool palette.
3. The Report Designer properties window (Properties) allows you to customize
individual control elements.
4. Use Preview to view the report during editing. The preview takes some sample
parameter values to determine the data for the preview display.
Related topics
l Example of a simple report with data grouping on page 430
3. Drag and drop the Departmentname column from the Report Designer‘s dictionary
(Dictionary tab) into the group header. This creates a new control element on the
report form.
4. To display employees, add a Data band to the report form from the Report
Designer‘s toolbox. Specify the data source as Employee by Department.
6. Other control elements such as a title (PageHeader) can be added as necessary with
the Report Designer. The Report Designer Properties window allows you to
customize individual control elements.
7. The preview can be used to view the report during setup. The preview uses the
sample parameter values in the parameter view of the report edit dialog to determine
the data for this.
1. In the report, select the report list and open it with double-click or with Edit from the
context menu.
This opens the report form in the Report Designer.
2. Start the Globalization Editor.
l Click on the button in the Report Designer toolbar.
- OR -
l In the Report Designer’s properties view, select the report from the menu on
the Properties tab and use Globalization Strings to open the
Globalization Editor.
NOTE: You can only start the Globalization Editor from the Report Designer’s
properties view if you have selected Professional. You can change the
configuration type later in the edit view using the context menu in the
property view.
3. Ensure that the Auto Localize Report on Run button is set.
This means the report is generated in the current language.
4. Enter a culture for the language using Add Culture and translate each entry.
1. Select the report in the report list and open it with double-click or with Edit from the
context menu.
This opens the report form in the Report Designer.
2. Select the caption on the report form.
3. Open the dialog box using the in the Report Designer toolbar.
4. Translate the text and confirm the changes with OK.
1. In the Designer, select the User interface > Forms > User interface
forms category.
2. Select the Edit form task.
3. Select the Form > Insert menu item.
4. Edit the interface form's main data.
Take the following cases into account:
l Use the VI_Report form definition.
This form definition is configured to display in the graphical user interface and
web applications. You only need to set up one interface form for this. Which
form template will be used to display the interface form is decided dynamically,
depending on usage.
l In the form’s configuration data, enter the name of the report to be run and the
report parameters in the Properties section.
Syntax:
<DialogSheetDefinition FormatVersion="1.0">
<Properties>
<Property Name="ReportName">ReportName from the
DialogReport</Property> table
<Property Name="ReportParameter.Parameter1">value1</Property>
<Property Name="ReportParameter.Parameter1">value</Property>
</Properties>
</DialogSheetDefinition>
Example:
<DialogSheetDefinition FormatVersion="1.0">
Related topics
l Editing user interface forms on page 139
l Creating user interface forms
l Assigning user interface forms to applications
l Assigning user interface forms to permissions groups
l Assigning user interface forms to menu items on page 145
l Assigning user interface forms to object definitions on page 143
l Using reports in statistics on page 177
Related topics
l Defining processes on page 224
The object technology implemented in One Identity Manager makes it possible to add
customer-specific columns and tables to the existing application data model at the
database level. These are, therefore, available at the object level with all corresponding
tasks. A custom extension to the system data model is not recommended.
Basic knowledge of the database system's SQL Server in use is a prerequisite for making
schema extensions. It is assumed that you understand the concept and the architecture of
One Identity Manager.
To implement a custom extension of the One Identity Manager schema, use the Schema
Extension program. You can make the following extensions using the Schema Extension:
l Create new tables
l Create new assignment tables
l Create new columns
l Create new views
l Create new indexes
l Removing custom schema extensions
NOTE: You can delete custom schema extensions only on databases with the Test
environment or Development system staging level. It is not possible to
transport the changes.
The Schema Extension program creates the schema extensions in the database and
ensures that the necessary extensions are made in the One Identity Manager schema. The
basic table definitions and column definitions of the custom tables are entered in the
DialogTable, DialogColumn, QBMRelation and DialogValidDynamicRef tables. You must then
adjust the properties in the Designer to the desired requirements.
The Designer contains a variety of consistency checks. Run these consistency checks and
apply the repair methods after carrying out a schema extension and after making changes
to table and column definitions. For more information about checking data consistency, see
the One Identity Manager Operational Guide.
You cannot create custom functions, triggers, or database procedures with the Schema
Extension program. If you need custom functions, triggers, or database procedures, add
Related topics
l One Identity Manager schema basics on page 43
l Table types and default columns in the One Identity Manager data model on page 48
l Recommendations for advanced configuration of custom schema extensions on
page 456
l Managing custom database objects within the database on page 458
Technical details
l The technical identifier for the table is automatically formed according to the
CCC<Table name> schema.
l The following columns are generated automatically:
1. Start the Launchpad and log in to the One Identity Manager database.
2. Open the Launchpad and select the One Identity Manager Schema Extension
entry. This starts the Schema Extension program.
3. Click Next on the start page.
4. On the Database connection page, check the connection data for the One Identity
Manager database.
5. On the Select method page, select New table.
6. On the Create new table page, enter the following information.
Property Description
Display Displays table name The display name is used, for example, to
name identify the table in a database search or for error output.
7. On the Configure columns of table page, create the new columns. For more
information, see Defining columns on page 440.
Related topics
l Table types and default columns in the One Identity Manager data model on page 48
l Extending tables on page 440
l Creating new assignment tables on page 450
l Creating database views with read-only type on page 447
l Creating database views with Union type on page 449
1. Start the Launchpad and log in to the One Identity Manager database.
2. Open the Launchpad and select the One Identity Manager Schema Extension
entry. This starts the Schema Extension program.
3. Click Next on the start page.
4. On the Database connection page, check the connection data for the One Identity
Manager database.
5. On the Select method page, select Extend table.
6. On the Extend table page, select the table that you want to extend from the
Table menu.
7. On the Configure columns of table page, create the new columns. For more
information, see Defining columns on page 440.
Related topics
l Table types and default columns in the One Identity Manager data model on page 48
l Creating new tables on page 438
l Creating new assignment tables
l Creating database views with read-only type on page 447
l Creating database views with Union type on page 449
Defining columns
On the Configure columns of table page in the Schema Extension, you can see
which columns already exit for the selected table and how many resources are free for
new columns.
NOTE: Take the maximum size allowed for a table into account when extending.
Property Description
5. (Optional) Click to configure more column properties. For more information, see
Advanced configuration of columns on page 445.
Related topics
l Table types and default columns in the One Identity Manager data model on page 48
l Creating new columns for database views with type view on page 444
l Creating foreign key columns on page 442
l Creating dynamic foreign keys on page 443
Technical details
l The technical identifier for the column is automatically formed according to the CCC_
<column name> schema.
l Foreign key columns are created with the String data type and a length of 38
characters.
l The table relations and column relations are generated automatically.
l The relation IDs follow the naming convention:
CCC-<database ID>-<4 digit sequential number>
l If a foreign key column is added to a database view, the relation IDs follow the
naming convention:
CCC-<database ID>-<4 digit sequential number> <Name of referenced
table>
l If a column from a base table is referenced using the Base table table type,
the table relations and column relations are also created for the base table.
l Validation of referential integrity is done by DLL or triggered.
5. Click and enter the following information in the Key column values tab.
Property Remarks
Foreign key Specifies whether the column is a foreign key column. Enable the
option.
6. (Optional) You can also configure more column properties. For more information, see
Advanced configuration of columns on page 445.
Related topics
l Table types and default columns in the One Identity Manager data model on page 48
l Table relations on page 98
l Creating simple columns on page 441
l Creating new columns for database views with type view on page 444
l Creating dynamic foreign keys on page 443
5. Click and enter the following information in the Dynamic foreign key tab.
Property Remarks
Referenced Select the tables to be referenced. All tables are permitted, if there
table are no restrictions.
Delete restric- Restriction for testing referential integrity when deleting an object
tions
Insert restric- Restriction for testing referential integrity when inserting an object
tions
1. (Optional) You can also configure more column properties. For more information, see
Advanced configuration of columns on page 445.
Related topics
l Table types and default columns in the One Identity Manager data model on page 48
l Dynamic foreign key on page 102
l Creating simple columns on page 441
l Creating new columns for database views with type view on page 444
l Creating foreign key columns on page 442
To create a new column for database views with the View type in the
Schema Extension
Related topics
l Creating simple columns on page 441
l Database views of the View type on page 54
1. Select the column on the Configure columns of table page and click the button.
2. Configure the column properties.
3. Enter the following information on the Advanced tab.
Property Remarks
Name Technical identifier for the column The column name is formed from
CCC_<column name.
Data type Column data type Permitted .Net data types are listed in a pop-up
menu. These are represented internally as SQL data types. The only
permitted data types are those already used in the One Identity
Manager data model.
Length Column length The column length is only specified for the .Net String
data type. For columns containing UIDs, enter the value 38.
Column Specifies whether this is UID column. This option is only permissible
contains for columns with the String .Net data type and a length of 38 charac-
UIDs ters.
Column Specifies whether the column contains Unicode. This option is only
contains permissible for String .Net data types.
unicode
Property Remarks
Show in Specifies whether the column is offered in the Rule Editor for compli-
wizards ance rules to create queries and in the Web Portal to display tabular
overviews.
Do not auto For custom columns in a predefined table, permissions are not
extend automatically assigned to predefined permissions groups, even
permissions though the Common | AutoExtendPermissions configuration
parameter is set.
Initial value Initial value for the column This value is transferred to the existing
data records of the extended table. The initial value for numerical
data types is 0. The initial value for the Bool data type is False.
Sort order The sort order specifies the position for displaying the column on
the generic form and the custom tabs of the default form. Columns
with a value less than 1 are not displayed on the forms.
5. Enter the following information for foreign key columns on the Key column
values tab.
Property Remarks
6. Enter the following information for dynamic foreign key columns on the Dynamic
foreign key tab.
Property Remarks
Referenced Select the tables to be referenced. All tables are permitted, if there
table are no restrictions.
Delete restric- Restriction for testing referential integrity when deleting an object
tions
Insert restric- Restriction for testing referential integrity when inserting an object
tions
7. Click OK.
Related topics
l Creating simple columns on page 441
l Creating foreign key columns on page 442
l Creating dynamic foreign keys on page 443
l Creating new columns for database views with type view on page 444
l Table relations on page 98
l Dynamic foreign key on page 102
1. Start the Launchpad and log in to the One Identity Manager database.
2. Open the Launchpad and select the One Identity Manager Schema Extension
entry. This starts the Schema Extension program.
3. Click Next on the start page.
4. On the Database connection page, check the connection data for the One Identity
Manager database.
5. On the Select method page, select Create view.
6. On the Create view page, enter the following information.
Property Description
Display Name displayed for the database view. The display name is used, for
name example, to identify the database view in a database search or error
output.
7. (Optional) Create the foreign key relations on the Create FK relations for
views page.
l Double-click the icon in front of the column name and select the target table
in the Target table column.
8. On the Configure columns of table page, enter display names for the columns.
9. (Optional) Click to configure more column properties. For more information, see
Advanced configuration of columns on page 445.
Related topics
l Database views of the Read-only type on page 60
l Using Common Table Expressions in read-only database views on page 449
l Creating database views with Union type on page 449
l Creating new columns for database views with type view on page 444
Recommended action
1. Start the Launchpad and log in to the One Identity Manager database.
2. Open the Launchpad and select the One Identity Manager Schema Extension
entry. This starts the Schema Extension program.
3. Click Next on the start page.
4. On the Database connection page, check the connection data for the One Identity
Manager database.
5. On the Select method page, select Create union view.
6. On the Create union view page, enter the following information.
Property Description
Display Name displayed for the database view. The display name is used, for
name example, to identify the database view in a database search or error
output.
Related topics
l Database views of the Union type on page 58
l Creating database views with read-only type on page 447
l Creating new columns for database views with type view on page 444
1. Start the Launchpad and log in to the One Identity Manager database.
2. Open the Launchpad and select the One Identity Manager Schema Extension
entry. This starts the Schema Extension program.
3. Click Next on the start page.
4. On the Database connection page, check the connection data for the One Identity
Manager database.
5. On the Select method page, select New relation table.
6. On the Create a relation table page, enter the following information.
Property Description
Display Displays table name The display name is used, for example, to
name identify the table in a database search or for error output.
Create You can create the origin column (XOrigin) optionally. The origin of
XOrigin an assignment is stored in this column as a bit field. Each time an
column (for entry is made in the assignment table the bit position is changed
assignment according to the assignment type.
requests)
Related Use the Left table and Right table menus to specify which tables
tables are included in the relation table.
Column In Column name fields, enter the relevant columns for each side of
names the table. Select the table’s primary key column.
7. On the Configure columns of table page, enter display names for the columns.
8. (Optional) Click to configure more column properties. For more information, see
Advanced configuration of columns on page 445.
Related topics
l Creating new tables on page 438
l Creating database views with read-only type on page 447
l Creating database views with Union type on page 449
1. Start the Launchpad and log in to the One Identity Manager database.
2. Open the Launchpad and select the One Identity Manager Schema Extension
entry. This starts the Schema Extension program.
3. Click Next on the start page.
4. On the Database connection page, check the connection credentials for the One
Identity Manager database.
5. On the Select method page, select Create index
6. On the Extend Table page, under Table, select the table for which you want to
create an index.
7. On the Create index page, define the columns for the index definition.
a. Click the button.
This opens a dialog box where you can define the columns for the index. You
can see all the columns in the table on the right-hand side of the dialog
window. The columns on the left-hand side of the window belong to the index.
b. Enter the name of the index in the Index name input field.
A name is already suggested. You can change this as required.
c. On the right-hand side of the dialog window, select the column you want to add
to the index.
d. Use the button to add the column to the index.
Change the order of the columns in the index definition as required or remove a
column from the index using the relevant button.
e. Click OK.
1. Start the Launchpad and log in to the One Identity Manager database.
2. Open the Launchpad and select the One Identity Manager Schema Extension
entry. This starts the Schema Extension program.
3. Click Next on the start page.
4. On the Database connection page, check the connection data for the One Identity
Manager database.
5. On the Select method page, select Remove extensions.
6. On the Remove extensions page, select the custom schema extension that you
want to remove.
7. To remove a custom table, select the table in the Table list and enable the Remove
whole table option.
8. To remove custom columns, select the table in the Table list and select the columns
under Columns to remove.
9. Click Next.
10. Confirm the security prompt with Yes.
11. Changes to the schema are displayed on the System modifications page. For more
information, see Adding schema extensions to the database on page 455.
Related topics
l Possible error messages due to custom schema extensions on page 453
Checking Table is not empty Remove all objects from the table
Table empty before you run the schema modific-
ation.
Checking Column is referenced as parent in Remove all table relations from the
referential RI <RelationID> QBMRelation table before you run the
integrity schema modification.
Checking Column is contained in index Before you run the schema modific-
indexes <TableName>.<IndexName> ation, change or delete the index so
that the column is not referenced
anymore.
For more information about working with change labels, see the One Identity Manager
Operational Guide.
After completing the schema extensions, you can access them with One Identity Manager
tools and make further changes.
General recommendations
l Edit the object layer using the One Identity Manager tools. This ensures that the data
generated have the expected format.
l Always edit the object layer in the default language of a One Identity Manager
installation, for example, English - United States [en-US]. For this purpose, set
the login language to English (USA) in the One Identity Manager tools.
l The Designer contains a variety of consistency checks. Run these consistency checks
and apply the repair methods after carrying out a schema extension and after making
changes to table and column definitions. For more information about checking data
consistency, see the One Identity Manager Operational Guide.
The properties include, for example, display names, descriptions, display templates for
tables and columns, value templates, formatting, required field definitions. For more
information, see One Identity Manager schema basics on page 43.
l Use the Designer‘s Schema Editor to edit the table definitions and column definitions.
l Set the table usage types in the Designer. The table's usage type provides the basis
for reports and the selection of tasks for daily maintenance.
l In the Designer, edit the display name and icon for the tables. These properties are
used when you create object definitions for the table.
l In the Designer, define a display pattern to present table entries for instance in the
result list of the One Identity Manager tools or in reports.
NOTE: You do not need to enter a display template for many-to-many tables. For
these tables, the viDB.DLL forms the display template from the foreign keys.
When you extend a schema using the Schema Extension program, you already assign
permissions to permissions groups. You can carry on editing permissions in the Permissions
Editor‘s Designer and also create permissions groups with the User & Permissions Group
Editor. Permissions groups can be linked to application roles. The users are assigned to
application roles and therefore receive the permissions they require. For more information,
see the One Identity Manager Authorization and Authentication Guide.
The data in the user interfaces is represented by means of objects. A generally applicable
object definition without any limiting selection criteria is already created with the Schema
Extension program. You can create other object definition constraints in addition. You
create object definitions in the Designer. For more information, see Object definitions for
the user interface on page 107.
Expand the menu to display the data in the Manager. Use the Designer's User Interface
Editor to create menu items for navigation and result lists. For more information, see
User interface navigation on page 111 and Recommendations for editing menu navigation
on page 114.
Create or extend the forms for editing and displaying in the Manager. For more
information, see Recommendations for editing forms on page 138, Editing user interface
forms on page 139, Forms for custom extensions on page 146, and Working with overview
forms on page 161.
If you want to offer particular tasks for the objects in the Manager, you must create task
definitions in the Designer. For more information, see Task definitions for the user interface
on page 191.
l Create new task definitions if required.
l Task definitions are created for object definitions so that different tasks can be shown
in the user interface depending on the selected objects. If required, create more
object definitions.
l Assign the task definitions to the permissions groups for non role-based and role-
based login.
l If required, assign a program function to the task definition. For more information,
see the One Identity Manager Authorization and Authentication Guide.
For data analysis purposes, you need to create statistics definitions and reports and
incorporate these in the user interface. For more information, see Statistics in One Identity
Manager on page 170 and Reports in One Identity Manager on page 400.
For language-dependent display of texts in the Manager such as column names, comments,
menu items, and form names, translate the texts using the Designer‘s Language Editor. For
more information, see Language-dependent data representation on page 210.
1. In the Designer, select the Base Data > Advanced > Modified SQL category.
2. Select the database object.
3. Modify Remarks.
Property Description
Processing The processing status is used for creating custom configuration packages.
status
Type Type of database object, for example, procedure, function, trigger, index,
view, custom table, custom column.
For more information about creating transport packages, see the One Identity Manager
Operational Guide.
One Identity Manager offers you the option to integrate web services. For example, you can
use web services to write data to applications, which cannot be connection to One Identity
Manager as a default target system.
Data for external applications can be originate from any of the One Identity Manager
schema's tables. They can, for example, be mapped as custom target systems.
Example:
The general data for a telephone system should be found from personnel data in One
Identity Manager. The telephone system is mapped in One Identity Manager as a
custom target system. One extension in the telephone corresponds a user account in
One Identity Manager.
Once a new employee has been added in One Identity Manager, a new extension
should become available in the telephone system. A new user account is added for
each account definition. A web service passes the user account''s main data onto the
telephone system. where a new participant and telephone number is added. The web
service passes this telephone number to One Identity Manager as the return value.
The telephone number should be transferred to the employee's main data.
Proceed as follows
For more information about setting up a custom target system, about account definitions,
IT operating data and setting up a server, see the One Identity Manager Administration
Guide for Connecting to Custom Target Systems.
For more information about setting up scripted provisioning, see the One Identity Manager
Target System Base Module Administration Guide.
Default processes
One Identity Manager supplies default processes for provisioning data from custom target
system to a web service.
To use these processes, the scripts you generated with the Web Service Integration Wizard
must follow the naming convention:
<Customer prefix>_<table>_<Ident_UNSRoot>_<event>.
IMPORTANT: If your target system contains a hyphen (-) in its name, you must remove it
from the script function in the <Ident_UNSRoot> part. Otherwise, error may occur during
script processing.
Some of these processes handle the web service return values.
VI_UnsAccountInGroup_ -
Generic_Del
VI_UnsAccountInGroup_ -
Generic_Add
VI_UNSGroupBInUNSGroupB_ -
Generic_Del
VI_UnsGroupBInUNSGroupB_ -
Generic_Add
(UNSItemB)
VI_UnsGroupHasItem_ -
Generic_Del
VI_UnsGroupHasItem_ -
Generic_Add
VI_UnsAccountHasItem_ -
Generic_Del
VI_UnsAccountHasItem_ -
Generic_Add
To run a script
l Create custom processes and pass the scripts and parameters to the process step.
Related topics
l Mapping processes in One Identity Manager on page 220
To run a script
l Create custom processes and pass the scripts and parameters to the process step.
Related topics
l Mapping processes in One Identity Manager on page 220
1. In the Designer, select the Base Data > General > Web services category.
2. Select the Integrate new web service task.
This start the Web Service Integration Wizard.
3. Click Next on the start page.
4. Enter the access data and general web service properties on the Integrate new
web service page.
Property Description
Web service name Display name of the web service in One Identity
Manager.
.NET namespace for the proxy Unique identifier for the .NET namespace.
code
WSDL file URL URL at which the WSDL.exe for the web service can
be reached.
If the WSDL.exe is not publicly available, it can also
be saved locally.
NOTE: If the web service operator changes the
WSDL file, run the Web Service Integration
Wizard again in order to implement the
changes.
User password and password Password for logging in to the web service.
confirmation
Proxy code generator Path and file name for the proxy code generator.
l If the WCF service type is selected, path to
SvcUtil.exe file.
l If the SOAP service type is selected, path to
WSDL.exe file.
Property Description
Proxy server user User name for logging onto the proxy server.
name
Proxy server Password and password confirmation for logging onto the
password and proxy server.
password confirm-
ation
User-defined Command line for calling the proxy code generator. The
command line command line can extended by another parameter if
required.
Default command:
/nologo /language:VB "/namespace:%Namespace%" "/out:
{0}" %WsdlUrl%
Example:
/nologo /language:VB
"/namespace:EnricoHolidayWebservice" "/out:{0}"
http://kayaposoft.com/enrico/ws/v1.0/index.php?wsdl
Type Description
Direct web service For more information, see Direct web service call on
call page 463.
Generic web service For more information, see Generic web service call on
call page 461.
Property Description
Data table Data table that contains the data to be transferred to the web
service.
Property Description
Mapped Parameter from the defined script properties. Open the menu
from and assign the associated parameters. If necessary, select the
column from the data table which contains the value to be
passed.
Related topics
l Scripts in One Identity Manager on page 342
l Overriding scripts on page 369
1. In the Designer, select the Base Data > General > Web services category.
2. In the List Editor, select the web service.
3. Select the Create web service call task.
This start the Web Service Integration Wizard.
4. Follow the wizard's instructions.
5. Save the changes.
6. Compile the database.
1. In the Designer, select the Base Data > General > Web services category.
2. Select the web service in the List Editor.
3. Select the Edit web service task.
This start the Web Service Integration Wizard.
4. Follow the wizard's instructions.
On the Create proxy code page, you can edit the generated proxy code.
l To test the changes, set Compare with previous version.
5. Save the changes.
6. Compile the database.
One Identity Manager provides an interface corresponding to the System for Cross-domain
Identity Management (SCIM) 2.0. The interface enables the import and export of One
Identity Manager objects by a SCIM client. For example, the interface can be used to:
l Import identity, department, cost center, and location data from an HR system
l Import user account and group data from a cloud system
l Match custom target systems that have a SCIM V2.0 client
l Provision information about identities through a standardized interface for further
processing in third-party systems
The SCIM 2.0 service provider for One Identity Manager is provided as a plugin for the API
Server and you can select it when you install the API Server. Further configuration of the
SCIM plugin itself is not necessary. You can check in the API Server administration portal if
the SCIM plugin was installed and activated successfully. For more information on installing
an API Server, see the One Identity Manager Installation Guide.
Related topics
l SCIM plugin features on page 471
l Authenticating SCIM clients on page 471
l Special features of generating the SCIM schema on page 472
l SCIM plugin requests on page 474
Related topics
l Authenticating SCIM clients on page 471
1. Employee (Person)
2. Active Directory user account (ADSAccount)
3. Employee (role-based) (RoleBasedPerson)
4. Active Directory user account (role-based) (RoleBasedADSAccount)
5. HTTP Header (role-based) (RoleBasedHTTPHeader)
6. HTTP Header (HTTPHeader)
7. OAuth 2.0/OpenID Connect (role-based) (OAuthRoleBased)
Related topics
l Authenticating SCIM clients on page 471
Columns in a table
The foreign key relations of a table are only included in the schema if the reference's target
table is also part of the schema. In this case, a complex property is published with the
foreign key's column name. This complex property has the value, $ref, and displayName
properties.
The complex property is marked in the schema with the "returned" : "request" attribute.
To be able to read this data, the property must be explicitly requested by the SCIM client
using the attributes URL parameter.
Example:
https://<servername>.<domainname>/ApiServer/scim/v2/Locality/0294ce3c-8286-
4641-bc13-9bcd4a2fd714?attributes=cn,City,UID_PersonHead
M:N tables
M:N tables are published under the members complex property in the schema. This also
applies if there are several M:N tables to take into account. This complex property defines
an array of subelements that have the value, type, $ref, and display properties.
The members complex property is marked in the schema with the attribute "returned" :
"request". To be able to read this data, the property must be explicitly requested by the
SCIM client via the URL parameter attributes.
Example:
http://<servername>.<domainname>/ApiServer/scim/v2/UNSGroupB/94bbe614-0a6e-
4659-8fe9-20da94d967c8?attributes=cn,members
If several M:N tables are grouped together, the distinction, from which table the respective
element originates, is made on the basis of the value in the type property. Ensure that the
value in the type property is also passed when writing to the property. The values accepted
as correct are defined in the schema on the respective type subattribute as a list in
canonicalValues.
If the value for type cannot be determined for the SCIM client, it can be left blank and is not
transmitted with the PUT or PATCH request. The SCIM plugin tries to determine the correct
To process filter expressions with relational comparison operators, the user account used
requires the Perform filter functions for SCIM plugin in the API server program
function (ApiServer_SCIM). Exceptions are the equals test (eq) and the presence of a value
(pr). This applies to both filters in the URL parameter filter and when using the Path filter
in patch operations.
If certain users are allowed to handle filter expressions, you can assign the permissions to
the users through permissions groups.
l The QBM_ApiServer_SCIM permissions group is provided for non role-based login.
This group owns the program function. Add the system users to the permissions
groups. Administrative system users automatically obtain these permissions groups.
l The QER_4_ApiServer_SCIM permissions group is provided for role-based login.
This group owns the program function. The permissions group is linked to the Base
roles | API Server SCIM filter application role. Add the employees to the
application role.
The SCIM 2.0 specification provides optional requests for the SCIM service provider base
URL. These requests can contain a filter expression if required. This is mainly used to
search for objects when their endpoint is not known exactly and so the search must be
across endpoints.
The SCIM plugin supports these requests. In the filter, only logical OR operations and the
comparison operators eq, sw, ew as well as co are allowed, which must reference the
Resourcetype metadata.
Example:
https://<servername>.<domainname>/ApiServer/scim/v2?filter=
(meta.Resourcetype eq “Locality”) or (meta.Resourcetype sw “D”)
The result can contain a list of objects of different types, but the number of returned
elements must not exceed 10,000 for load and performance reasons. Otherwise an error
message of type tooMany is returned. The search condition should be refined and the result
should be more restricted.
The SCIM 2.0 specification provides for optional filter, attributes, count, and startIndex
parameters for requests to the endpoints defined by /ResourceTypes. Requests with the ID
of a concrete object (the URL contains the id of the object) can have the
excludedAttributes and attributes parameters. The SCIM plugin supports these
parameters.
Endpoint requests return a list of all elements (or all elements matching the filter). This
allows the SCIM client to initiate index-based paging by specifying the desired number of
records per page ( count and startIndex parameters).
The tasks queued in the DBQueue are the result of triggering, modifications to
configuration parameters (for example, changes to a configuration parameter concerning
inheritance) or running scheduled tasks. The DBQueue Processor processes tasks in the
DBQueue. The DBQueue Processor uses several slots for running tasks in parallel. Internal
tasks are processed by the Database Agent Service. Ensure that the Database Agent
Service is installed and configured.
The DBQueue Processor default configuration settings are configured for normal operation
and do not normally need to be modified.
If several databases are operating in a managed instance in the Azure SQL Database, you
can fix the number of slots. In the Designer, adjust the following configuration parameters.
l QBM | DBServerAgent | CountSlotAgents: Exact number of slots. If the
configuration parameter is set, the given number of slots are always set up. There is
no internal calculation of the number of slots based on the hardware configuration.
Changing the server's configuration has no effect. The value 15 is recommended.
NOTE: This configuration parameter is not recommended for implementing a
database on an SQL Server. For implementing a database on an SQL Server, it is
standard practice to use the hardware configuration to determine the slots.
The configuration settings are reduced for test environments and development
environments because several databases may be located on a server. If it is
necessary to change the settings for test environments or development environments
for reasons of performance, you must modify the following configuration parameter
settings in the Designer.
l QBM | DBQueue | CountSlotsMax: Maximum number of slots to be used.
Use this configuration parameter to reduce the number of slots if required. Values
lower than 5 are not permitted.
Exception: Enter a value of 0 for using the maximum number of slots available based
on the hardware configuration.
l QBM | DBQueue | KeepAlive: Maximum runtime of the central dispatcher. Tasks
on slots currently in use are still processed when the timeout expires. Then the slot
are stopped and the central dispatcher exits.
The lowest permitted value for runtime is 5 minutes; the maximum permitted value
is 720 minutes.
Related topics
l Changing the database staging level on page 37
Configuration Meaning
parameter
QBM | DBQueue | The configuration parameter species how the length of the DBQueue
DefaultRuntime Processor run. The default value is 90 seconds.
QBM | DBQueue | The configuration parameter defines the lower limit for modifications
ChangeLimitMin (insert, change, or delete) within a single operation. The default
value is 3000.
QBM | DBQueue | The configuration parameter defines the upper limit for modifications
ChangeLimitMax (insert, change, or delete) within a single operation. The default
value is 50000.
Some DBQueue Processor procedures are marked for bulk processing to reduce the total
time required for processing DBQueue tasks. If a lot of entries are marked for bulk
processing in the DBQueue, the DBQueue Processor switches from single to bulk
processing.
There is a mechanism implemented that is used to decide whether switching to bulk
processing as opposed to single processing would result in time savings. To do this, 25
single task processes are run and the processing time is recorded. All other entries for the
task are processed in bulk and the minimum and maximum load time required for
advantageous bulk processing is defined. A self optimizing calculation procedure updates
the load times. Use of this method means that the DBQueue Processor must first stabilize,
especially after an initial schema installation or after system modifications such as memory
expansion in the database server.
You can use the QBM | DBQueue | DefaultRuntime configuration parameter to specify
the length of the DBQueue Processor run. The default value is 90 seconds. This
corresponds to the time period that achieves the best load for the calculation procedure.
To prevent overloading when there is large amount of data, you can define limits for the
result set. Control is realized using the QBM | DBQueue | ChangeLimitMin and QBM |
DBQueue | ChangeLimitMax configuration parameters.
NOTE: If the Database Agent Service is not working, a message is displayed in the status
bar in all the administration tools. To see this message, users must have at least the
configuration user access level.
Related topics
l Controlling processing of DBQueue Processor tasks on page 481
l Processing DBQueue Processor tasks on page 482
l How the central dispatcher communicates with individual slots on page 484
l DatabaseAgentPlugin on page 315
OrgRoot A
OrgRoot B
ADSAccountInADSGroup X
ADSAccountInADSGroup Y
ADSAccountInADSGroup Z
001 OrgRoot A
001 OrgRoot B
002 ADSAccountInADSGroup X
002 ADSAccountInADSGroup Y
002 ADSAccountInADSGroup Z
Each process processes tasks queued for its own slot in the QBMDBQueueCurrent table.
Subsequent tasks resulting from processing are queued in the DialogDBQueue table.
If a process has processed its tasks and no other tasks are pending, the slot number in the
QBMDBQueueCurrent table is set to 0 by the process itself. The entry initially remains in the
QBMDBQueueCurrent table but is no longer taken into account (because slot 0 is not active).
All entries with the slot number 0 are deleted from the QBMDBQueueCurrent table at
regular intervals.
Slot Meaning
number
To prevent blockages when processing DBQueue tasks by lengthy actions, for example,
synchronization, a DBQueue buffer (QBMDBQueuePond table) is used. Synchronization initially
writes DBQueue Processor tasks to the QBMDBQueuePond table. After synchronization is
complete, the task are moved from the QBMDBQueuePond table to the DialogDBQueue table.
If a lengthy task does not queue anymore entries in the DBQueue tasks because, for
example, synchronization did not end correctly, the remaining entries in the
QBMDBQueuePond table are moved to the .DialogDBQueue table. The time period for this is
Status Meaning
2 Ready for operation. The process has started but the currently no tasks exist.
This is the state in which tasks can be queued.
3 Transfer to the QBMDBQueueCurrent table. The process has received tasks for
processing and needs to begin.
-1 The process was prompted to quit. Stop behavior if the process timed out or
errors occurred.
Once the maximum runtime has expired, the tasks of slots in the QBMDBQueueCurrent table
currently in use are still processed. No new tasks are added from the QBMDBQueue table. In
the QBMDBQueueSlot table, all slots with a slot status 2 are set to the -1 status. This prompts
the processes to finish and stop themselves. The central dispatcher checks whether all
processes have completed.
Related topics
l Example of communication during processing on page 485
l DBQueue Processor configuration for test, development, or productive environments
on page 477
001 0
001 1
l The process is ready for operation. Preparations, for example, for temporary tables,
are complete. The slot status is regularly tested.
001 2
l The central dispatcher distributes tasks. The central dispatcher checks slots for
readiness and enters the task from DialogDBQueue table in the QBMDBQueueCurrent
table with the slot number. The status of each slots is updated once the
QBMDBQueueCurrent table has taken over.
001 3 OrgRoot
l The process recognizes a task on the basis of the status, starts processing and
updates its slots' status.
001 4 OrgRoot
l The process has completed the processing and sets slot number in the
DialogDBQueueCurrent table to 0. The process changes the status of its slots to
operational.
001 2
One Identity Manager Service is configured using a configuration file. The configuration
file has to be in the same directory as the viNetworkService.exe. Two configuration files
are supported:
Jobservice.cfg
The file Jobservice.cfg is an XML configuration file in One Identity Manager’s own
simplified format. The advantage of this file is that run-time loading is supported. There is a
configuration section in the file for each of the different modules in the One Identity
Manager Service.
NOTE: Entries are case-sensitive. Both the sections and the names of the values must be
written in lower case.
The root in the XML file is always called configuration. Each configuration file module and
its values are defined in a category section respectively. At the moment the program only
supports the System.Configuration.NameValueSectionHandler section type.
<configuration>
<category name="serviceconfiguration">
<value
name="jobprovider">VI.JobService.MSSqlJobProvider,jobservice</value>
<value name="HttpPort">1180</value>
<value name="logwriter">VI.JobService.FileLogWriter,jobservice</value>
</category>
</configuration>
Related topics
l viNetworkService.exe.config on page 487
viNetworkService.exe.config
The viNetworkService.exe.config file is the default configuration file for .NET exes and has
the specified format. There is a configuration section in the file for each of the different
modules in the One Identity Manager Service.
Example
Related topics
l Jobservice.cfg on page 486
About us
One Identity solutions eliminate the complexities and time-consuming processes often
required to govern identities, manage privileged accounts and control access. Our solutions
enhance business agility while addressing your IAM challenges with on-premises, cloud and
hybrid environments.
For sales and other inquiries, such as licensing, support, and renewals, visit
https://www.oneidentity.com/company/contact-us.aspx.
Technical support is available to One Identity customers with a valid maintenance contract
and customers who have trial versions. You can access the Support Portal at
https://support.oneidentity.com/.
The Support Portal provides self-help tools you can use to solve problems quickly and
independently, 24 hours a day, 365 days a year. The Support Portal enables you to:
l Submit and manage a Service Request
l View Knowledge Base articles
l Sign up for product notifications
l Download software and technical documentation
l View how-to videos at www.YouTube.com/OneIdentity
l Engage in community discussions
l Chat with support engineers online
l View services to assist you with your product
# column
H tachometer 179
thermometer 179
HTTP authentication module
traffic light 179
BasicHttpAuthentication 310
input value
SessionHttpAuthentication 310
define 131
WindowsHttpAuthentication 310
InstallState.config 265
HTTP Server 302
IsChanged 350
HTTPJobDestination 301
IsDeleted 350
ChildPort 301
IsLoaded 350
provider ID 301
M task 112
task category 112
Machine role 265, 268
unique 127
many-to-many table 67
variable definition 134, 136
MarkForDeletion 21
method definition
menu item
behavior 193
assign application 123
deactivate 192-193
assign permissions group 124
display text 193
assign user interface form 145
edit 191
condition 124, 127
enabled for 193
configuration switch 124
icon 193
copy 115, 121
name 193
create 115, 120, 122
object 193
data dependent 112, 127
object definition 191
data source 127
permission 191
database query 127
permissions group 191, 193
deactivate 124
program function 191, 193
diagram type 176, 179
script 193
display text 124
test 376
edit 115
S UID 445
unicode 445
ScheduleCommandPlugin 312
x-column 438
command 312
create index 452
interval 312
create table 438
LogSeverity 312
custom 437
OutputToLog 312
database view
StartCommand 312
column 444
StopCommand 312
create 447, 449
Schema Editor
DDL statements 455
schema overview 44
extend table 440
schema extension
add 455
X
XDateInserted 48
XDateSubItem 48
XDateUpdated 48
XIsInEffect 48
XMarkedForDeletion 21, 48
XObjectKey 48
XOrigin 48
XTouched 48
XUserInserted 48
XUserUpdated 48