*DECK NP$XCMP 
*IF DEF,XFR 
USETEXT AIPDEF
USETEXT NP$GETS 
USETEXT NP$PUTS 
USETEXT NP$NWL
USETEXT NP$STAT 
USETEXT NP$DB 
USETEXT NX$ACBF 
USETEXT NX$ACBX 
USETEXT NX$MSG
 PROC NP$XCMP ; 
 #
**1DC 
*     1. PROC NAME         AUTHOR        DATE 
*        NP$XCMP           L.T.NGUYEN    83/06/03 
* 
*     2. FUNCTIONAL DESCRIPTION:  
*        CLEAN UP FILE TRANSFER CONNECTION. 
* 
*     3. METHOD USED: 
*        SET THE APPLICATION STATUS ACCORDING TO THE REASON CODE. 
*        SEND LIT/SWH BACK TO ORIGINAL LIST NUMBER. 
*        CLEAR ENTRY IN FTT TABLE.
* 
*     4. INPUT PARAMS:  
*        FTTINDEX - INDEX OF CONNECTION TO BE CLEARED UP. 
* 
*     5. EXIT PARAMS: 
*        NONE.
* 
*     6. NOTES: 
* 
 #
      XREF
        BEGIN 
        PROC NP$PUT ; 
        PROC NP$ZRBK ;
        PROC NP$CIO ;                # CALL CIO                        #
        PROC NP$CMFF; 
        FUNC NP$CDD C(10) ;        # CONVERT INTEGER TO DISPLAY CODE   #
        PROC NP$MSG ; 
        END 
      ITEM SCRATCH ;
      ITEM CODE     I;             # OPERATION CODE                    #
      BEGIN 
  
  
  
  
      P<FET$CIO> = FTTFETADR[FTTINDEX] ; # FET OF CIO BUFFER           #
      P<STATUSWORD> = FTTSTATUS[FTTINDEX] ; 
  
      NUMFILEXFR = NUMFILEXFR - 1 ; 
      CODE = CIO$REWIND;         # REWIND THE FILE                     #
      NP$CIO(CODE) ;             # CALL CIO TO OPEN THE FILE           #
  
# 
      SWITCH THIS CONNECTION TO LIST 0
# 
      LST$ACN[0] = FTTACN[FTTINDEX] ; 
      LST$NLIST[0] = 0 ;
      LOC$HA = LOC(OUT$ABH) ; 
      LOC$TA = LOC(LST$SWH) ; 
      OUT$ABHTLC[0] = 1 ; 
      OPCODE = OP$PUT ; 
*IF DEF,STAT,1
      IAM = TYPE"PUT" ; 
      NP$PUT ;
  
# 
      SET APPLICATION STATUS ACCORDING TO THE STATE TABLE REASON CODE.
# 
      STATUSWD[0] = FTTSTRC[FTTINDEX] ; 
  
# 
      RELEASE ALL THE NEEDED BUFFERS ( CIO FET, WORKING FET, CIO BUFFER 
      WORKING BUFFER ) .
# 
# 
      SET XFR COMPLETION FLAG 
# 
      XFR$COM = TRUE; 
      IDFM$LFN[STATUSWD] = FETLFNC[0] ; 
      NP$MSG(IDFM$MSG[STATUSWD],XFRDTYPE);
      NP$ZRBK(LOC(FETWD[0]),0) ;
      IDFM$LFN[STATUSWD] = FETLFNC[0] ; 
  
      NP$CMFF(P<FET$CIO>) ; 
  
# 
      FREE THE FTT ENTRY. 
# 
      FTTACN[FTTINDEX] = 0 ;
  
      RETURN ;
      END 
      TERM
  
*ENDIF
