$ImgOvl
Replace image item value
Most Sirius $functions have been deprecated in favor of Object Oriented methods. There is no OO equivalent for the $ImgOvl function.
The $ImgOvl function accepts three arguments and returns a 0. All errors cause request cancellation.
The first argument is either a string that contains an image name or any image item in the source image. If an image item is specified, only the image portion is relevant for this function since the second argument indicates the actual item that is to be updated. Nevertheless, it is more efficient to specify an image item rather than an image name unless the image name itself is to be variable at run time. This is because an image name must be hashed and then NTBL must be searched for the hash value, both moderately expensive operations. This is a required parameter.
The second argument is a string that contains the name of the image item that is to be updated. This is a required parameter.
The third argument is a value that is to be assigned to the indicated image item. This is a required parameter.
Syntax
<section begin="syntax" />%result = $ImgOvl(image_identifier, item_name, value) <section end="syntax" />
%result is always set to 0.
Usage notes
$ImgOvl is provided to get around the fact that Model 204 has no support for image name variables like it has support for screen name variables. That is, if the image or image item that is to be updated is unknown at compile time, $ImgOvl can be used to update the image data based on values set at evaluation time.
Examples
For example
%RC = $ImgOvl(%RECTYPE, 'NAME', %NAME)
updates the value of an image item called "NAME" from the image associated with the variable %RECTYPE.
%RC = $ImgOvl(%BIGIMG:ID, %FIELD, %VALUE)
updates the value of an image item whose name is indicated by %FIELD from the image BIGIMG.
Obviously, if both image and item name are known at evaluation time a simple assignment should be performed as in
%BIGIMG:CUSTID = %DATA