Database Groups Specification
Database Groups Specification
When using the DPE Writer filter on one or more output graphs, the job will create new entries in the DigaSystem database. With a Database Groups Specification, you can define that group entries are to be created, and that some or all of the created database entries are put into the new groups. A typical use case is a job, which creates several database entries via several output graphs, and all these entries shall be grouped together in the database.
JSON Structure
"databaseGroups": {
"dpeUrl": "...",
"userName": "...",
"password": "...",
"newGroupOnOutputSwitch": true/false,
"deferGroupCreation": true/false,
"group": [
{
...
},
{
...
}
]
}
Field | Description |
---|---|
dpeUrl | Base URL of the DPE installation. |
newGroupOnOutputSwitch | If true , a new set of groups is created whenever an "output switch" (see Output Switch Specification) occurs, i.e. whenever each DPE Writer Filter is going to create a new database entry. The parameter is optional, the default is false . |
deferGroupCreation | If true , a group is only created when the first database entry for this group has been created. If false , the group is created as soon as possible, and may remain empty, when nothing is actually recorded afterwards. The parameter is optional, the default is true . |
userName | User name and password to logon to DPE. This user must have the right to create and write an entry to the specified DigaSystem table. If these fields are both missing, the ROAD Service will fill it with defaults defined by the DpeDefaultUser and DpeDefaultPassword variables (see paragraph "Special Variables" in api/variables). |
password | |
group | Array of group specifications. |
Group Specification
For each group to be created, one group specifier must be included.
JSON Structure
{
"dbServer": "...",
"dbTable": "...",
"id": "...",
"outputGraph": [
"...",
"...",
...
],
"metadata": {
"title": "...",
"class": "...",
"story": 2/3,
...
}
}
Field | Description |
---|---|
dbServer | Name of the database server in the DigaSystem installation. |
dbTable | Name of the table on the server, where the new group will be created. |
id | An optional id of this group. Can be used to update the group's metadata with transitions while the job is running. |
outputGraph | An array of output graph names, whose new database entries will be added to the group. The parameter is optional. If it is missing (or the array is empty), the output of all graphs will go into the group. |
metadata | A list of field/value pairs which are sent as metadata for the new group. The field names must match the field names as used by the DPE Content Service. In principle, the metadata field is optional. However, it is strongly recommended to supply at least the "title" and "class" fields, because otherwise, the group will be hard to find and use afterwards. The usage of placeholders is supported for all metadata fields (e.g. A special case is the field |
Notes:
- Output graphs, which don't end in a DPE Writer filter (and therefore don't create database entries), are effectively ignored. Therefore, you can leave out the "outputGraph" array, if you want to put all database entries into the group even if you you have output graphs which e.g. output to a sound device.
- You must make sure, that "dbServer"/"dbTable" of the group matches the "dbServer"/"dbTable" settings in the DPE Writer Filters of the group's output graphs. Otherwise, the group is created but it won't receive the database entries (because grouping of entries from different tables is not supported in the DigaSystem database).
- Any errors related to the database groups feature result in error messages in the ROAD Worker's log, but won't abort the job. These errors include failures in calls to DPE services, or table mismatches mentioned in the previous point.