*DECK,UPKTR 
USETEXT COMCBEG 
USETEXT COMQDEF 
USETEXT COMQFIL 
USETEXT COMQKDS 
USETEXT COMQNET 
    PROC UPKTR; 
      BEGIN  # UPKTR #
# 
**    UPKTR     UPDATE STATUS,TRANSFER DISPLAY. 
* 
*     UPDATES THE STATUS,TRANSFER DISPLAY.
* 
*     PROC UPKTR
* 
*     ENTRY      DISPLAY HEADER INITIALIZED FOR TRANSFER DISPLAY. 
* 
*     EXIT       DISPLAY ITEM AREA UPDATED. 
* 
*     PROCESS    FOR EACH ACN ON DISPLAY: 
*                  CALL UPKTR1 TO GENERATE ITEMS FOR AFT ENTRY. 
* 
# 
  
# 
****  XREF
# 
      XREF
        BEGIN 
        PROC NAME;                 # DEBUG CODE # 
        PROC UPKTR1;               # GENERATE STATUS FOR ONE ACN #
        END 
  
# 
****  XREF END
# 
  
      ITEM FIRSTACN   U;           # FIRST ACN #
      ITEM LASTACN    U;           # LAST ACN # 
      ITEM ORDINAL    U;           # DISPLAY ITEM ORDINAL # 
      ITEM TMPACN     U;           # SAVE ACN # 
      ITEM TMPFILETAB U;           # SAVE FILETAB POINTER # 
  
        $BEGIN
        NAME("UPKTR");             # DEBUG CODE # 
        $END
  
      TMPFILETAB = P<FILETAB>;     # SAVE CURRENT POINTER # 
      TMPACN = ACN;                # SAVE ACN # 
      FIRSTACN = 1 + ( (KS$CURPAGE[KDIS"TRANSFE"] - 1)
                      * KS$ITPERPG[KDIS"TRANSFE"] );
      IF FIRSTACN GT LACNMAX
      THEN
        BEGIN 
        FIRSTACN = LACNMAX; 
        END 
  
      LASTACN = FIRSTACN - 1 + KS$ITPERPG[KDIS"TRANSFE"]; 
      IF LASTACN GT LACNMAX 
      THEN
        BEGIN 
        LASTACN = LACNMAX;
        END 
  
      ORDINAL = 0;
      SLOWFOR ACN = FIRSTACN STEP 1 UNTIL LASTACN 
      DO
        BEGIN 
        P<FILETAB> = AFT[ACN];
        ORDINAL = ORDINAL + 1;
        UPKTR1(ORDINAL);           # GENERATE DISPLAY # 
        END 
  
      P<FILETAB> = TMPFILETAB;     # RESTORE CURRENT POINTER #
      ACN = TMPACN;                # RESTORE ACN #
  
      END  # UPKTR #
    TERM
