IBM FileNet P8, Version 5.2.1            

Invoke system function

Use the Invoke system function to request a Web Service.

Before you begin
Workflow properties - Web Services. Specify the partner links in the workflow properties. Here are some properties that might need to be configured:
  • Data fields and attachments that are required for input to the services
  • Any data fields or XML fields that are required for returned values
  • The default folder in your object store or library where returned attachments are to be stored
An endpoint for a partner link might change for various reasons. For example, you might update the partner link by selecting a different version of a workflow with the corresponding Receive system function. When an endpoint changes, Process Designer inspects each Invoke system function in the current workflow and updates them as follows:
  • If parameters are the same, the value of each parameter is preserved.
  • If there are new parameters, those parameters are added to the list of parameters, but the expression value is empty.
  • If a parameter no longer exists, it is deleted, but any data field that was created for that parameter remains.
  • If the operation no longer exists, the operation is blank.
  • If the mode switches from "Parameters" to "XML" or vice versa, the message or parameters must be updated.
  • If the mode is "XML", the message template is reloaded and the message must be updated.

To specify an Invoke system function:

  1. From the Web Services step palette, drag an Invoke step onto the workflow map.
  2. On the Invoke General tab, select the Partner Link for the Web Service. The Partner Links list contains only entries that are specified for Invoke in Workflow Properties Web Services.
  3. Select the appropriate Operation in the Web Service.
  4. Under Message Type, select Parameters or XML.

    Parameters

    Use workflow data fields and attachments for input and output. This option is available for simple parameters and for schemas up to two levels deep.

    Outgoing data

    If the Web Service you are invoking requires input, the required fields are displayed under Outgoing Parameters. In the Expression field, specify a previously defined data field or expression of the appropriate data type.

    For more information, see Specify operation parameters.

    Restriction:
    • The name of a parameter cannot contain numbers, special characters, or spaces.
    • The parameter type determines the processes that can communicate with a P8 web service. If you set the parameter type to be attachment by value, a web service can communicate with another P8 workflow process only. That is, the other participant in the conversation cannot be an external web service. For an example of setting the parameter type, see Using Web Services: Parameter example.

    Incoming data

    If the Web Service returns data, the name and data type are displayed under Incoming Parameters. In the Field Name field, select a previously defined data field of the appropriate type to hold the returned data.

    XML

    Use XML messages for input and output. This option must be used for nested parameters more than two levels deep.

    Outgoing data

    If the Web Service you are invoking requires input, the required fields are displayed in a "template" format in the Outgoing Message. Edit the message, substituting a data field of the appropriate type where indicated by the format +_datatype. For array fields, you can add more lines, as necessary.

    All fields in the outgoing message must be strings, so you must convert other types, such as float or integer, to strings. For example, to use data field MyFloatData, you can use convert(MyFloatData, string) in the message. This restriction applies only when the message type is XML; in the Parameter format, Process Designer handles data conversions for the messages.

    Incoming data

    For Incoming XML Data Field, specify a previously defined XML data field. You can use one of the XPath functions in subsequent steps to extract the appropriate data from the XML message.

  5. Optional: Specify a timeout expression to indicate alternative processing after a specified amount of time.
    1. On the Advanced tab, enter a time expression to specify the wait time. For example, you can enter a time function such as addminutes(systemtime(), 30). This example allows the step to wait 30 minutes before it goes to the specified timeout map.
    2. Select an appropriate submap to be executed if the timeout condition occurs. You can choose one of the system maps (Terminate or Malfunction), or you can create your own submap.

    This timeout expression does not apply when the web service request is successfully invoked. When a work item is queued to the WSRequest queue, the timeout commences until the WSRequest queue sends the web service request to the web service. Once the web service request is issued, the timeout expression no longer applies. Additionally, if the request is sent within the timeout period, the timeout processing does not occur even if the web service is delayed in sending back an expected reply.

  6. Optional: Invoke system function: Web Services-ReliableMessaging.
  7. Optional: Correlating web conversations.


Last updated: October 2015
bpfdh106.htm

© Copyright IBM Corporation 2015.