Integration Activity is great tool in UserApp to handle workflow starts and to avoiding duplicating workflow logic into multiple workflows. This helps in maintaining the workflows.
There is good forum post (by Jcraddock) about how to use Integration activity:
By default, the Integration Activity contains only two fields for passing data to a workflow that is supposed to be starting.
Many times, this is too few.
Here’s the workflow where the fields are added:
You can add fields to pass to the workflow. Here’s what you need to do:
1. Select the Integration Activity you want to expand.
2. Click the Integration tab. If it is not shown, choose it from the context menu by right-clicking the Integration Activity object.
The Composer screen appears.
3. Select Input and source and go to the bottom.
4. Select the last data item of arg2.
<dataitem> <!--The value of the attribute 'nillable' is 'true' The value of the attribute 'type' is 'string'--> <name>sample</name> <!--The value of the attribute 'nillable' is 'true' The value of the attribute 'type' is 'StringArray'--> <value> <!--Element 'string' is optional and has no upper bounds--> <!--The value of the attribute 'nillable' is 'true' The value of the attribute 'type' is 'string'--> <string>sample</string> <string>sample</string> </value> </dataitem>
5. Copy it and paste it in between the </dataitem> and the </arg2> tags.
6. Click the Tree tab to make sure the pasted data item is added. You must also paste the item to the Message Tab, Input / Source.
7. After you added the data items both to Action Model/Input and Messages/Input, click the Workflow tab to leave Integration Composer. Notice that the DataItem is not yet shown.
8. Click Mapping to see the added data item.
9. Click OK to show the data item on the mapping table.
You can add more data items with same procedure.
To add field names and values to the table,
1. In arg0 – workflow to start (in LDAP format), the workflow start form should contain all fields named exactly as in the data item name field.
2. Put the recipient in arg1.
3. Put additional fields in arg2.
Disclaimer: As with everything else at NetIQ Cool Solutions, this content is definitely not supported by NetIQ, so Customer Support will not be able to help you if it has any adverse effect on your environment. It just worked for at least one person, and perhaps it will be useful for you too. Be sure to test in a non-production environment.