Basing on my last blog (IBM Cognos TM1 updating metadata in TI submit time explore), we will explore the influence of updating metadata by sub TI here.
Please see below example as scenario 1:
There is a cube with values.
There is a TI with the logic of deleting element in Prolog area and adding back the element in Metadata area.
Then running the TI and researching the result. We will find the value (80) still exists.
This result is not surprising, because the commit is after running the logic in Metadata area. At the bottom of Metadata, when the element ‘P020’ is deleted and then added back, the server will not identity the change of the element, so cube value exists.
Then please see below example as scenario 2, the only change is to move the logic of deleting element in another TI, and the main TI calls the sub TI. Please see below:
Running the TI and researching the result. We will find the value (80) do not exist.
We analyzed that why just moving the logic of deleting element to sub TI, the value in cube is gone. The reason is when the server runs in prolog area and needs to execute another TI, it runs in sub TI; when the server runs after the metadata area in sub TI, the sub TI will commit the updating of metadata. At the moment the element in dimension is actual gone, the value in cube (80) is changed to zero. Even through in main TI, it will add back the element, and commit the change, but at that moment, when the server committed the change of deleting element, the value already have changed to zero.
So basing on above description, if you runs TI to update metadata and actually no metadata changed, the first method will not impact the values in cube with related metadata, however the second method will impact it.