get myLocation with #dli{
GU STSCCST (STQCCNO = :myCustomer.customerNo)
STSCLOC (STQCLNO = :myLocation.locationNo) };
The syntax in the above example is not exactly the same as in DL/I. EGL supports a powerful pseudo-DL/I syntax that performs some DL/I formatting for you. For example, EGL converts all names to upper case, adds spaces to names to bring them to eight characters where necessary, and converts EGL relational operators such as "!=" to DL/I equivalents. In addition, EGL accepts host variables (variables defined in the host EGL program and not in the DL/I database) in your pseudo-DL/I calls. In the sample code above, the host variables begin with a colon (:). At generation time, EGL turns these raw materials into properly formatted DL/I calls.
myOrderArray OrderRecordPart[] {maxsize = 20}; //array of orders
get myOrderArray with #dli{
GU STSCCST STSCLOC STPCORD
GN STPCORD };
//get the next 20 orders
get next myOrderArray;