Documentation Center

Understanding status filters

The new field (FISHSTATUSTYPE) was introduced, with a number indicating the type of the current status.

Starting with InfoShare 3.6.x the option to enable and disable the out-of-date status was added. This means that the status is no longer changed from released to out-of-date and from draft to out-of-date draft. Internally there is still a difference between the latest released object and the out-of-date objects. In order to do this a new field (FISHSTATUSTYPE) was introduced with a number indicating the type of the current status: Draft (10), Released (20), out-of-date-draft (5) and out-of-date (30). Although the status of the previous versions is no longer changed, the new field is toggled by Translation Management to out-of-date or out-of-date draft.

Overview of the possible situations/steps

1. Version 1 is in a draft status and is the latest version

VersionStatusStatusTypeTranslation Management
1Draft10 

2. A newer version 2 is created and released

VersionStatusStatusTypeTranslation Management
1Draft10 
2Released10 --> 20Asynchrone the StatusType of version 1 is set to 5 (out-of-date-draft)

3. Version 1 is also released

VersionStatusStatusTypeTranslation Management
1Released5 --> 20Asynchrone nothing is done, because there are no older versions
2Released20 

4. A newer version 3 is created and released

VersionStatusStatusTypeTranslation Management
1Released20 
2Released20 
3Released10 --> 20Asynchrone the StatusType of version 1 and 2 is set to 30 (out-of-date)

5. Version 3 is rolled back from released to draft

VersionStatusStatusTypeTranslation Management
1Released30 
2Released30 
3Draft20 --> 10Asynchrone the StatusType of version 2 is set back to 20 (released)

Consequences for the API functions

Internally the field FISHSTATUSTYPE is used to select (latest) released objects. So, when you call the API RetrieveObjects method with the ISHStatusgroup filter, the following happens:

ISHStatusgroupFilter
ISHReleasedStatesFISHSTATUSTYPE = 20
ISHReleasedOrDraftStatesFISHSTATUSTYPE in (10, 20)
ISHOutOfDateOrReleasedStatesFISHSTATUSTYPE >= 20

Best practices

Best practices is to disable the out-of-date status. If necessary you can add extra filtering on the FISHSTATUSTYPE field.

Note that the status type of the modified object is changed immediately, but the status type of the previous versions is calculated asynchronously by Translation Management. There can be some delay between the 2 actions. This can result in multiple latest released objects.