Previous Topic: Triples for the Same Property That Have Been Entered at More Than One Level

Next Topic: Use of Single Quote Character in Java Messages and Source Code

Meta-Variables in RPG Internal Functions and OBASE/Set Current Date and Time

At r5.0, a fix was added so that internal RPG functions now have their own meta-variable space, and no longer share the meta‑variable space of their calling functions. This change is in accordance with the published functionality regarding the scope of meta-variables (which states that a meta-variable’s state only persists on calls to functions of type Meta) and is consistent with other generators.

This fix highlighted a place within the class libraries where meta-variable state information was expected to pass from an external function to an internal function. It was calling the OBASE/Set current date and time function in the OBASE variants AS400 5250 and Windows/AS400.

Note: OBASE/Server Set current date and time is a new function used with RPG400. It is recommended that you call this function instead of the OBASE/Set current date and time function with OBASE set in the Windows/AS400 variant and OBDATE set in the Windows client variant. This is exemplified in the call change in OBASE/Audited entity.Set audit fields.

To assist customers in tackling any upgrade issues associated with this fix, the following Plex.ini file option can be used in CA Plex r5.1:

[RPG Generator]
 Share Meta-Variables With Internal Functions=1

An entry of 1 reverts to pre-r5.0 behavior. If no entry is present, the default setting of 0 is used, providing the same behavior as r5.0.