*S*************************************************************************         
*S***       
*S***                              WolffPack    
*S***       
*S*** Program  : WFAFI27B           
*S*** System   : FINANCIER          
*S*** Title    : 2026-27 ADD File Import        
*S*** Function : This program imports federal application data          
*S***            into the ADD file. 
*S***       
*S***      Copyright 1995 - 2026 WolffPack, Inc.  All rights reserved.  
*S***       
*S*************************************************************************         
*S**DEFINE DATA         
*S**  GLOBAL USING WWGDA
*S***       
*S**  LOCAL USING WWREQIBD /* Input parameter PDA           
*S**  LOCAL USING WFADDDSD /* Passed to object subprogram   
*S**  LOCAL USING WFADDDSR /* Passed to object subprogram   
*S**  LOCAL USING WWINSTND /* Passed to object subprogram   
*S**  LOCAL USING WWINSTNR /* Passed to object subprogram   
*S**  LOCAL USING WWAOBJ   /* Used by object subprograms    
*S***       
*S**  LOCAL USING WWCONST  /* Constants LDA     
*S**  LOCAL USING WWINSTNL          
*S***       
*S**  LOCAL 
*S**  01 #MAX-READ-HOLD(P3) INIT<25>
*S**  01 #ET-READ-COUNTER(P7)       
*S**  01 #ET-WRITE-COUNTER(P7)      
*S***       
*S**  01 #INPUT-COUNTER(P7)         
*S**  01 #INPUT-COUNTER-A(P7)       
*S**  01 #INPUT-COUNTER-C(P7)       
*S**  01 #INPUT-COUNTER-R(P7)       
*S**  01 #INPUT-COUNTER-NC(P7)      
*S**  01 #NEW-COUNTER(P7)           
*S**  01 #REPLACE-COUNTER(P7)       
*S**  01 #BYPASS-COUNTER(P7)        
*S***       
*S**  01 #SUB(P3)       
*S**  01 #SUB2(P3)      
*S***       
*S**  01 #FEDERAL-TRAN(A2)          
*S**  01 #TEMP-RCVD-DATE(A8)        
*S**  01 #TRANSLATE-FIELD(A30)      
*S**  01 #TRANSLATE-CASE(A1)        
*S**  01 #REMOVE-SPEC-CH(L)         
*S**  01 #COLLEGE-FOUND(L)          
*S**  01 #COLLEGE-SENT(A6)          
*S**  01 #COLLEGE-ETI(A1)           
*S**  01 #SEND-RSN(A1)  
*S***       
*S**  01 #COLLEGES      
*S**    02 WF-FE-A-COL1(A6)         
*S**    02 WF-FE-A-COL2(A6)         
*S**    02 WF-FE-A-COL3(A6)         
*S**    02 WF-FE-A-COL4(A6)         
*S**    02 WF-FE-A-COL5(A6)         
*S**    02 WF-FE-A-COL6(A6)         
*S**    02 WF-FE-A-COL7(A6)         
*S**    02 WF-FE-A-COL8(A6)         
*S**    02 WF-FE-A-COL9(A6)         
*S**    02 WF-FE-A-COL10(A6)        
*S**    02 WF-FE-A-COL11(A6)        
*S**    02 WF-FE-A-COL12(A6)        
*S**    02 WF-FE-A-COL13(A6)        
*S**    02 WF-FE-A-COL14(A6)        
*S**    02 WF-FE-A-COL15(A6)        
*S**    02 WF-FE-A-COL16(A6)        
*S**    02 WF-FE-A-COL17(A6)        
*S**    02 WF-FE-A-COL18(A6)        
*S**    02 WF-FE-A-COL19(A6)        
*S**    02 WF-FE-A-COL20(A6)        
*S**  01 REDEFINE #COLLEGES         
*S**    02 #COLLEGE-CODE(A6/1:20)   
*S***       
*S**  01 #PASS-FIELDS   
*S**    02 #PASS-NM-LAST(A20)       
*S**    02 #PASS-NM-FIRST(A20)      
*S**    02 #PASS-NM-MI(A1)          
*S**    02 #PASS-SOURCE(A1)         
*S**    02 #PASS-SID(A9)
*S**    02 #PASS-FAO(A2)
*S**    02 #PASS-COLLEGE-CODE(A7)   
*S***       
*S**  LOCAL USING WF27FEDL          
*S**END-DEFINE          
*S***       
*S*** Define printers, formats, headings        
*S**EJECT OFF(1)        
*S**FORMAT(1) LS=80 PS=60 ZP=ON IS=OFF ES=OFF SG=OFF        
*S**EJECT OFF(2)        
*S**FORMAT(2) LS=80 PS=60 ZP=ON IS=OFF ES=OFF SG=OFF        
*S***       
*S**IF *DEVICE = 'BATCH' THEN       
*S**  SET CONTROL 'D' /* Set delimiter mode for batch input 
*S**END-IF  
*S***       
*S*************************************************************************         
*S***       
*S*** Load parameters   
*S**  MOVE ##PASS-TEMP TO PASS-BATCH-FLDS       
*S***       
*S*** Federal data source           
*S**  MOVE 'F' TO #PASS-SOURCE      
*S***       
*S*** Get institution table         
*S**  ASSIGN WWINSTND.WW-RECORD-TYPE = TABLE-TYPE /* Table type         
*S**  ASSIGN WWINSTND.WW-TABLE-ID = 'INSTN'       /* Institution table  
*S**  MOVE 'GET' TO WWAOBJ.#FUNCTION
*S**  CALLNAT 'WWINSTNO' WW-GDA     
*S**           WWINSTND 
*S**           WWINSTND-ID          
*S**           WWINSTNR 
*S**           WWAOBJ   
*S**  MOVE BY NAME WWINSTND TO WWINSTNL         
*S***       
*S***       
*S**PROG.   
*S**  REPEAT
*S**    /*  
*S**    /* Read Automatic ISIR file 
*S**    READ WORK FILE 1 WF27FEDL   
*S**      /*
*S**      IF WF27FEDL.WF-FE-C-BATCH-YR NE #INPUT-AID-Y2     
*S**        ESCAPE TOP  
*S**      END-IF        
*S**      /*
*S**      /* Determine college code 
*S**      RESET #COLLEGE-FOUND      
*S**      MOVE BY NAME WF27FEDL TO #COLLEGES    
*S**      FOR #SUB = 1 TO 20        
*S**        FOR #SUB2 = 1 TO #COLLEGE-MAX       
*S**          IF #COLL-CODE(#SUB2) = #COLLEGE-CODE(#SUB) AND
*S**             #ADD-SOURCE(#SUB2) = #PASS-SOURCE AND      
*S**             #FAO(#SUB2) = ##FAO-ID         
*S**            ASSIGN #COLLEGE-FOUND = TRUE    
*S**            ESCAPE BOTTOM       
*S**          END-IF    
*S**        END-FOR     
*S**        IF #COLLEGE-FOUND       
*S**          ESCAPE BOTTOM         
*S**        END-IF      
*S**      END-FOR       
*S**      IF NOT #COLLEGE-FOUND     
*S**        ADD 1 TO #INPUT-COUNTER 
*S**        ADD 1 TO #INPUT-COUNTER-NC          
*S**        ESCAPE TOP  
*S**      END-IF        
*S**      MOVE #COLLEGE-CODE(#SUB) TO #COLLEGE-SENT         
*S**      /*
*S**      /* Determine reason for record transmission       
*S**      MOVE WF27FEDL.WF-FE-C-ETI TO #COLLEGE-ETI         
*S**      /*
*S**      RESET #SEND-RSN           
*S**      IF (#COLLEGE-ETI = '2' OR = '4' OR = '6') AND      /* College generated   
*S**         WF27FEDL.WF-FE-C-TRAN-TYPE = 'C'                /* ETI - Correction    
*S**        ADD 1 TO #INPUT-COUNTER-C           
*S**        MOVE 'C' TO #SEND-RSN                            /* Corrected           
*S**      ELSE          
*S**        ADD 1 TO #INPUT-COUNTER-A           
*S**        MOVE 'A' TO #SEND-RSN                            /* Automatic           
*S**        DECIDE FOR FIRST CONDITION          
*S**          WHEN WF27FEDL.WF-FE-C-FPS-CORR-RSN = 'D'      
*S**            ASSIGN #SEND-RSN = 'H'                       /* Generated-Hold rlse 
*S**          WHEN WF27FEDL.WF-FE-C-FPS-CORR-RSN = 'L' OR = 'N'         
*S**            ASSIGN #SEND-RSN = 'N'                       /* Generated-NSLDS     
*S**          WHEN WF27FEDL.WF-FE-C-FPS-CORR-RSN = 'M'      
*S**            ASSIGN #SEND-RSN = 'I'                       /* Generated-DHS second
*S**          WHEN WF27FEDL.WF-FE-C-FPS-CORR-RSN = 'P'      
*S**            ASSIGN #SEND-RSN = 'Z'                       /* Generated-Reprocess 
*S**          WHEN WF27FEDL.WF-FE-C-FPS-CORR-RSN = 'W'      
*S**            ASSIGN #SEND-RSN = 'D'                       /* Generated-SSA death 
*S**          WHEN WF27FEDL.WF-FE-C-PUSHED = 'Y' AND        
*S**               WF27FEDL.WF-FE-C-CFLAG-CHG NE ' '        
*S**            ASSIGN #SEND-RSN = 'S'                       /* Pushed-SARC change  
*S**          WHEN WF27FEDL.WF-FE-C-PUSHED = 'Y' AND        
*S**               WF27FEDL.WF-FE-C-SAI-CHG-FLAG NE ' '     
*S**            ASSIGN #SEND-RSN = 'E'                       /* Pushed-EFC change   
*S**          WHEN WF27FEDL.WF-FE-C-PUSHED = 'Y' AND        
*S**               WF27FEDL.WF-FE-C-REJ-CHG NE ' '          
*S**            ASSIGN #SEND-RSN = 'R'                       /* Pushed-Rej change   
*S**          WHEN WF27FEDL.WF-FE-C-PUSHED = 'Y' AND        
*S**               WF27FEDL.WF-FE-C-VER-CHG NE ' '          
*S**            ASSIGN #SEND-RSN = 'V'                       /* Pushed-Ver change   
*S**          WHEN WF27FEDL.WF-FE-C-PUSHED = 'Y'
*S**            ASSIGN #SEND-RSN = 'P'                       /* Pushed  
*S**          WHEN NONE 
*S**            IGNORE  
*S**        END-DECIDE  
*S**      END-IF        
*S**      /*
*S**      PERFORM MAIN-PROCESS      
*S**      /*
*S**      /* Check for limited-run maximum      
*S**      IF (#INPUT-RUNMODE = 'TRIAL' OR = 'SAMPLE')       
*S**          AND #INPUT-LIMIT-COUNT > 0        
*S**        IF #INPUT-COUNTER GE #INPUT-LIMIT-COUNT         
*S**          ESCAPE BOTTOM(PROG.) IMMEDIATE    
*S**        END-IF      
*S**      END-IF        
*S**    END-WORK        
*S**    /*  
*S**    ESCAPE BOTTOM(PROG.) IMMEDIATE          
*S**  END-REPEAT /* PROG.           
*S***       
*S*** Issue final END TRANSACTION   
*S**  PERFORM COMMIT-OR-BACKOUT     
*S***       
*S*** Print job statistics          
*S**  ADD #INPUT-COUNTER-NC TO #BYPASS-COUNTER  
*S**  WRITE(1) NOTITLE  
*S**    15T 'Federal input:' /      
*S**    17T 'Records read:'         
*S**                        (I) 55T #INPUT-COUNTER (EM=Z,ZZZ,ZZ9) /     
*S**    19T 'Automatic ISIRs:'      
*S**                        (I) 55T #INPUT-COUNTER-A (EM=Z,ZZZ,ZZ9) /   
*S**    19T 'Corrected ISIRs:'      
*S**                        (I) 55T #INPUT-COUNTER-C (EM=Z,ZZZ,ZZ9) /   
*S**    19T 'Invalid college code:' 
*S**                        (I) 55T #INPUT-COUNTER-NC (EM=Z,ZZZ,ZZ9) /  
*S**    15T 'FINANCIER processing:' /           
*S**    17T 'ADD records added:'    
*S**                        (I) 55T #NEW-COUNTER (EM=Z,ZZZ,ZZ9) /       
*S**    17T 'ADD records updated:'  
*S**                        (I) 55T #REPLACE-COUNTER (EM=Z,ZZZ,ZZ9) /   
*S**    17T 'ISIR records bypassed:'
*S**                        (I) 55T #BYPASS-COUNTER (EM=Z,ZZZ,ZZ9) ///  
*S***       
*S***       
*S*************************************************************************         
*S**DEFINE SUBROUTINE MAIN-PROCESS  
*S*************************************************************************         
*S**  /*    
*S**  ADD 1 TO #INPUT-COUNTER       
*S**  ADD 1 TO #ET-READ-COUNTER     
*S**  /*    
*S**  /* SID determination          
*S**  MOVE WF27FEDL.WF-FE-NM-LAST TO #PASS-NM-LAST          
*S**  MOVE WF27FEDL.WF-FE-NM-FIRST TO #PASS-NM-FIRST        
*S**  MOVE WF27FEDL.WF-FE-NM-MIDDLE TO #PASS-NM-MI          
*S**  PERFORM DETERMINE-SID WF27FEDL.WF-FE-SSN #PASS-NM-LAST #PASS-NM-FIRST         
*S**                        #PASS-NM-MI WF-FE-DOB #PASS-SID 
*S**  /*    
*S**  /* FAO determination          
*S**  MOVE #COLLEGE-SENT TO #PASS-COLLEGE-CODE  
*S**  PERFORM DETERMINE-FAO #PASS-SID #PASS-SOURCE          
*S**                        #PASS-COLLEGE-CODE #PASS-FAO    
*S**  /*    
*S**  /* Check for existing ADD file record     
*S**  MOVE 'GET' TO WWAOBJ.#FUNCTION
*S**  MOVE ##AID-YEAR TO WFADDDSD.WF-AID-YEAR   
*S**  MOVE #PASS-SOURCE TO WFADDDSD.WF-AD-SOURCE
*S**  MOVE #PASS-FAO TO WFADDDSD.WF-FAO         
*S**  MOVE WF27FEDL.WF-FE-SSN TO WFADDDSD.WW-ST-SSN         
*S**  PERFORM CALL-OBJECT-ADD       
*S**  /*    
*S**  IF WWAOBJ.#EXISTS                      /* Current ADD record      
*S**    MOVE WFADDDSD.WF-AD-TRAN TO #FEDERAL-TRAN           
*S**    COMPRESS WW-ST-NM-LAST ',' INTO ##COMP-NAME LEAVING NO          
*S**    COMPRESS ##COMP-NAME WW-ST-NM-FIRST INTO ##COMP-NAME
*S**    /*  
*S**    DECIDE FOR FIRST CONDITION  
*S**      /*
*S**      /* Both records are Corrections       
*S**      WHEN WF-AD-SEND-RSN = 'C' AND #SEND-RSN = 'C'     
*S**        IF WF27FEDL.WF-FE-C-TRANS-NO GE #FEDERAL-TRAN   
*S**          /*        
*S**          /* Incoming record is more current or equal to existing   
*S**          /*  record, purge existing ADD record and add new one     
*S**          MOVE 'DELETE' TO WWAOBJ.#FUNCTION 
*S**          PERFORM CALL-OBJECT-ADD           
*S**          PERFORM CREATE-ADD-RECORD         
*S**          ADD 1 TO #REPLACE-COUNTER         
*S**          WRITE(2) NOTITLE 5T WF27FEDL.WF-FE-SSN(EM=XXX'-'XX'-'XXXX)
*S**                  20T ##COMP-NAME           
*S**                  59T WF27FEDL.WF-FE-C-TRANS-NO 65T #SEND-RSN       
*S**                  72T #FEDERAL-TRAN 78T WFADDDSD.WF-AD-SEND-RSN     
*S**        ELSE        
*S**          /*        
*S**          /* Existing record is more current than incoming          
*S**          /*  record, keep existing ADD record          
*S**          ADD 1 TO #BYPASS-COUNTER          
*S**          WRITE(2) NOTITLE 5T WF27FEDL.WF-FE-SSN(EM=XXX'-'XX'-'XXXX)
*S**                  20T ##COMP-NAME           
*S**                  59T #FEDERAL-TRAN 65T WFADDDSD.WF-AD-SEND-RSN     
*S**                  72T WF27FEDL.WF-FE-C-TRANS-NO 78T #SEND-RSN       
*S**        END-IF      
*S**      /*
*S**      /* Incoming record is Correction      
*S**      WHEN #SEND-RSN = 'C'      
*S**        /*          
*S**        /* Purge existing ADD record and add new one    
*S**        MOVE 'DELETE' TO WWAOBJ.#FUNCTION   
*S**        PERFORM CALL-OBJECT-ADD 
*S**        PERFORM CREATE-ADD-RECORD           
*S**        ADD 1 TO #REPLACE-COUNTER           
*S**        WRITE(2) NOTITLE 5T WF27FEDL.WF-FE-SSN(EM=XXX'-'XX'-'XXXX)  
*S**                20T ##COMP-NAME 
*S**                59T WF27FEDL.WF-FE-C-TRANS-NO 65T #SEND-RSN         
*S**                72T #FEDERAL-TRAN 78T WFADDDSD.WF-AD-SEND-RSN       
*S**      /*
*S**      /* Current ADD record is Correction   
*S**      WHEN WF-AD-SEND-RSN = 'C' 
*S**        /*          
*S**        /* Keep existing ADD record         
*S**        ADD 1 TO #BYPASS-COUNTER
*S**        WRITE(2) NOTITLE 5T WF27FEDL.WF-FE-SSN(EM=XXX'-'XX'-'XXXX)  
*S**                20T ##COMP-NAME 
*S**                59T #FEDERAL-TRAN 65T WFADDDSD.WF-AD-SEND-RSN       
*S**                72T WF27FEDL.WF-FE-C-TRANS-NO 78T #SEND-RSN         
*S**      /*
*S**      /* Incoming record is more current or equal to existing record,           
*S**      /*  purge existing ADD record and add new one     
*S**      WHEN WF27FEDL.WF-FE-C-TRANS-NO GE #FEDERAL-TRAN   
*S**        MOVE 'DELETE' TO WWAOBJ.#FUNCTION   
*S**        PERFORM CALL-OBJECT-ADD 
*S**        PERFORM CREATE-ADD-RECORD           
*S**        ADD 1 TO #REPLACE-COUNTER           
*S**        WRITE(2) NOTITLE 5T WF27FEDL.WF-FE-SSN(EM=XXX'-'XX'-'XXXX)  
*S**                20T ##COMP-NAME 
*S**                59T WF27FEDL.WF-FE-C-TRANS-NO 65T #SEND-RSN         
*S**                72T #FEDERAL-TRAN 78T WFADDDSD.WF-AD-SEND-RSN       
*S**      WHEN NONE     
*S**        /*          
*S**        ADD 1 TO #BYPASS-COUNTER
*S**        WRITE(2) NOTITLE 5T WF27FEDL.WF-FE-SSN(EM=XXX'-'XX'-'XXXX)  
*S**                20T ##COMP-NAME 
*S**                59T #FEDERAL-TRAN 65T WFADDDSD.WF-AD-SEND-RSN       
*S**                72T WF27FEDL.WF-FE-C-TRANS-NO 78T #SEND-RSN         
*S**    END-DECIDE      
*S**  ELSE                                   /* No current ADD record   
*S**    PERFORM CREATE-ADD-RECORD   
*S**    ADD 1 TO #NEW-COUNTER       
*S**  END-IF
*S**  /*    
*S**  IF #ET-READ-COUNTER GE #MAX-READ-HOLD     
*S**    PERFORM COMMIT-OR-BACKOUT   
*S**  END-IF
*S**END-SUBROUTINE /* MAIN-PROCESS  
*S***       
*S*************************************************************************         
*S**DEFINE SUBROUTINE CALL-OBJECT-ADD           
*S*************************************************************************         
*S**  /*    
*S**  /* Call WF-ADD file object subprogram     
*S**  /*  (Year, SSN, source descriptor)        
*S**  CALLNAT 'WFADDDSO' WW-GDA     
*S**           WFADDDSD 
*S**           WFADDDSD-ID          
*S**           WFADDDSR 
*S**           WWAOBJ   
*S**END-SUBROUTINE /* CALL-OBJECT-ADD           
*S***       
*S*************************************************************************         
*S**DEFINE SUBROUTINE CREATE-ADD-RECORD         
*S*************************************************************************         
*S**  /*    
*S**  /* Call WF-ADD file object subprogram     
*S**  /*  (Year, format, SSN decsriptor)        
*S**  MOVE 'STORE' TO WWAOBJ.#FUNCTION          
*S**  RESET WFADDDSD    
*S**  MOVE ##AID-YEAR TO WFADDDSD.WF-AID-YEAR   
*S**  MOVE #PASS-FAO TO WFADDDSD.WF-FAO         
*S**  MOVE #PASS-SOURCE TO WFADDDSD.WF-AD-SOURCE
*S**  MOVE WF27FEDL.WF-FE-SSN TO WFADDDSD.WW-ST-SSN         
*S**  /*    
*S**  /* Load name fields           
*S**  IF ##CNVT-CASE    
*S**    MOVE WF27FEDL.WF-FE-NM-LAST TO #TRANSLATE-FIELD     
*S**    ASSIGN #TRANSLATE-CASE = 'M'
*S**    RESET #REMOVE-SPEC-CH       
*S**    PERFORM TRANSLATE-CASE #TRANSLATE-FIELD #TRANSLATE-CASE         
*S**                           #REMOVE-SPEC-CH  
*S**    ASSIGN WFADDDSD.WW-ST-NM-LAST = #TRANSLATE-FIELD    
*S**    MOVE WF27FEDL.WF-FE-NM-FIRST TO #TRANSLATE-FIELD    
*S**    ASSIGN #TRANSLATE-CASE = 'M'
*S**    RESET #REMOVE-SPEC-CH       
*S**    PERFORM TRANSLATE-CASE #TRANSLATE-FIELD #TRANSLATE-CASE         
*S**                           #REMOVE-SPEC-CH  
*S**    ASSIGN WFADDDSD.WW-ST-NM-FIRST = #TRANSLATE-FIELD   
*S**  ELSE  
*S**    MOVE WF27FEDL.WF-FE-NM-LAST TO WFADDDSD.WW-ST-NM-LAST           
*S**    MOVE WF27FEDL.WF-FE-NM-FIRST TO WFADDDSD.WW-ST-NM-FIRST         
*S**  END-IF
*S**  /*    
*S**  /* Name sort fields           
*S**  MOVE WF27FEDL.WF-FE-NM-LAST TO #TRANSLATE-FIELD       
*S**  ASSIGN #TRANSLATE-CASE = 'U'  
*S**  ASSIGN #REMOVE-SPEC-CH = TRUE 
*S**  PERFORM TRANSLATE-CASE #TRANSLATE-FIELD #TRANSLATE-CASE           
*S**                         #REMOVE-SPEC-CH    
*S**  ASSIGN WFADDDSD.WW-NAME-LAST = #TRANSLATE-FIELD       
*S**  MOVE WF27FEDL.WF-FE-NM-FIRST TO #TRANSLATE-FIELD      
*S**  ASSIGN #TRANSLATE-CASE = 'U'  
*S**  ASSIGN #REMOVE-SPEC-CH = TRUE 
*S**  PERFORM TRANSLATE-CASE #TRANSLATE-FIELD #TRANSLATE-CASE           
*S**                         #REMOVE-SPEC-CH    
*S**  ASSIGN WFADDDSD.WW-NAME-FIRST = #TRANSLATE-FIELD      
*S**  /*    
*S**  MOVE WF27FEDL.WF-FE-NM-MIDDLE TO WFADDDSD.WW-ST-NM-MI 
*S**  IF WF27FEDL.WF-FE-DOB = MASK(YYYYMMDD)    
*S**    MOVE EDITED WF27FEDL.WF-FE-DOB TO WFADDDSD.WW-ST-DOB(EM=YYYYMMDD)           
*S**  END-IF
*S**  MOVE #SEND-RSN TO WFADDDSD.WF-AD-SEND-RSN 
*S**  MOVE #COLLEGE-SENT TO WFADDDSD.WF-AD-COLLEGE          
*S**  MOVE WF27FEDL.WF-FE-C-TRANS-NO TO WFADDDSD.WF-AD-TRAN 
*S**  IF WF27FEDL.WF-FE-C-TRAN-PROC-DATE = MASK(YYYYMMDD)   
*S**    MOVE RIGHT JUSTIFIED WF27FEDL.WF-FE-C-TRAN-PROC-DATE TO         
*S**      #TEMP-RCVD-DATE           
*S**    EXAMINE #TEMP-RCVD-DATE FOR ' ' REPLACE WITH '0'    
*S**    MOVE EDITED #TEMP-RCVD-DATE 
*S**             TO WFADDDSD.WF-AD-RCVD-DATE(EM=YYYYMMDD)   
*S**  END-IF
*S**  MOVE 'N' TO WFADDDSD.WF-AD-NEW-REJ        
*S**  /*    
*S**  /* leave reject fields initialized to space           
*S**  MOVE BY NAME WF27FEDL TO WFADDDSD.WF-ADD-RECORD       
*S**  PERFORM CALL-OBJECT-ADD       
*S**END-SUBROUTINE /* CREATE-ADD-RECORD         
*S***       
*S*************************************************************************         
*S**DEFINE SUBROUTINE COMMIT-OR-BACKOUT         
*S*************************************************************************         
*S**  /*    
*S**  /* Periodically issue END TRANSACTION     
*S**  IF #INPUT-RUNMODE = 'TRIAL'   
*S**    BACKOUT TRANSACTION         
*S**  ELSE  
*S**    END TRANSACTION 
*S**  END-IF
*S**  RESET #ET-READ-COUNTER #ET-WRITE-COUNTER  
*S**END-SUBROUTINE /* COMMIT-OR-BACKOUT         
*S**END     
