Difference: PUSHPOPILFStatements (14 vs. 15)

Revision 152008-10-03 - SteveFrizzell

Line: 1 to 1
 
META TOPICPARENT name="APPX500Features"

PUSH & POP ILF Statements

Line: 8 to 8
 

PUSH Statement

Changed:
<
<
The PUSH statement pushes a field or record value onto an internally maintained stack for the indicated field or record. The structure of the statement is:
>
>
The PUSH statement saves a field or record value on an internally maintained stack for the indicated field or record. The structure of the statement is:
 

***** PUSH *** ********************** *** ***************

Line: 20 to 20
 (5) Data item type (FIELD, RECORD, DEFAULT FIELD, DEFAULT RECORD, ORIGINAL FIELD, ORIGINAL RECORD)
Changed:
<
<
The Data item type specification identifies which field value or record is to be pushed onto the stack.  If FIELD or RECORD is specified, then the current value of the field or record is pushed onto the stack.  If DEFAULT FIELD or DEFAULT RECORD is specified, then the default value of the field or record is pushed onto the stack.  If ORIGINAL FIELD or ORIGINAL RECORD is specified, then the original value of the field or record is pushed onto the stack.  ORIGINAL FIELD and ORIGINAL RECORD may only be specified if the process being executed has a PCF.
>
>
A distinct stack is associated with each field name and with each file name.
 
Changed:
<
<
Each field and each record has its own stack.
>
>
The stack has the internal structure of a LIFO list, i.e. the last value pushed onto the stack for a field is the first value popped from the stack.
 
Changed:
<
<
There is only one stack for each field name and one stack for each file name.  Consequently, FIELD, DEFAULT FIELD, and ORIGINAL FIELD all push the indicated values onto a common (shared) stack for the specified field and RECORD, DEFAULT RECORD, and ORIGINAL RECORD all push the indicated record buffers onto a common (shared) stack for the specified record.
>
>
The contents of predefined fields can also be saved using the PUSH statement. However, it is invalid to use the PUSH statement for predefined fields that are non-modifiable, since the POP command is invalid for those fields.
 
Changed:
<
<
A sub-string field and a synonym field will each have their own stack since they have field names that are distinct from the field that they are derived from.
>
>
The scope of a stack is the same as the scope of the associated field or file. 

The Data item type specification identifies which field value or record is to be pushed onto the stack.  If FIELD or RECORD is specified, then the  current value of the field or record is pushed onto the stack.  If DEFAULT FIELD or DEFAULT RECORD is specified, then the  default value of the field or record is pushed onto the stack.  If ORIGINAL FIELD or ORIGINAL RECORD is specified, then the original value of the field or record is pushed onto the stack.  ORIGINAL FIELD and ORIGINAL RECORD may only be specified if the process being executed has a PCF.

Since there is only one stack for each field name and one stack for each file name, FIELD, DEFAULT FIELD, and ORIGINAL FIELD all push the indicated values onto a common (shared) stack for the specified field name and RECORD, DEFAULT RECORD, and ORIGINAL RECORD all push the indicated record buffers onto a common (shared) stack for the specified record (file) name.

 
Changed:
<
<
Multiple occurrences of a field share a common stack.
>
>
Multiple occurrences of a field also share a common stack.
 
Changed:
<
<
The stack for a field or record has the same scope (none, subprocess, related, or detached) as the field or record associated with it.
>
>
A sub-string field and a synonym field will each have their own stack since they have field names that are distinct from the field that they are derived from.
 

POP Statement 

The POP statement pops a field or record value from an internally maintained stack and sets it into the indicated field or record. The structure of the statement is:

 
This site is powered by the TWiki collaboration platform Powered by PerlCopyright © 2008-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback