Unigetvar or unisetvar do not return updated values inside Uproc script

Document ID : KB000085364
Last Modified Date : 14/04/2018
Show Technical Document Details
Issue:
Error Message :
Variable NAME_OF_VARIABLE not found.

Patch level detected:Dollar Universe 6.3.00
Product Version: Dollar.Universe 6

Some unigetvar commands work correctly in the shell but they don't return correct results inside uproc script
Example:

$UNI_DIR_EXEC/unigetvar U_SPV_COMPATIBILITY_MODE
Variable U_SPV_COMPATIBILITY_MODE not found.

 
Environment:
OS: All
Cause:
Cause type:
By design
Root Cause: It is possible to change dynamic environment variable values within a uproc when using the variable IS_BATCH_ENV_LOADED.
The default value of this variable is Y, and with this settings the uproc will only access the cache ( current variables loaded into memory) and not the values defined in the values.xml or variables.xml

If you set this variable to N however the bahavior of the application will change. unisetvar call will be able to access the node settings and to change the values assigned to dynamic variable (exclusively dynamic values are concerned).
Resolution:
It is possible to change dynamic environment variable values within a uproc  using the variable IS_BATCH_ENV_LOADED.
The default value of this variable is Y, and with this value the uproc will only access the cache and not the values.xml

If you set this variable to N, the behavior of the application will change. Unisetvar  will be able to access the node settings and to change the values assigned to a dynamic variable (exclusively dynamic values are concerned).

Example:

$ export IS_BATCH_ENV_LOADED=Y
$UNI_DIR_EXEC/unigetvar U_SPV_COMPATIBILITY_MODE
Variable U_SPV_COMPATIBILITY_MODE not found.

On the other hand, if we set it to N:
$ export IS_BATCH_ENV_LOADED=N
$ $UNI_DIR_EXEC/unigetvar U_SPV_COMPATIBILITY_MODE
56

 

Fix Status: No Fix

Additional Information:
Workaround :
N/A