User Tools

Site Tools


cdc:nos2.source:opl.opl871:deck:sform.006

Deck SFORM Part 006

49 Modifications

Listing Sections

Source

Seq #  *Modification Id* Act 
----------------------------+
Line S04806 Modification History
M01 (Added by) sform
M02 (Updated by) ns2469
Seq #  *Modification Id* Act 
----------------------------+
07627  M02S04806.ns2469  ---|    END
Line S04807 Modification History
M01 (Added by) sform
M02 (Updated by) ns2469
Seq #  *Modification Id* Act 
----------------------------+
07628  M02S04807.ns2469  ---|  END
Line S04808 Modification History
M01 (Added by) sform
M02 (Updated by) ns2469
Seq #  *Modification Id* Act 
----------------------------+
07629  M02S04808.ns2469  ---|
Line S04809 Modification History
M01 (Added by) sform
M02 (Updated by) ns2469
Seq #  *Modification Id* Act 
----------------------------+
07630  M02S04809.ns2469  ---|GOTO VARITYPE[VARTYPE[VARIND]];
07631  M01S00022.ns2469  +++|VARIND = FLDVARORD[FLDIND];
07632  M01S00023.ns2469  +++|FLDVALID[FLDIND] = TRUE;             # TRUE UNTIL PROVEN FALSE #
07633  M01S00024.ns2469  +++|
07634  M01S00025.ns2469  +++|IF VARMUSENTR[VARIND] AND NOT FLDENTERED[FLDIND] THEN
07635  M01S00026.ns2469  +++|  BEGIN                              # IF MUST ENTERED AND NOT #
07636  M01S00027.ns2469  +++|  FLDVALID[FLDIND] = FALSE;          # PROVEN FALSE #
07637  M01S00028.ns2469  +++|  RETURN;
07638  M01S00029.ns2469  +++|  END
07639  M01S00030.ns2469  +++|
07640  M01S00031.ns2469  +++|ALLBLANK = TRUE;                     # SET FLAGS AND CHECK CHARACTER #
07641  M01S00032.ns2469  +++|STARRED = FALSE;
07642  M01S00033.ns2469  +++|NOTFULL = FALSE;
07643  M01S00034.ns2469  +++|IF NEXTCHAR(FLDIND,0) EQ ASTERISK AND NOT VARMUSKNOW[VARIND] THEN
07644  M01S00035.ns2469  +++|  BEGIN                              # IF ASTERISK AND NOT MUST KNOW #
07645  M01S00036.ns2469  +++|  STARRED = TRUE;
07646  M01S00037.ns2469  +++|  END
07647  M01S00038.ns2469  +++|IF NEXTCHAR(FLDIND,0) NQ BLANK THEN
07648  M01S00039.ns2469  +++|  BEGIN                              # IF NOT A BLANK #
07649  M01S00040.ns2469  +++|  ALLBLANK = FALSE;                  # NOT ALL BLANKS #
07650  M01S00041.ns2469  +++|  END
07651  M01S00042.ns2469  +++|ELSE
07652  M01S00043.ns2469  +++|  BEGIN                              # A BLANK #
07653  M01S00044.ns2469  +++|  NOTFULL = TRUE;                    # UNFULL #
07654  M01S00045.ns2469  +++|  END
07655  M01S00046.ns2469  +++|FOR I = 1 STEP 1 WHILE I LQ FLDLENGTH[FLDIND] -1 DO
07656  M01S00047.ns2469  +++|  BEGIN                              # EXAMINE THE REST OF THE FIELD #
07657  M01S00048.ns2469  +++|  IF NEXTCHAR(FLDIND,I) NQ BLANK THEN
07658  M01S00049.ns2469  +++|    BEGIN                            # IF NOT A BLANK #
07659  M01S00050.ns2469  +++|    ALLBLANK = FALSE;                # NOT ALL BLANKS #
07660  M01S00051.ns2469  +++|    STARRED = FALSE;                 # NOT STARRED #
07661  M01S00052.ns2469  +++|    END
07662  M01S00053.ns2469  +++|  ELSE
07663  M01S00054.ns2469  +++|    BEGIN                            # A BLANK #
07664  M01S00055.ns2469  +++|    NOTFULL = TRUE;                  # UNFULL #
07665  M01S00056.ns2469  +++|    END
07666  M01S00057.ns2469  +++|  END
07667  M01S00058.ns2469  +++|IF STARRED THEN RETURN;              # ASTERISK AND NOT *MUST KNOW* #
07668  M01S00059.ns2469  +++|IF(VARMUSFILL[VARIND] AND FLDENTERED[FLDIND] AND
07669  M01S00060.ns2469  +++|  (NOTFULL AND NOT ALLBLANK)) OR (VARMUSCON[VARIND] AND ALLBLANK) THEN
07670  M01S00061.ns2469  +++|  BEGIN                              # IF MUST FILL AND NOT FULL OR #
07671  M01S00062.ns2469  +++|  FLDVALID[FLDIND] = FALSE;          # MUST CONTAIN AND ALL BLANKS  #
07672  M01S00063.ns2469  +++|  RETURN;
07673  M01S00064.ns2469  +++|  END
07674  M01S00001.sform14 +++|IF NOT VARMUSENTR[VARIND] AND ALLBLANK THEN RETURN;
07675  M01S00065.ns2469  +++|
07676  M01S00066.ns2469  +++|GOTO VARITYPE[VARTYPE[VARIND]];
07677  M01S04810.sform   +++|
07678  M01S04811.sform   +++|RESERV:
07679  M01S04812.sform   +++|CHARACVAR:                           # VALIDATE CHARACTER VARIABLE #
07680  M01S04813.sform   +++|
07681  M01S04814.sform   +++|  IF VARVALM[VARIND] THEN MATCHV(FLDIND);
07682  M01S04815.sform   +++|  IF VARPICTYPE[VARIND] NQ 0 THEN PICVAL(FLDIND);
07683  M01S04816.sform   +++|  RETURN;
07684  M01S04817.sform   +++|
07685  M01S04818.sform   +++|INTEGERVAR:                          # VALIDATE INTEGER VARIABLE #
07686  M01S04819.sform   +++|
07687  M01S04820.sform   +++|  IF VARPICTYPE[VARIND] GR FORMTYPE"E" THEN
07688  M01S04821.sform   +++|    BEGIN                            # DATE VALIDATION #
07689  M01S04822.sform   +++|    DATEVL(FLDIND,IVAL,EVAL);
07690  M01S04823.sform   +++|    END
07691  M01S04824.sform   +++|  ELSE
07692  M01S04825.sform   +++|    BEGIN
07693  M01S04826.sform   +++|    NCHECK(FLDIND,IVAL,EVAL,INPTYPE,DOLLARSIGN);
07694  M01S04827.sform   +++|    IF INPTYPE EQ FORMTYPE"BAD" OR INPTYPE GR VARPICTYPE[VARIND]
07695  M01S04828.sform   +++|      OR VARPICTYPE[VARIND] EQ FORMTYPE"E" AND DOLLARSIGN THEN
07696  M01S04829.sform   +++|      BEGIN
07697  M01S04830.sform   +++|      FLDVALID[FLDIND] = FALSE;
07698  M01S04831.sform   +++|      RETURN;
07699  M01S04832.sform   +++|      END
07700  M01S04833.sform   +++|    END
07701  M01S04834.sform   +++|  IF VARVALM[VARIND] THEN MATCHV(FLDIND);
07702  M01S04835.sform   +++|  IF VARVALR[VARIND] THEN IRANGE(FLDIND,IVAL,EVAL);
07703  M01S04836.sform   +++|  RETURN;
07704  M01S04837.sform   +++|
07705  M01S04838.sform   +++|REALVAR:                             # VALIDATE REAL VARIABLE #
07706  M01S04839.sform   +++|
07707  M01S04840.sform   +++|  IF VARPICTYPE[VARIND] GR FORMTYPE"E" THEN
07708  M01S04841.sform   +++|    BEGIN
07709  M01S04842.sform   +++|    DATEVL(FLDIND,IVAL,EVAL);
07710  M01S04843.sform   +++|    END
07711  M01S04844.sform   +++|  ELSE
07712  M01S04845.sform   +++|    BEGIN
07713  M01S04846.sform   +++|    NCHECK(FLDIND,IVAL,EVAL,INPTYPE,DOLLARSIGN);
07714  M01S04847.sform   +++|    IF INPTYPE EQ FORMTYPE"BAD" OR INPTYPE GR VARPICTYPE[VARIND]
07715  M01S04848.sform   +++|      OR VARPICTYPE[VARIND] EQ FORMTYPE"E" AND DOLLARSIGN THEN
07716  M01S04849.sform   +++|      BEGIN
07717  M01S04850.sform   +++|      FLDVALID[FLDIND] = FALSE;
07718  M01S04851.sform   +++|      RETURN;
07719  M01S04852.sform   +++|      END
07720  M01S04853.sform   +++|    END
07721  M01S04854.sform   +++|  IF VARVALM[VARIND] THEN MATCHV(FLDIND);
07722  M01S04855.sform   +++|  IF VARVALR[VARIND] THEN REALRANGE(FLDIND,IVAL,EVAL);
Line S04856 Modification History
M01 (Added by) sform
M02 (Updated by) ns2469
Seq #  *Modification Id* Act 
----------------------------+
07723  M02S04856.ns2469  ---|  RETURN;
07724  M01S04857.sform   +++|
07725  M01S04858.sform   +++|END  # VALIDF #
07726  M01S04859.sform   +++|CONTROL EJECT;
07727  M01S04860.sform   +++|
07728  M01S04861.sform   +++|PROC WRIALL;
07729  M01S04862.sform   +++|
07730  M01S04863.sform   +++|# TITLE WRIALL - WRITE ALL PANELS. #
07731  M01S04864.sform   +++|
07732  M01S04865.sform   +++|BEGIN  # WRIALL #
07733  M01S04866.sform   +++|
07734  M01S04867.sform   +++|#
07735  M01S04868.sform   +++|**    WRIALL - WRITE ALL PANELS.
07736  M01S04869.sform   +++|*
07737  M01S04870.sform   +++|*     THIS PROCEDURE REWRITES ALL PANELS THAT ARE ON THE SCREEN IN
07738  M01S04871.sform   +++|*     THE ORDER THAT THEY WERE WRITTEN.
07739  M01S04872.sform   +++|*
07740  M01S04873.sform   +++|*     PROC WRIALL
07741  M01S04874.sform   +++|*
Line S04875 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07742  M02S04875.242l642 ---|*     ENTRY    ACTIVEPAN  = THE NAME OF THE ACTIVE PANEL.
07743  M01S01176.242l642 +++|*     ENTRY    TERACTPANL = THE NAME OF THE ACTIVE PANEL.
07744  M01S04876.sform   +++|*              PLTNUMONSC = THE NUMBER OF PANELS ON THE SCREEN.
07745  M01S04877.sform   +++|*
07746  M01S04878.sform   +++|*     EXIT     COMPLETE SCREEN REWRITTEN.
07747  M01S04879.sform   +++|*
Line S01177 Modification History
M01 (Added by) 242l642
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
07748  M02S01177.ns2346  ---|*     CALLS   CLRLNS, POSARR, REWFLD, VDTCLS, VDTPRO, WRIBOX, WRITES.
Line S00037 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07749  M02S00037.ns2503  ---|*     CALLS    CLRLNS, POSARR, REWFLD, VDTCLS, VDTPRO, VDTSAM, WRIBOX,
Line S00038 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07750  M02S00038.ns2503  ---|*              WRITES.
07751  M01S00001.ns2503  +++|*     CALLS    CLRLNS, POSARR, REWFLD, VDTCAA, VDTCLS, VDTPRO, VDTSAM,
07752  M01S00002.ns2503  +++|*              WRIBOX, WRITES.
07753  M01S01178.242l642 +++|*
07754  M01S04880.sform   +++|*     NOTES    THIS PROCEDURE IS CALLED BY READ IN THE CASE OF
07755  M01S04881.sform   +++|*              A CLEAR PAGE AND BY WRIPAN IF AN OVERLAY WRITE
07756  M01S04882.sform   +++|*              HAS CAUSED A SHIFT FROM 80 TO 132 COLUMN MODE.
07757  M01S04883.sform   +++|*              IF THE ACTIVE PANEL IS NOT THE LAST PANEL TO BE
07758  M01S04884.sform   +++|*              REWRITTEN THEN ITS VARIABLES WILL BE REWRITTEN
07759  M01S04885.sform   +++|*              ONCE MORE TO INSURE THAT THEY ARE CORRECT.
07760  M01S04886.sform   +++|#
07761  M01S04887.sform   +++|ITEM PANELADDR  I;                   # PANEL ADDRESS #
07762  M01S04888.sform   +++|ITEM PANELNAME  C(7);                # PANEL NAME #
07763  M01S04889.sform   +++|ITEM PLTINDEX   I;                   # PANEL LOAD TABLE INDEX #
07764  M01S04890.sform   +++|ITEM NUMWRITTEN I;                   # NUMBER OF PANELS WRITTEN #
07765  M01S04891.sform   +++|
07766  M01S04892.sform   +++|VDTCLS;                              # CLEAR SCREEN #
07767  M01S04893.sform   +++|NUMWRITTEN = 0;                      # NO PANELS WRITTEN YET #
07768  M01S04894.sform   +++|
07769  M01S04895.sform   +++|WHYLE NUMWRITTEN NQ PLTNUMONSC[0] DO
07770  M01S04896.sform   +++|  BEGIN
07771  M01S04897.sform   +++|  NUMWRITTEN = NUMWRITTEN + 1;
07772  M01S04898.sform   +++|  PLTINDEX = 1;                      # FIND CORRECT PANEL #
07773  M01S04899.sform   +++|  WHYLE PLTENTRYNM[PLTINDEX] NQ NUMWRITTEN DO
07774  M01S04900.sform   +++|    BEGIN
07775  M01S04901.sform   +++|    PLTINDEX = PLTINDEX + 1;
07776  M01S04902.sform   +++|    END
07777  M01S04903.sform   +++|  PANELNAME = PLTENAME[PLTINDEX];    # WRITE PANEL #
07778  M01S04904.sform   +++|  PANELADDR = PLTADDR[PLTINDEX];
Line S04905 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07779  M02S04905.252l678 ---|  IF PLTNUMONSC[0] NQ 1 THEN POSARR(PANELADDR);
Line S00226 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07780  M02S00226.ns2503  ---|  IF PLTNUMONSC[0] NQ 1 THEN
Line S00227 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07781  M02S00227.ns2503  ---|    BEGIN                            # IF MORE THAN ONE ON SCREEN #
Line S00228 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07782  M02S00228.ns2503  ---|    POSARR(PANELADDR);
Line S00229 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07783  M02S00229.ns2503  ---|    END
Line S00230 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07784  M02S00230.ns2503  ---|  ELSE
Line S00231 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07785  M02S00231.ns2503  ---|    BEGIN                            # JUST ONE ON SCREEN #
Line S00232 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07786  M02S00232.ns2503  ---|    VDTPRO(OUT"PROTECTALL");
Line S00233 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07787  M02S00233.ns2503  ---|    END
07788  M01S00003.ns2503  +++|  IF PLTNUMONSC[0] NQ 1 THEN POSARR(PANELADDR);
07789  M01S04906.sform   +++|  IF NOT PANPRIPAN[0] THEN CLRLNS;
07790  M01S04907.sform   +++|  IF PANSTRFLD[0] NQ 0 THEN WRITES;
07791  M01S04908.sform   +++|  IF PANSTRBOX[0] NQ 0 THEN WRIBOX;
07792  M01S04909.sform   +++|  END
07793  M01S04910.sform   +++|
Line S04911 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07794  M02S04911.242l642 ---|IF PANELNAME NQ ACTIVEPAN THEN
07795  M01S01179.242l642 +++|IF PANELNAME NQ TERACTPANL[0] THEN
07796  M01S04912.sform   +++|  BEGIN                              # IF NEED TO REWRITE VARIABLES #
Line S04913 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07797  M02S04913.242l642 ---|  PANELADDR = PLTADDR[ACTPANPLTI];
07798  M01S01180.242l642 +++|  PANELADDR = PLTADDR[TERACTPLTI[0]];
07799  M01S04914.sform   +++|  POSARR(PANELADDR);
07800  M01S04915.sform   +++|  IF PANPRIPAN[0] THEN
07801  M01S04916.sform   +++|    BEGIN                            # IF PRIMARY PANEL #
Line S04917 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
07802  M02S04917.ns2346  ---|    VDTPRO;
Line S00039 Modification History
M01 (Added by) ns2346
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07803  M02S00039.252l678 ---|    VDTPRO(OUT"PROTECTALL");         # ISSUE GLOBAL PROTECT #
Line S04918 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07804  M02S04918.252l678 ---|    IF PANNUMBYTE[0] NQ 0 THEN REWFLD;
Line S00234 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07805  M02S00234.ns2503  ---|    IF NOT TERPROCLRS[0] THEN
Line S00235 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07806  M02S00235.ns2503  ---|      BEGIN                          # IF PROTECT DOES NOT CLEAR #
Line S00236 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07807  M02S00236.ns2503  ---|      VDTPRO(OUT"PROTECTALL");       # ISSUE GLOBAL PROTECT #
Line S00237 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07808  M02S00237.ns2503  ---|      IF PANNUMBYTE[0] NQ 0 THEN REWFLD;
Line S00238 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07809  M02S00238.ns2503  ---|      END
07810  M01S00004.ns2503  +++|    IF NOT TERPROCLRS[0] THEN VDTPRO(OUT"PROTECTALL");
07811  M01S00005.ns2503  +++|    IF PANNUMBYTE[0] NQ 0 THEN REWFLD;
07812  M01S04919.sform   +++|    END
07813  M01S04920.sform   +++|  ELSE
07814  M01S04921.sform   +++|    BEGIN                            # IF OVERLAY PANEL #
07815  M01S04922.sform   +++|    CLRLNS;
07816  M01S04923.sform   +++|    IF PANSTRFLD[0] NQ 0 THEN WRITES;
07817  M01S04924.sform   +++|    IF PANSTRBOX[0] NQ 0 THEN WRIBOX;
07818  M01S04925.sform   +++|    END
07819  M01S04926.sform   +++|  END
07820  M01S04927.sform   +++|
Line S04928 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
07821  M02S04928.ns2346  ---|VDTCAA;                              # CLEAR ALL ATTRIBUTES #
Line S00040 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2356
Seq #  *Modification Id* Act 
----------------------------+
07822  M02S00040.ns2356  ---|VDTSAM(0);                           # CLEAR ALL ATTRIBUTES #
07823  M01S00025.ns2356  +++|  IF NOT TERBLCKMDE[0] THEN VDTSAM(0); ELSE VDTCAA(0);
Line S04929 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07824  M02S04929.242l642 ---|VDTEOO;
07825  M01S04930.sform   +++|
07826  M01S04931.sform   +++|END  # WRIALL #
07827  M01S04932.sform   +++|CONTROL EJECT;
07828  M01S04933.sform   +++|
07829  M01S04934.sform   +++|PROC WRIBOX;
07830  M01S04935.sform   +++|
07831  M01S04936.sform   +++|# TITLE WRIBOX - WRITE BOX. #
07832  M01S04937.sform   +++|
07833  M01S04938.sform   +++|BEGIN  # WRIBOX #
07834  M01S04939.sform   +++|
07835  M01S04940.sform   +++|#
07836  M01S04941.sform   +++|**    WRIBOX - WRITE BOX.
07837  M01S04942.sform   +++|*
07838  M01S04943.sform   +++|*     THIS PROCEDURE WRITES THE BOXES DEFINED IN THE BOX LIST OF
07839  M01S04944.sform   +++|*     THE ACTIVE PANEL TO THE SCREEN.
07840  M01S04945.sform   +++|*
07841  M01S04946.sform   +++|*     PROC WRIBOX
07842  M01S04947.sform   +++|*
07843  M01S01181.242l642 +++|*     CALLS   VDTBOX, VDTDRW, VDTPOS, VDTPRO, VDTSAM.
07844  M01S01182.242l642 +++|*
07845  M01S04948.sform   +++|*     NOTES   WRIBOX DOES CURSOR POSITIONING AND ATTRIBUTE SELECTION
07846  M01S04949.sform   +++|*             (WHICH INCLUDES SELECTION OF THE PROPER LINE WEIGHT
07847  M01S04950.sform   +++|*             FOR THE LINE DRAWING CHARACTER SET) AND DOES NOT DE-
07848  M01S04951.sform   +++|*             PEND ON THE CALLING PROCEDURE FOR THESE FUNCTIONS.
07849  M01S04952.sform   +++|#
07850  M01S04953.sform   +++|ITEM BOXINDEX   I;                   # INDEX INTO THE BOX LIST #
Line S04954 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07851  M02S04954.252l678 ---|ITEM CURORD     I;                   # CURRENT ATTRIBUTE ORDINAL #
07852  M01S04955.sform   +++|ITEM CURWEIGHT  I;                   # CURRENT LINE WEIGHT #
07853  M01S04956.sform   +++|ITEM NUMCHARS   I;                   # NUMBER OF CHARACTERS #
07854  M01S04957.sform   +++|
Line S04958 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
07855  M02S04958.ns2346  ---|IF PANSTRFLD[0] EQ 0 THEN VDTPRO;    # PROTECT SCREEN IF NO FIELDS #
Line S00041 Modification History
M01 (Added by) ns2346
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07856  M02S00041.252l678 ---|IF PANSTRFLD[0] EQ 0 THEN VDTPRO(OUT"PROTECTALL");  # IF NO FIELDS #
07857  M01S00239.252l678 +++|IF PANSTRFLD[0] EQ 0 AND NOT TERPROCLRS[0] THEN
07858  M01S00240.252l678 +++|  BEGIN                              # IF NO FIELDS AND NO CLEAR #
07859  M01S00241.252l678 +++|  VDTPRO(OUT"PROTECTALL");           # ISSUE GLOBAL PROTECT #
07860  M01S00242.252l678 +++|  END
07861  M01S04959.sform   +++|
Line S04960 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07862  M02S04960.252l678 ---|CURORD = -1;                         # NO CURRENT ATTRIBUTES YET #
07863  M01S00243.252l678 +++|TERCURVORD[0] = -1;                  # NO CURRENT ATTRIBUTES YET #
07864  M01S04961.sform   +++|CURWEIGHT = -1;                      # NO CURRENT LINE WEIGHT YET #
07865  M01S04962.sform   +++|
07866  M01S04963.sform   +++|FOR BOXINDEX = 0 STEP 1 WHILE BOXWORD[BOXINDEX] NQ 0 DO
07867  M01S04964.sform   +++|  BEGIN                              # CHECK FOR ATTRIBUTE CHANGE #
Line S04965 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07868  M02S04965.252l678 ---|  IF BOXATTORD[BOXINDEX] NQ CURORD THEN
07869  M01S00244.252l678 +++|  IF BOXATTORD[BOXINDEX] NQ TERCURVORD[0] THEN
07870  M01S04966.sform   +++|    BEGIN                            # SET NEW ATTRIBUTES #
Line S04967 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07871  M02S04967.252l678 ---|    CURORD = BOXATTORD[BOXINDEX];
Line S04968 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07872  M02S04968.252l678 ---|    VDTSAM(ATTMASK[CURORD]);
07873  M01S00245.252l678 +++|    TERCURVORD[0] = BOXATTORD[BOXINDEX];
07874  M01S00246.252l678 +++|    IF NOT TERATTRCHR[0] THEN VDTSAM(ATTMASK[TERCURVORD[0]]);
07875  M01S04969.sform   +++|    END
Line S04970 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07876  M02S04970.252l678 ---|  IF ATTLINEWT[CURORD] NQ CURWEIGHT THEN
07877  M01S00247.252l678 +++|  IF ATTLINEWT[TERCURVORD[0]] NQ CURWEIGHT THEN
07878  M01S04971.sform   +++|    BEGIN                            # SET NEW LINE WEIGHT #
Line S04972 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07879  M02S04972.252l678 ---|    CURWEIGHT = ATTLINEWT[CURORD];
07880  M01S00248.252l678 +++|    CURWEIGHT = ATTLINEWT[TERCURVORD[0]];
07881  M01S04973.sform   +++|    VDTDRW(CURWEIGHT);
07882  M01S04974.sform   +++|    END
07883  M01S04975.sform   +++|  IF BOXREPEAT[BOXINDEX] GR 1 THEN
07884  M01S04976.sform   +++|    BEGIN                            # IF HORIZONTAL / VERTICAL LINE #
07885  M01S04977.sform   +++|    IF BOXCHAR[BOXINDEX] EQ 0 THEN
07886  M01S04978.sform   +++|      BEGIN                          # IF HORIZONTAL LINE #
Line S04979 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07887  M02S04979.242l642 ---|      IF BOXYCORD[BOXINDEX] LQ NUMLINES THEN
07888  M01S01183.242l642 +++|      IF BOXYCORD[BOXINDEX] LQ TERNUMLNES[0] THEN
07889  M01S04980.sform   +++|        BEGIN                        # IF LINE WITHIN LINE BOUNDARY #
07890  M01S04981.sform   +++|        VDTPOS(BOXXCORD[BOXINDEX],BOXYCORD[BOXINDEX]);
07891  M01S04982.sform   +++|        FOR NUMCHARS = 0 STEP 1 UNTIL BOXREPEAT[BOXINDEX]-1 DO
07892  M01S04983.sform   +++|          BEGIN                      # OUTPUT HORIZONTAL LINE #
Line S04984 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07893  M02S04984.242l642 ---|          IF BOXXCORD[BOXINDEX] + NUMCHARS LQ NUMCOLS THEN
07894  M01S01184.242l642 +++|          IF BOXXCORD[BOXINDEX] + NUMCHARS LQ TERNUMCOLS[0] THEN
07895  M01S04985.sform   +++|            BEGIN                    # IF WITHIN COLUMN BOUNDARY #
07896  M01S04986.sform   +++|            VDTBOX(BOXCHAR[BOXINDEX]);
07897  M01S04987.sform   +++|            END
07898  M01S04988.sform   +++|          END
07899  M01S04989.sform   +++|        END
07900  M01S04990.sform   +++|      END
07901  M01S04991.sform   +++|    ELSE
07902  M01S04992.sform   +++|      BEGIN                          # IF VERTICAL LINE #
Line S04993 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07903  M02S04993.242l642 ---|      IF BOXXCORD[BOXINDEX] LQ NUMCOLS THEN
07904  M01S01185.242l642 +++|      IF BOXXCORD[BOXINDEX] LQ TERNUMCOLS[0] THEN
07905  M01S04994.sform   +++|        BEGIN                        # IF LINE WITHIN COLUMN BOUNDARY #
07906  M01S04995.sform   +++|        FOR NUMCHARS = 0 STEP 1 UNTIL BOXREPEAT[BOXINDEX]-1 DO
07907  M01S04996.sform   +++|          BEGIN                      # OUTPUT VERTICAL LINE #
Line S04997 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07908  M02S04997.242l642 ---|          IF BOXYCORD[BOXINDEX] + NUMCHARS LQ NUMLINES THEN
07909  M01S01186.242l642 +++|          IF BOXYCORD[BOXINDEX] + NUMCHARS LQ TERNUMLNES[0]THEN
07910  M01S04998.sform   +++|            BEGIN                    # IF WITHIN LINE BOUNDARY #
07911  M01S04999.sform   +++|            VDTPOS(BOXXCORD[BOXINDEX],BOXYCORD[BOXINDEX]+NUMCHARS);
07912  M01S05000.sform   +++|            VDTBOX(BOXCHAR[BOXINDEX]);
07913  M01S05001.sform   +++|            END
07914  M01S05002.sform   +++|          END
07915  M01S05003.sform   +++|        END
07916  M01S05004.sform   +++|      END
07917  M01S05005.sform   +++|    END
07918  M01S05006.sform   +++|  ELSE
07919  M01S05007.sform   +++|    BEGIN                            # OUTPUT SINGLE BOX CHARACTER #
Line S05008 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07920  M02S05008.242l642 ---|    IF BOXYCORD[BOXINDEX] LQ NUMLINES
Line S05009 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07921  M02S05009.242l642 ---|      AND BOXXCORD[BOXINDEX] LQ NUMCOLS THEN
07922  M01S01187.242l642 +++|    IF BOXYCORD[BOXINDEX] LQ TERNUMLNES[0]
07923  M01S01188.242l642 +++|      AND BOXXCORD[BOXINDEX] LQ TERNUMCOLS[0] THEN
07924  M01S05010.sform   +++|      BEGIN                          # IF CHARACTER WITHIN BOUNDARIES #
07925  M01S05011.sform   +++|      VDTPOS(BOXXCORD[BOXINDEX],BOXYCORD[BOXINDEX]);
07926  M01S05012.sform   +++|      VDTBOX(BOXCHAR[BOXINDEX]);
07927  M01S05013.sform   +++|      END
07928  M01S05014.sform   +++|    END
07929  M01S05015.sform   +++|  END
07930  M01S05016.sform   +++|
07931  M01S05017.sform   +++|VDTDRW(0);                           # TURN OFF LINE DRAWING #
07932  M01S05018.sform   +++|
07933  M01S05019.sform   +++|END  # WRIBOX #
07934  M01S05020.sform   +++|CONTROL EJECT;
07935  M01S05021.sform   +++|
07936  M01S05022.sform   +++|PROC WRIPAN;
07937  M01S05023.sform   +++|
07938  M01S05024.sform   +++|# TITLE WRIPAN - WRITE PANEL. #
07939  M01S05025.sform   +++|
07940  M01S05026.sform   +++|BEGIN  # WRIPAN #
07941  M01S05027.sform   +++|
07942  M01S05028.sform   +++|#
07943  M01S05029.sform   +++|**    WRIPAN - WRITE PANEL.
07944  M01S05030.sform   +++|*
07945  M01S05031.sform   +++|*     THIS PROCEDURE DETERMINES IF THE PANEL TO BE WRITTEN IS
07946  M01S05032.sform   +++|*     A PRIMARY OR AN OVERLAY PANEL, ASSURES THAT THE TERMINAL
07947  M01S05033.sform   +++|*     IS IN SCREEN MODE AND CALLS THE PROPER ROUTINES TO WRITE
07948  M01S05034.sform   +++|*     THE PANEL TO THE SCREEN.
07949  M01S05035.sform   +++|*
07950  M01S05036.sform   +++|*     PROC WRIPAN
07951  M01S05037.sform   +++|*
Line S05038 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07952  M02S05038.242l642 ---|*     ENTRY   ACTIVEPAN  = THE NAME OF THE PANEL TO BE WRITTEN.
Line S05039 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07953  M02S05039.242l642 ---|*             ACTPANPLTI = THE CORRESPONDING PLT INDEX.
07954  M01S01189.242l642 +++|*     ENTRY   TERACTPANL = THE NAME OF THE PANEL TO BE WRITTEN.
07955  M01S01190.242l642 +++|*             TERACTPLTI = THE CORRESPONDING PLT INDEX.
07956  M01S05040.sform   +++|*
07957  M01S05041.sform   +++|*     EXIT    PANEL WRITTEN TO SCREEN.
07958  M01S05042.sform   +++|*
Line S01191 Modification History
M01 (Added by) 242l642
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
07959  M02S01191.ns2346  ---|*     CALLS   REWFLD, SETSRN, WRIALL, WRIBOX, WRITES, VDTCAA, VDTCLS,
Line S01192 Modification History
M01 (Added by) 242l642
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
07960  M02S01192.ns2346  ---|*             VDTGTD, VDTPRO, VDTSTD.
Line S00042 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07961  M02S00042.ns2503  ---|*     CALLS   REWFLD, SETSRN, WRIALL, WRIBOX, WRITES, VDTCLS, VDTGTD,
Line S00043 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
07962  M02S00043.ns2503  ---|*             VDTPRO, VDTSAM, VDTSTD.
07963  M01S00006.ns2503  +++|*     CALLS   REWFLD, SETSRN, WRIALL, WRIBOX, WRITES, VDTCAA, VDTCLS,
07964  M01S00007.ns2503  +++|*             VDTGTD, VDTPRO, VDTSAM, VDTSTD.
07965  M01S01193.242l642 +++|*
07966  M01S05043.sform   +++|*     NOTES   IF AN ATTEMPT IS MADE TO WRITE AN OVERLAY PANEL
07967  M01S05044.sform   +++|*             WITHOUT A PREVIOUS PRIMARY PANEL BEING WRITTEN
07968  M01S05045.sform   +++|*             (I.E. THE TERMINAL IS IN LINE MODE) THEN A DAY-
07969  M01S05046.sform   +++|*             FILE MESSAGE WILL BE ISSUED AND THE PROGRAM WILL
07970  M01S05047.sform   +++|*             BE ABORTED.
07971  M01S05048.sform   +++|#
07972  M01S05049.sform   +++|ITEM FATAL      B = TRUE;            # FATAL ERROR #
07973  M01S05050.sform   +++|ITEM HOLDCOLS   I;                   # NUMBER OF REQUESTED COLUMNS #
07974  M01S05051.sform   +++|ITEM HOLDLINES  I;                   # NUMBER OF REQUESTED LINES #
07975  M01S05052.sform   +++|ITEM MSG        C(25) = " NOT PRIMARY.            ";  # ERROR MSG. #
07976  M01S05053.sform   +++|ITEM PANELADDR  I;                   # ADDRESS OF PANEL RECORD #
07977  M01S05054.sform   +++|ITEM PLTCOUNT   I;                   # COUNTER TO CLEAR PLT #
07978  M01S05055.sform   +++|ITEM PNAME      C(6) = "SFSWRI";     # PROCEDURE NAME #
07979  M01S05056.sform   +++|
Line S05057 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07980  M02S05057.242l642 ---|IF PLTENTRYNM[ACTPANPLTI] NQ 0 THEN
07981  M01S01194.242l642 +++|IF PLTENTRYNM[TERACTPLTI[0]] NQ 0 THEN
07982  M01S05058.sform   +++|  BEGIN                              # IF PANEL IS ON SCREEN #
Line S05059 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
07983  M02S05059.242l642 ---|  VDTBOO;
07984  M01S05060.sform   +++|  IF PANPRIPAN[0] THEN
07985  M01S05061.sform   +++|    BEGIN                            # IF PRIMARY ON SCREEN #
Line S05062 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
07986  M02S05062.ns2346  ---|    IF PLTNUMONSC[0] GR 1 THEN VDTPRO;
Line S00044 Modification History
M01 (Added by) ns2346
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
07987  M02S00044.252l678 ---|    IF PLTNUMONSC[0] GR 1 THEN VDTPRO(OUT"PROTECTALL");
07988  M01S00249.252l678 +++|    IF PLTNUMONSC[0] GR 1 AND NOT TERPROCLRS[0] THEN
07989  M01S00250.252l678 +++|      BEGIN                          # IF MORE THAN 1 AND NO CLEAR #
07990  M01S00251.252l678 +++|      VDTPRO(OUT"PROTECTALL");       # ISSUE GLOBAL PROTECT #
07991  M01S00252.252l678 +++|      END
07992  M01S05063.sform   +++|    IF PANNUMBYTE[0] NQ 0 THEN REWFLD;
07993  M01S05064.sform   +++|    END
07994  M01S05065.sform   +++|  ELSE
07995  M01S05066.sform   +++|    BEGIN                            # IF OVERLAY ON SCREEN #
07996  M01S05067.sform   +++|    CLRLNS;                          # CLEAR NECESSARY LINES #
07997  M01S05068.sform   +++|    IF PANSTRFLD[0] NQ 0 THEN WRITES;
07998  M01S05069.sform   +++|    IF PANSTRBOX[0] NQ 0 THEN WRIBOX;
Line S05070 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
07999  M02S05070.ns2346  ---|    VDTCAA;                          # CLEAR ALL ATTRIBUTES #
Line S00045 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform16
Seq #  *Modification Id* Act 
----------------------------+
08000  M02S00045.sform16 ---|    VDTSAM(0);                       # CLEAR ALL ATTRIBUTES #
08001  M01S00001.sform16 +++|    IF NOT TERBLCKMDE[0] THEN VDTSAM(0); ELSE VDTCAA(0);
08002  M01S00001.sform27 +++|    FOR PLTCOUNT = 1 STEP 1 UNTIL PLTNUMENT[0] DO
08003  M01S00002.sform27 +++|      BEGIN                          # UPDATE SEQUENCE NUMBERS #
08004  M01S00003.sform27 +++|      IF PLTENTRYNM[PLTCOUNT] GR PLTENTRYNM[TERACTPLTI[0]] THEN
08005  M01S00004.sform27 +++|        BEGIN
08006  M01S00005.sform27 +++|        PLTENTRYNM[PLTCOUNT] = PLTENTRYNM[PLTCOUNT]-1;
08007  M01S00006.sform27 +++|        END
08008  M01S00007.sform27 +++|      END
08009  M01S00008.sform27 +++|    PLTENTRYNM[TERACTPLTI[0]] = PLTNUMENT[0];
08010  M01S05071.sform   +++|    END
08011  M01S05072.sform   +++|  END
08012  M01S05073.sform   +++|ELSE
08013  M01S05074.sform   +++|  BEGIN                              # IF PANEL NOT ON SCREEN #
08014  M01S05075.sform   +++|  HOLDCOLS = PANNUMCOLS[0];          # GET REQUESTED COLUMNS #
Line S05076 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08015  M02S05076.242l642 ---|  HOLDLINES = PANNUMLNES[0] + 1;     # GET REQUESTED LINES #
08016  M01S01195.242l642 +++|  HOLDLINES = PANNUMLNES[0];         # GET REQUESTED LINES #
08017  M01S05077.sform   +++|  IF PANPRIPAN[0] THEN
08018  M01S05078.sform   +++|    BEGIN                            # IF PRIMARY NOT ON SCREEN #
08019  M01S05079.sform   +++|    IF NOT TERSCREENM[0] THEN
08020  M01S05080.sform   +++|      BEGIN                          # IF NOT IN SCREEN MODE #
08021  M01S05081.sform   +++|      SETSRN(HOLDCOLS,HOLDLINES);    # SET SCREEN MODE #
08022  M01S05082.sform   +++|      END
08023  M01S05083.sform   +++|    ELSE
08024  M01S05084.sform   +++|      BEGIN
08025  M01S05085.sform   +++|      VDTSTD(HOLDCOLS,HOLDLINES);    # SET SCREEN SIZE #
08026  M01S05086.sform   +++|      VDTGTD(HOLDCOLS,HOLDLINES);    # GET ACTUAL VALUES #
Line S05087 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08027  M02S05087.242l642 ---|      NUMCOLS = HOLDCOLS - 1;        # SET INTERNAL VALUE #
Line S05088 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08028  M02S05088.242l642 ---|      NUMLINES = HOLDLINES - 1;      # SET INTERNAL VALUE #
08029  M01S01196.242l642 +++|      TERNUMCOLS[0] = HOLDCOLS - 1;  # SET INTERNAL VALUE #
08030  M01S01197.242l642 +++|      TERNUMLNES[0] = HOLDLINES - 1; # SET INTERNAL VALUE #
Line S05089 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
08031  M02S05089.252l678 ---|      VDTCLS;                        # CLEAR SCREEN #
08032  M01S05090.sform   +++|      END
08033  M01S00253.252l678 +++|    VDTCLS;
08034  M01S05091.sform   +++|    TERCNWRIOV[0] = TRUE;            # ALLOW OVERLAY WRITE #
08035  M01S05092.sform   +++|    FOR PLTCOUNT = 1 STEP 1 UNTIL PLTNUMENT[0] DO
08036  M01S05093.sform   +++|      BEGIN                          # CLEAR SEQUENCE NUMBERS #
08037  M01S05094.sform   +++|      PLTENTRYNM[PLTCOUNT] = 0;
08038  M01S05095.sform   +++|      END
08039  M01S05096.sform   +++|    PLTNUMONSC[0] = 1;               # ONE PANEL ON SCREEN #
Line S05097 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08040  M02S05097.242l642 ---|    PLTENTRYNM[ACTPANPLTI] = 1;
08041  M01S01198.242l642 +++|    PLTENTRYNM[TERACTPLTI[0]] = 1;
08042  M01S05098.sform   +++|    TERMESWRIT[0] = FALSE;
08043  M01S05099.sform   +++|    TERMESREAD[0] = FALSE;
Line S00254 Modification History
M01 (Added by) 252l678
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
08044  M02S00254.ns2503  ---|    VDTPRO(OUT"PROTECTALL");         # ISSUE GLOBAL PROTECT #
08045  M01S00008.ns2503  +++|    IF TERPROCLRS[0] THEN VDTPRO(OUT"PROTECTALL");
08046  M01S05100.sform   +++|    IF PANSTRFLD[0] NQ 0 THEN WRITES;
08047  M01S05101.sform   +++|    IF PANSTRBOX[0] NQ 0 THEN WRIBOX;
Line S05102 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
08048  M02S05102.ns2346  ---|    VDTCAA;                          # CLEAR ALL ATTRIBUTES #
Line S00046 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2356
Seq #  *Modification Id* Act 
----------------------------+
08049  M02S00046.ns2356  ---|    VDTSAM(0);                       # CLEAR ALL ATTRIBUTES #
08050  M01S00026.ns2356  +++|    IF NOT TERBLCKMDE[0] THEN VDTSAM(0); ELSE VDTCAA(0);
08051  M01S05103.sform   +++|    END
08052  M01S05104.sform   +++|  ELSE
08053  M01S05105.sform   +++|    BEGIN                            # IF OVERLAY NOT ON SCREEN #
Line S05106 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08054  M02S05106.242l642 ---|    IF NOT TERCNWRIOV[0] THEN ERRMSG(ACTIVEPAN,PNAME,MSG,FATAL);
08055  M01S01199.242l642 +++|    IF NOT TERCNWRIOV[0] THEN ERRMSG(TERACTPANL[0],PNAME,MSG,FATAL);
Line S05107 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08056  M02S05107.242l642 ---|    VDTBOO;
08057  M01S05108.sform   +++|    PLTNUMONSC[0] = PLTNUMONSC[0] + 1;
Line S05109 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08058  M02S05109.242l642 ---|    PLTENTRYNM[ACTPANPLTI] = PLTNUMONSC[0];
Line S05110 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08059  M02S05110.242l642 ---|    IF HOLDCOLS GR NUMCOLS OR HOLDLINES GR NUMLINES THEN
08060  M01S01200.242l642 +++|    PLTENTRYNM[TERACTPLTI[0]] = PLTNUMONSC[0];
08061  M01S01201.242l642 +++|    IF HOLDCOLS GR TERNUMCOLS[0] OR HOLDLINES GR TERNUMLNES[0] THEN
08062  M01S05111.sform   +++|      BEGIN
08063  M01S05112.sform   +++|      VDTSTD(HOLDCOLS,HOLDLINES);    # SET SCREEN SIZE #
08064  M01S05113.sform   +++|      VDTGTD(HOLDCOLS,HOLDLINES);    # GET ACTUAL VALUES #
Line S05114 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08065  M02S05114.242l642 ---|      IF HOLDCOLS NQ NUMCOLS+1 OR HOLDLINES NQ NUMLINES+1 THEN
Line S05115 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08066  M02S05115.242l642 ---|        BEGIN                        # IF SCREEN SIZE CHANGED #
Line S05116 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08067  M02S05116.242l642 ---|        NUMCOLS = HOLDCOLS - 1;      # RESET SCREEN DIMENSIONS #
Line S05117 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08068  M02S05117.242l642 ---|        NUMLINES = HOLDLINES - 1;
08069  M01S01202.242l642 +++|      IF HOLDCOLS NQ TERNUMCOLS[0] + 1 OR
08070  M01S01203.242l642 +++|         HOLDLINES NQ TERNUMLNES[0] + 1 THEN
08071  M01S01204.242l642 +++|        BEGIN                        # IF SCREEN SIZE CHANGED, RESET #
08072  M01S01205.242l642 +++|        TERNUMCOLS[0] = HOLDCOLS - 1;
08073  M01S01206.242l642 +++|        TERNUMLNES[0] = HOLDLINES - 1;
08074  M01S05118.sform   +++|        WRIALL;                      # WRITE ALL PANELS #
08075  M01S05119.sform   +++|        END
08076  M01S05120.sform   +++|      ELSE
08077  M01S05121.sform   +++|        BEGIN                        # NO CHANGE TO SCREEN SIZE #
08078  M01S05122.sform   +++|        CLRLNS;                      # CLEAR NECESSARY LINES #
08079  M01S05123.sform   +++|        IF PANSTRFLD[0] NQ 0 THEN WRITES;
08080  M01S05124.sform   +++|        IF PANSTRBOX[0] NQ 0 THEN WRIBOX;
Line S05125 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
08081  M02S05125.ns2346  ---|        VDTCAA;                      # CLEAR ALL ATTRIBUTES #
Line S00047 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2356
Seq #  *Modification Id* Act 
----------------------------+
08082  M02S00047.ns2356  ---|        VDTSAM(0);                   # CLEAR ALL ATTRIBUTES #
08083  M01S00027.ns2356  +++|        IF NOT TERBLCKMDE[0] THEN VDTSAM(0); ELSE VDTCAA(0);
08084  M01S05126.sform   +++|        END
08085  M01S05127.sform   +++|      END
08086  M01S05128.sform   +++|    ELSE
08087  M01S05129.sform   +++|      BEGIN
08088  M01S05130.sform   +++|      CLRLNS;                        # CLEAR NECESSARY LINES #
08089  M01S05131.sform   +++|      IF PANSTRFLD[0] NQ 0 THEN WRITES;
08090  M01S05132.sform   +++|      IF PANSTRBOX[0] NQ 0 THEN WRIBOX;
Line S05133 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
08091  M02S05133.ns2346  ---|      VDTCAA;                        # CLEAR ALL ATTRIBUTES #
Line S00048 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2356
Seq #  *Modification Id* Act 
----------------------------+
08092  M02S00048.ns2356  ---|      VDTSAM(0);                     # CLEAR ALL ATTRIBUTES #
08093  M01S00028.ns2356  +++|      IF NOT TERBLCKMDE[0] THEN VDTSAM(0); ELSE VDTCAA(0);
08094  M01S05134.sform   +++|      END
08095  M01S05135.sform   +++|    END
08096  M01S05136.sform   +++|  END
Line S05137 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08097  M02S05137.242l642 ---|VDTEOO;                              # END OUTPUT SEQUENCE #
08098  M01S05138.sform   +++|
08099  M01S05139.sform   +++|END  # WRIPAN #
08100  M01S05140.sform   +++|CONTROL EJECT;
08101  M01S05141.sform   +++|
08102  M01S05142.sform   +++|PROC WRITES;
08103  M01S05143.sform   +++|
08104  M01S05144.sform   +++|# TITLE WRITES - WRITE SCREEN. #
08105  M01S05145.sform   +++|
08106  M01S05146.sform   +++|BEGIN  # WRITES #
08107  M01S05147.sform   +++|
08108  M01S05148.sform   +++|#
08109  M01S05149.sform   +++|**    WRITES - WRITE SCREEN.
08110  M01S05150.sform   +++|*
08111  M01S05151.sform   +++|*     THIS PROCEDURE WRITES THE PANEL TO THE SCREEN USING THE
08112  M01S05152.sform   +++|*     POSITIONING INFORMATION FOUND IN THE FIELD LIST AND THE
08113  M01S05153.sform   +++|*     DATA FOUND IN THE CONSTANT LIST AND VARIABLE DATA AREAS.
08114  M01S05154.sform   +++|*
08115  M01S05155.sform   +++|*     PROC WRITES
08116  M01S05156.sform   +++|*
08117  M01S05157.sform   +++|*     EXIT    PANEL WRITTEN TO SCREEN.
08118  M01S01207.242l642 +++|*
Line S01208 Modification History
M01 (Added by) 242l642
M02 (Updated by) ns2503
Seq #  *Modification Id* Act 
----------------------------+
08119  M02S01208.ns2503  ---|*     CALLS   SETATR, VDTSTR, WRIVAR.
08120  M01S00009.ns2503  +++|*     CALLS   SETATR, VDTCAA, VDTPRO, VDTSAM, VDTSTR, WRIVAR.
08121  M01S05158.sform   +++|#
Line S05159 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08122  M02S05159.242l642 ---|ITEM CURORD    I;                    # CURRENT ATTRIBUTE ORDINAL #
08123  M01S05160.sform   +++|ITEM FLDINDEX  I;                    # INDEX INTO FIELD LIST #
08124  M01S05161.sform   +++|BASED ARRAY CONSTRING;;              # PASSES ADDRESS TO VDTSTR #
08125  M01S05162.sform   +++|
Line S05163 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
08126  M02S05163.ns2346  ---|VDTPRO;                              # GLOBAL PROTECT #
Line S00049 Modification History
M01 (Added by) ns2346
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
08127  M02S00049.252l678 ---|VDTPRO(OUT"PROTECTALL");             # ISSUE GLOBAL PROTECT #
Line S05164 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
08128  M02S05164.252l678 ---|CURORD = -1;                         # NO CURRENT ATTRIBUTES YET #
Line S01209 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
08129  M02S01209.252l678 ---|LASTPOS = - 1;                       # LAST ATTRIBUTE POSITION #
08130  M01S00255.252l678 +++|TERCURVORD[0] = -1;                  # NO CURRENT ATTRIBUTES YET #
08131  M01S00256.252l678 +++|TERPREVPOS[0] = -1;                  # LAST ATTRIBUTE POSITION #
08132  M01S05165.sform   +++|
08133  M01S00010.ns2503  +++|IF NOT TERPROCLRS[0] THEN VDTPRO(OUT"PROTECTALL");
08134  M01S00011.ns2503  +++|
08135  M01S05166.sform   +++|FOR FLDINDEX = 0 STEP 1 WHILE FLDENTRY[FLDINDEX] NQ 0 DO
08136  M01S05167.sform   +++|  BEGIN
08137  M01S05168.sform   +++|  IF FLDACTIVE[FLDINDEX] THEN
08138  M01S05169.sform   +++|    BEGIN
Line S05170 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08139  M02S05170.242l642 ---|    IF FLDXCORD[FLDINDEX] + FLDLENGTH[FLDINDEX] LQ NUMCOLS + 1
Line S05171 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08140  M02S05171.242l642 ---|      AND FLDYCORD[FLDINDEX] LQ NUMLINES THEN
08141  M01S01210.242l642 +++|    IF FLDXCORD[FLDINDEX] + FLDLENGTH[FLDINDEX] LQ TERNUMCOLS[0] + 1
08142  M01S01211.242l642 +++|      AND FLDYCORD[FLDINDEX] LQ TERNUMLNES[0] THEN
08143  M01S05172.sform   +++|      BEGIN                          # IF FIELD ON SCREEN #
Line S05173 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08144  M02S05173.242l642 ---|      VDTPOS(FLDXCORD[FLDINDEX],FLDYCORD[FLDINDEX]);
Line S05174 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08145  M02S05174.242l642 ---|      IF FLDATTORD[FLDINDEX] NQ CURORD THEN
Line S05175 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08146  M02S05175.242l642 ---|        BEGIN                        # IF NOT CURRENT ATTRIBUTES #
Line S05176 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08147  M02S05176.242l642 ---|        CURORD = FLDATTORD[FLDINDEX];
Line S05177 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08148  M02S05177.242l642 ---|        VDTSAM(ATTMASK[CURORD]);     # SET NEW ATTRIBUTES #
Line S05178 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
08149  M02S05178.242l642 ---|        END
08150  M01S01212.242l642 +++|      SETATR(FLDINDEX);              # SET FIELD ATTRIBUTES #
08151  M01S05179.sform   +++|      IF FLDVARFLAG[FLDINDEX] THEN   # IF VARIABLE FIELD #
08152  M01S05180.sform   +++|        BEGIN
08153  M01S05181.sform   +++|        WRIVAR(FLDINDEX);            # WRITE VARIABLE FIELD #
08154  M01S05182.sform   +++|        END
08155  M01S05183.sform   +++|      ELSE
08156  M01S05184.sform   +++|        BEGIN                        # WRITE CONSTANT FIELD #
08157  M01S05185.sform   +++|        P<CONSTRING>=LOC(RECWORDC[FLDCONOS[FLDINDEX]]);
08158  M01S05186.sform   +++|        VDTSTR(CONSTRING);
08159  M01S05187.sform   +++|        FLDREWRITE[FLDINDEX] = FALSE;  # CLEAR REWRITE FIELD FLAG #
08160  M01S05188.sform   +++|        END
08161  M01S01213.242l642 +++|        IF TERTABPROT[0] THEN
08162  M01S01214.242l642 +++|          BEGIN                      # IF PROTECTED TABBING #
08163  M01S01215.242l642 +++|          IF TERATTRSET[0] THEN
08164  M01S01216.242l642 +++|            BEGIN                    # RESET ATTRIBUTES BEFORE VDTPOS #
Line S01217 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
08165  M02S01217.252l678 ---|            IF CURORD NQ 2 THEN
08166  M01S00257.252l678 +++|            IF TERCURVORD[0] NQ 2 THEN
08167  M01S01218.242l642 +++|              BEGIN                  # IF NOT PROTECTED OUTPUT #
Line S01219 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
08168  M02S01219.252l678 ---|              CURORD = 2;            # SET ORDINAL AND ISSUE IT #
08169  M01S00258.252l678 +++|              TERCURVORD[0] = 2;     # SET ORDINAL AND ISSUE IT #
08170  M01S01220.242l642 +++|              VDTSAM(O"6001");
08171  M01S01221.242l642 +++|              END
08172  M01S01222.242l642 +++|            END
08173  M01S01223.242l642 +++|          END
08174  M01S05189.sform   +++|      END
08175  M01S05190.sform   +++|    ELSE
08176  M01S05191.sform   +++|      BEGIN                          # IF FIELD NOT ON SCREEN #
08177  M01S05192.sform   +++|      FLDACTIVE[FLDINDEX] = FALSE;   # CLEAR ACTIVE FIELD FLAG #
08178  M01S05193.sform   +++|      FLDREWRITE[FLDINDEX] = FALSE;  # CLEAR REWRITE FIELD FLAG #
08179  M01S05194.sform   +++|      END
08180  M01S05195.sform   +++|    END
08181  M01S05196.sform   +++|  END
Line S00050 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2356
Seq #  *Modification Id* Act 
----------------------------+
08182  M02S00050.ns2356  ---|  VDTSAM(0);                         # CLEAR ALL ATTRIBUTES #
Line S00029 Modification History
M01 (Added by) ns2356
M02 (Updated by) sform16
Seq #  *Modification Id* Act 
----------------------------+
08183  M02S00029.sform16 ---|  IF NOT TERBLCKMDE[0] THEN VDTSAM(0); ELSE VDTCAA(0);
08184  M01S00002.sform16 +++|  IF NOT TERBLCKMDE[0] THEN VDTSAM(0); ELSE VDTSAM(O"6001");
08185  M01S05197.sform   +++|
08186  M01S05198.sform   +++|END  # WRITES #
08187  M01S05199.sform   +++|CONTROL EJECT;
08188  M01S05200.sform   +++|
08189  M01S05201.sform   +++|PROC WRIVAR(FLDINDEX);
08190  M01S05202.sform   +++|
08191  M01S05203.sform   +++|# TITLE WRIVAR - WRITE VARIABLE. #
08192  M01S05204.sform   +++|
08193  M01S05205.sform   +++|BEGIN  # WRIVAR #
08194  M01S05206.sform   +++|
08195  M01S05207.sform   +++|#
08196  M01S05208.sform   +++|**    WRIVAR - WRITE VARIABLE.
08197  M01S05209.sform   +++|*
08198  M01S05210.sform   +++|*     THIS PROCEDURE WRITES THE VARIABLE POINTED AT BY FLDINDEX
08199  M01S05211.sform   +++|*     TO THE SCREEN.
08200  M01S05212.sform   +++|*
08201  M01S05213.sform   +++|*     PROC WRIVAR(FLDINDEX)
08202  M01S05214.sform   +++|*
08203  M01S05215.sform   +++|*     ENTRY   FLDINDEX   = INDEX INTO THE FIELD LIST.
08204  M01S05216.sform   +++|*
08205  M01S05217.sform   +++|*     EXIT    VARIABLE WRITTEN TO SCREEN.
08206  M01S05218.sform   +++|*
08207  M01S05219.sform   +++|*     NOTES   CURSOR POSITIONING HAS BEEN DONE BY THE CALLING
08208  M01S05220.sform   +++|*             PROCEDURE AS WELL AS ATTRIBUTE SELECTION.
08209  M01S00001.ns2385  +++|*
08210  M01S00002.ns2385  +++|*     CALLS     VDTPSU.
08211  M01S05221.sform   +++|#
08212  M01S05222.sform   +++|ITEM FLDINDEX   I;                   # INDEX INTO THE FIELD LIST #
08213  M01S05223.sform   +++|
08214  M01S05224.sform   +++|ITEM CHARACTER  I;                   # HOLDS ONE CHARACTER FOR VDTCHR #
08215  M01S05225.sform   +++|ITEM CHARINDEX  I;                   # CHARACTER OFFSET INTO VARDATA #
08216  M01S00010.sform18 +++|ITEM ENDCHAR    I;                   # LOCATION OF LAST NON-BLANK #
08217  M01S05226.sform   +++|ITEM NUMCHARS   I;                   # NUMCHARS TO WRITE #
08218  M01S05227.sform   +++|ITEM WORDINDEX  I;                   # WORD OFFSET INTO VARDATA #
08219  M01S05228.sform   +++|
08220  M01S05229.sform   +++|FLDREWRITE[FLDINDEX] = FALSE;        # CLEAR REWRITE FIELD FLAG #
08221  M01S05230.sform   +++|
08222  M01S05231.sform   +++|IF NOT TERDONTCLR[0] THEN
08223  M01S05232.sform   +++|  BEGIN                              # CLEAR READ FLAGS #
08224  M01S05233.sform   +++|  FLDENTERED[FLDINDEX] = FALSE;
08225  M01S05234.sform   +++|  FLDVALID[FLDINDEX] = FALSE;
Line S05235 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08226  M02S05235.sform18 ---| END
Line S05236 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08227  M02S05236.sform18 ---|IF NOT FLDOUTPUTV[FLDINDEX] THEN
Line S05237 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08228  M02S05237.sform18 ---|  BEGIN                              # IF INPUT ONLY VARIABLE #
Line S05238 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08229  M02S05238.sform18 ---|  FOR NUMCHARS = 0 STEP 1 UNTIL FLDLENGTH[FLDINDEX]-1 DO
Line S05239 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08230  M02S05239.sform18 ---|    BEGIN                            # OUTPUT BLANKS TO SCREEN #
Line S05240 Modification History
M01 (Added by) sform
M02 (Updated by) ns2385
M03 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08231  M03S05240.sform18 ---|    VDTCHR(BLANK);
Line S00003 Modification History
M01 (Added by) ns2385
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08232  M02S00003.sform18 ---|    VDTPSU;
Line S05241 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08233  M02S05241.sform18 ---|    END
Line S05242 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08234  M02S05242.sform18 ---|  END
Line S05243 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08235  M02S05243.sform18 ---|ELSE
08236  M01S00011.sform18 +++|  END
08237  M01S00012.sform18 +++|ENDCHAR = 0;
08238  M01S00013.sform18 +++|IF FLDOUTPUTV[FLDINDEX] THEN
08239  M01S05244.sform   +++|  BEGIN                              # IF NOT INPUT ONLY VARIABLE #
08240  M01S00014.sform18 +++|  CHARINDEX = FLDVDTCORD[FLDINDEX]+FLDLENGTH[FLDINDEX];
08241  M01S00015.sform18 +++|  WORDINDEX = CHARINDEX / 5;
08242  M01S00016.sform18 +++|  CHARINDEX = 2*(CHARINDEX - (WORDINDEX * 5));
08243  M01S00017.sform18 +++|  FOR NUMCHARS = FLDLENGTH[FLDINDEX] STEP -1
08244  M01S00018.sform18 +++|    WHILE NUMCHARS GR ENDCHAR DO
08245  M01S00019.sform18 +++|    BEGIN                            # FIND LAST NON-BLANK CHARACTER #
08246  M01S00020.sform18 +++|    IF CHARINDEX GR 0 THEN CHARINDEX = CHARINDEX - 2;
08247  M01S00021.sform18 +++|    ELSE
08248  M01S00022.sform18 +++|      BEGIN                          # IF AT END OF WORD #
08249  M01S00023.sform18 +++|      CHARINDEX = 8;
08250  M01S00024.sform18 +++|      WORDINDEX = WORDINDEX - 1;     # UPDATE WORD INDEX #
08251  M01S00025.sform18 +++|      END
08252  M01S00026.sform18 +++|    CHARACTER =  C<CHARINDEX,2>VDATAC[WORDINDEX];
08253  M01S00027.sform18 +++|    IF CHARACTER GR O"40" AND CHARACTER LQ O"176" THEN
08254  M01S00028.sform18 +++|      ENDCHAR = NUMCHARS;            # IF DISPLAYABLE NON-BLANK #
08255  M01S00029.sform18 +++|    END
08256  M01S05245.sform   +++|  WORDINDEX = FLDVDTCORD[FLDINDEX] / 5;
08257  M01S05246.sform   +++|  CHARINDEX = 2*(FLDVDTCORD[FLDINDEX] - (WORDINDEX * 5));
Line S05247 Modification History
M01 (Added by) sform
M02 (Updated by) sform18
Seq #  *Modification Id* Act 
----------------------------+
08258  M02S05247.sform18 ---|  FOR NUMCHARS = 0 STEP 1 UNTIL FLDLENGTH[FLDINDEX]-1 DO
08259  M01S00030.sform18 +++|  FOR NUMCHARS = 1 STEP 1 UNTIL ENDCHAR DO
08260  M01S05248.sform   +++|    BEGIN                            # OUTPUT VARIABLE #
08261  M01S05249.sform   +++|    IF CHARINDEX EQ 10 THEN
08262  M01S05250.sform   +++|      BEGIN                          # UPDATE WORD INDEX #
08263  M01S05251.sform   +++|      CHARINDEX = 0;
08264  M01S05252.sform   +++|      WORDINDEX = WORDINDEX + 1;
08265  M01S05253.sform   +++|      END
08266  M01S05254.sform   +++|    CHARACTER = C<CHARINDEX,2>VDATAC[WORDINDEX];
Line S05255 Modification History
M01 (Added by) sform
M02 (Updated by) ns2385
Seq #  *Modification Id* Act 
----------------------------+
08267  M02S05255.ns2385  ---|    IF CHARACTER GQ O"40"
08268  M01S00004.ns2385  +++|    IF CHARACTER GR O"40"
08269  M01S05256.sform   +++|      AND CHARACTER LQ O"176" THEN
Line S05257 Modification History
M01 (Added by) sform
M02 (Updated by) ns2385
Seq #  *Modification Id* Act 
----------------------------+
08270  M02S05257.ns2385  ---|      BEGIN                          # IF DISPLAYABLE CHARACTER #
08271  M01S00005.ns2385  +++|      BEGIN                          # IF NON-BLANK AND DISPLAYABLE #
08272  M01S05258.sform   +++|      VDTCHR(CHARACTER);             # OUTPUT CHARACTER #
08273  M01S05259.sform   +++|      END
08274  M01S05260.sform   +++|    ELSE
Line S05261 Modification History
M01 (Added by) sform
M02 (Updated by) ns2385
Seq #  *Modification Id* Act 
----------------------------+
08275  M02S05261.ns2385  ---|      BEGIN
Line S05262 Modification History
M01 (Added by) sform
M02 (Updated by) ns2385
Seq #  *Modification Id* Act 
----------------------------+
08276  M02S05262.ns2385  ---|      VDTCHR(BLANK);                 # OUTPUT BLANK #
08277  M01S00006.ns2385  +++|      BEGIN                          # BLANK OR NONDISPLAYABLE #
08278  M01S00007.ns2385  +++|      VDTPSU;                        # PSEUDO UNDERLINE #
08279  M01S05263.sform   +++|      END
08280  M01S05264.sform   +++|    CHARINDEX = CHARINDEX + 2;       # UPDATE CHARACTER INDEX #
08281  M01S05265.sform   +++|    END
08282  M01S05266.sform   +++|  END
08283  M01S00031.sform18 +++|FOR NUMCHARS = ENDCHAR+1 STEP 1 UNTIL FLDLENGTH[FLDINDEX] DO
08284  M01S00032.sform18 +++|  BEGIN
08285  M01S00033.sform18 +++|  IF TERBLCKMDE[0] AND FLDINPUTV[FLDINDEX] THEN
08286  M01S00034.sform18 +++|    BEGIN
08287  M01S00035.sform18 +++|    VDTCHR(O"137");                  # SEND UNDERLINE TO SCREEN #
08288  M01S00036.sform18 +++|    END
08289  M01S00037.sform18 +++|  ELSE
08290  M01S00038.sform18 +++|    BEGIN
08291  M01S00039.sform18 +++|    VDTPSU;
08292  M01S00040.sform18 +++|    END
08293  M01S00041.sform18 +++|  END
08294  M01S05267.sform   +++|
08295  M01S05268.sform   +++|END  # WRIVAR #
08296  M01S05269.sform   +++|CONTROL EJECT;
08297  M01S05270.sform   +++|
08298  M01S05271.sform   +++|PROC WRIVCH(FIELD,OFFSET,CHAR);
08299  M01S05272.sform   +++|
08300  M01S05273.sform   +++|# TITLE WRIVCH - WRITE CHARACTER INTO VARDATA. #
08301  M01S05274.sform   +++|
08302  M01S05275.sform   +++|BEGIN  # WRIVCH #
08303  M01S05276.sform   +++|
08304  M01S05277.sform   +++|#
08305  M01S05278.sform   +++|**    WRIVCH - WRITE CHARACTER INTO VARDATA.
08306  M01S05279.sform   +++|*
08307  M01S05280.sform   +++|*     PROC WRIVCH(FIELD,OFFSET,CHAR)
08308  M01S05281.sform   +++|*
08309  M01S05282.sform   +++|*     ENTRY   FIELD      = FIELD INDEX.
08310  M01S05283.sform   +++|*             OFFSET     = CHARACTER POSITION IN FIELD.
08311  M01S05284.sform   +++|*             CHAR       = CHARACTER INPUT.
08312  M01S05285.sform   +++|*
08313  M01S05286.sform   +++|*     EXIT    CHAR WRITTEN INTO VARDATA.
08314  M01S05287.sform   +++|#
08315  M01S05288.sform   +++|ITEM FIELD      I;                   # INDEX OF CURRENT FIELD #
08316  M01S05289.sform   +++|ITEM OFFSET     I;                   # CHARACTER OFFSET INTO FIELD #
08317  M01S05290.sform   +++|ITEM CHAR       I;                   # CHARACTER TO PUT INTO VARDATA #
08318  M01S05291.sform   +++|
08319  M01S05292.sform   +++|ITEM CHARIND    I;                   # CHARACTER INDEX INTO VARDATA #
08320  M01S05293.sform   +++|ITEM CHARPOS    I;                   # CHARACTER POSITION IN VARDATA #
08321  M01S05294.sform   +++|ITEM WORDIND    I;                   # WORD INDEX INTO VARDATA #
08322  M01S05295.sform   +++|
08323  M01S05296.sform   +++|CHARPOS = FLDVDTCORD[FIELD] + OFFSET;
08324  M01S05297.sform   +++|WORDIND = CHARPOS/5;
08325  M01S05298.sform   +++|CHARIND = CHARPOS - 5*WORDIND;
08326  M01S05299.sform   +++|B<CHARIND*12,12>VDATAU[WORDIND] = CHAR;
08327  M01S05300.sform   +++|
08328  M01S05301.sform   +++|END  # WRIVCH #
08329  M01S05302.sform   +++|
08330  M01S05303.sform   +++|END  # SFORM #  TERM
cdc/nos2.source/opl.opl871/deck/sform.006.txt ยท Last modified: by 127.0.0.1