Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

The workflow template is the area where the workflow is designed. The workflow template outline one or several workflows.

...

  • Click the New Configuration button in the upper left part of the Desktop window, and then select  Workflow from the menu. Select a Workflow Type : Batch, Realtime, or Task, and then Create.

  • Drag agents from the agents agent pane onto the template.

  • Double-click an agent on the agent pane.

  • Select an agent from the Agents menu.

...

Resting the cursor over an agent in the template , displays parts of its configuration in a tool-tip text.

An agent tool - tip of a workflow configuration

...

Some agent configuration dialogs are optionally equipped with additional tabs holding configurations for different common services. This section describes the general services that are available in Image Added. The user guide for each agent, will in turn describe what services it uses.



Anchor
Thread_Buffer_Tab
Thread_Buffer_Tab
Thread Buffer Tab


By default, a batch workflow utilizes one active thread at a time. By configuring a buffer storage for an agent, it will be possible for yet another thread to be created, this is also called multithreading. One thread will be populating the buffer, and another pulling it for data. Adding yet another buffer for another agent will add yet another thread, and so on.

...

ItemDescription

Use Buffer

Enables multithreading. For further information, see 3.1.2 Multithreading.

Print Statistics

Statistics to be used when trying out where to use the Thread Buffer in the workflow. After each batch execution, the full and empty percentage of the threads utilizing the buffer is logged in the event area in at the bottom of the Workflow Monitor.

For information on how to interpret the results, see the section below, Analyzing Thread Buffer Statistics.


A UDR may be queued up while another thread is busy processing a reference to it. Workflows routing the same UDR on several routes and involving further processing of its data , must consequently be reconfigured to avoid this. A simple workaround is to route the UDR to an Analysis agent for cloning before routing it to the other agents (one unique clone per route)unique clone per route). See discussion under 9.6.4 Analysis Agent Assignment and Cloning about the potential problems with multiple agents processing the same UDR in parallel.

Analyzing Thread Buffer Statistics

...

Info
titleExample - A thread buffer printout


Code Block
languagetext
themeEclipse
11:03:04: Buffer usage statistics [5] for 2089 turnover(s) of UDRs: 
Incoming queue: Available 54%. Full 46%. 
Outgoing queue: Available 59%. Empty 41%.


  • The number within brackets, which is [5] in the example, is the batch counter id.

  • Turnover is the total number of UDRs that have passed through the buffer.

  • Available indicates how often (of the total turnover time) the buffer has been available for the incoming queue to forward a UDR and for the outgoing queue to fetch a UDR.

  • Incoming queue:

    Full is logged for the incoming thread and indicates how often (of the total turnover time) the buffer has been full and an incoming UDR had to wait for available buffer space.

    In the example, Full indicates that for 46% of the incoming UDRs, there was a delay because of a full buffer.

  • Outgoing queue:

    Empty is logged for the outgoing thread and indicates how often (of the total turnover time) an outgoing queue had to wait for data because of an empty buffer.

    In the example, Empty indicates that for 41% of the attempts to fetch a UDR, the buffer was empty.

...

See the section below, Thread Buffer Tab, for how to configure the thread buffer.

Anchor
Filename_Sequence_Tab
Filename_Sequence_Tab
Filename Sequence Tab

For batch collection agents such as Disk, FTP, and SFTP, there is a service available, found in the agents' configuration configuration dialog in the Filename Sequence tab. The filename sequence is used when you want to collect files that contains contain a sequence number in the file name. The sequence number is expected to be found on a specific position in the file name and has a fixed or dynamic size.

Note
titleNote!

When collecting from several sources, the Filename Sequence service is applied on to the data that arrives from all the sources, as though all the information arrives from a single source. This means that the Filename Sequence number count is not specific to any of the sources.

...


ItemDescription

Enable Filename Sequence

Determines if the service will be used or not.

Start Position

The offset in the file name where the sequence number starts. The first character has offset 0 (zero). In the example file name TTFILE0001 the start position is 6.

Length

The length of the sequence number, if the sequence number has a static length (padded with leading zeros). If the sequence number length is dynamic this value is set to 0 (zero).


Info
titleExample

TTFILE0001-TTFILE9999 Length: 4

TTFILE1-TTFILE9999 Length: 0


Wrap On

If the Filename Sequence service is enabled, a value must be specified on which the sequence will wrap. This number should be larger than or equal to Next Sequence Number and it must be larger than Wrap To.

Wrap To

Value The value that the sequence will wrap to. This value must be less than the Wrap On value and less than or equal to Next Sequence Number.

Warn On Out Of Sequence

If enabled, the agent will log an informative message to the System Log when detecting an out-of-sequence file, before deactivating. The collection agent will not continue to collect any files upon the next activation, until either the missing file is found, or the Next Sequence Number is set to a valid value.


Anchor
sort_order_tab
sort_order_tab
Sort Order Tab

The Sort Order service is available on some batch collection agents and is used to sort matched files before collection.

