IBM Support

With IBM Business Process Manager (BPM), inconsistent values are seen when using an API to assign an attribute value for multiple attribute definitions with the same name from different applications

Troubleshooting


Problem

You might use the tw.system.user.setAttributeValue API in IBM Business Process Manager Process Designer to assign different values to existing user attribute definitions with the same "ParticipantGroups" name in two different applications. However, the assigned values are inconsistent when you retrieve the user attribute values from the Process Admin Console.

Symptom

The following steps explain the scenario:

  1. Create two applications in the Process Center: appA and appB.

  2. Open the applications in IBM Process Designer and complete the following steps for each application:
    1. Create a user attribute definition named ParticipantGroups.
    2. Create a simple service and add a server script item that contains the following code:
      var attributeValue = "";
      tw.system.user.setAttributeValue("participantGroups", attributeValue);

      Note: The only difference in the script between the two applications is that the attributeValue value is set to appA for one application and is set to appB for the other application.
    3. Run the service.

  3. Open the Process Admin Console.

  4. Go to the bulk user attribute assignment section.

  5. Select View by User and retrieve the user who created the application.


When you check the created attribute value, the appA ParticipantGroups does not have a value and the appB ParticipantGroups has a value for the last executed service.

Cause

This situation is a product limitation.

When you assign the value from the Process Admin Console, there are two separate entries created in the LSW_USER_ATTR table. However, when you assign it using the following code, there is only one entry in the table:
tw.system.user.setAttributeValue("ParticipantGroup", attributeValue);

Resolving The Problem

To resolve this problem, use one of the following options:

  • After the User Attribute definition is created in IBM Process Designer for the two separate applications, you can set the value in the Process Admin Console. Click User Management > Bulk User Attribute Assignment.

  • If you have external database for storing your user data and design it to dynamically set user attribute values, add the application name as a prefix for created user attribute definition name. Add this prefix when you create the user attribute definition.

[{"Product":{"code":"SSFTN5","label":"IBM Business Process Manager Advanced"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Security","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.0.1;8.0;7.5.1;7.5","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}},{"Product":{"code":"SSFTDH","label":"IBM Business Process Manager Standard"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Security","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.0.1;8.0;7.5.1;7.5","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}},{"Product":{"code":"SSFTBX","label":"IBM Business Process Manager Express"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Component":"Security","Platform":[{"code":"PF033","label":"Windows"}],"Version":"8.0.1;8.0;7.5.1;7.5","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]

Product Synonym

BPM

Document Information

Modified date:
15 June 2018

UID

swg21631389