santoshkumarmanilakkoju
New User
Joined: 24 Nov 2009 Posts: 37 Location: Don't know
|
|
|
|
Hi,
I have to reverse track to know the way an income field 'AGINC' is populated.
But when I was tracing I have come across this code where "MODIFY" command is used.
I understand that the file "NATAGS" is modified as the FOCEXEC is executed by virtual MFD using FIXFORM.
But which file are they matching in the code to modify the fields as per the below code.
And what does the commad "DATA ON " indicate?
-*
SET MSG=ON
-*
USE CLEAR *
-*
JOIN CLEAR *
-*
EX AIUC1ALC A, F1=CSI@RSTM, N1=AEUP.NONX.AEU050NM.AEU90001(0),
F2=NAT@WK , N2=AIUP.EISX.NAT.RSTSLIIN.R&1
-RUN
-IF &&:ABORT EQ 1 GOTO UNABLEALLOC ;
-RUN
-*
EX AIUC1ALC N, F1=TXNMAJ,P1=750,S1=100,
F2=TXNREG,P2=1000,S2=250
-RUN
-IF &&:ABORT EQ 1 GOTO UNABLEALLOC ;
-RUN
-*
-*
-READ CSI@RSTM &BMONTH.I4. &FILL.A2. &EMONTH.I4.
-TYPE BMONTH --> &BMONTH EMONTH --> &EMONTH
-*
-************
-* LOAD REGIONAL DATA
-************
TABLEF FILE NAT@WK
PRINT SEG.FOACASE
-*WHERE EDIT(FOAMBU,'99$$$$$$') NE 'HM' OR 'NM' OR
-* 'SM' OR '41'
ON TABLE SAVE AS TXNREG
END
-RUN
-IF &LINES EQ 0 GOTO EMPTYFILE ;
-*
TABLEF FILE NAT@WK
PRINT FOACOVMON
ON TABLE SAVE AS TXNSAVE
END
-RUN
-*
-READ TXNSAVE &TXNMONTH.I4.
-TYPE TXNMONTH --> &TXNMONTH
-RUN
-IF &TXNMONTH EQ ' ' OR '0000' GOTO BADTXN ;
-*
-SET &EMO = EDIT (&EMONTH,'$$99') ;
-SET &EYR = EDIT (&EMONTH,'99$$') ;
-SET &TXNMO = EDIT (&TXNMONTH,'$$99') ;
-SET &TXNYR = EDIT (&TXNMONTH,'99$$') ;
-*
-SET &GDGVER = IF &TXNYR LT &EYR THEN -1
- ELSE IF (&TXNMO GE 01 AND &TXNMO LE 06)
- AND (&EMO LE 06) THEN 0
- ELSE IF (&TXNMO GE 01 AND &TXNMO LE 06)
- AND (&EMO GE 07) THEN -1
- ELSE 0 ;
-*
EX AIUC1ALC A, F1=NATAGS, N1=AIUP.EISD.NAT.AGSSWK.FOCUS(&GDGVER) -RUN
-IF &&:ABORT EQ 1 GOTO UNABLEALLOC ;
-RUN
-*
MODIFY FILE NATAGS
COMPUTE
XRPDT/YM = ;
-*
FIXFORM AGCASE/10 AGGRP/10 AGMGNT/1 X1 AGCC/4
FIXFORM X12 XRPDT/4 X7 AGSYS/2
FIXFORM AGMBU/8 AGPROD/2 AGFUND/1 AGSAREP/4 AGSVREP/4
FIXFORM AGACREP/4 AGSOFC/4 AGCSU/1 AGSVFC/4 AGCOVPR/40
FIXFORM AGRPTFLG/1 AGGENAGNT/5 AGREG/1 AGSUB/9 AGMEM/9
FIXFORM AGINC/11 X203 AGSLI/1 X7 AGSEQ/2 X17
-*
COMPUTE
AGRPDT/YYM = XRPDT ;
MATCH AGRPDT
ON MATCH CONTINUE
ON NOMATCH INCLUDE
MATCH AGCASE
ON MATCH CONTINUE
ON NOMATCH INCLUDE
MATCH AGGRP AGSEQ
ON MATCH CONTINUE
ON NOMATCH INCLUDE
MATCH AGREG AGMGNT
ON MATCH CONTINUE
ON NOMATCH INCLUDE
MATCH AGSLI
ON MATCH COMPUTE AGSUB = D.AGSUB + AGSUB ;
AGMEM = D.AGMEM + AGMEM ; AGINC = D.AGINC + AGINC ;
ON MATCH UPDATE AGSUB AGMEM AGINC
ON NOMATCH INCLUDE
DATA ON TXNREG
LOG INVALID MSG OFF
LOG DUPL MSG OFF
END
-RUN
-* |
|