Making attributes of a user versionable

You may want to make specific attributes of the User business object version controlled, such as their manager, location, or salary. To make an attribute versionable, you must:

  1. Create it in Object Designer.
  2. Add it to the relevant user window (if it hasn’t already been added).
  3. Make any changes to the versionable attribute, so that a Versions tab appears (much like in the Configuration Management component). This tab then shows you the change on that tab, and shows you the different versions.

There are four different types of user: Account Manager, Analyst, Contact and End User. However, within the database, Contact and End User are children of the User business object, so if you make any changes to the User business object, these changes also appear in the Contact and End User business objects. A similar thing happens if you make changes to the End User, as they have child business objects of Account Manager and Analyst. If you want to avoid this, make the changes to the specific business object themselves.

The following procedure describes the processes involved in making an attribute versionable in the Analyst business object.

We recommend that you take a backup of your database before making any changes to your user, because making an object Versionable is one of the few options that cannot be changed after saving the business object.

There are two types of versioning: Managed and Automatic. We recommend that you use managed versioning if you want to use versionable user attributes within the HR module, and automatic versioning if you are using it elsewhere. If you set Managed versioning, you need to create an HR Activity within the HR module to change the user information.

To make an attribute versionable within a User business object:
  1. Start the Object Designer component, and on the Business Objects tree, expand the System folder.
  2. Expand the End User folder, then select Analyst, then on the Actions list, click Modify Business Object.
  3. On the Properties grid within the Version Control group of properties, alongside the Performs Versioning? property, select True.
    Another property becomes available.

Take care when selecting this property, as once you have selected it, you cannot change it.

  1. Alongside the Type of Versioning? property, we recommend that you select Automatic versioning.

If you select Managed versioning then you will no longer be able to import information into the User business object. However, if you want to use a versionable user within the HR module, use Managed versioning as you need to create an additional HR Activity to make changes.

  1. Click .
    You can now create the new attribute that you want to make versionable.
  2. On the Actions list, click New Attribute.
  3. Name the attribute as required, for example Pay Scale.
  4. Set the relevant data type, for example String, and set the Max Length for the attribute.
  5. At the bottom of the Properties grid, alongside the Attribute under version control? property, select Version controlled.
  6. Click .

The next step is to add the new attribute to the required window.

For information about adding attributes to a windows, see the Designer Guide.

When you open the Analyst window, notice that a new tab has been automatically added to it: Versions. When you specify a value in a versionable field, the first version is created. When that value is then changed, a second version is changed and so on.