Skip to main content
Version: 5.6

Creating Dynamic Instances

warning

Caution: A dynamic instance is a container for runtime instances that are created via a database table in an external database.

Licensing Note

For more information on license assignment and other Enterprise+ features, see License Levels.

Before using dynamic instances, configure the Dynamic Instances API under Settings.

Create a Dynamic Instance

If you want to generate connections at runtime, select the “Create Dynamic Instance” menu item under “Create Instance” in the “Connections” snap-in.

In the dialog, assign a name to the dynamic instance, select the desired template, and define default values for the template variables.

The dynamic instance itself serves as a container. The actual runtime instances are created later via the API table and grouped under this dynamic instance in Diagnostics, as if in a folder.

Dialog for creating a dynamic instance with template selection, target folder, and default values for template variables

Confirm the dialog by clicking “Create” and publish the dynamic instance. Afterward, a new table is created in the api schema of the database configured under Settings > Dynamic Instances.

The table name is generated using the api schema prefix and contains not only the name of the dynamic instance but also the full path of the dynamic instance. You must not change this name.

note

Note: We recommend creating a user who has access exclusively to the tables in the api schema. For this purpose, you can find the preinstalled role apiRole in the database configured under Settings > Dynamic Instances, under Security > Roles.

Creating Connections via the API Table

Within this table, you will find the template variables as well as the fields [ID], [OpcR_Changed], and [InstanceName].

To create a new instance at runtime, enter the values for the template variables in a row and also assign a name via [InstanceName]. If you do not specify a value for a variable, the OPC Router uses the default value from the “Create Dynamic Instance” dialog.

For each completed row, a runtime instance is created within the dynamic instance.

note

Note: A PlugIn_Id is always required when a plug-in itself is dynamically integrated into a trigger or transfer object as a template variable within a template. The plug-in IDs of your plug-ins are unique and can be found in the api.View_PlugInInstances view of the database configured under Settings > Dynamic Instances.

Finding the PlugIn ID in the api.View_PlugInInstances

If a PlugIn_Id is required for the template, enter it in the API table of the dynamic instance.

Completed API table of a dynamic instance with InstanceName, template variables, and PlugIn_Id

The [ID] and [OpcR_Changed] columns are automatically populated by the OPC Router. The [InstanceName] value must be unique and is used as the display name at runtime. Additionally, you can use backslashes in [InstanceName] to create a folder structure within the container.

The value [OpcR_Changed] indicates when the connection was last modified.

Time Specifications in Dynamic Instances

The following time offsets apply to time values, such as the cycle of a time trigger:

  • 1ms for milliseconds
  • 1s for seconds
  • 1m for minutes
  • 1h for hours
  • 1d for days

There must be no space between the number and the unit.

warning

Caution: The generated runtime instances are active immediately and do not need to be published separately.

In some cases, you may need to reload the view using the “Refresh” button so that all dynamic instances are displayed.

View of dynamic instances with container, runtime instances, and diagnostic view