IDP Connector

Integrate ProcessMaker IDP into your business Processes.

What is the IDP Connector?

IDP connector integrates ProcessMaker IDP into ProcessMaker Platform. ProcessMaker IDP is ProcessMaker's intelligent document processing (IDP) solution. Remember before working correctly with IDP Connectors, your administrator must configure IDP Settings.

Permissions

Your user account or group membership must have the following permissions to configure an IDP connector to the Process model unless your user account has the Make this user a Super Admin setting selected:

  • Processes: Edit Processes

  • Processes: View Processes

See the Process permissions or ask your Administrator for assistance.

Add an IDP Connector to the Process Model

Add an IDP connector from one of the following locations in Process Modeler:

  • Object menu: The Object panel is to the left of the Process Modeler canvas. This menu contains Process model objects and PM Blocks which may be added to the Process model.

  • Objects bar: The Objects bar is at the bottom of the Process Modeler canvas. This bar contains pinned Process model objects which are easily accessible to add to the Process model.

Follow these steps to add an IDP connector from the Explorer panel to the Process model:

  1. Locate the IDP object category from one of the following locations in the Explorer panel:

    • Pinned Objects: The IDP object category displays from the Pinned Objects section when it is pinned. This element type is not pinned by default.

    • Object Category: The IDP object category displays from the Object Category section when it is not pinned.

  2. Its icon displays adjacent to the mouse icon to indicate this connector type may be placed into the Process model.

Adjust the location of the connector

After the connector is placed into the Process model, you may adjust its location in the following ways:

Note: Moving an IDP connector has the following limitations in regards to the following Process model elements:

  • Pool element: If the connector is inside of a Pool element, it cannot be moved outside of the Pool element. If you attempt to do so, Process Modeler places the connector inside the Pool element closest to where you attempt to move it.

  • Lane element: If the connector is inside of a Lane element, it can be moved to another Lane element in the same Pool element. However, the connector cannot be moved outside of the Pool element.

Add boundary events

After adding the IDP connector, consider adding the following Boundary-type Process model elements to design business solutions when your best-case scenarios don't happen:

Settings

The IDP connector has the following panels that contain settings:

Configuration Panel

Edit the Connector Name

A connector name is a human-readable reference for a Process model control. Process Modeler automatically assigns the name of a Process model connector with its connector type. However, a connector's name can be changed.

Follow these steps to edit the name for an IDP connector:

  1. Select the IDP connector from the Process model.

Enter the Request Variable Containing the File(s) for Processing

During a Request, an IDP connector references a Request variable that stores the documents for processing. This Request variable may be linked to a File Upload control, where the documents were uploaded during a Task.

Follow these steps to enter the name of the Request variable that stores the documents to be processed by this IDP connector:

  1. In the Variable Name setting, enter the Request variable name that stores the documents for processing without using mustache syntax, then press Enter.

Enter the Document Type to Process

Select or enter the document type the IDP connector uses to process the documents. This setting does not refer to a file type, such as PDF or DOCX. Instead, this setting refers to the DOCUMENT_TYPE domain in ProcessMaker IDP that has been previously trained to process documents in your Dossier. Note that this setting requires the value inDOCUMENT_TYPE Domain's Name setting, not its Pretty Name setting value.

Where do I find DOCUMENT_TYPE in ProcessMaker IDP?

Determine Which Document Type to Use

If necessary, log on to your ProcessMaker IDP instance to determine which Domain document type to use to process the document(s) for this IDP connector. Note that ProcessMaker IDP Administrator permissions are required to do this.

Follow these steps to determine which Domain in ProcessMaker IDP is used to train the documents in your Dossier:

  1. Log on to ProcessMaker IDP. If you need assistance logging on, contact your ProcessMaker IDP Administrator for assistance.

  2. The Domains page displays.

  3. Locate the Document_Type domain, click its options menu, and then select the Edit option.

  4. The Edit Domain page displays for the Document_Type Domain.

  5. Click the Enum values option from the left-side pane. The Enum values for Domain page displays the enumeration values for the Document_Type Domain.

  6. Browse the list of values for the Document_Type Domain, and then locate the Document_Type Domain value that this IDP connector uses to process documents.

  7. Click the options menu for your document type, and then select the Edit option.

  8. Make note of the Name value for your document type. Use this value for the IDP connector's Document Type setting. An example is highlight below. Do not use the Pretty Name setting value for your document type.

Follow these steps to select a document type:

  1. Do one of the following:

    • Select the Use Request Variable option, and enter a Request variable that contains a reference to the document type. Reference this Request variable without using mustache syntax.

    • Ensure that the Use Request Variable setting is not selected, then choose a document type from the drop-down list. The name of the document type must already exist in ProcessMaker IDP. This setting does not create a new file type. For more information, see IDP Settings.

Select a destination folder for the processed documents

Select the folder where ProcessMaker IDP should store the processed documents. Follow these steps to configure a destination folder:

  1. Do one of the following:

    • Select the Use Request Variable option, and enter a Request variable that contains a reference to the destination folder in IDP where to upload the file. Otherwise, if the folder does not exist, it creates a new one in the IDP server. Reference this Request variable without using mustache syntax.

    • Ensure that the Use Request Variable setting is not selected, then choose a destination folder from the drop-down list. These folders already exist in ProcessMaker IDP and are configured in the destination folder settings for IDP.

Loop Characteristics Panel Settings

Specify Characteristics to Perform Multiple Instances of the Connector