The sort pattern is expected to occur on a specific position in the file name or to be located using a regular expression.  The sort pattern is expected to occur on a specific position in the file name or to be located using a regular expression. However, if the sort pattern cannot be applied, the workflow will abort, except for files with files with a name which is shorter than Position plus Length. For information on this exception, see the description below for Position.

Note
titleNote!

Regular expressions according to Java syntax apply. For further information see  http://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html.

Sort Order tab


3. Value Patterns with values other than “0” are not supported at the moment. 
ItemDescription

Enable Sort Order

Determines if the service will be utilized or not. If enabled, the sort order that you select also applies to subfolders if you have selected the Include Subfolders check box for the FTP, SFTP, and Disk collection agents. For further information, see the section for the relevant agent in 9. Appendix 2 - Batch and Real-Time Workflow Agents.

Modification Time

Select to enable file collection order according to the modification time stamp. If Sort Direction is set to Ascending , the oldest files are collected first. The time resolution depends on the server and protocol.

Note
titleNote!

Most FTP and SCP servers follow the Unix modification date format for file time stamps. The modification date resolution is one minute for files that are time stamped during the last six months. After six months a resolution of one day is applied.


Value Pattern

The method used to locate the item (part of the file name) to be the target for the sorting. This could be either Position that indicates that the item is located at a fixed position in the file name or Regular Expression indicating that the item will be fetched using a regular expression.

Position

If Position is enabled, the files are sorted based on the part of the filename indicated by Position plus Length. The Start Position value states the offset in the file name where the sorting item starts. The first character has offset 0 (zero).

The Length value states the length of the sorting item (part of the file name) if it has a static length. For sorting items with a dynamic length, use the value zero (0) will be used.

Files with a name which is
Note
titleNote!

Files with a name that is shorter than Position plus Length are ignored.

However, when Include Subfolders option is selected, a folder name shorter than Position plus Length are ignored will cause the workflow to abort.


Regular Expression

If enabled, the sorting item is extracted from the file name using the regular expression. If the file name does not end with a digit, this is the correct option.
 


Info
titleExample - Sorting using regular expression

\d+ locates the first digit sequence in a file name.

Sort the following files in an alphabetical or numerical order:

Code Block
languagetext
themeEclipse
 FILEA_1354.log
 FILEB_23.log
 FILEC_1254.log,
Use \d+ in the regular expression. Depending on the selected Sort Direction, the files are sorted in the following

order:

Code Block
languagetext
themeEclipse
FILEC_1254.log FILEA_1354.log
 FILEB_23.log

Sort Type

Type of sorting. Could be either Alphanumeric or Numeric .

Ignore Case

If enabled, the sorting is not case sensitive.

Sort Direction

Indicates if the sort order will be Ascending or Descending .

Note
titleSFTP Sorting Limitations

Currently, there are several limitations when using the sorting functionality for the SFTP agents and the Include Subfolders option is selected: 

1. Sorting works when the following options are selected: the Modification Time and Value pattern when the Start Position and Length values are set to “0” with the Sort Type set to “Alphanumeric". 

2. Regular Expression sorting is not supported at the moment.


 FILEC_1254.log,

Use \d+ in the regular expression. Depending on the selected Sort Direction, the files are sorted in the following order:

Code Block
languagetext
themeEclipse
FILEC_1254.log
FILEA_1354.log
FILEB_23.log



Sort Type

Type of sorting. Could be either Alphanumeric or Numeric .

Ignore Case

If enabled, the sorting is not case-sensitive.

Sort Direction

Indicates if the sort order will be Ascending or Descending .


Note
titleNote!

When Include Subfolders option is selected, and the same sort order criteria are applied to subfolder names.


Anchor
Filename_Template_Tab
Filename_Template_Tab
Filename Template Tab

...

Since this service includes a selection of MIM resources from available agents in the workflow, it is advised to add all agents to the workflow , and to assign route and agent names, before the filename template configuration is completed.

Note
titleNote!

Filename Template also provides you with the so-called Dynamic Directory support. This means that you can change the output directory during the execution of a workflow, in which input data is bytearray. See Input Data in the configuration Target tab of your relevant forwarding agent.

By creating directories and subdirectories, with names which that consist of MIM values, and by adding appropriate APL code, you configure the output directory to sort the out data into directories that are created during the workflow execution. For further information, see the section below, Defining a MIM Resource of FNTUDR Type.

...

The list contains MIM resources or user-defined values that will create the file name. The order of the items in the list controls the order in the file name.

...

The table containing MIM resources, user-defined values, separators, and/or directory delimiters will create the filepath file path or filename. The order of the items in the table define defines the filepath file path or filename.

Since the service utilizes a selection of MIM resources from available agents in the workflow, it is advised to add all agents to the workflow before the filename template configuration is completed.

...

ItemDescription

MIM Defined

Determines if the Value will be selected from a MIM resource.

The MIM resource of type FNTUDR will be represented in the template table in the same way as other MIMs, however, will have an other another appearance when the filename or filepath file path is presented. A MIM FNTUDR value can represent a sub-path with delimiters or a part of a filename or a directory. For further information about how to use the FNTUDR in filename templates, see the section below, Defining a MIM Resource of FNTUDR Type.

