Programming Example

The following example uses the aggregate range routines to specify the SUM function.

     EVAL      D@PNMBR        = DPRLPNMBR 
     EVAL      D@PRLS         = DPRLPRLS
     EVAL      D@POCODE       = DPRLPOCODE 
     EVAL      D@LNNBR        = DPRLPLNNBR
     EVAL      D#END#LNNBR    = DPRLPLNNBR
     EVAL      E@DBSUBRNG     = 5
     CALLP     U@DB@AGINIT(DPLS@@HANDLE:
               %ADDR(DA@DBPOPLS1))
     CALLP     U@DB@AGSET(DPLS@@HANDLE: DA@DBPOPLS1:
               'SUM': 'QUANTITY      ': 1:
               %ADDR(DPLS#AG#QNTTY):
               %ADDR(DPLS#SU#QNTTY))
     CALLP     U@DB@AGSET(DPLS@@HANDLE: DA@DBPOPLS1:
               'SUM': 'DELIVERED-QTY ': 1:
               %ADDR(DPLS#AG#DLVQTY):
               %ADDR(DPLS#SU#DLVQTY))
     CALLP     DS@DBPOPLS1(E@DBCALCAGGRGT)
     Z-ADD     DPLS#SU#QNTTY VPOPLS@PLSQNT
     Z-ADD     DPLS#SU#DLVQTYVPOPLS@PLDLQT