User Tools

Site Tools


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

Deck SFORM Part 004

49 Modifications

Listing Sections

Source

Seq #  *Modification Id* Act 
----------------------------+
05497  M01S00261.243l647 +++|  END
05498  M01S00262.243l647 +++|ELSE
05499  M01S00263.243l647 +++|  BEGIN                              # NO FIELD LIST, ONLY BOXES #
05500  M01S00264.243l647 +++|  P<FLD2LIST> = LOC(ZEROWORD);
05501  M01S00265.243l647 +++|  END
05502  M01S00266.243l647 +++|
05503  M01S00267.243l647 +++|P<VAR2LIST> = PANELADDR + PAN2STRVAR[0];
05504  M01S00268.243l647 +++|P<ATT2LIST> = PANELADDR + PAN2STRATT[0];
05505  M01S00001.sform15 +++|P<ARR2LIST> = PANELADDR + PAN2STRARR[0];
05506  M01S00269.243l647 +++|
05507  M01S00270.243l647 +++|END  # POSTWO #
05508  M01S03559.sform   +++|CONTROL EJECT;
05509  M01S03560.sform   +++|
05510  M01S03561.sform   +++|PROC PSTRNG(FLDIND,MESSNUM);
05511  M01S03562.sform   +++|
05512  M01S03563.sform   +++|# TITLE PSTRNG - PRINT MESSAGE STRING. #
05513  M01S03564.sform   +++|
05514  M01S03565.sform   +++|BEGIN  # PSTRNG #
05515  M01S03566.sform   +++|
05516  M01S03567.sform   +++|#
05517  M01S03568.sform   +++|**    PSTRNG - PRINT MESSAGE STRING.
05518  M01S03569.sform   +++|*
05519  M01S03570.sform   +++|*     THIS PROCEDURE CLEARS THE MESSAGE AREA AND PRINTS A USER OR
05520  M01S03571.sform   +++|*     SMF MESSAGE.
05521  M01S03572.sform   +++|*
05522  M01S03573.sform   +++|*     PROC PSTRNG(FLDIND,MESSNUM)
05523  M01S03574.sform   +++|*
05524  M01S03575.sform   +++|*     ENTRY   FLDIND     = INDEX OF FIELD FOR HELP STRING.
05525  M01S03576.sform   +++|*             MESSNUM    = SWITCH VALUE FOR MESSAGE PROMPT.
05526  M01S03577.sform   +++|*
05527  M01S03578.sform   +++|*     EXIT    MESSAGE TRUNCATED IF NECESSARY AND WRITTEN.
05528  M01S03579.sform   +++|*
Line S03580 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
05529  M02S03580.242l642 ---|*     CALLS   CPANEL, VDTBOO, VDTCHR, VDTCLL, VDTEOO, VDTPOS, VDTSAM
Line S03581 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
05530  M02S03581.242l642 ---|*             VDTSTR.
Line S00845 Modification History
M01 (Added by) 242l642
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
05531  M02S00845.ns2346  ---|*     CALLS   CPANEL, MCLEAN, VDTCAA, VDTCHR, VDTSTR.
05532  M01S00011.ns2346  +++|*     CALLS   CPANEL, MCLEAN, VDTCHR, VDTPOS, VDTSAM, VDTSTR.
05533  M01S03582.sform   +++|*
05534  M01S03583.sform   +++|*     USES    TERHELPREQ, TERMESREAD, TERMESWRIT.
05535  M01S03584.sform   +++|#
05536  M01S03585.sform   +++|ITEM FLDIND     I;                   # INDEX INTO FIELD LIST #
05537  M01S03586.sform   +++|ITEM MESSNUM    S:MESSSTAT;          # SWITCH FOR MESSAGE PROMPT #
05538  M01S03587.sform   +++|
05539  M01S03588.sform   +++|ITEM CINDEX     I;                   # CHARACTER INDEX INTO MESSAGE #
05540  M01S03589.sform   +++|ITEM I          I;                   # LOOP VARIABLE #
05541  M01S03590.sform   +++|ITEM MESCHR     I;                   # HOLDS ONE CHARACTER OF MESSAGE #
05542  M01S03591.sform   +++|ITEM MCOUNT     I;                   # CHARACTER COUNT FOR MESSAGE #
05543  M01S03592.sform   +++|ITEM MSGFIT     B;                   # MESSAGE TRUNCATION FLAG #
05544  M01S03593.sform   +++|ITEM VARIND     I;                   # INDEX INTO VARLIST #
05545  M01S03594.sform   +++|ITEM WINDEX     I;                   # WORD INDEX INTO MESSAGE #
05546  M01S03595.sform   +++|
05547  M01S00846.242l642 +++|*IF UNDEF,QTRM
Line S03596 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05548  M02S03596.sform13 ---|ARRAY CONMESS[0:2] P(1);
Line S03597 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05549  M03S03597.sform13 ---|  BEGIN                              # :I PLEASE CONFIRM #
Line S00847 Modification History
M01 (Added by) 242l642
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05550  M02S00847.sform13 ---|  BEGIN                              # :IPLEASE CONFIRM #
Line S03598 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05551  M02S03598.sform13 ---|  ITEM CONMESSAGE U(00,00,60) = [
Line S03599 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05552  M02S03599.sform13 ---|    O"00112076147605760176",
Line S03600 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05553  M02S03600.sform13 ---|    O"23760555760376177616",
Line S03601 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05554  M02S03601.sform13 ---|    O"76067611762276150000"];
Line S03602 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05555  M02S03602.sform13 ---|  END
Line S03603 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05556  M02S03603.sform13 ---|
Line S03604 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05557  M02S03604.sform13 ---|ARRAY CORMESS[0:2] P(1);
Line S03605 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05558  M02S03605.sform13 ---|  BEGIN                              # :IPLEASE CORRECT #
Line S03606 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05559  M02S03606.sform13 ---|  ITEM CORMESSAGE U(00,00,60) = [
Line S03607 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05560  M02S03607.sform13 ---|    O"00112076147605760176",
Line S03608 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05561  M02S03608.sform13 ---|    O"23760555760376177622",
Line S03609 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05562  M02S03609.sform13 ---|    O"76227605760376240000"];
Line S03610 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05563  M02S03610.sform13 ---|  END
Line S03611 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05564  M02S03611.sform13 ---|
Line S03612 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05565  M02S03612.sform13 ---|ARRAY DEFMESS[0:2] P(1);
Line S03613 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05566  M02S03613.sform13 ---|  BEGIN                              # :IPLEASE ENTER #
Line S03614 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05567  M02S03614.sform13 ---|  ITEM DEFMESSAGE U(00,00,60) = [
Line S03615 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05568  M02S03615.sform13 ---|    O"00112076147605760176",
Line S03616 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05569  M02S03616.sform13 ---|    O"23760555760576167624",
Line S03617 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05570  M02S03617.sform13 ---|    O"76057622000000000000"];
Line S03618 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05571  M02S03618.sform13 ---|  END
Line S03619 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05572  M02S03619.sform13 ---|
Line S03620 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05573  M02S03620.sform13 ---|ARRAY ERRMESS[0:4] P(1);
Line S03621 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05574  M02S03621.sform13 ---|  BEGIN                              # :IPLEASE REENTER INPUT #
Line S03622 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05575  M02S03622.sform13 ---|  ITEM ERRMESSAGE U(00,00,60) = [
Line S03623 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05576  M02S03623.sform13 ---|    O"00112076147605760176",
Line S03624 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05577  M02S03624.sform13 ---|    O"23760555762276057605",
Line S03625 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05578  M02S03625.sform13 ---|    O"76167624760576225576",
Line S03626 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05579  M02S03626.sform13 ---|    O"11761676207625762400",
Line S03627 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05580  M02S03627.sform13 ---|    O"00000000000000000000"];
Line S03628 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05581  M02S03628.sform13 ---|  END
Line S03629 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05582  M02S03629.sform13 ---|
Line S03630 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05583  M02S03630.sform13 ---|ARRAY FUNMESS[0:4] P(1);
Line S03631 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05584  M02S03631.sform13 ---|  BEGIN                              # :IPLEASE PRESS FUNCTION KEY #
Line S03632 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05585  M02S03632.sform13 ---|  ITEM FUNMESSAGE U(00,00,60) = [
Line S03633 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05586  M02S03633.sform13 ---|    O"00112076147605760176",
Line S03634 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05587  M02S03634.sform13 ---|    O"23760555762076227605",
Line S03635 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05588  M02S03635.sform13 ---|    O"76237623557606762576",
Line S03636 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05589  M02S03636.sform13 ---|    O"16760376247611761776",
Line S03637 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05590  M02S03637.sform13 ---|    O"16557613760576310000"];
Line S03638 Modification History
M01 (Added by) sform
M02 (Updated by) sform13
Seq #  *Modification Id* Act 
----------------------------+
05591  M02S03638.sform13 ---|  END
05592  M01S00001.sform13 +++|ARRAY CONMESS[0:3] P(1);
05593  M01S00002.sform13 +++|  BEGIN                              # PLEASE CONFIRM #
05594  M01S00003.sform13 +++|  ITEM CONMESSAGE U(00,00,60) = [
05595  M01S00004.sform13 +++|    O"41204154414541414163",
05596  M01S00005.sform13 +++|    O"41454040414341574156",
05597  M01S00006.sform13 +++|    O"41464151416241550000"];
05598  M01S00007.sform13 +++|  END
05599  M01S00008.sform13 +++|
05600  M01S00009.sform13 +++|ARRAY CORMESS[0:3] P(1);
05601  M01S00010.sform13 +++|  BEGIN                              # PLEASE CORRECT #
05602  M01S00011.sform13 +++|  ITEM CORMESSAGE U(00,00,60) = [
05603  M01S00012.sform13 +++|    O"41204154414541414163",
05604  M01S00013.sform13 +++|    O"41454040414341574162",
05605  M01S00014.sform13 +++|    O"41624145414341640000"];
05606  M01S00015.sform13 +++|  END
05607  M01S00016.sform13 +++|
05608  M01S00017.sform13 +++|ARRAY DEFMESS[0:2] P(1);
05609  M01S00018.sform13 +++|  BEGIN                              # PLEASE ENTER #
05610  M01S00019.sform13 +++|  ITEM DEFMESSAGE U(00,00,60) = [
05611  M01S00020.sform13 +++|    O"41204154414541414163",
05612  M01S00021.sform13 +++|    O"41454040414541564164",
05613  M01S00022.sform13 +++|    O"41454162000000000000"];
05614  M01S00023.sform13 +++|  END
05615  M01S00024.sform13 +++|
05616  M01S00025.sform13 +++|ARRAY ERRMESS[0:4] P(1);
05617  M01S00026.sform13 +++|  BEGIN                              # PLEASE REENTER INPUT #
05618  M01S00027.sform13 +++|  ITEM ERRMESSAGE U(00,00,60) = [
05619  M01S00028.sform13 +++|    O"41204154414541414163",
05620  M01S00029.sform13 +++|    O"41454040416241454145",
05621  M01S00030.sform13 +++|    O"41564164414541624040",
05622  M01S00031.sform13 +++|    O"41514156416041654164",
05623  M01S00032.sform13 +++|    O"00000000000000000000"];
05624  M01S00033.sform13 +++|  END
05625  M01S00034.sform13 +++|
05626  M01S00035.sform13 +++|ARRAY FUNMESS[0:5] P(1);
05627  M01S00036.sform13 +++|  BEGIN                              # PLEASE PRESS FUNCTION KEY #
05628  M01S00037.sform13 +++|  ITEM FUNMESSAGE U(00,00,60) = [
05629  M01S00038.sform13 +++|    O"41204154414541414163",
05630  M01S00039.sform13 +++|    O"41454040416041624145",
05631  M01S00040.sform13 +++|    O"41634163404041464165",
05632  M01S00041.sform13 +++|    O"41564143416441514157",
05633  M01S00042.sform13 +++|    O"41564040415341454171",
05634  M01S00043.sform13 +++|    O"00000000000000000000"];
05635  M01S00044.sform13 +++|  END
05636  M01S00848.242l642 +++|*ELSE
05637  M01S00849.242l642 +++|ARRAY CONMESS[0:3] P(1);
05638  M01S00850.242l642 +++|  BEGIN                              # PLEASE CONFIRM #
05639  M01S00851.242l642 +++|  ITEM CONMESSAGE U(00,00,60) = [
05640  M01S00852.242l642 +++|    O"40404040412041544145",
05641  M01S00853.242l642 +++|    O"41414163414540404143",
05642  M01S00854.242l642 +++|    O"41574156414641514162",
05643  M01S00855.242l642 +++|    O"41550000000000000000"];
05644  M01S00856.242l642 +++|  END
05645  M01S00857.242l642 +++|
05646  M01S00858.242l642 +++|ARRAY CORMESS[0:3] P(1);
05647  M01S00859.242l642 +++|  BEGIN                              # PLEASE CORRECT #
05648  M01S00860.242l642 +++|  ITEM CORMESSAGE U(00,00,60) = [
05649  M01S00861.242l642 +++|    O"40404040412041544145",
05650  M01S00862.242l642 +++|    O"41414163414540404143",
05651  M01S00863.242l642 +++|    O"41574162416241454143",
05652  M01S00864.242l642 +++|    O"41640000000000000000"];
05653  M01S00865.242l642 +++|  END
05654  M01S00866.242l642 +++|
05655  M01S00867.242l642 +++|ARRAY DEFMESS[0:2] P(1);
05656  M01S00868.242l642 +++|  BEGIN                              # PLEASE ENTER #
05657  M01S00869.242l642 +++|  ITEM DEFMESSAGE U(00,00,60) = [
05658  M01S00870.242l642 +++|    O"40404040412041544145",
05659  M01S00871.242l642 +++|    O"41414163414540404145",
05660  M01S00872.242l642 +++|    O"41564164414541620000"];
05661  M01S00873.242l642 +++|  END
05662  M01S00874.242l642 +++|
05663  M01S00875.242l642 +++|ARRAY ERRMESS[0:4] P(1);
05664  M01S00876.242l642 +++|  BEGIN                              # PLEASE REENTER INPUT #
05665  M01S00877.242l642 +++|  ITEM ERRMESSAGE U(00,00,60) = [
05666  M01S00878.242l642 +++|    O"40404040412041544145",
05667  M01S00879.242l642 +++|    O"41414163414540404162",
05668  M01S00880.242l642 +++|    O"41454145415641644145",
05669  M01S00881.242l642 +++|    O"41624040415141564160",
05670  M01S00882.242l642 +++|    O"41654164000000000000"];
05671  M01S00883.242l642 +++|  END
05672  M01S00884.242l642 +++|
05673  M01S00885.242l642 +++|ARRAY FUNMESS[0:5] P(1);
05674  M01S00886.242l642 +++|  BEGIN                              # PLEASE PRESS FUNCTION KEY #
05675  M01S00887.242l642 +++|  ITEM FUNMESSAGE U(00,00,60) = [
05676  M01S00888.242l642 +++|    O"40404040412041544145",
05677  M01S00889.242l642 +++|    O"41414163414540404160",
05678  M01S00890.242l642 +++|    O"41624145416341634040",
05679  M01S00891.242l642 +++|    O"41464165415641434164",
05680  M01S00892.242l642 +++|    O"41514157415640404153",
05681  M01S00893.242l642 +++|    O"41454171000000000000"];
05682  M01S00894.242l642 +++|  END
05683  M01S00895.242l642 +++|*ENDIF
05684  M01S03639.sform   +++|
05685  M01S03640.sform   +++|BASED ARRAY MESSNAME [0:0] P(1);     # MESSAGE STRING #
05686  M01S03641.sform   +++|  BEGIN
05687  M01S03642.sform   +++|  ITEM MESSWORD   U(00,00,60);       # MESSAGE WORD #
05688  M01S03643.sform   +++|  END
05689  M01S03644.sform   +++|
05690  M01S03645.sform   +++|SWITCH JUMPCASE:MESSSTAT
05691  M01S03646.sform   +++|       JUMPHELP:HELP,                # SMF OR USER HELP #
05692  M01S03647.sform   +++|       JUMPCONF:CONFIRM,             # PLEASE CONFIRM #
05693  M01S03648.sform   +++|       JUMPRENT:REENTER;             # PLEASE RENTER INPUT #
05694  M01S03649.sform   +++|
Line S03650 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
05695  M02S03650.242l642 ---|VDTBOO;
05696  M01S03651.sform   +++|MCLEAN(MCOUNT,MSGFIT);               # CLEAN MESSAGE AREA #
05697  M01S03652.sform   +++|
05698  M01S03653.sform   +++|GOTO JUMPCASE[MESSNUM];              # ISSUE MESSAGE #
05699  M01S03654.sform   +++|
05700  M01S03655.sform   +++|JUMPHELP:                            # PRINT HELP MESSAGE #
05701  M01S03656.sform   +++|
05702  M01S03657.sform   +++|  IF FLDIND NQ -1 THEN
05703  M01S03658.sform   +++|    BEGIN                            # IF INPUT FIELD #
05704  M01S03659.sform   +++|    VARIND = FLDVARORD[FLDIND];
05705  M01S03660.sform   +++|    IF VARHSOS[VARIND] NQ 0 THEN
05706  M01S03661.sform   +++|      BEGIN                          # IF USER HELP MESSAGE DEFINED #
05707  M01S03662.sform   +++|      P<MESSNAME> = LOC(RECWORDU[0])+ VARHSOS[VARIND];
05708  M01S03663.sform   +++|      END
05709  M01S03664.sform   +++|    ELSE
05710  M01S03665.sform   +++|      BEGIN                          # NO USER HELP MESSAGE DEFINED #
05711  M01S03666.sform   +++|      MSGFIT = TRUE;                 # SMF MESSAGE WILL FIT #
05712  M01S03667.sform   +++|      IF NOT FLDENTERED[FLDIND] THEN
05713  M01S03668.sform   +++|        BEGIN                        # IF DATA NOT ENTERED IN FIELD #
05714  M01S03669.sform   +++|        P<MESSNAME> = LOC(DEFMESSAGE[0]);  # *PLEASE ENTER* #
05715  M01S03670.sform   +++|        END
05716  M01S03671.sform   +++|      ELSE
05717  M01S03672.sform   +++|        BEGIN                        # DATA ENTERED IN FIELD #
05718  M01S03673.sform   +++|        P<MESSNAME> = LOC(CORMESSAGE[0]);  # *PLEASE CORRECT* #
05719  M01S03674.sform   +++|        END
05720  M01S03675.sform   +++|      END
05721  M01S03676.sform   +++|    END
05722  M01S03677.sform   +++|  ELSE
05723  M01S03678.sform   +++|    BEGIN                            # NO INPUT FIELD #
05724  M01S03679.sform   +++|    MSGFIT = TRUE;                   # SMF MESSAGE WILL FIT #
05725  M01S03680.sform   +++|    P<MESSNAME> = LOC(FUNMESSAGE[0]);  # *PLEASE PRESS FUNCTION KEY* #
05726  M01S03681.sform   +++|    END
Line S03682 Modification History
M01 (Added by) sform
M02 (Updated by) ns2231
Seq #  *Modification Id* Act 
----------------------------+
05727  M02S03682.ns2231  ---|  TERHELPREQ[0] = FALSE;     # XYZ # # HELP REQUEST HONORED #
05728  M01S00003.ns2231  +++|  TERHELPREQ[0] = FALSE;             # HELP REQUEST HONORED #
05729  M01S03683.sform   +++|  GOTO PRINTMSG;
05730  M01S03684.sform   +++|
05731  M01S03685.sform   +++|JUMPRENT:
05732  M01S03686.sform   +++|
05733  M01S03687.sform   +++|  MSGFIT = TRUE;                     # SMF MESSAGE WILL FIT #
05734  M01S03688.sform   +++|  P<MESSNAME> = LOC(ERRMESSAGE[0]);  # *PLEASE REENTER INPUT* #
05735  M01S03689.sform   +++|  GOTO PRINTMSG;
05736  M01S03690.sform   +++|
05737  M01S03691.sform   +++|JUMPCONF:
05738  M01S03692.sform   +++|
05739  M01S03693.sform   +++|  MSGFIT = TRUE;                     # SMF MESSAGE WILL FIT #
05740  M01S03694.sform   +++|  IF FLDIND NQ -1 THEN
05741  M01S03695.sform   +++|    BEGIN                            # IF INPUT FIELD #
05742  M01S03696.sform   +++|    P<MESSNAME> = LOC(CONMESSAGE[0]);  # *PLEASE CONFIRM* #
05743  M01S03697.sform   +++|    END
05744  M01S03698.sform   +++|  ELSE
05745  M01S03699.sform   +++|    BEGIN                            # NO INPUT FIELD #
05746  M01S03700.sform   +++|    P<MESSNAME> = LOC(FUNMESSAGE[0]);  # *PLEASE PRESS FUNCTION KEY* #
05747  M01S03701.sform   +++|    END
05748  M01S03702.sform   +++|
05749  M01S03703.sform   +++|PRINTMSG:                            # PRINT MESSAGE #
05750  M01S03704.sform   +++|
05751  M01S00003.sform5  +++|  VDTPOS(0,0);                       # POSITION TO MESSAGE LINE #
05752  M01S03705.sform   +++|  IF MSGFIT THEN
05753  M01S03706.sform   +++|    BEGIN                            # IF MESSAGE WILL FIT #
05754  M01S03707.sform   +++|    VDTSTR(MESSNAME);                # PRINT ENTIRE MESSAGE #
05755  M01S03708.sform   +++|    END
05756  M01S03709.sform   +++|  ELSE
05757  M01S03710.sform   +++|    BEGIN                            # TRUNCATE AS NEEDED #
Line S03711 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
05758  M02S03711.242l642 ---|    CINDEX = 2;                      # SKIP 0007 BYTE #
05759  M01S00896.242l642 +++|    CONTROL IFEQ QTRMV,0;            # IF NOT QTRM VARIANT #
05760  M01S00897.242l642 +++|      CINDEX = 2;                    # SKIP 0007 BYTE #
05761  M01S00898.242l642 +++|   CONTROL FI;                       # END OF IF NOT QTRM #
05762  M01S00899.242l642 +++|   CONTROL IFEQ QTRMV,1;             # IF QTRM VARIANT #
05763  M01S00900.242l642 +++|     CINDEX = 0;                     # START AT BEGINNING OF LINE #
05764  M01S00901.242l642 +++|   CONTROL FI;                       # END OF IF QTRM #
05765  M01S03712.sform   +++|    WINDEX = 0;
05766  M01S03713.sform   +++|    MESCHR = C<CINDEX,2>MESSWORD[WINDEX];
05767  M01S03714.sform   +++|    FOR I = 0 STEP 1 WHILE MESCHR NQ 0 AND I LQ MCOUNT DO
05768  M01S03715.sform   +++|      BEGIN                          # WRITE MESSAGE #
05769  M01S03716.sform   +++|      VDTCHR(MESCHR);
05770  M01S03717.sform   +++|      CINDEX = CINDEX + 2;
05771  M01S03718.sform   +++|      IF CINDEX GQ 10 THEN
05772  M01S03719.sform   +++|        BEGIN                        # IF WORD EXHAUSTED #
05773  M01S03720.sform   +++|        CINDEX = 0;                  # RESET CHARACTER INDEX #
05774  M01S03721.sform   +++|        WINDEX = WINDEX + 1;         # GET NEXT WORD #
05775  M01S03722.sform   +++|        END
05776  M01S03723.sform   +++|      MESCHR = C<CINDEX,2>MESSWORD[WINDEX];
05777  M01S03724.sform   +++|      END
05778  M01S03725.sform   +++|    END
05779  M01S03726.sform   +++|
05780  M01S03727.sform   +++|  TERMESWRIT[0] = TRUE;              # MESSAGE WRITTEN #
05781  M01S03728.sform   +++|  TERMESREAD[0] = FALSE;             # MESSAGE NOT READ BY USER YET #
05782  M01S03729.sform   +++|
Line S03730 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
05783  M02S03730.ns2346  ---|  VDTCAA;                            # CLEAR ALL ATTRIBUTES #
Line S00012 Modification History
M01 (Added by) ns2346
M02 (Updated by) ns2356
Seq #  *Modification Id* Act 
----------------------------+
05784  M02S00012.ns2356  ---|  VDTSAM(0);                         # CLEAR ALL ATTRIBUTES #
05785  M01S00009.ns2356  +++|  IF NOT TERBLCKMDE[0] THEN
05786  M01S00010.ns2356  +++|    BEGIN
05787  M01S00011.ns2356  +++|    VDTSAM(0);
05788  M01S00012.ns2356  +++|    END
05789  M01S00013.ns2356  +++|  ELSE
05790  M01S00014.ns2356  +++|    BEGIN
05791  M01S00015.ns2356  +++|    VDTSAM(O"6001");
05792  M01S00016.ns2356  +++|    END
Line S03731 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
05793  M02S03731.242l642 ---|  VDTEOO;
05794  M01S03732.sform   +++|  CPANEL;                            # REWRITE SCREEN AS NEEDED #
05795  M01S03733.sform   +++|
05796  M01S03734.sform   +++|END  # PSTRNG #
05797  M01S03735.sform   +++|CONTROL EJECT;
05798  M01S03736.sform   +++|
05799  M01S03737.sform   +++|PROC READIN(FLDIND,COFFSET);
05800  M01S03738.sform   +++|
05801  M01S03739.sform   +++|# TITLE READIN - READ INPUT FROM TERMINAL. #
05802  M01S03740.sform   +++|
05803  M01S03741.sform   +++|BEGIN  # READIN #
05804  M01S03742.sform   +++|
05805  M01S03743.sform   +++|#
05806  M01S03744.sform   +++|**    READIN - READ INPUT FROM TERMINAL.
05807  M01S03745.sform   +++|*
05808  M01S03746.sform   +++|*     THIS PROCEDURE READS INPUT FROM THE TERMINAL AND STORES
05809  M01S03747.sform   +++|*     IT IN THE APPROPRIATE PLACE IN VARDATA.
05810  M01S03748.sform   +++|*
05811  M01S03749.sform   +++|*     PROC READIN(FLDIND,COFFSET)
05812  M01S03750.sform   +++|*
05813  M01S03751.sform   +++|*     ENTRY   FLDIND     = INDEX OF FIELD FOR STARTING CURSOR POSITION.
05814  M01S03752.sform   +++|*             COFFSET    = CURSOR OFFSET IN FIELD.
05815  M01S03753.sform   +++|*
05816  M01S03754.sform   +++|*     EXIT    FLDIND     = LAST FIELD ENTERED.
05817  M01S03755.sform   +++|*             VARDATA CONTAINS INPUT DATA.
05818  M01S03756.sform   +++|*
05819  M01S03757.sform   +++|*     CALLS   BFIELD, CPANEL, FFIELD, FUNKEY, PSTRNG, TABKEY, VDTBOI,
05820  M01S03758.sform   +++|*             VDTCOR, VDTEOO, VDTINP, VDTOUT, VDTPOS, WRIVCH.
05821  M01S03759.sform   +++|*
05822  M01S03760.sform   +++|*     USES    TERABNTERM, TERHELPFLD, TERHELPREQ, TERMESREAD,
05823  M01S03761.sform   +++|*             TERMISSINP, TERNRMTERM, TERPENDHLP, TERREWFLDS,
Line S03762 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
05824  M02S03762.242l642 ---|*             TERREWSCRN, TERSOFTPOS, TERSOFTTAB.
05825  M01S00902.242l642 +++|*IF UNDEF,QTRM
05826  M01S00903.242l642 +++|*             TERREWSCRN, TERSOFTPOS, TERSOFTTAB.
05827  M01S00904.242l642 +++|*ELSE
05828  M01S00905.242l642 +++|*             TERREWSCRN, TERSOFTPOS, TERSOFTTAB, TERWAITINP.
05829  M01S00906.242l642 +++|*ENDIF
05830  M01S03763.sform   +++|#
05831  M01S03764.sform   +++|  ITEM FLDIND     I;                 # INDEX OF FIELD IN FLDLIST #
05832  M01S03765.sform   +++|  ITEM COFFSET    I;                 # CURSOR POSITION OFFSET #
05833  M01S03766.sform   +++|
05834  M01S03767.sform   +++|  ITEM CHAR       I;                 # VDT INPUT CHARACTER #
05835  M01S03768.sform   +++|  ITEM FIELD      I;                 # INDEX OF FIELD IN FLDLIST #
05836  M01S03769.sform   +++|  ITEM I          I;                 # LOOP COUNTER #
05837  M01S03770.sform   +++|  ITEM INPOS      U = 0;             # LINE AND COLUMN OF INPUT #
05838  M01S03771.sform   +++|  ITEM INPUTERROR B;                 # ERROR IN INPUT #
05839  M01S03772.sform   +++|  ITEM INSEARCH   B = FALSE;         # DO NOT INCLUDE OUT-ONLY FIELDS #
05840  M01S03773.sform   +++|  ITEM LASTFIELD  I;                 # LAST FIELD THAT RECEIVED INPUT #
05841  M01S03774.sform   +++|  ITEM LASTORD    I;                 # PREVIOUS INPUT ORDINAL #
05842  M01S03775.sform   +++|  ITEM LASTPOS    U = 0;             # LAST X AND Y POSITION #
05843  M01S03776.sform   +++|  ITEM OFFSET     I;                 # CHARACTER OFFSET WITHIN FIELD #
05844  M01S03777.sform   +++|  ITEM ORD        I;                 # VDT INPUT ORDINAL #
05845  M01S03778.sform   +++|  ITEM SKIPINP    B;                 # SKIP DATA TIL NEXT INPUT READ #
05846  M01S03779.sform   +++|  ITEM STARTFIELD I;                 # FIELD TO START SEARCH #
05847  M01S03780.sform   +++|  ITEM STARTPOS   I;                 # X/Y POSITION TO START SEARCH #
05848  M01S03781.sform   +++|  ITEM XPOS       I;                 # VDT INPUT COLUMN NUMBER #
05849  M01S03782.sform   +++|  ITEM YPOS       I;                 # VDT INPUT LINE NUMBER #
Line S03783 Modification History
M01 (Added by) sform
M02 (Updated by) ns2231
Seq #  *Modification Id* Act 
----------------------------+
05850  M02S03783.ns2231  ---|  ITEM ZZZGKEY    I;                 # SYMPL IS CONFUSED #
Line S03784 Modification History
M01 (Added by) sform
M02 (Updated by) ns2231
Seq #  *Modification Id* Act 
----------------------------+
05851  M02S03784.ns2231  ---|  ITEM ZZZNEXT    I;                 # SYMPL IS CONFUSED #
05852  M01S03785.sform   +++|
05853  M01S03786.sform   +++|  SWITCH INPUTTYPE:SCREENST          # VDT INPUT ORDINALS #
Line S03787 Modification History
M01 (Added by) sform
M02 (Updated by) ns2641
Seq #  *Modification Id* Act 
----------------------------+
05854  M02S03787.ns2641  ---|    CONTINUE   : RESERV1,            # RESERVED #
05855  M01S00001.ns2641  +++|    CONTINUE   : CLRALL,             # CLEAR ALL TABS - IGNORED #
05856  M01S03788.sform   +++|    CHARACTER  : CHAR,               # OVERSTRIKE CHARACTER #
05857  M01S03789.sform   +++|    INSERTCHAR : INSC,               # INSERT CHARACTER #
05858  M01S03790.sform   +++|    DELETECHAR : DELC,               # DELETE CHARACTER #
05859  M01S03791.sform   +++|    INSERTLINE : INSL,               # INSERT LINE #
05860  M01S03792.sform   +++|    DELETELINE : DELL,               # DELETE LINE #
05861  M01S03793.sform   +++|    CLEARPAGE  : CLRPAG,             # CLEAR PAGE #
Line S03794 Modification History
M01 (Added by) sform
M02 (Updated by) ns2453
Seq #  *Modification Id* Act 
----------------------------+
05862  M02S03794.ns2453  ---|    CONTINUE   : CLREOP,             # CLEAR TO END OF PAGE #
05863  M01S00001.ns2453  +++|    CLEARPAGE  : CLREOP,             # CLEAR TO END OF PAGE #
05864  M01S03795.sform   +++|    CLEARPAGE  : CLRUNP,             # CLEAR UNPROTECTED #
05865  M01S03796.sform   +++|    CLEAREOL   : CLREOL,             # CLEAR TO END OF LINE #
05866  M01S03797.sform   +++|    CONTINUE   : POS,                # POSITION CURSOR #
Line S03798 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05867  M02S03798.sform9  ---|    CONTINUE   : HOME,               # POSITION HOME #
05868  M01S00003.sform9  +++|    HOMEKEY    : HOME,               # POSITION HOME #
05869  M01S03799.sform   +++|    CONTINUE   : UP,                 # CURSOR UP #
05870  M01S03800.sform   +++|    CONTINUE   : DOWN,               # CURSOR DOWN #
Line S03801 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05871  M02S03801.sform9  ---|    CONTINUE   : LEFT,               # CURSOR LEFT #
Line S03802 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05872  M02S03802.sform9  ---|    CONTINUE   : RIGHT,              # CURSOR RIGHT #
05873  M01S00004.sform9  +++|    LEFTKEY    : LEFT,               # CURSOR LEFT #
05874  M01S00005.sform9  +++|    RIGHTKEY   : RIGHT,              # CURSOR RIGHT #
05875  M01S03803.sform   +++|    FORWARDTAB : FTAB,               # TAB FORWARD #
05876  M01S03804.sform   +++|    BACKWRDTAB : BTAB,               # TAB BACKWARD #
05877  M01S03805.sform   +++|    CONTINUE   : RET,                # RETURN #
05878  M01S03806.sform   +++|    ERASECHAR  : ERAC,               # ERASE CHARACTER #
05879  M01S03807.sform   +++|    ERASELINE  : ERAL,               # ERASE LINE #
05880  M01S03808.sform   +++|    ENDOFINPUT : EOI,                # END OF INFORMATION #
05881  M01S03809.sform   +++|    CONTINUE   : RESET,              # RESET #
05882  M01S03810.sform   +++|    APPLICFUN  : FKEY,               # FUNCTION KEY #
05883  M01S03811.sform   +++|    GENERICFUN : GKEY,               # GENERIC KEY #
05884  M01S03812.sform   +++|    BADINPUT   : BAD,                # BAD #
05885  M01S03813.sform   +++|    CONTINUE   : NOOP,               # NOOP #
05886  M01S03814.sform   +++|    CONTINUE   : COORD,              # COORDINATES #
05887  M01S03815.sform   +++|    CONTINUE   : PROTECT,            # PROTECT ALL #
Line S03816 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
05888  M02S03816.242l642 ---|    CONTINUE   : RESERV2,            # RESERVED #
05889  M01S00907.242l642 +++|    NEWFIELD   : STRTFLD,            # START OF NEW FIELD #
Line S03817 Modification History
M01 (Added by) sform
M02 (Updated by) ns2641
Seq #  *Modification Id* Act 
----------------------------+
05890  M02S03817.ns2641  ---|    CONTINUE   : RESERV3,            # RESERVED #
Line S03818 Modification History
M01 (Added by) sform
M02 (Updated by) ns2641
Seq #  *Modification Id* Act 
----------------------------+
05891  M02S03818.ns2641  ---|    CONTINUE   : RESERV4;            # RESERVED #
05892  M01S00002.ns2641  +++|    CONTINUE   : CLRTAB,             # CLEAR TAB STOP - IGNORED #
05893  M01S00003.ns2641  +++|    CONTINUE   : SETTAB;             # SET TAB STOP - IGNORED #
05894  M01S03819.sform   +++|
05895  M01S03820.sform   +++|INPOS = 0;
05896  M01S03821.sform   +++|FIELD = FLDIND;
05897  M01S03822.sform   +++|LASTFIELD = FLDIND;
05898  M01S03823.sform   +++|INPUTERROR = FALSE;
Line S03824 Modification History
M01 (Added by) sform
M02 (Updated by) ns2231
Seq #  *Modification Id* Act 
----------------------------+
05899  M02S03824.ns2231  ---|TERHELPREQ[0] = FALSE;               # XYZ #
05900  M01S00004.ns2231  +++|TERHELPREQ[0] = FALSE;
05901  M01S03825.sform   +++|
05902  M01S00908.242l642 +++|*IF DEF,QTRM
05903  M01S00909.242l642 +++|IF TERWAITINP[0] THEN
05904  M01S00910.242l642 +++|  BEGIN                              # IF INPUT RECEIVED #
05905  M01S00911.242l642 +++|  TERWAITINP[0] = FALSE;             # CLEAR FLAG #
05906  M01S00912.242l642 +++|  GOTO DOREAD1;                      # CONTINUE #
05907  M01S00913.242l642 +++|  END
05908  M01S00914.242l642 +++|
05909  M01S00915.242l642 +++|*ENDIF
05910  M01S03826.sform   +++|DOREAD:                              # READ INPUT FROM TERMINAL #
05911  M01S03827.sform   +++|
05912  M01S00004.sform5  +++|  ORD = SCREENST"EOI";               # SET LAST ORDINAL TO EOI #
Line S03828 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
05913  M02S03828.242l642 ---|  SOFTTAB = 0;                       # NUMBER OF SOFT TABS PENDING #
05914  M01S00916.242l642 +++|  TERSOFTTAB[0] = 0;                 # NUMBER OF SOFT TABS PENDING #
05915  M01S03829.sform   +++|  SKIPINP = FALSE;
05916  M01S03830.sform   +++|  TERMISSINP[0] = FALSE;
05917  M01S03831.sform   +++|
05918  M01S03832.sform   +++|  IF INPUTERROR THEN
05919  M01S03833.sform   +++|    BEGIN                            # BAD INPUT #
05920  M01S03834.sform   +++|    PSTRNG(DUMMY,MESSSTAT"REENTER");
05921  M01S03835.sform   +++|    INPUTERROR = FALSE;
05922  M01S03836.sform   +++|    END
05923  M01S03837.sform   +++|  ELSE
05924  M01S03838.sform   +++|    BEGIN                            # NO INPUT ERROR #
05925  M01S03839.sform   +++|    IF TERHELPREQ[0] THEN
05926  M01S03840.sform   +++|      BEGIN                          # HELP REQUESTED FOR FIELD #
05927  M01S03841.sform   +++|      PSTRNG(TERHELPFLD[0],MESSSTAT"HELP");
Line S03842 Modification History
M01 (Added by) sform
M02 (Updated by) ns2231
Seq #  *Modification Id* Act 
----------------------------+
05928  M02S03842.ns2231  ---|      TERHELPREQ[0] = FALSE;         # XYZ #
05929  M01S03843.sform   +++|      FIELD = TERHELPFLD[0];
05930  M01S03844.sform   +++|      END
05931  M01S03845.sform   +++|    ELSE
05932  M01S03846.sform   +++|      BEGIN                          # NO HELP REQUESTED #
05933  M01S03847.sform   +++|      CPANEL;                        # REWRITE SCREEN AS NEEDED #
05934  M01S03848.sform   +++|      END
05935  M01S03849.sform   +++|    END
05936  M01S03850.sform   +++|
05937  M01S03851.sform   +++|  IF VALIDFIELD THEN
05938  M01S03852.sform   +++|    BEGIN                            # VALID FIELD #
05939  M01S03853.sform   +++|    XPOS = COFFSET + FLDXCORD[FIELD];
05940  M01S03854.sform   +++|    YPOS = FLDYCORD[FIELD];
05941  M01S03855.sform   +++|    END
05942  M01S03856.sform   +++|  ELSE
05943  M01S03857.sform   +++|    BEGIN                            # INVALID FIELD #
05944  M01S03858.sform   +++|    XPOS = 0;
05945  M01S03859.sform   +++|    YPOS = 0;
05946  M01S03860.sform   +++|    END
05947  M01S03861.sform   +++|  VDTPOS(XPOS,YPOS);                 # POSITION CURSOR #
05948  M01S03862.sform   +++|  VDTEOO;
05949  M01S00917.242l642 +++|*IF DEF,QTRM
05950  M01S00918.242l642 +++|  TERWAITINP[0] = TRUE;              # SET WAITING FOR INPUT #
05951  M01S00919.242l642 +++|  NIT$RC = 23;                       # SET RETURN CODE #
05952  M01S00920.242l642 +++|  RETURN;                            # RETURN #
05953  M01S00921.242l642 +++|
05954  M01S00922.242l642 +++|DOREAD1:                             # CONTINUE AFTER QTRM INPUT #
05955  M01S00923.242l642 +++|
05956  M01S00924.242l642 +++|*ENDIF
Line S03863 Modification History
M01 (Added by) sform
M02 (Updated by) sform5
Seq #  *Modification Id* Act 
----------------------------+
05957  M02S03863.sform5  ---|  VDTBOI(ORD);                       # READ INPUT #
Line S03864 Modification History
M01 (Added by) sform
M02 (Updated by) sform5
Seq #  *Modification Id* Act 
----------------------------+
05958  M02S03864.sform5  ---|  IF ORD NQ 0 THEN
05959  M01S00005.sform5  +++|  VDTBOI(LASTORD);                   # CHECK FOR TYPE AHEAD #
05960  M01S00925.242l642 +++|  VDTBOO;                            # BEGIN OUTPUT SEQUENCE #
05961  M01S00006.sform5  +++|  IF LASTORD NQ 0 THEN
05962  M01S03865.sform   +++|    BEGIN                            # TYPE AHEAD WAS ENTERED #
05963  M01S03866.sform   +++|    PSTRNG(FIELD,MESSSTAT"REENTER");  # PLEASE REENTER #
05964  M01S03867.sform   +++|    GOTO DOREAD;
05965  M01S03868.sform   +++|    END
05966  M01S03869.sform   +++|  COFFSET = 0;                       # OFFSET NO LONGER VALID #
05967  M01S03870.sform   +++|  TERMESREAD[0] = TRUE;              # MESSAGE HAS BEEN SEEN BY USER #
05968  M01S03871.sform   +++|  TERNRMTERM[0] = FALSE;
05969  M01S03872.sform   +++|  TERABNTERM[0] = FALSE;
05970  M01S03873.sform   +++|
05971  M01S03874.sform   +++|GETINP:                              # WHILE STILL LOOKING FOR INPUT #
05972  M01S03875.sform   +++|
Line S03876 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
05973  M02S03876.252l678 ---|  YMASKOF LASTPOS = YPOS;            # RETAIN PREVIOUS Y POSITION #
Line S03877 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
05974  M02S03877.252l678 ---|  XMASKOF LASTPOS = XPOS;            # RETAIN PREVIOUS X POSITION #
05975  M01S00140.252l678 +++|  YMASKOF TERPREVPOS = YPOS;         # RETAIN PREVIOUS Y POSITION #
05976  M01S00141.252l678 +++|  XMASKOF TERPREVPOS = XPOS;         # RETAIN PREVIOUS X POSITION #
05977  M01S03878.sform   +++|  LASTORD = ORD;                     # RETAIN PREVIOUS ORDINAL #
05978  M01S03879.sform   +++|  VDTINP(ORD,XPOS,YPOS,CHAR,DUMMY);  # GET INPUT FROM BUFFER #
05979  M01S00926.242l642 +++|
05980  M01S00927.242l642 +++|SKIPREAD:
05981  M01S00928.242l642 +++|
05982  M01S03880.sform   +++|  YMASKOF INPOS = YPOS;
05983  M01S03881.sform   +++|  XMASKOF INPOS = XPOS;
05984  M01S03882.sform   +++|  FFIELD(INPOS,FIELD,OFFSET,INSEARCH);  # FIND INPUT FIELD #
05985  M01S03883.sform   +++|  IF VALIDFIELD THEN LASTFIELD = FIELD;  # UPDATE LAST FIELD #
05986  M01S03884.sform   +++|
05987  M01S03885.sform   +++|  GOTO INPUTTYPE[ORD];               # PROCESS INPUT BY TYPE #
05988  M01S03886.sform   +++|
05989  M01S03887.sform   +++|CHARACTER:                           # DISPLAYABLE CHARACTER INPUT #
05990  M01S03888.sform   +++|
Line S03889 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05991  M02S03889.sform9  ---| IF NOT VALIDFIELD AND TERTABAUTO[0] THEN
Line S03890 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05992  M02S03890.sform9  ---|   BEGIN                             # INPUT NOT IN FIELD AND AUTOTAB #
Line S03891 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05993  M02S03891.sform9  ---|   TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);  # SIMULATE TAB KEY #
Line S03892 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05994  M02S03892.sform9  ---|   IF (INPOS EQ 0) AND NOT TERTABHOME[0] THEN
Line S03893 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05995  M02S03893.sform9  ---|     BEGIN                           # IF TAB DOES NOT STOP AT HOME #
Line S03894 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05996  M02S03894.sform9  ---|     TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
Line S03895 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05997  M02S03895.sform9  ---|     END
Line S03896 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05998  M02S03896.sform9  ---|   YPOS = YMASKOF INPOS;             # RESET INTERNAL POSITION #
Line S03897 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
05999  M02S03897.sform9  ---|   XPOS = XMASKOF INPOS;
Line S03898 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06000  M02S03898.sform9  ---|   VDTCOR(YPOS,XPOS);
Line S03899 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06001  M02S03899.sform9  ---|   END
Line S03900 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06002  M02S03900.sform9  ---|
Line S03901 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06003  M02S03901.242l642 ---|  IF (NOT SKIPINP) AND (SOFTTAB EQ 0) THEN
06004  M01S00929.242l642 +++|  IF (NOT SKIPINP) AND (TERSOFTTAB[0] EQ 0) THEN
06005  M01S03902.sform   +++|    BEGIN                            # PROCESS CHARACTER #
06006  M01S00006.sform24 +++|    IF NOT VALIDFIELD THEN
06007  M01S00007.sform24 +++|      BEGIN                          # CHAR NOT IN AN INPUT FIELD #
06008  M01S00008.sform24 +++|      IF TERTABAUTO[0] AND NOT TERNOINVRS[0] THEN
06009  M01S00009.sform24 +++|        BEGIN                        # IF AUTOMATIC TABBING #
06010  M01S00010.sform24 +++|        TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
06011  M01S00011.sform24 +++|        IF INPOS EQ 0 AND NOT TERTABHOME[0] THEN
06012  M01S00012.sform24 +++|          BEGIN                      # IF TAB DOES NOT STOP AT HOME #
06013  M01S00013.sform24 +++|          TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
06014  M01S00014.sform24 +++|          END
06015  M01S00015.sform24 +++|        OFFSET = 0;                  # CLEAR FIELD OFFSET #
06016  M01S00016.sform24 +++|        LASTFIELD = FIELD;           # UPDATE LAST VALID FIELD #
06017  M01S00017.sform24 +++|        XPOS = XMASKOF INPOS;        # RESET INTERNAL POSITION #
06018  M01S00018.sform24 +++|        YPOS = YMASKOF INPOS;
06019  M01S00019.sform24 +++|        VDTCOR(YPOS,XPOS);
06020  M01S00020.sform24 +++|        END
06021  M01S00021.sform24 +++|      END
06022  M01S03903.sform   +++|    IF VALIDFIELD THEN
06023  M01S03904.sform   +++|      BEGIN                          # CHAR IN AN INPUT FIELD #
06024  M01S03905.sform   +++|      WRIVCH(FIELD,OFFSET,CHAR);     # WRITE CHARACTER INTO VARDATA #
06025  M01S03906.sform   +++|      FLDENTERED[FIELD] = TRUE;
06026  M01S03907.sform   +++|      FLDVALID[FIELD] = FALSE;       # INVALID UNTIL PROVEN VALID #
06027  M01S03908.sform   +++|      IF NOT FLDOUTPUTV[FIELD] THEN
06028  M01S03909.sform   +++|        BEGIN                        # IF INPUT ONLY FIELD #
06029  M01S03910.sform   +++|        IF NOT TERGUARDMD[0] THEN
06030  M01S03911.sform   +++|          BEGIN                      # IF NO GUARD MODE AVAILABLE #
06031  M01S03912.sform   +++|          FLDREWRITE[FIELD] = TRUE;  # SET REWRITE BIT FOR FIELD #
06032  M01S03913.sform   +++|          TERREWFLDS[0] = TRUE;
06033  M01S03914.sform   +++|          END
06034  M01S03915.sform   +++|        END
06035  M01S00006.sform9  +++|      IF TERTABAUTO[0] THEN
06036  M01S00007.sform9  +++|        BEGIN                        # IF AUTOMATIC TABBING #
06037  M01S00008.sform9  +++|        IF OFFSET EQ FLDLENGTH[FIELD] - 1 THEN
06038  M01S00009.sform9  +++|          BEGIN                      # IF AUTO-TAB TO NEXT FIELD #
06039  M01S00010.sform9  +++|          TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
Line S00011 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06040  M02S00011.242l642 ---|          IF INPOS EQ 0 AND NOT TERTABHOME[0] THEN
Line S00012 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06041  M02S00012.242l642 ---|            BEGIN                    # IF TAB DOES NOT STOP AT HOME #
Line S00013 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06042  M02S00013.242l642 ---|            TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
06043  M01S00930.242l642 +++|          IF INPOS EQ 0 THEN
06044  M01S00931.242l642 +++|            BEGIN                    # IF TABBING PAST LAST FIELD #
06045  M01S00932.242l642 +++|            IF TERPTDWFPG[0] THEN
06046  M01S00933.242l642 +++|              BEGIN                  # IF NO WRAP AROUND SCREEN #
06047  M01S00934.242l642 +++|              TABKEY(SCREENST"BTAB",INPOS,FIELD,INPOS);
06048  M01S00935.242l642 +++|              OFFSET = FLDLENGTH[FIELD] - 1;
06049  M01S00936.242l642 +++|              INPOS = INPOS + OFFSET;
06050  M01S00937.242l642 +++|              END
06051  M01S00938.242l642 +++|            ELSE
06052  M01S00939.242l642 +++|              BEGIN                  # WRAPPING TO FIRST FIELD #
06053  M01S00940.242l642 +++|              IF NOT TERTABHOME[0] THEN
06054  M01S00941.242l642 +++|                BEGIN                # IF TAB DOES NOT STOP AT HOME #
06055  M01S00942.242l642 +++|                TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
06056  M01S00943.242l642 +++|                END
06057  M01S00944.242l642 +++|              OFFSET = 0;
06058  M01S00945.242l642 +++|              END
06059  M01S00014.sform9  +++|            END
06060  M01S00015.sform9  +++|          OFFSET = 0;                # CLEAR FIELD OFFSET #
06061  M01S00016.sform9  +++|          LASTFIELD = FIELD;         # UPDATE LAST VALID FIELD #
06062  M01S00017.sform9  +++|          INPOS = INPOS - 1;         # RESET INTERNAL POSITION #
06063  M01S00018.sform9  +++|          YPOS = YMASKOF INPOS;
06064  M01S00019.sform9  +++|          XPOS = XMASKOF INPOS;
06065  M01S00020.sform9  +++|          VDTCOR(YPOS,XPOS);
06066  M01S00021.sform9  +++|          END
06067  M01S00022.sform9  +++|        END
06068  M01S03916.sform   +++|      END
06069  M01S03917.sform   +++|    ELSE
06070  M01S03918.sform   +++|      BEGIN                          # CHAR NOT IN AN INPUT FIELD #
Line S03919 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06071  M02S03919.sform9  ---|      IF CHAR NQ BLANK THEN
Line S03920 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06072  M02S03920.sform9  ---|        BEGIN                        # IF CHARACTER IS NOT A BLANK #
Line S03921 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06073  M02S03921.sform9  ---|        VDTPOS(XPOS,YPOS);           # ERASE CHARACTER #
Line S03922 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06074  M02S03922.sform9  ---|        VDTOUT(BLANK);
Line S03923 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06075  M02S03923.sform9  ---|        TERMISSINP[0] = TRUE;        # ERROR CONDITION #
Line S03924 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06076  M02S03924.sform9  ---|        END
Line S00023 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06077  M02S00023.242l642 ---|      IF TERTABAUTO[0] AND TERINPVARS[0] THEN
Line S00946 Modification History
M01 (Added by) 242l642
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06078  M02S00946.sform24 ---|      IF TERTABAUTO[0] AND NOT TERNOINVRS[0] THEN
Line S00024 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06079  M02S00024.sform24 ---|        BEGIN                        # IF AUTOMATIC TABBING #
Line S00025 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06080  M02S00025.sform24 ---|        TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
Line S00026 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06081  M02S00026.sform24 ---|        IF INPOS EQ 0 AND NOT TERTABHOME[0] THEN
Line S00027 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06082  M02S00027.sform24 ---|          BEGIN                      # IF TAB DOES NOT STOP AT HOME #
Line S00028 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06083  M02S00028.sform24 ---|          TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
Line S00029 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06084  M02S00029.sform24 ---|          END
Line S00030 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06085  M02S00030.sform24 ---|        OFFSET = 0;                  # CLEAR FIELD OFFSET #
Line S00031 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06086  M02S00031.sform24 ---|        LASTFIELD = FIELD;           # UPDATE LAST VALID FIELD #
Line S00032 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06087  M02S00032.sform24 ---|        XPOS = XMASKOF INPOS;        # RESET INTERNAL POSITION #
Line S00033 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06088  M02S00033.sform24 ---|        YPOS = YMASKOF INPOS;
Line S00034 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06089  M02S00034.sform24 ---|        VDTCOR(YPOS,XPOS);
Line S00035 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06090  M02S00035.sform24 ---|        WRIVCH(FIELD,OFFSET,CHAR);
Line S00036 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06091  M02S00036.sform24 ---|        FLDENTERED[FIELD] = TRUE;
Line S00037 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06092  M02S00037.sform24 ---|        FLDVALID[FIELD] = FALSE;     # INVALID UNTIL PROVEN VALID #
Line S00038 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06093  M02S00038.sform24 ---|        IF NOT FLDOUTPUTV[FIELD] THEN
Line S00039 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06094  M02S00039.sform24 ---|          BEGIN                      # IF INPUT ONLY FIELD #
Line S00040 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06095  M02S00040.sform24 ---|          IF NOT TERGUARDMD[0] THEN
Line S00041 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06096  M02S00041.sform24 ---|            BEGIN                    # IF NO GUARD MODE AVAILABLE #
Line S00042 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06097  M02S00042.sform24 ---|            FLDREWRITE[FIELD] = TRUE;
Line S00043 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06098  M02S00043.sform24 ---|            TERREWFLDS[0] = TRUE;
Line S00044 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06099  M02S00044.sform24 ---|            END
Line S00045 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06100  M02S00045.sform24 ---|          END
Line S00046 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06101  M02S00046.sform24 ---|        END
Line S00047 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06102  M02S00047.sform24 ---|      ELSE
Line S00048 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06103  M02S00048.sform24 ---|        BEGIN                        # NO AUTO TABBING #
Line S00049 Modification History
M01 (Added by) sform9
M02 (Updated by) ns2346
M03 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06104  M03S00049.sform24 ---|        IF CHAR NQ BLANK AND NOT TERPROTECT[0] THEN
Line S00013 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06105  M02S00013.sform24 ---|        IF CHAR NQ BLANK AND NOT TERTABPROT[0] THEN
Line S00050 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06106  M02S00050.sform24 ---|          BEGIN                      # IF NEED TO CLEAR ON SCREEN #
Line S00051 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06107  M02S00051.sform24 ---|          VDTPOS(XPOS,YPOS);         # ERASE CHARACTER #
Line S00052 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06108  M02S00052.sform24 ---|          VDTOUT(BLANK);
Line S00053 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06109  M02S00053.sform24 ---|          TERMISSINP[0] = TRUE;      # ERROR CONDITION #
Line S00054 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06110  M02S00054.sform24 ---|          END
Line S00055 Modification History
M01 (Added by) sform9
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06111  M02S00055.sform24 ---|        END
06112  M01S00022.sform24 +++|      IF NOT TERTABAUTO[0] THEN
06113  M01S00023.sform24 +++|        BEGIN                        # IF NEED TO REFRESH SCREEN #
06114  M01S00024.sform24 +++|        RESTFLD (INPOS);
06115  M01S00025.sform24 +++|        TERMISSINP[0] = TRUE;        # ERROR CONDITION #
06116  M01S00026.sform24 +++|        END
06117  M01S00027.sform24 +++|
06118  M01S00028.sform24 +++|      RESTFLD (INPOS);
06119  M01S03925.sform   +++|      END
06120  M01S03926.sform   +++|    END
06121  M01S03927.sform   +++|  ELSE
06122  M01S03928.sform   +++|    BEGIN                            # IGNORE CHARACTER #
Line S03929 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06123  M02S03929.sform9  ---|    IF VALIDFIELD THEN
Line S03930 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06124  M02S03930.sform9  ---|      BEGIN                          # BAD CHARACTER IS IN FIELD #
06125  M01S00056.sform9  +++|    IF VALIDFIELD AND NOT TERREWSCRN[0] THEN
06126  M01S00057.sform9  +++|      BEGIN                          # IF NEED TO SET REWRITE BIT #
06127  M01S03931.sform   +++|      FLDREWRITE[FIELD] = TRUE;
06128  M01S03932.sform   +++|      TERREWFLDS[0] = TRUE;
06129  M01S03933.sform   +++|      END
06130  M01S03934.sform   +++|    ELSE
06131  M01S03935.sform   +++|      BEGIN                          # BAD CHARACTER IS NOT IN FIELD #
Line S03936 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06132  M02S03936.sform9  ---|      IF CHAR NQ BLANK THEN
Line S03937 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06133  M02S03937.sform9  ---|        BEGIN                        # IF CHARACTER IS NOT A BLANK #
06134  M01S00058.sform9  +++|      IF CHAR NQ BLANK AND NOT TERREWSCRN[0] THEN
06135  M01S00059.sform9  +++|        BEGIN                        # IF NEED TO CLEAR ON SCREEN #
06136  M01S03938.sform   +++|        VDTPOS(XPOS,YPOS);           # ERASE CHARACTER #
06137  M01S03939.sform   +++|        VDTOUT(BLANK);
06138  M01S03940.sform   +++|        END
06139  M01S03941.sform   +++|      END
06140  M01S03942.sform   +++|    END
06141  M01S03943.sform   +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06142  M01S00060.sform9  +++|
06143  M01S00061.sform9  +++|HOMEKEY:                             # HOME KEY WAS PRESSED #
06144  M01S00062.sform9  +++|
06145  M01S00063.sform9  +++|  IF TERTABAUTO[0] THEN
06146  M01S00064.sform9  +++|    BEGIN                            # IF AUTOMATIC TABBING #
Line S00065 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06147  M02S00065.242l642 ---|    IF TERINPVARS[0] THEN
06148  M01S00947.242l642 +++|    IF NOT TERNOINVRS[0] THEN
06149  M01S00066.sform9  +++|      BEGIN                          # IF INPUT VARIABLES EXIST #
Line S00067 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06150  M02S00067.242l642 ---|      TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
Line S00068 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06151  M02S00068.242l642 ---|      OFFSET = 0;                    # CLEAR FIELD OFFSET #
Line S00069 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06152  M02S00069.242l642 ---|      LASTFIELD = FIELD;             # UPDATE LAST VALID FIELD #
Line S00070 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06153  M02S00070.242l642 ---|      YPOS = YMASKOF INPOS;          # RESET INTERNAL POSITION #
Line S00071 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06154  M02S00071.242l642 ---|      XPOS = XMASKOF INPOS;
Line S00072 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06155  M02S00072.242l642 ---|      VDTCOR(YPOS,XPOS);
06156  M01S00948.242l642 +++|      IF NOT TERTABHOME[0] THEN
06157  M01S00949.242l642 +++|        BEGIN                        # CURSOR HAS MOVED TO FIELD #
06158  M01S00950.242l642 +++|        TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
06159  M01S00951.242l642 +++|        OFFSET = 0;                  # CLEAR FIELD OFFSET #
06160  M01S00952.242l642 +++|        LASTFIELD = FIELD;           # UPDATE LAST VALID FIELD #
06161  M01S00953.242l642 +++|        YPOS = YMASKOF INPOS;        # RESET INTERNAL POSITION #
06162  M01S00954.242l642 +++|        XPOS = XMASKOF INPOS;
06163  M01S00955.242l642 +++|        VDTCOR(YPOS,XPOS);
06164  M01S00956.242l642 +++|        END
06165  M01S00073.sform9  +++|      END
06166  M01S00074.sform9  +++|    END
06167  M01S00075.sform9  +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06168  M01S00076.sform9  +++|
06169  M01S00077.sform9  +++|LEFTKEY:                             # CURSOR LEFT #
06170  M01S00078.sform9  +++|
Line S00079 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06171  M02S00079.242l642 ---|  IF TERTABAUTO[0] THEN
06172  M01S00957.242l642 +++|  IF TERTABAUTO[0] AND NOT TERTABHOME[0] THEN
06173  M01S00080.sform9  +++|    BEGIN                            # IF AUTOMATIC TABBING #
Line S00081 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06174  M02S00081.242l642 ---|    IF TERINPVARS[0] AND NOT VALIDFIELD THEN
06175  M01S00958.242l642 +++|    IF NOT TERNOINVRS[0] AND NOT VALIDFIELD THEN
06176  M01S00082.sform9  +++|      BEGIN                          # IF AUTO-TAB TO PREVIOUS FIELD #
06177  M01S00001.ns2549  +++|      LASTPOS = INPOS;               # SAVE CURRENT POSITION #
06178  M01S00083.sform9  +++|      TABKEY(SCREENST"BTAB",INPOS,FIELD,INPOS);
06179  M01S00002.ns2549  +++|      IF INPOS EQ 0 AND TERPTDWBPG[0] THEN
06180  M01S00003.ns2549  +++|        BEGIN                        # IF NO BACKWARD WRAP FROM HOME #
06181  M01S00004.ns2549  +++|        INPOS = LASTPOS;             # RESTORE PREVIOUS POSITION #
06182  M01S00005.ns2549  +++|        GOTO GETINP;                 # CONTINUE LOOKING AT INPUT #
06183  M01S00006.ns2549  +++|        END
06184  M01S00084.sform9  +++|      IF INPOS EQ 0 AND NOT TERTABHOME[0] THEN
06185  M01S00085.sform9  +++|        BEGIN                        # IF TAB DOES NOT STOP AT HOME #
06186  M01S00086.sform9  +++|        TABKEY(SCREENST"BTAB",INPOS,FIELD,INPOS);
06187  M01S00087.sform9  +++|        END
06188  M01S00088.sform9  +++|      OFFSET = FLDLENGTH[FIELD] - 1; # SET OFFSET TO END OF FIELD #
06189  M01S00089.sform9  +++|      LASTFIELD = FIELD;             # UPDATE LAST VALID FIELD #
06190  M01S00090.sform9  +++|      INPOS = INPOS + OFFSET;        # RESET INTERNAL POSITION #
06191  M01S00091.sform9  +++|      YPOS = YMASKOF INPOS;
06192  M01S00092.sform9  +++|      XPOS = XMASKOF INPOS;
06193  M01S00093.sform9  +++|      VDTCOR(YPOS,XPOS);
06194  M01S00094.sform9  +++|      END
06195  M01S00095.sform9  +++|    END
06196  M01S00096.sform9  +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06197  M01S00097.sform9  +++|
06198  M01S00098.sform9  +++|RIGHTKEY:                            # CURSOR RIGHT #
06199  M01S00099.sform9  +++|
Line S00100 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06200  M02S00100.242l642 ---|  IF TERTABAUTO[0] THEN
06201  M01S00959.242l642 +++|  IF TERTABAUTO[0] AND NOT TERTABHOME[0] THEN
06202  M01S00101.sform9  +++|    BEGIN                            # IF AUTOMATIC TABBING #
Line S00102 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06203  M02S00102.242l642 ---|    IF TERINPVARS[0] AND NOT VALIDFIELD THEN
06204  M01S00960.242l642 +++|    IF NOT TERNOINVRS[0] AND NOT VALIDFIELD THEN
06205  M01S00103.sform9  +++|      BEGIN                          # IF AUTO-TAB TO NEXT FIELD #
06206  M01S00104.sform9  +++|      TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
06207  M01S00105.sform9  +++|      IF INPOS EQ 0 AND NOT TERTABHOME[0] THEN
06208  M01S00106.sform9  +++|        BEGIN                        # IF TAB DOES NOT STOP AT HOME #
06209  M01S00107.sform9  +++|        TABKEY(SCREENST"FTAB",INPOS,FIELD,INPOS);
06210  M01S00108.sform9  +++|        END
06211  M01S00109.sform9  +++|      OFFSET = 0;                    # CLEAR FIELD OFFSET #
06212  M01S00110.sform9  +++|      LASTFIELD = FIELD;             # UPDATE LAST VALID FIELD #
06213  M01S00111.sform9  +++|      YPOS = YMASKOF INPOS;          # RESET INTERNAL POSITION #
06214  M01S00112.sform9  +++|      XPOS = XMASKOF INPOS;
06215  M01S00113.sform9  +++|      VDTCOR(YPOS,XPOS);
06216  M01S00114.sform9  +++|      END
06217  M01S00115.sform9  +++|    END
06218  M01S00116.sform9  +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06219  M01S00117.sform9  +++|
Line S03944 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06220  M02S03944.242l642 ---|
Line S03945 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06221  M02S03945.252l678 ---|FORWARDTAB:
Line S03946 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06222  M02S03946.252l678 ---|BACKWRDTAB:                          # TAB KEY PRESSED #
Line S03947 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06223  M02S03947.252l678 ---|
Line S03948 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06224  M02S03948.252l678 ---|  IF TERTABPROT[0] THEN
Line S03949 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06225  M02S03949.252l678 ---|    BEGIN                            # CAN TAB TO UNPROTECTED FIELD #
Line S00961 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06226  M02S00961.252l678 ---|    LASTPOS = INPOS;                 # SAVE POSITION #
Line S00007 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06227  M03S00007.252l678 ---|    IF NOT VALIDFIELD AND TERTABAUTO[0] AND LASTORD EQ SCREENST"CHAR"
Line S00008 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06228  M03S00008.252l678 ---|      AND ORD EQ SCREENST"FTAB" THEN
Line S00009 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06229  M03S00009.252l678 ---|      BEGIN                          # IF AUTO TAB THEN HARD TAB #
Line S00010 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06230  M03S00010.252l678 ---|      TABKEY(ORD,INPOS,FIELD,INPOS);
Line S00011 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06231  M03S00011.252l678 ---|      IF INPOS EQ 0 AND NOT TERTABHOME[0] THEN
Line S00012 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06232  M03S00012.252l678 ---|        BEGIN                        # IF TAB DOES NOT STOP AT HOME #
Line S00013 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06233  M03S00013.252l678 ---|        TABKEY(ORD,INPOS,FIELD,INPOS);
Line S00014 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06234  M03S00014.252l678 ---|        END
Line S00015 Modification History
M01 (Added by) sform5
M02 (Updated by) sform9
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06235  M03S00015.252l678 ---|      END
Line S03950 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06236  M02S03950.252l678 ---|    TABKEY(ORD,INPOS,FIELD,INPOS);
Line S03951 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06237  M03S03951.252l678 ---|    IF INPOS EQ 0 AND NOT TERTABHOME[0] THEN
Line S03952 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06238  M03S03952.252l678 ---|      BEGIN                          # IF TAB DOES NOT STOP AT HOME #
Line S03953 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06239  M03S03953.252l678 ---|      TABKEY(ORD,INPOS,FIELD,INPOS);
Line S03954 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06240  M03S03954.252l678 ---|      END
Line S00962 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06241  M02S00962.252l678 ---|    IF INPOS EQ 0 THEN
Line S00963 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06242  M02S00963.252l678 ---|      BEGIN                          # IF LOGICALLY AT HOME #
Line S00964 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06243  M02S00964.252l678 ---|      IF NOT TERPTDWFPG THEN
Line S00965 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06244  M02S00965.252l678 ---|        BEGIN                        # IF TAB CAN REALLY WRAP #
Line S00966 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06245  M02S00966.252l678 ---|        IF NOT TERTABHOME[0] THEN
Line S00967 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06246  M02S00967.252l678 ---|          BEGIN                      # IF TAB DOES NOT STOP AT HOME #
Line S00968 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06247  M02S00968.252l678 ---|          TABKEY(ORD,INPOS,FIELD,INPOS);
Line S00969 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06248  M02S00969.252l678 ---|          END
Line S00970 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06249  M02S00970.252l678 ---|        OFFSET = 0;                  # CLEAR FIELD OFFSET #
Line S00971 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06250  M02S00971.252l678 ---|        LASTFIELD = FIELD;           # UPDATE LAST VALID FIELD #
Line S00972 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06251  M02S00972.252l678 ---|        END
Line S00973 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06252  M02S00973.252l678 ---|      ELSE
Line S00974 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06253  M02S00974.252l678 ---|        BEGIN                        # TAB DID NOT OCCUR ON SCREEN #
Line S00975 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06254  M02S00975.252l678 ---|        INPOS = LASTPOS;
Line S00976 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06255  M02S00976.252l678 ---|        END
Line S00977 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06256  M02S00977.252l678 ---|      END
Line S00978 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06257  M02S00978.252l678 ---|    YPOS = YMASKOF INPOS;            # RESET INTERNAL POSITION #
Line S00979 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06258  M02S00979.252l678 ---|    XPOS = XMASKOF INPOS;
Line S00980 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06259  M02S00980.252l678 ---|    VDTCOR(YPOS,XPOS);
Line S00118 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06260  M03S00118.252l678 ---|    OFFSET = 0;                      # CLEAR FIELD OFFSET #
Line S00119 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06261  M03S00119.252l678 ---|    LASTFIELD = FIELD;               # UPDATE LAST VALID FIELD #
Line S03955 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06262  M03S03955.252l678 ---|    YPOS = YMASKOF INPOS;            # RESET INTERNAL POSITION #
Line S03956 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06263  M03S03956.252l678 ---|    XPOS = XMASKOF INPOS;
Line S03957 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06264  M03S03957.252l678 ---|    VDTCOR(YPOS,XPOS);
Line S03958 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06265  M02S03958.252l678 ---|    END
Line S03959 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06266  M02S03959.252l678 ---|  ELSE
Line S03960 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06267  M02S03960.252l678 ---|    BEGIN                            # SIMULATE WITH SOFT TAB #
Line S03961 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06268  M03S03961.252l678 ---|    IF SOFTTAB EQ 0 THEN SOFTPOS = INPOS;
Line S03962 Modification History
M01 (Added by) sform
M02 (Updated by) 242l642
M03 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06269  M03S03962.252l678 ---|    SOFTTAB = SOFTTAB + 1;
Line S00981 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06270  M02S00981.252l678 ---|    IF TERSOFTTAB[0] EQ 0 THEN TERSOFTPOS[0] = INPOS;
Line S00982 Modification History
M01 (Added by) 242l642
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06271  M02S00982.252l678 ---|    TERSOFTTAB[0] = TERSOFTTAB[0] + 1;
Line S03963 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06272  M02S03963.252l678 ---|    END
Line S03964 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06273  M02S03964.252l678 ---|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06274  M01S00142.252l678 +++|FORWARDTAB:                          # FORWARD TAB KEY PRESSED #
06275  M01S00143.252l678 +++|
06276  M01S00144.252l678 +++|  IF TERTABPROT[0] THEN
06277  M01S00145.252l678 +++|    BEGIN                            # CAN TAB TO UNPROTECTED FIELD #
06278  M01S00146.252l678 +++|    LASTPOS = INPOS;                 # SAVE POSITION #
06279  M01S00147.252l678 +++|    TABKEY(ORD,INPOS,FIELD,INPOS);
06280  M01S00148.252l678 +++|    IF INPOS EQ 0 THEN
06281  M01S00149.252l678 +++|      BEGIN                          # IF LOGICALLY AT HOME #
06282  M01S00150.252l678 +++|      IF NOT TERPTDWFPG[0] THEN
06283  M01S00151.252l678 +++|        BEGIN                        # IF TAB CAN REALLY WRAP #
06284  M01S00152.252l678 +++|        IF NOT TERTABHOME[0] THEN
06285  M01S00153.252l678 +++|          BEGIN                      # IF TAB DOES NOT STOP AT HOME #
06286  M01S00154.252l678 +++|          TABKEY(ORD,INPOS,FIELD,INPOS);
06287  M01S00155.252l678 +++|          END
06288  M01S00156.252l678 +++|        OFFSET = 0;                  # CLEAR FIELD OFFSET #
06289  M01S00157.252l678 +++|        LASTFIELD = FIELD;           # UPDATE LAST VALID FIELD #
06290  M01S00158.252l678 +++|        END
06291  M01S00159.252l678 +++|      ELSE
06292  M01S00160.252l678 +++|        BEGIN                        # TAB DID NOT OCCUR ON SCREEN #
06293  M01S00161.252l678 +++|        INPOS = LASTPOS;
06294  M01S00162.252l678 +++|        END
06295  M01S00163.252l678 +++|      END
06296  M01S00164.252l678 +++|    YPOS = YMASKOF INPOS;            # RESET INTERNAL POSITION #
06297  M01S00165.252l678 +++|    XPOS = XMASKOF INPOS;
06298  M01S00166.252l678 +++|    VDTCOR(YPOS,XPOS);
06299  M01S00167.252l678 +++|    END
06300  M01S00168.252l678 +++|  ELSE
06301  M01S00169.252l678 +++|    BEGIN                            # SIMULATE WITH SOFT TAB #
06302  M01S00170.252l678 +++|    IF TERSOFTTAB[0] EQ 0 THEN TERSOFTPOS[0] = INPOS;
06303  M01S00171.252l678 +++|    TERSOFTTAB[0] = TERSOFTTAB[0] + 1;
06304  M01S00172.252l678 +++|    END
06305  M01S00173.252l678 +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06306  M01S00174.252l678 +++|
06307  M01S00175.252l678 +++|BACKWRDTAB:                          # BACK TAB KEY PRESSED #
06308  M01S00176.252l678 +++|
06309  M01S00177.252l678 +++|  IF TERTABPROT[0] THEN
06310  M01S00178.252l678 +++|    BEGIN                            # CAN TAB TO UNPROTECTED FIELD #
06311  M01S00179.252l678 +++|    LASTPOS = INPOS;                 # SAVE POSITION #
06312  M01S00180.252l678 +++|    TABKEY(ORD,INPOS,FIELD,INPOS);
06313  M01S00181.252l678 +++|    IF INPOS EQ 0 THEN
06314  M01S00182.252l678 +++|      BEGIN                          # IF LOGICALLY AT HOME #
06315  M01S00183.252l678 +++|      IF NOT TERPTDWBPG[0] THEN
06316  M01S00184.252l678 +++|        BEGIN                        # IF TAB CAN REALLY WRAP #
06317  M01S00185.252l678 +++|        IF NOT TERTABHOME[0] THEN
06318  M01S00186.252l678 +++|          BEGIN                      # IF TAB DOES NOT STOP AT HOME #
06319  M01S00187.252l678 +++|          TABKEY(ORD,INPOS,FIELD,INPOS);
06320  M01S00188.252l678 +++|          END
06321  M01S00189.252l678 +++|        OFFSET = 0;                  # CLEAR FIELD OFFSET #
06322  M01S00190.252l678 +++|        LASTFIELD = FIELD;           # UPDATE LAST VALID FIELD #
06323  M01S00191.252l678 +++|        END
06324  M01S00192.252l678 +++|      ELSE
06325  M01S00193.252l678 +++|        BEGIN                        # TAB DID NOT OCCUR ON SCREEN #
06326  M01S00194.252l678 +++|        INPOS = LASTPOS;
06327  M01S00195.252l678 +++|        END
06328  M01S00196.252l678 +++|      END
06329  M01S00197.252l678 +++|    YPOS = YMASKOF INPOS;            # RESET INTERNAL POSITION #
06330  M01S00198.252l678 +++|    XPOS = XMASKOF INPOS;
06331  M01S00199.252l678 +++|    VDTCOR(YPOS,XPOS);
06332  M01S00200.252l678 +++|    END
06333  M01S00201.252l678 +++|  ELSE
06334  M01S00202.252l678 +++|    BEGIN                            # SIMULATE WITH SOFT TAB #
06335  M01S00203.252l678 +++|    IF TERSOFTTAB[0] EQ 0 THEN TERSOFTPOS[0] = INPOS;
06336  M01S00204.252l678 +++|    TERSOFTTAB[0] = TERSOFTTAB[0] - 1;
06337  M01S00205.252l678 +++|    END
06338  M01S00206.252l678 +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06339  M01S03965.sform   +++|
06340  M01S03966.sform   +++|CLEARPAGE:                           # CLEAR PAGE PRESSED #
06341  M01S03967.sform   +++|
06342  M01S03968.sform   +++|  TERREWSCRN[0] = TRUE;              # COMPLETE REWRITE OF SCREEN #
06343  M01S03969.sform   +++|  TERREWFLDS[0] = TRUE;
06344  M01S03970.sform   +++|  SKIPINP = TRUE;                    # SKIP TO NEXT INPUT #
06345  M01S03971.sform   +++|  GOTO GETINP;                       # GET INPUT AGAIN #
06346  M01S03972.sform   +++|
06347  M01S03973.sform   +++|CLEAREOL:                            # CLEAR TO END OF LINE PRESSED #
06348  M01S03974.sform   +++|
Line S03975 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06349  M02S03975.sform24 ---|  IF FIELD GQ 0 THEN
Line S03976 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06350  M02S03976.sform24 ---|    BEGIN                            # CLEAR OUT FIELD FROM OFFSET #
06351  M01S00029.sform24 +++|  IF VALIDFIELD THEN
06352  M01S00030.sform24 +++|    BEGIN                            # IF IN ACTIVE INPUT FIELD #
06353  M01S03977.sform   +++|    BFIELD(FIELD,OFFSET,DUMMY);      # BLANK FIELD IN VARDATA #
06354  M01S03978.sform   +++|    FLDVALID[FIELD] = FALSE;
06355  M01S03979.sform   +++|    FLDENTERED[FIELD] = TRUE;
Line S03980 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
06356  M02S03980.ns2346  ---|    FLDREWRITE[FIELD] = TRUE;
Line S03981 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
Seq #  *Modification Id* Act 
----------------------------+
06357  M02S03981.ns2346  ---|    TERREWFLDS[0] = TRUE;
Line S00014 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06358  M02S00014.sform24 ---|    IF TERATTRSET[0] THEN
Line S00015 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06359  M02S00015.sform24 ---|      BEGIN                          # IF RESET IS NEEDED #
Line S00016 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06360  M02S00016.sform24 ---|      FLDREWRITE[FIELD] = TRUE;
Line S00017 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06361  M02S00017.sform24 ---|      TERREWFLDS[0] = TRUE;
Line S00018 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06362  M02S00018.sform24 ---|      END
Line S03982 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06363  M02S03982.sform24 ---|    STARTFIELD = FIELD + 1;
Line S03983 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06364  M02S03983.sform24 ---|    END
Line S03984 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06365  M02S03984.sform24 ---|  ELSE
Line S03985 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06366  M02S03985.sform24 ---|    BEGIN                            # TAB TO NEXT INPUT FIELD #
Line S03986 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06367  M02S03986.sform24 ---|    TABKEY(SCREENST"FTAB",INPOS,STARTFIELD,STARTPOS);
Line S03987 Modification History
M01 (Added by) sform
M02 (Updated by) ns2231
M03 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06368  M03S03987.sform24 ---|    IF STARTFIELD EQ -1 THEN GOTO GETINP;  # XYZ TOM? #
Line S00005 Modification History
M01 (Added by) ns2231
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06369  M02S00005.sform24 ---|    IF STARTFIELD EQ -1 THEN GOTO GETINP;  # IF NO INPUT FIELDS #
06370  M01S00031.sform24 +++|    FLDREWRITE[FIELD] = TRUE;
06371  M01S00032.sform24 +++|    TERREWFLDS[0] = TRUE;
06372  M01S03988.sform   +++|    END
06373  M01S03989.sform   +++|
06374  M01S00033.sform24 +++|REWRTLINE:                           # REWRITE REST OF FIELDS ON LINE #
06375  M01S00034.sform24 +++|
06376  M01S00035.sform24 +++|  STARTFIELD = FIELD + 1;
Line S03990 Modification History
M01 (Added by) sform
M02 (Updated by) ns2231
Seq #  *Modification Id* Act 
----------------------------+
06377  M02S03990.ns2231  ---|  IF TERTABHOME[0] THEN
Line S00006 Modification History
M01 (Added by) ns2231
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06378  M02S00006.252l678 ---|  IF NOT TERPROTECT[0] OR TERTABHOME[0] THEN
Line S03991 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06379  M02S03991.252l678 ---|    BEGIN                            # IF CLEAR ON SCREEN #
06380  M01S00207.252l678 +++|  IF NOT TERTABPROT[0] OR TERCLEARSM[0] THEN
06381  M01S00208.252l678 +++|    BEGIN                            # IF MORE THAN ONE CLEARED #
Line S03992 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06382  M02S03992.sform24 ---|    FOR I = STARTFIELD STEP 1 WHILE FLDENTRY[I] NQ 0 DO
Line S03993 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06383  M02S03993.sform24 ---|      BEGIN                          # BLANK FILL VAR DATA #
Line S03994 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06384  M02S03994.sform24 ---|      IF FLDINPUTV[I] AND FLDACTIVE[I] AND FLDYCORD[I] EQ YPOS THEN
Line S03995 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06385  M02S03995.sform24 ---|        BEGIN                        # ACTIVE IN-FIELD ON SAME LINE #
Line S03996 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06386  M02S03996.sform24 ---|        BFIELD(I,0,DUMMY);           # BLANK FIELD IN VARDATA #
Line S03997 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06387  M02S03997.sform24 ---|        FLDVALID[I] = FALSE;
Line S03998 Modification History
M01 (Added by) sform
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06388  M02S03998.sform24 ---|        FLDENTERED[I] = TRUE;
Line S03999 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
M03 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06389  M03S03999.sform24 ---|        FLDREWRITE[I] = TRUE;
Line S04000 Modification History
M01 (Added by) sform
M02 (Updated by) ns2346
M03 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06390  M03S04000.sform24 ---|        TERREWFLDS[0] = TRUE;
Line S00019 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06391  M02S00019.sform24 ---|        IF TERATTRSET[0] THEN
Line S00020 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06392  M02S00020.sform24 ---|          BEGIN                      # IF RESET IS NEEDED #
06393  M01S00036.sform24 +++|    FOR I = STARTFIELD STEP 1 WHILE FLDENTRY[I] NQ 0
06394  M01S00037.sform24 +++|      AND FLDYCORD[I] LQ YPOS DO
06395  M01S00038.sform24 +++|      BEGIN                          # IF NOT PAST AFFECTED LINE #
06396  M01S00039.sform24 +++|      IF FLDYCORD[I] EQ YPOS AND FLDACTIVE[I]
06397  M01S00040.sform24 +++|        AND FLDXCORD[I]+FLDLENGTH[I] GQ XPOS THEN
06398  M01S00041.sform24 +++|        BEGIN                        # IF ACTIVE FIELD ON SAME LINE #
06399  M01S00042.sform24 +++|        IF FLDINPUTV[I] THEN
06400  M01S00043.sform24 +++|          BEGIN                      # IF ACTIVE INPUT FIELD #
06401  M01S00044.sform24 +++|          BFIELD(I,0,DUMMY);         # BLANK FIELD IN VARDATA #
06402  M01S00045.sform24 +++|          FLDVALID[I] = FALSE;
06403  M01S00046.sform24 +++|          FLDENTERED[I] = TRUE;
06404  M01S00047.sform24 +++|          END
Line S00021 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06405  M02S00021.sform24 ---|          FLDREWRITE[I] = TRUE;
Line S00022 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06406  M02S00022.sform24 ---|          TERREWFLDS[0] = TRUE;
Line S00023 Modification History
M01 (Added by) ns2346
M02 (Updated by) sform24
Seq #  *Modification Id* Act 
----------------------------+
06407  M02S00023.sform24 ---|          END
06408  M01S00048.sform24 +++|        FLDREWRITE[I] = TRUE;
06409  M01S00049.sform24 +++|        TERREWFLDS[0] = TRUE;
06410  M01S04001.sform   +++|        END
06411  M01S04002.sform   +++|      END
06412  M01S04003.sform   +++|    END
06413  M01S04004.sform   +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06414  M01S04005.sform   +++|
06415  M01S04006.sform   +++|
06416  M01S04007.sform   +++|ERASELINE:                           # SHIFT ERASE PRESSED #
06417  M01S04008.sform   +++|
06418  M01S00050.sform24 +++|  IF NOT TERTABPROT[0] THEN
06419  M01S00051.sform24 +++|    BEGIN                            # IF NO PROTECT #
06420  M01S00052.sform24 +++|    XPOS = 0;
06421  M01S00053.sform24 +++|    XMASKOF INPOS = XPOS;
06422  M01S00054.sform24 +++|    VDTCOR(YPOS,XPOS);               # REPOSITION TO START OF LINE #
06423  M01S00055.sform24 +++|    STARTFIELD = -1;
06424  M01S00056.sform24 +++|    GOTO REWRTLINE;                  # REWRITE ALL FIELDS ON LINE #
06425  M01S00057.sform24 +++|    END
Line S04009 Modification History
M01 (Added by) sform
M02 (Updated by) 252l678
Seq #  *Modification Id* Act 
----------------------------+
06426  M02S04009.252l678 ---|  FFIELD(LASTPOS,FIELD,OFFSET,INSEARCH);  # FIND INPUT FIELD #
06427  M01S00209.252l678 +++|  FFIELD(TERPREVPOS,FIELD,OFFSET,INSEARCH);
06428  M01S04010.sform   +++|  IF FIELD GQ 0 THEN
06429  M01S04011.sform   +++|    BEGIN                            # FOUND FIELD #
06430  M01S04012.sform   +++|    BFIELD(FIELD,0,DUMMY);           # BLANK FIELD IN VARDATA #
06431  M01S04013.sform   +++|    TERREWFLDS[0] = TRUE;
06432  M01S04014.sform   +++|    FLDREWRITE[FIELD] = TRUE;
06433  M01S04015.sform   +++|    FLDENTERED[FIELD] = TRUE;
06434  M01S04016.sform   +++|    FLDVALID[FIELD] = FALSE;
06435  M01S04017.sform   +++|    VDTCOR(FLDYCORD[FIELD],FLDXCORD[FIELD]);  # RESET INTERNAL POS #
06436  M01S04018.sform   +++|    END
06437  M01S04019.sform   +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06438  M01S04020.sform   +++|
06439  M01S04021.sform   +++|ERASECHAR:                           # ERASE KEY PRESSED #
06440  M01S04022.sform   +++|
Line S04023 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06441  M02S04023.sform9  ---|  IF VALIDFIELD THEN
Line S04024 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06442  M02S04024.sform9  ---|    BEGIN                            # IF VALID FIELD #
Line S04025 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06443  M02S04025.sform9  ---|    WRIVCH(FIELD,OFFSET,BLANK);      # WRITE BLANK INTO VARDATA #
Line S04026 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06444  M02S04026.sform9  ---|    FLDVALID[FIELD] = FALSE;
Line S04027 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06445  M02S04027.sform9  ---|    FLDENTERED[FIELD] = TRUE;
Line S04028 Modification History
M01 (Added by) sform
M02 (Updated by) sform9
Seq #  *Modification Id* Act 
----------------------------+
06446  M02S04028.sform9  ---|    END
06447  M01S00120.sform9  +++|  IF TERTABAUTO[0] THEN
06448  M01S00121.sform9  +++|    BEGIN                            # IF AUTOMATIC TABBING #
Line S00122 Modification History
M01 (Added by) sform9
M02 (Updated by) 242l642
Seq #  *Modification Id* Act 
----------------------------+
06449  M02S00122.242l642 ---|    IF TERINPVARS[0] AND NOT VALIDFIELD THEN
06450  M01S00983.242l642 +++|    IF NOT TERNOINVRS[0] AND NOT VALIDFIELD THEN
06451  M01S00123.sform9  +++|      BEGIN                          # IF AUTO-TAB TO PREVIOUS FIELD #
06452  M01S00124.sform9  +++|      TABKEY(SCREENST"BTAB",INPOS,FIELD,INPOS);
06453  M01S00125.sform9  +++|      IF INPOS EQ 0 AND NOT TERTABHOME[0] THEN
06454  M01S00126.sform9  +++|        BEGIN                        # IF TAB DOES NOT STOP AT HOME #
06455  M01S00127.sform9  +++|        TABKEY(SCREENST"BTAB",INPOS,FIELD,INPOS);
06456  M01S00128.sform9  +++|        END
06457  M01S00129.sform9  +++|      OFFSET = FLDLENGTH[FIELD] - 1; # SET OFFSET TO END OF FIELD #
06458  M01S00130.sform9  +++|      LASTFIELD = FIELD;             # UPDATE LAST VALID FIELD #
06459  M01S00131.sform9  +++|      INPOS = INPOS + OFFSET;        # RESET INTERNAL POSITION #
06460  M01S00132.sform9  +++|      YPOS = YMASKOF INPOS;
06461  M01S00133.sform9  +++|      XPOS = XMASKOF INPOS;
06462  M01S00134.sform9  +++|      VDTCOR(YPOS,XPOS);
06463  M01S00135.sform9  +++|      END
06464  M01S00136.sform9  +++|    END
06465  M01S00137.sform9  +++|  IF VALIDFIELD THEN
06466  M01S00138.sform9  +++|    BEGIN                            # IF VALID FIELD #
06467  M01S00139.sform9  +++|    WRIVCH(FIELD,OFFSET,BLANK);      # WRITE BLANK INTO VARDATA #
06468  M01S00140.sform9  +++|    FLDENTERED[FIELD] = TRUE;
06469  M01S00141.sform9  +++|    FLDVALID[FIELD] = FALSE;         # INVALID UNTIL PROVEN VALID #
06470  M01S00058.sform24 +++|    END
06471  M01S00059.sform24 +++|  ELSE IF NOT TERTABAUTO[0] THEN
06472  M01S00060.sform24 +++|    BEGIN
06473  M01S00061.sform24 +++|    RESTFLD (INPOS);
06474  M01S00142.sform9  +++|    END
06475  M01S04029.sform   +++|  GOTO GETINP;                       # CONTINUE LOOKING AT INPUT #
06476  M01S04030.sform   +++|
06477  M01S04031.sform   +++|APPLICFUN:
06478  M01S04032.sform   +++|GENERICFUN:                          # FUNCTION KEY PRESSED #
06479  M01S04033.sform   +++|
06480  M01S04034.sform   +++|  IF TERLEAVESM[0] NQ 0 THEN
06481  M01S04035.sform   +++|    BEGIN                            # IF FUNCTION KEY LEFT MARK #
06482  M01S04036.sform   +++|    IF VALIDFIELD THEN
06483  M01S04037.sform   +++|      BEGIN                          # IF IN INPUT FIELD #
06484  M01S04038.sform   +++|      FLDREWRITE[FIELD] = TRUE;      # SET REWRITE BIT FOR FIELD #
06485  M01S04039.sform   +++|      TERREWFLDS[0] = TRUE;
06486  M01S04040.sform   +++|      END
Proceed to Part 5
cdc/nos2.source/opl.opl871/deck/sform.004.txt ยท Last modified: by 127.0.0.1