Use the Loop Characteristics panel settings to specify how to perform multiple instances of this connector. The following loop modes are available for this connector:

  • No Loop Mode: Select the No Loop Mode option to perform this connector's function only once.

  • Loop: Select the Loop option to sequentially repeat this connector's function multiple times until an exit condition is True. This is useful when a function should be performed multiple times with the same set of data, such as, processing a credit card payment. This loop mode has the following characteristics:

    • The connector's function is repeated until the exit condition is True or the maximum iterations limit is reached.

    • At any given time, only one instance of the connector is active. The subsequent instance does not begin until the current instance completes.

    • The same exit condition evaluates at the end of each instance; however, value(s) of the Request variable(s) used in the exit condition can change during an instance resulting in the exit condition to eventually evaluate as True.

    • If any one instance of that function does not complete, workflow pauses.

    • All active instances are terminated if an interrupting boundary-type event element triggers.

    • ProcessMaker IDP does not allow multiple documents of the same name in the one folder. Therefore, an IDP connector cannot send more than one copy of a document to a folder while in a loop mode. To address this issue, use a different IDP connector to process the same document to a different ProcessMaker IDP folder.

  • Multi-instance (Parallel): Select the Multi-instance (Parallel) option to perform this connector's Task multiple times in parallel a fixed number of times. This is useful when performing any action in bulk, such as sending an email to several people. This loop mode has the following characteristics:

    • Instances of the connector are governed by the size of an array-type Request variable where a new instance is created for each item in this variable. For example, an array with 10 items will create 10 parallel instances of this function that each contains data from its respective array index.

    • All instances begin simultaneously when this connector triggers; however, they perform their function independently of each other.

    • The function as a whole completes when all instances are complete.

    • The output from each instance can either be saved in the source Request variable or a new array-type Request variable.

    • All active instances terminate if an interrupting boundary-type event element triggers.

  • Multi-instance (Sequential): Select the Multi-instance (Sequential) option to perform this connector's function multiple times sequentially a fixed number of times or until an exit condition is True. This is useful when sequentially repeating a function multiple times but with a different set of data each time. This loop mode has the following characteristics:

    • Instances of the function are governed by the size an array-type Request variable where a new instance is created for each item in this variable. For example, an array with 10 items will create 10 parallel instances of this function that each contains data from its respect array index.

    • At any given time, only one instance of the function is active. The subsequent instance does not begin until the current instance completes.

    • At the end of each instance an exit condition evaluates and the loop activity halts if the exit condition is True.

    • The function as a whole completes when all instances are complete.

    • The output from each instance can either be saved in the source Request variable or a new array-type Request variable.

    • All active instances terminate if an interrupting boundary-type event element triggers.

Follow these steps to specify characteristics to perform multiple instances of the connector:‌

  1. Select the connector from the Process model in which to specify multiple instance characteristics. Panels to configure this element display.

  2. Expand the Loop Characteristics panel. The Loop Characteristics setting displays. By default, Loop Activity is set to No Loop Mode and the function is performed only once.

  3. From the Loop Mode setting, select one of the following options to perform this connector's function more than once.

    • Loop: Select the Loop option. The settings for this loop mode display:

      Follow these steps:

      1. In the Maximum Iterations setting, enter an integer value representing the maximum number of times this Task should be performed.

      2. In the Exit Condition setting, enter a condition in FEEL syntax. When this condition is True the loop activity is halted.

    • Multi-instance (Parallel): Select the Multi-instance (Parallel) option. The settings for this loop mode display:

      Follow these steps:

      1. In the Request Variable Array setting, enter the name of an array-type Request variable. The size of this array will determine how many times this loop iterates.

      2. In the Output Data Variable setting, enter the name of an array-type Request variable in which to store the results of all instances. Each instance of the loop saves to a separate JSON object within the array of the specified Request variable. If the Output Data Variable setting is not configured, then the output data replaces the source data in the Request Variable Array.

    • Multi-instance (Sequential): Select the Multi-instance (Sequential) option. The settings for this loop mode display:

      Follow these steps:

      1. In the Request Variable Array setting, enter the name of an array-type Request variable. The size of this array will determine how many times this loop iterates.

      2. In the Exit Condition setting, enter a condition in FEEL syntax. When this condition is True the loop activity is halted.

      3. In the Output Data Variable setting, enter the name of an array-type Request variable in which to store the results of all instances. Each instance of the loop saves to a separate JSON object within the array of the specified Request variable. If the Output Data Variable setting is not configured, then the output data replaces the source data in the Request Variable Array.

Advanced Panel Settings

Edit the Node's Identifier Value

A Process node represents a component of a Process model, whether that is a BPMN element or a connector. Process Modeler automatically assigns a unique value to each Process node added to a Process model. A Process node's identifier value can be changed if it is unique to all other nodes in the Process model, including the Process model's identifier value.

All identifier values for all nodes in the Process model must be unique.

Follow these steps to edit the identifier value for an IDP connector:

  1. Select the IDP connector from the Process model in which to edit its identifier value.

  2. Ensure that the Configuration panel displays. If not, show it. Panels to configure this element display.

  3. Expand the Advanced panel if it is not presently expanded. The Node Identifier setting displays. This is a required setting.

  4. In the Node Identifier setting, edit the IDP connector's identifier to a unique value from all nodes in the Process model and then press Enter.

Last updated

© Copyright 2000-2024 ProcessMaker Inc. All rights reserved.