User Defined

Determines if the Value will be a user-defined constant entered in the text field.

Directory Delimiter

Determines if the Value will be a directory delimiter indicating that the file sub-path will have a directory delimiter at that specified position. You cannot have two directory delimiters directly after each other, or a delimiter in the beginning or end of a filename template.

The MIM resource of the special UDR type FNTUDR can include, begin or/and end with directory delimiters this must be noted when adding delimiters in the template. For further information about using the FNTUDR in filename templates, see the section below, Defining a MIM Resource of FNTUDR Type.

Size

Number of allocated characters in the file name for the selected MIM resource (or user-defined constant). If the actual value is smaller than this number, the remaining space will be padded with the chosen padding character. If left empty, the number of characters allocated in the file name will be equal to the MIM value or the constant.

Padding

Character to pad remaining space with if Size is set. If Size is not set, this value is ignored.

Alignment

Left or right alignment within the allocated size. If Size is not set, this value is ignored.

Separator

Separating character characters to add to the file name after the MIM value or constant.

Date Format

Adds a timestamp to the file name in the selected way. For further information about the format, see the Date and Time Format Codes in 1.2 Administration and Management.

...

Info
titleExample - Configuring a Filename Template tab

In this example, there is a workflow containing a Disk collection agent named DI1 and two Disk forwarding agents named DO1 and DO2. The desired output file names from both forwarding agents are as follows:

A-B-C.DAT Where A is the name of the Disk forwarding agent, B is the name of the currently collected file, C is the number of UDRs in the outgoing file and .DAT is a customer suffix. It is desired that the number of UDRs in the files takes up six characters and is right aligned.

The following file name template configuration applies to the first agent:

The following file name template configuration applies to the second agent:

If two files FILE1 and FILE2 are processed where 100 UDRs goes go to DO1 and 250 goes to DO2 from each file, the resulting file names would be:

Code Block
languagetext
themeEclipse
DO1-FILE1-000100.DAT
DO2-FILE1-000250.DAT
DO1-FILE2-000100.DAT
DO2-FILE2-000250.DAT


...

A MIM resource with a value of the FNTUDR type included in the filename template is treated somewhat differently than other MIM resources. A An FNTUDR value is a text string that can contain delimiters. The delimiters in the FNTUDR value will be replaced by directory delimiters when determining the target file path. The FNTUDR is defined in the FNT folder.

Info
titleExample - How to create an FNTUDR value to publishe as a MIM resource

The following example shows a set of APL code codes that creates a an FNTUDR value and publishes it as a MIM resource. To use the FNTUDR value in a filename template, the MIM resource must be added in to the filename template configuration.

Code Block
languagetext
themeEclipse
import ultra.FNT;

    mimPublish( global, "FNTUDR Value" , any );

consume {

    FNTUDR fntudr = udrCreate(FNTUDR);

    fntAddString(fntudr, "dir");
    fntAddString(fntudr, "1");
    fntAddDirDelimiter(fntudr);
    fntAddString(fntudr, "dir2");
    fntAddDirDelimiter(fntudr);
    fntAddString(fntudr, "partOfFileName");

    mimSet ("FNTUDR Value", fntudr);

    udrRoute(input);

}

The following filename template configuration utilizes the FNTUDR published by the APL code.

The resulting output file in the previous example will be saved in a file with the following sub-path from the root directory.

Code Block
languagetext
themeEclipse
dir0/dir1/dir2/partOfFileName20070101_1

The part dir1/dir2/partOfFileName derives from the FNTUDR Value.

...

In the workflow configuration, zoom in or out of the workflow illustration by modifying the zoom percentage number that you find on the tool bartoolbar. The default value is 100(%). To change the zoom value click the increase or decrease icons. Clicking the button between these icons will reset the zoom level to the default value. Changing the view scale does not affect the configuration.

...

ItemDescription

Route Style

Sets the style of the routes in the workflow. Route style can also be changed for one specific route, not affecting the entire workflow. This is done by right-clicking the route in the workflow and selecting Route Styles . The default route style is Bezier .

Note
titleNote!

In a real-time workflow, a fourth kind of routing type appears by default when a response is returned to an agent that sent out a request. The route is shown as a dot-dashed line.


Grid Style

Determines how the grid should be displayed; Invisible , Dot or Line. Invisible is the default grid style.

Grid Size

With this slider, you can change the grid density. A large number will increase the distance between agents.

Show All Route Types

The route type, asynchronous or synchronous, is indicated with a small bold A or S for all routes where the type has been configured explicitly, see the section above, Right-Click Menu for Routes. However, if you want to display the route type for routes with the default configuration as well, you can select this option.

Note
titleNote!

This option is only visible when you are in a real-time workflow.



Scroll ignore
scroll-viewportfalse
scroll-pdftrue
scroll-officefalse
scroll-chmtrue
scroll-docbooktrue
scroll-eclipsehelptrue
scroll-epubtrue
scroll-htmlfalse


Next: