Documentation Comments
Use this form to comment on this topic. You can also provide any general observations about the Online Documentation, or request that additional information be added in a future release.
RealityV15.1Online Documentation (MoTW) Revision 7
REMOVE Statement (DataBasic MultiValue Compatibility) (m6187ai+remove_s.htm)
The functionality of the REMOVE statement can be configured to act as expected by the compatibility system by flags within the Compatibility Switch Matrix (set with the $OPTIONS statement).
REMOVE.RESTART |
Allows REMOVE to restart from the start of the string depending on the state and value of the setting-var variable. If the setting-var variable has the value -1 or is unassigned when it is passed to the REMOVE statement, the internal REMOVE pointer is reset to the beginning of the array. |
REMOVE.LAST |
If set the REMOVE statement will return a zero instead of a one in the setting variable when returning the last field of a string. |
REMOVE.PEOS |
If set REMOVE will return a one instead of a zero in its setting variable when removing past end of string. |
The compatibility switch matrix values are as follows:
BCC Entry | Reality | D3 | mvEnterprise |
---|---|---|---|
REMOVE.LAST | 0 | 1 | 0 |
REMOVE.PEOS | 0 | 0 | 1 |
Given the following three programs that only differ in name and first line:
Program Names = Reality.REM D3.REM MVE.REM First Lines = $OPTIONS REALITY $OPTIONS D3 $OPTIONS MVENTERPRISE
The rest of the programs are the same as follows:
REMOVE VAR FROM A SETTING SET CRT SQUOTE(VAR),SET REMOVE VAR FROM A SETTING SET CRT SQUOTE(VAR),SET
The expected output would be the following:
Reality.REM | D3.REM | MVE.REM | Comment |
---|---|---|---|
(VAR) - (SET) | (VAR) - (SET) | (VAR) - (SET) | |
("last") - (1) | ("last") - (0) | ("last") - (1) | REMOVE of last field |
("") - (0) | ("") - (0) | ("") - (1) | REMOVE past end of string |