VisualAge Generator                                DATE: 12/18/2001   TIME: 9:57:09 AM
                                   PROGRAM NAME:                 BW1700C
                                   APPLICATION NAME:             AABWTUI
                                   TYPE OF PROGRAM:              CALLED BATCH
                                   EXECUTION MODE:               NONSEGMENTED
                                   WORKING STORAGE:              
                                   PSB:                          
                                   FIRST MAP:                    
                                   MAP GROUP NAME:               
                                   HELP MAP GROUP NAME:          
                                   HELP MAP PF KEY:              1
                                   BYPASS EDIT PF KEYS:          
                                   PF1-12=PF13-24:               NO
                                   ALLOW IMPLICITS:              NO
                                   MSG TABLE PREFIX:             
          PROLOGUE
                                   ************************************************************
                                   ************************************************************
                                   ***                                                      ***
                                   *** Written in 1993 by Bridgewater Consultants Inc.      ***
                                   *** Modified for use with BW/Wizard Version 2.0 Sept, 95 ***
                                   ***                                                      ***
                                   *** Called I/O (server) ISUD TEMPLATE                    ***
                                   *** =================================                    ***
                                   ***                                                      ***
                                   ***                                                      ***
                                   ***                                                      ***
                                   *** APPLICATION   - BW1700C                              ***
                                   *** APPL. TITLE   - Bridgewater CSP Demo                 ***
                                   *** APPL. DESC.   - Class Maintenance                    ***
                                   ***                                                      ***
                                   ***                                                      ***
                                   ***                                                      ***
                                   *** PROJECT       - C:\BWWizard2000Ent445_bwdemo1\PROJEC ***
                                   *** PROJECT DESC. - BW/Wizard  Tutorial Health Club Proj ***
                                   ***                 ect                                  ***
                                   ***                                                      ***
                                   ***                                                      ***
                                   ***                                                      ***
                                   *** TEMPLATE FILE - C:\BWWizard2000Ent445_bwdemo1\TEMPLV ***
                                   *** BUILD FILE    - C:\BWWizard2000Ent445_bwdemo1\BUILD\ ***
                                   *** BUILD DATE    - 12/13/01                             ***
                                   *** BUILD TIME    - 13:56:34                             ***
                                   ***                                                      ***
                                   ************************************************************
                                   ************************************************************
                                                                                               
                                   ***                                                         
                                                                                               
                                   ***======================================================== 
                                   ***                                                         
                                   ***  Pseudo-conversational processing by counter            
                                   ***  counter name is: USE_COUNT                             
                                   TABLE AND ADDITIONAL RECORDS LIST
                                      BWMSGTB             TABLE
                                   CALLED PROGRAM PARAMETER LIST
                                   BW1700-WSC                    RECORD
                                   BW1700-WSC-CTRL               RECORD
                                   BWSYSTEM                      RECORD
                                        PROGRAM STRUCTURE
     NAME                         LVL   OPTION   OBJECT                ERROR                 DESCRIPTION
     BW1700C-P01-MAIN              1    EXECUTE                                              Main process                
      BW1700C-P02-IO               2    EXECUTE                                              I/O Processing              
       BW1700C-P60-EDITS           3    EXECUTE                                              Wizard-generated Edit checks
       BW1700C-P10-INSERT          3    EXECUTE                                              Business logic for Insert
       BW1700C-P12-INS-IO          3    ADD      BW1700_HC1T100        EZERTN                Add new data row    
        BW1700C-P22-SEL-IO         4    INQUIRY  BW1700S_HC1T100       EZERTN                Select data from SQL table
        BW1700C-P25-CLEAN          4    EXECUTE                                              Clean up record for display
       BW1700C-P25-CLEAN           3    EXECUTE                                              Clean up record for display
       BW1700C-P20-PRESEL          3    EXECUTE                                              Business logic for Select
       BW1700C-P22-SEL-IO          3    INQUIRY  BW1700S_HC1T100       EZERTN                Select data from SQL table
       BW1700C-P24-PSTSEL          3    EXECUTE                                              Business logic for Select
       BW1700C-P30-UPDATE          3    EXECUTE                                              Business logic for Update
       BW1700C-P32-UPD-IO          3    SQLEXEC  BW1700_HC1T100        EZERTN                Update data in SQL table
        BW1700C-P22-SEL-IO         4    INQUIRY  BW1700S_HC1T100       EZERTN                Select data from SQL table
        BW1700C-P25-CLEAN          4    EXECUTE                                              Clean up record for display
       BW1700C-P40-DELETE          3    EXECUTE                                              Business logic for Delete
       BW1700C-P42-DEL-IO          3    SQLEXEC  BW1700_HC1T100        EZERTN                Delete row from SQL table


      MAIN PROCESSES
      BW1700C-P01-MAIN    ************************************************************************************
                          *             Main process                                                         *
                          ************************************************************************************
                                        
                                        /* Set EZE Words
                                        
                                        MOVE 1 TO EZEFEC ;    /* Return control to appl after hard error
                                        
                                        
                                        /* Initialize Error/Message Record if required
                                        
                                        /*IF BWSYSTEM.INIT NE 'INIT';
                                        /*  SET BWSYSTEM EMPTY;
                                        /*  MOVE 20 TO BWSYSTEM.LIMIT-MSG;
                                        /*  MOVE 0  TO BWSYSTEM.MAX-MSG;
                                        /*  MOVE 1  TO BWSYSTEM.SEL-MSG;
                                        /*  MOVE 'N' TO BWSYSTEM.ERROR_IND;
                                        /*  MOVE 'INIT' TO BWSYSTEM.INIT ;
                                        /*END;
                                        
                                        /** if Update requested,
                                        /** check that the data has changed
                                        
                                        IF  BW1700-WSC-CTRL.ISUD_ACTION
                                            = 'U'; /** Update
                                        
                                             IF BW1700-WSC.BW1700_DATA_ITEMS
                                                EQ BW1700-WSC-CTRL.BW1700_DATA_ITEMS
                                             AND BW1700-WSC.BW1700_HIDDEN_ITEMS
                                                EQ BW1700-WSC-CTRL.BW1700_HIDDEN_ITEMS;
                                        
                                                EZERTN; /* No changes, so return to calling program.
                                                        /* No message needed, since this check is
                                                        /* performed by the client, with a message.
                                                        /* The check is repeated here for the case
                                                        /* where this server is used as part of a
                                                        /* multi-table update.
                                             END;
                                        
                                        END;
                                        
                                        
                                        /* check that the keys have been passed
                                        
                                        IF  BW1700-WSC-CTRL.ISUD_ACTION
                                            = 'S' /** Select
                                        OR  BW1700-WSC-CTRL.ISUD_ACTION
                                            = 'I'; /** Insert
                                        
                                          IF BW1700-WSC.CLS-ID = ' ';
                                             MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                        
                                             IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                               BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                               MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                               MOVE 'CLS-ID'
                                                 TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                               MOVE "(E) Cls Id cannot be blank"
                                                 TO BWSYSTEM.MESSAGE(MAX-MSG);
                                             END;
                                        
                                          END;
                                        
                                        
                                        
                                          IF BWSYSTEM.ERROR_IND NE 'N';
                                             EZERTN;
                                          END;
                                        
                                        END;
                                        
                                        MOVE BW1700-WSC TO BW1700_HC1T100;
                                        MOVE BW1700-WSC TO BW1700S_HC1T100;
                                        
                                        PERFORM BW1700C-P02-IO;
                                        
                                        MOVE EZESQCOD TO BWSYSTEM.RAD_SQL_CODE;
                          OPTION -      EXECUTE                                              
                                        
      ADDITIONAL PERFORMED PROCESSES
      BW1700C-P02-IO      ************************************************************************************
                          *             I/O Processing                                                       *
                          ************************************************************************************
                                        
                                        
                                        
                                        /****
                                        /****
                                        /****
                                        /****              Insert Processing
                                        /****
                                        /****
                                        /****
                                        
                                        IF BW1700-WSC-CTRL.ISUD_ACTION
                                           = 'I'; /** Insert
                                          PERFORM BW1700C-P60-EDITS;    /* Edit Routines
                                          PERFORM BW1700C-P10-INSERT;   /* Insert Bus. Logic
                                        
                                          IF BWSYSTEM.ERROR_IND = 'N';
                                            PERFORM BW1700C-P12-INS-IO; /* Insert Proc.
                                        
                                            IF BWSYSTEM.ERROR_IND = 'N';
                                        
                                              IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                                BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                                MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                                MOVE ' '
                                                  TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                                MOVE "(I) Insert Successful"
                                                  TO BWSYSTEM.MESSAGE(MAX-MSG);
                                              END;
                                        
                                            END ;
                                        
                                            PERFORM BW1700C-P25-CLEAN;
                                        
                                          END ;
                                        
                                        ELSE ;
                                        
                                        /****
                                        /****
                                        /****
                                        /****              Select Processing
                                        /****
                                        /****
                                        /****
                                        
                                          IF BW1700-WSC-CTRL.ISUD_ACTION
                                             = 'S'; /** Select
                                            PERFORM BW1700C-P20-PRESEL;   /* Pre-Select Bus. Logic
                                        
                                            IF BWSYSTEM.ERROR_IND = 'N';
                                              PERFORM BW1700C-P22-SEL-IO; /* Select Proc.
                                              PERFORM BW1700C-P25-CLEAN;
                                        
                                              IF BWSYSTEM.ERROR_IND = 'N';
                                                PERFORM BW1700C-P24-PSTSEL; /* Post-Select Bus. Logic.
                                              END ;
                                        
                                            END ;
                                        
                                          ELSE;
                                        
                                        /****
                                        /****
                                        /****
                                        /****              Update Processing
                                        /****
                                        /****
                                        /****
                                        
                                            IF BW1700-WSC-CTRL.ISUD_ACTION
                                               = 'U'; /** Update
                                        
                                            /* check that the record was previously read
                                        
                                              IF BW1700-WSC.CLS-ID
                                                NE BW1700-WSC-CTRL.CLS-ID
                                                 ;
                                        
                                                IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                                  BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                                  MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                                  MOVE 'CLS-ID'
                                                    TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                                  MOVE "(E) Key Changed - Record must be Selected"
                                                    TO BWSYSTEM.MESSAGE(MAX-MSG);
                                                END;
                                        
                                                MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                                EZERTN;
                                              END;
                                        
                                              PERFORM BW1700C-P60-EDITS; /* Edit Routines
                                              PERFORM BW1700C-P30-UPDATE; /* Update Bus. logic
                                        
                                              IF BWSYSTEM.ERROR_IND = 'N';
                                                PERFORM BW1700C-P32-UPD-IO;
                                                IF BWSYSTEM.ERROR_IND = 'N';
                                        
                                                  IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                                    BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                                    MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                                    MOVE ' '
                                                      TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                                    MOVE "(I) Update Successful"
                                                      TO BWSYSTEM.MESSAGE(MAX-MSG);
                                                  END ;
                                        
                                                END ;
                                        
                                              END ;
                                        
                                              PERFORM BW1700C-P25-CLEAN;
                                        
                                            ELSE;
                                        
                                        /****
                                        /****
                                        /****
                                        /****              Delete Processing
                                        /****
                                        /****
                                        /****
                                        
                                              IF BW1700-WSC-CTRL.ISUD_ACTION
                                                 = 'D'; /** Delete
                                        
                                                /* check that the record was previously read
                                        
                                                IF BW1700-WSC.CLS-ID
                                                  NE BW1700-WSC-CTRL.CLS-ID
                                                  ;
                                        
                                                  IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                                    BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                                    MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                                    MOVE 'CLS-ID'
                                                      TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                                    MOVE "(E) Key Changed - Record must be Selected"
                                                      TO BWSYSTEM.MESSAGE(MAX-MSG);
                                                  END;
                                        
                                                  MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                                  EZERTN;
                                                END;
                                        
                                                PERFORM BW1700C-P40-DELETE;
                                        
                                                IF BWSYSTEM.ERROR_IND = 'N';
                                                  PERFORM BW1700C-P42-DEL-IO;
                                        
                                                  IF BWSYSTEM.ERROR_IND = 'N';
                                        
                                                    IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                                      BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                                      MOVE BWSYSTEM.APPLNM
                                                        TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                                      MOVE ' '
                                                        TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                                      MOVE "(I) Delete Successful"
                                                        TO BWSYSTEM.MESSAGE(MAX-MSG);
                                                    END;
                                        
                                                  /** Blank out the keys so that an Insert is possible
                                                    MOVE ' '
                                                      TO BW1700-WSC-CTRL.CLS-ID;
                                        
                                                  END ;
                                        
                                                END ;
                                        
                                              ELSE;
                                        
                                        /****==============================================****
                                        /****                                              ****
                                        /****                                              ****
                                        /****           Invalid Action                     ****
                                        /****                                              ****
                                        /****                                              ****
                                        /****==============================================****
                                        
                                                IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                                  BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                                  MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                                  MOVE 'ACTION'
                                                    TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                                  MOVE "(E) Invalid Action"
                                                    TO BWSYSTEM.MESSAGE(MAX-MSG);
                                                END;
                                                MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                              END ;
                                        
                                            END ;
                                        
                                          END ;
                                        
                                        END ;
                                        
                          OPTION -      EXECUTE                                              
                                        
      BW1700C-P10-INSERT  ************************************************************************************
                          *             Business logic for Insert                                            *
                          ************************************************************************************
                                        
                                        /****===================================================
                                        /****
                                        /****           Insert Business Logic
                                        /****
                                        /**** Add your code here for any business logic
                                        /**** required before an SQL INSERT.
                                        /****
                                        /****===================================================
                                        
                                        /* Set all hidden cols to a valid default value
                                        
                                        
                          OPTION -      EXECUTE                                              
                                        
      BW1700C-P12-INS-IO  ************************************************************************************
                          *             Add new data row                                                     *
                          ************************************************************************************
                                        
                          OPTION -      ADD      BW1700_HC1T100            RECORD            EZERTN
                                        SQL STATEMENT MODIFIED:                       YES
                                        INSERT INTO
                                          HC1T100
                                            (
                                            CLS_TYPE_CD,
                                            FRANCHISE_ID,
                                            EMPL_ID,
                                            CLS_DT,
                                            CLS_START_TM,
                                            CLS_LOC,
                                            CLS_DUR,
                                            CLS_COST,
                                            MMBRS_ONLY_IND,
                                            CLS_COMM,
                                            USE_COUNT,
                                            CLS_ID
                                            )
                                        VALUES
                                            (
                                            :CLS-TYPE-CD,
                                            :FRANCHISE-ID,
                                            :EMPL-ID,
                                            :CLS-DT,
                                            :CLS-START-TM,
                                            :CLS-LOC,
                                            :CLS-DUR,
                                            :CLS-COST,
                                            :MMBRS-ONLY-IND,
                                            :CLS-COMM,
                                              0,
                                            :CLS-ID
                                            )
                                        
                                        IF BW1700_HC1T100 NOT ERR ;
                                        
                                          MOVE 'Y' TO BWSYSTEM.CHANGES-MADE;
                                        /* If columns selected from multiple tables, re-read the row
                                        
                                          PERFORM BW1700C-P22-SEL-IO;
                                          PERFORM BW1700C-P25-CLEAN;
                                        
                                          EZERTN;
                                        
                                        END;
                                        
                                        IF BW1700_HC1T100 IS DUP ;
                                        
                                          IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                            BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                            MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                            MOVE 'CLS-ID' TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                            MOVE "(E) Duplicate HC1T100 record"
                                                    TO BWSYSTEM.MESSAGE(MAX-MSG);
                                          END;
                                        
                                          MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                          EZERTN;
                                        END ;
                                        
                                        
                                        MOVE 'SQL' TO BWSYSTEM.MESSAGE-CODE;
                                        
                                        IF EZESQCOD LT 0;
                                          MOVE '-' TO BWSYSTEM.MESSAGE-SQL-SIGN;
                                          BWSYSTEM.MESSAGE-SQL-CODE = EZESQCOD * -1;
                                        ELSE;
                                          MOVE '+' TO BWSYSTEM.MESSAGE-SQL-SIGN;
                                          BWSYSTEM.MESSAGE-SQL-CODE = EZESQCOD;
                                        END;
                                        
                                        IF BWSYSTEM.MESSAGE-KEY IN BWMSGTB.MESSAGE-KEY;
                                        
                                          IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                            BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                            MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                            MOVE 'CLS-ID'
                                              TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                            MOVE BWMSGTB.MESSAGE-TEXT(EZETST)
                                              TO BWSYSTEM.MESSAGE(MAX-MSG);
                                          END;
                                        
                                          MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                          EZERTN;
                                        END ;
                                        
                                        
                                        IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                          BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                          MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                          MOVE 'CLS-ID'
                                            TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                          MOVE
                                        "(E) Data error has occurred - contact your System Administrator"
                                            TO BWSYSTEM.MESSAGE(MAX-MSG);
                                        END;
                                        
                                        MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                        
                                        MOVE 'BW1700C'            TO BWSYSTEM.APPLNM;
                                        MOVE 'BW1700C-P12-INS-IO' TO BWSYSTEM.PROCNM;
                                        MOVE 'INSERT'         TO BWSYSTEM.OPTION;
                                        MOVE 'BW1700_HC1T100'         TO BWSYSTEM.RECNM;
                                        MOVE EZESQLCA             TO BWSYSTEM.BWERR-SQLCA;
                                        MOVE EZESQCOD             TO BWSYSTEM.SQL-CODE;
                                        MOVE BWSYSTEM.BWERR-ERRM  TO BWSYSTEM.SQL-ERRMC;
                                        MOVE 'E' TO BWSYSTEM.ERROR_IND;
                                        
      BW1700C-P20-PRESEL  ************************************************************************************
                          *             Business logic for Select                                            *
                          ************************************************************************************
                                        
                                        /****===================================================
                                        /****
                                        /****         Pre-Select Business Logic
                                        /****
                                        /**** Add your code here for any business logic
                                        /**** required before an SQL SELECT.
                                        /****
                                        /****===================================================
                                        
                          OPTION -      EXECUTE                                              
                                        
      BW1700C-P22-SEL-IO  ************************************************************************************
                          *             Select data from SQL table                                           *
                          ************************************************************************************
                                        
                                        
                                        MOVE BW1700-WSC TO BW1700S_HC1T100;
                          OPTION -      INQUIRY  BW1700S_HC1T100           RECORD            EZERTN
                                        SQL STATEMENT MODIFIED:                       YES
                                        EXECUTION TIME STATEMENT BUILD:               NO
                                        SINGLE ROW SELECT:                            YES
                                        SELECT
                                          T1.CLS_ID,
                                          T1.CLS_TYPE_CD,
                                          T2.CLS_TYPE_NM,
                                          T1.FRANCHISE_ID,
					  T1.EMPL_ID,
                                          T3.EMPL_LAST_NM,
                                          T3.EMPL_FIRST_NAME,
                                          T1.CLS_DT,
                                          T1.CLS_START_TM,
                                          T1.CLS_LOC,
                                          T1.CLS_DUR,
                                          T1.CLS_COST,
                                          T1.MMBRS_ONLY_IND,
                                          T1.USE_COUNT,
                                          T1.CLS_COMM
                                        INTO
                                          :CLS-ID,
                                          :CLS-TYPE-CD,
                                          :CLS-TYPE-NM,
                                          :FRANCHISE-ID,
                                          :EMPL-ID,
                                          :EMPL-LAST-NM,
                                          :EMPL-FIRST-NAME,
                                          :CLS-DT,
                                          :CLS-START-TM,
                                          :CLS-LOC,
                                          :CLS-DUR,
                                          :CLS-COST,
                                          :MMBRS-ONLY-IND,
                                            :BW1700-WSC-CTRL.LAST_UPDATE_COUNT,
                                          :CLS-COMM
                                        FROM
                                          HC1T100   T1,
                                          HC1T001   T2,
                                          HC1T002   T3
                                        WHERE
                                          T1.CLS_ID = :CLS-ID
                                                      AND T1.CLS_TYPE_CD
                                                       =  T2.CLS_TYPE_CD
                                                      AND T1.EMPL_ID
                                                       =  T3.EMPL_ID
                                                      AND T1.FRANCHISE_ID
                                                       =  T3.FRANCHISE_ID
                                        /*
                                        /*ORDER BY
                                        /*
                                        
                                        IF BW1700S_HC1T100 NOT ERR ;
                                          MOVE BW1700S_HC1T100 TO BW1700_HC1T100;
                                          MOVE BW1700S_HC1T100 TO BW1700-WSC;
                                          MOVE BW1700S_HC1T100 TO BW1700-WSC-CTRL;
                                          EZERTN;
                                        END;
                                        
                                        IF BW1700S_HC1T100 IS NRF ;
                                          /* Initialize Non-Selection Columns if Row not found
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-TYPE-CD;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-TYPE-NM;
                                          MOVE ' ' TO BW1700S_HC1T100.FRANCHISE-ID;
                                          MOVE ' ' TO BW1700S_HC1T100.EMPL-ID;
                                          MOVE ' ' TO BW1700S_HC1T100.EMPL-LAST-NM;
                                          MOVE ' ' TO BW1700S_HC1T100.EMPL-FIRST-NAME;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-DT;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-START-TM;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-LOC;
                                          MOVE 0 TO BW1700S_HC1T100.CLS-DUR;
                                          MOVE 0 TO BW1700S_HC1T100.CLS-COST;
                                          MOVE ' ' TO BW1700S_HC1T100.MMBRS-ONLY-IND;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-COMM;
                                          MOVE BW1700S_HC1T100 TO BW1700_HC1T100;
                                          MOVE BW1700S_HC1T100 TO BW1700-WSC;
                                          MOVE BW1700S_HC1T100 TO BW1700-WSC-CTRL;
                                        
                                          IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                            BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                            MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                            MOVE 'CLS-ID'
                                              TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                            MOVE
                                        "(E) HC1T100 record not found - Please recheck"
                                              TO BWSYSTEM.MESSAGE(MAX-MSG);
                                          END;
                                        
                                          MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                          EZERTN;
                                        END ;
                                        
                                        
                                        MOVE 'SQL' TO BWSYSTEM.MESSAGE-CODE;
                                        
                                        IF EZESQCOD LT 0;
                                          MOVE '-' TO BWSYSTEM.MESSAGE-SQL-SIGN;
                                          BWSYSTEM.MESSAGE-SQL-CODE = EZESQCOD * -1;
                                        ELSE;
                                          MOVE '+' TO BWSYSTEM.MESSAGE-SQL-SIGN;
                                          BWSYSTEM.MESSAGE-SQL-CODE = EZESQCOD;
                                        END;
                                        
                                        IF BWSYSTEM.MESSAGE-KEY IN BWMSGTB.MESSAGE-KEY;
                                        
                                          IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                            BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                            MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
					    MOVE 'CLS-ID'
                                              TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                            MOVE BWMSGTB.MESSAGE-TEXT(EZETST)
                                              TO BWSYSTEM.MESSAGE(MAX-MSG);
                                          END;
                                        
                                          MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                          EZERTN;
                                        END ;
                                        
                                        
                                        IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                          BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                          MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                          MOVE 'CLS-ID'
                                            TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                          MOVE
                                        "(E) Data error has occurred - contact your System Administrator"
                                            TO BWSYSTEM.MESSAGE(MAX-MSG);
                                        END;
                                        
                                        MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                        
                                        MOVE 'BW1700C'            TO BWSYSTEM.APPLNM;
                                        MOVE 'BW1700C-P22-SEL-IO' TO BWSYSTEM.PROCNM;
                                        MOVE 'SELECT'         TO BWSYSTEM.OPTION;
                                        MOVE 'BW1700_HC1T100'         TO BWSYSTEM.RECNM;
                                        MOVE EZESQLCA             TO BWSYSTEM.BWERR-SQLCA;
                                        MOVE EZESQCOD             TO BWSYSTEM.SQL-CODE;
                                        MOVE BWSYSTEM.BWERR-ERRM  TO BWSYSTEM.SQL-ERRMC;
                                        MOVE 'E' TO BWSYSTEM.ERROR_IND;
                                        
      BW1700C-P24-PSTSEL  ************************************************************************************
                          *             Business logic for Select                                            *
                          ************************************************************************************
                                        
                                        /****===================================================
                                        /****
                                        /****         Post-Select Business Logic
                                        /****
                                        /**** Add your code here for any business logic
                                        /**** required after an SQL SELECT.
                                        /****
                                        /****===================================================
                                        
                                        
                                        
                          OPTION -      EXECUTE                                              
                                        
      BW1700C-P25-CLEAN   ************************************************************************************
                          *             Clean up record for display                                          *
                          ************************************************************************************
                                        
                                        /****===================================================
                                        /****
                                        /****  After Select, clean up the -WSC record for
                                        /****  display.  handle blank-dates & times, perform
                                        /****  user-format routines, etc.
                                        /****
                                        /****  This process is also performed after an insert
                                        /****  or update, to reset the -WSC record so that it
                                        /****  can be compared with the -WSC-CTRL.
                                        /****
                                        /****===================================================
                                        
                                        
                                        
                                        
                                        /** Handle blank_date_value for CLS-DT
                                        
                                        IF  BW1700-WSC.CLS-DT = '01/01/1001' ;
                                            MOVE ' ' TO BW1700-WSC.CLS-DT;
                                        END;
                                        
                                        
                                        
                                        /** Handle blank_time_value for CLS-START-TM
                                        
                                        IF  BW1700-WSC.CLS-START-TM = '00:00:00' ;
                                            MOVE ' ' TO BW1700-WSC.CLS-START-TM;
                                        END;
                                        
                          OPTION -      EXECUTE                                              
                                        
      BW1700C-P30-UPDATE  ************************************************************************************
                          *             Business logic for Update                                            *
			  ************************************************************************************
                                        
                                        /****===================================================
                                        /****
                                        /****           Update Business Logic
                                        /****
                                        /**** Add your code here for any business logic
                                        /**** required before an SQL UPDATE.
                                        /****
                                        /****===================================================
                                        
                          OPTION -      EXECUTE                                              
                                        
      BW1700C-P32-UPD-IO  ************************************************************************************
                          *             Update data in SQL table                                             *
                          ************************************************************************************
                                        
                                        
                                        BW1700-WSC-CTRL.NEXT_UPDATE_COUNT =
                                          BW1700-WSC-CTRL.LAST_UPDATE_COUNT + 1;
                                        
                                        IF BW1700-WSC-CTRL.NEXT_UPDATE_COUNT > 32000;
                                          MOVE 0 TO BW1700-WSC-CTRL.NEXT_UPDATE_COUNT;
                                        END;
                                        
                          OPTION -      SQLEXEC  BW1700_HC1T100            RECORD            EZERTN
                                        SQL STATEMENT MODIFIED:                       YES
                                        EXECUTION TIME STATEMENT BUILD:               NO
                                        MODEL SQL STATEMENT GENERATION:               NONE
                                        UPDATE
                                               HC1T100 T1
                                        SET
                                        CLS_TYPE_CD = :CLS-TYPE-CD,
                                        FRANCHISE_ID = :FRANCHISE-ID,
                                        EMPL_ID = :EMPL-ID,
                                        CLS_DT = :CLS-DT,
                                        CLS_START_TM = :CLS-START-TM,
                                        CLS_LOC = :CLS-LOC,
                                        CLS_DUR = :CLS-DUR,
                                        CLS_COST = :CLS-COST,
                                        MMBRS_ONLY_IND = :MMBRS-ONLY-IND,
                                          USE_COUNT = :BW1700-WSC-CTRL.NEXT_UPDATE_COUNT,
                                        CLS_COMM = :CLS-COMM
                                        WHERE
                                        CLS_ID = :CLS-ID
                                          AND USE_COUNT = :BW1700-WSC-CTRL.LAST_UPDATE_COUNT
                                        
                                        IF BW1700_HC1T100 NOT ERR ;
                                        
                                          MOVE 'Y' TO BWSYSTEM.CHANGES-MADE;
                                        /* Always Re-read Row for multiple tables
                                        
                                          PERFORM BW1700C-P22-SEL-IO;
                                          PERFORM BW1700C-P25-CLEAN;
                                          EZERTN;
                                        
                                        END;
                                        
                                        IF BW1700_HC1T100 IS NRF ;
                                        
                                          IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                            BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                            MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                            MOVE 'ACTION'
                                              TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                            MOVE
                                        "(E) HC1T100 Updated by another person - Select again"
                                              TO BWSYSTEM.MESSAGE(MAX-MSG);
                                          END;
                                        
                                          MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                          EZERTN;
                                        END ;
                                        
                                        
                                        MOVE 'SQL' TO BWSYSTEM.MESSAGE-CODE;
                                        
                                        IF EZESQCOD LT 0;
                                          MOVE '-' TO BWSYSTEM.MESSAGE-SQL-SIGN;
                                          BWSYSTEM.MESSAGE-SQL-CODE = EZESQCOD * -1;
                                        ELSE;
                                          MOVE '+' TO BWSYSTEM.MESSAGE-SQL-SIGN;
                                          BWSYSTEM.MESSAGE-SQL-CODE = EZESQCOD;
                                        END;
                                        
                                        IF BWSYSTEM.MESSAGE-KEY IN BWMSGTB.MESSAGE-KEY;
                                        
                                          IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                            BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
					    MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                            MOVE 'CLS-ID'
                                              TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                            MOVE BWMSGTB.MESSAGE-TEXT(EZETST)
                                              TO BWSYSTEM.MESSAGE(MAX-MSG);
                                          END;
                                        
                                          MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                          EZERTN;
                                        END ;
                                        
                                        
                                        IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                          BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                          MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                          MOVE 'CLS-ID'
                                            TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                          MOVE
                                        "(E) Data error has occurred - contact your System Administrator"
                                            TO BWSYSTEM.MESSAGE(MAX-MSG);
                                        END;
                                        
                                        MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                        
                                        MOVE 'BW1700C'            TO BWSYSTEM.APPLNM;
                                        MOVE 'BW1700C-P32-UPD-IO' TO BWSYSTEM.PROCNM;
                                        MOVE 'UPDATE'         TO BWSYSTEM.OPTION;
                                        MOVE 'BW1700_HC1T100'         TO BWSYSTEM.RECNM;
                                        MOVE EZESQLCA             TO BWSYSTEM.BWERR-SQLCA;
                                        MOVE EZESQCOD             TO BWSYSTEM.SQL-CODE;
                                        MOVE BWSYSTEM.BWERR-ERRM  TO BWSYSTEM.SQL-ERRMC;
                                        MOVE 'E' TO BWSYSTEM.ERROR_IND;
                                        
      BW1700C-P40-DELETE  ************************************************************************************
                          *             Business logic for Delete                                            *
                          ************************************************************************************
                                        
                                        /****===================================================
                                        /****
                                        /****           Delete Business Logic
                                        /****
                                        /**** Add your code here for any business logic
                                        /**** required before an SQL DELETE.
                                        /****
                                        /****===================================================
                                        
                          OPTION -      EXECUTE                                              
                                        
      BW1700C-P42-DEL-IO  ************************************************************************************
                          *             Delete row from SQL table                                            *
                          ************************************************************************************
                                        
                          OPTION -      SQLEXEC  BW1700_HC1T100            RECORD            EZERTN
                                        SQL STATEMENT MODIFIED:                       YES
                                        EXECUTION TIME STATEMENT BUILD:               NO
                                        MODEL SQL STATEMENT GENERATION:               NONE
                                        DELETE FROM
                                               HC1T100 T1
                                        WHERE
                                        CLS_ID = :CLS-ID
                                          AND USE_COUNT = :BW1700-WSC-CTRL.LAST_UPDATE_COUNT
                                        
                                        IF BW1700_HC1T100 NOT ERR ;
                                        
                                          /* Initialize Non-Selection Columns when Row deleted
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-TYPE-CD;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-TYPE-NM;
                                          MOVE ' ' TO BW1700S_HC1T100.FRANCHISE-ID;
                                          MOVE ' ' TO BW1700S_HC1T100.EMPL-ID;
                                          MOVE ' ' TO BW1700S_HC1T100.EMPL-LAST-NM;
                                          MOVE ' ' TO BW1700S_HC1T100.EMPL-FIRST-NAME;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-DT;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-START-TM;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-LOC;
                                          MOVE 0 TO BW1700S_HC1T100.CLS-DUR;
                                          MOVE 0 TO BW1700S_HC1T100.CLS-COST;
                                          MOVE ' ' TO BW1700S_HC1T100.MMBRS-ONLY-IND;
                                          MOVE ' ' TO BW1700S_HC1T100.CLS-COMM;
                                          MOVE BW1700S_HC1T100 TO BW1700_HC1T100;
                                          MOVE BW1700S_HC1T100 TO BW1700-WSC;
                                          MOVE BW1700S_HC1T100 TO BW1700-WSC-CTRL;
                                          MOVE 'Y' TO BWSYSTEM.CHANGES-MADE;
                                          EZERTN;
                                        
                                        END;
                                        
                                        IF BW1700_HC1T100 IS NRF ;                                        
                                          IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                            BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                            MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                            MOVE 'ACTION' TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                            MOVE
                                        "(E) HC1T100 Updated by another person - Select again"
                                              TO BWSYSTEM.MESSAGE(MAX-MSG);
                                          END;
                                        
                                          MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                          EZERTN;
                                        END ;
                                        
                                        
                                        MOVE 'SQL' TO BWSYSTEM.MESSAGE-CODE;
                                        
                                        IF EZESQCOD LT 0;
                                          MOVE '-' TO BWSYSTEM.MESSAGE-SQL-SIGN;
                                          BWSYSTEM.MESSAGE-SQL-CODE = EZESQCOD * -1;
                                        ELSE;
                                          MOVE '+' TO BWSYSTEM.MESSAGE-SQL-SIGN;
                                          BWSYSTEM.MESSAGE-SQL-CODE = EZESQCOD;
                                        END;
                                        
                                        IF BWSYSTEM.MESSAGE-KEY IN BWMSGTB.MESSAGE-KEY;
                                        
                                          IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                            BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                            MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                            MOVE 'CLS-ID'
                                              TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                            MOVE BWMSGTB.MESSAGE-TEXT(EZETST)
                                              TO BWSYSTEM.MESSAGE(MAX-MSG);
                                          END;
                                        
                                          MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                          EZERTN;
                                        END ;
                                        
                                        
                                        IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                          BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                          MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                          MOVE 'CLS-ID'
                                            TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                          MOVE
                                        "Data error has occurred - contact your System Administrator"
                                            TO BWSYSTEM.MESSAGE(MAX-MSG);
                                        END;
                                        
                                        MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                        
                                        MOVE 'BW1700C'            TO BWSYSTEM.APPLNM;
                                        MOVE 'BW1700C-P42-DEL-IO' TO BWSYSTEM.PROCNM;
                                        MOVE 'DELETE'         TO BWSYSTEM.OPTION;
                                        MOVE 'BW1700_HC1T100'         TO BWSYSTEM.RECNM;
                                        MOVE EZESQLCA             TO BWSYSTEM.BWERR-SQLCA;
                                        MOVE EZESQCOD             TO BWSYSTEM.SQL-CODE;
                                        MOVE BWSYSTEM.BWERR-ERRM  TO BWSYSTEM.SQL-ERRMC;
                                        MOVE 'E' TO BWSYSTEM.ERROR_IND;
                                        
      BW1700C-P60-EDITS   ************************************************************************************
                          *             Wizard-generated Edit checks                                         *
                          ************************************************************************************
                                        /****===================================================
                                        /****
                                        /****    Edit checks on entered fields
                                        /****    for Insert or Update
                                        /****
                                        /****===================================================
                                        
                                        
                                        
                                            /** CLS-DT is a required_field
                                        
                                            IF BW1700-WSC.CLS-DT = ' ';
                                        
                                              IF BWSYSTEM.MAX-MSG < BWSYSTEM.LIMIT-MSG;
                                        
                                                BWSYSTEM.MAX-MSG = BWSYSTEM.MAX-MSG + 1;
                                                MOVE BWSYSTEM.APPLNM TO BWSYSTEM.MESSAGE-APPLNM(MAX-MSG);
                                                MOVE 'CLS-DT'
                                                  TO BWSYSTEM.FIELD-NAME(MAX-MSG);
                                                MOVE "(E) Cls Dt is a required field"
                                                  TO BWSYSTEM.MESSAGE(MAX-MSG);
                                               END;
                                        
                                               MOVE 'Y' TO BWSYSTEM.ERROR_IND;
                                            END;
                                        
                                        
                                            IF BWSYSTEM.ERROR_IND = 'N';
                                                  /* handle blank dates and times
                                        
                                               /** if CLS-DT has been left blank on the screen,
                                               /** set it to the blank_date_value item extension to avoid
                                               /** an SQL error
                                        
                                               IF BW1700_HC1T100.CLS-DT = ' ' ;
                                                 MOVE '01/01/1001'
                                                   TO BW1700_HC1T100.CLS-DT;
                                               END;
                                        
                                        
                                               /** if CLS-START-TM has been left blank on the screen,
                                               /** set it to the blank_time_value item extension to avoid
                                               /** an SQL error
                                        
                                               IF BW1700_HC1T100.CLS-START-TM = ' ' ;
                                                 /*MOVE '00:00:00'
                                                 /*  TO BW1700_HC1T100.CLS-START-TM;
                                                 SET BW1700_HC1T100.CLS-START-TM NULL;
                                               END;
                                        
                                               IF BW1700_HC1T100.CLS-COMM = ' ' ;
                                                 SET BW1700_HC1T100.CLS-COMM NULL;
                                               END;
                                        
                                            END;
                                        
                          OPTION -      EXECUTE                                              
                                        
      RECORD DEFINITIONS
                                   RECORD NAME:                  BW1700-WSC
                                   APPLICATION NAME:             AABWTUI
                                   ORGANIZATION:                 WORKING STORAGE
                                   LENGTH IN BYTES:              394
                                   DEFAULT SCOPE:                LOCAL
          PROLOGUE
                                   **********************************************************  
                                   *** BW1700-WSC                                              
                                   ***                                                         
                                   *** This record holds current-row info for each server.     
                                   *** After a sucessful select, the current row contents are  
                                   *** loaded into both this -WSC and the -WSC-CTRL record.    
                                   *** Client applications should put new values for the items 
                                   *** into the -WSC record only, so that the -WSC-CTRL        
                                   *** values can be used to compare to the current row        
                                   *** values, or to the new values.                           
                                   ***                                                         
                                   **********************************************************  
     NAME                       LVL OCCURS TYPE SCOPE LENGTH DEC  BYTES  START  APPLICATION           DESCRIPTION 
     BW1700_DATA_ITEMS           5         CHAR LOCAL   393        393    1     AABWTUI               
     CLS-ID                      10        CHAR LOCAL   8          8      1     AABWTUI               Cls Id
     CLS-TYPE-CD                 10        CHAR LOCAL   8          8      9     AABWTUI               Cls Type Cd
     CLS-TYPE-NM                 10        CHAR LOCAL   35         35     17    AABWTUI               Cls Type Nm
     FRANCHISE-ID                10        CHAR LOCAL   8          8      52    AABWTUI               Franchise Id
     EMPL-ID                     10        CHAR LOCAL   8          8      60    AABWTUI               Empl Id
     EMPL-LAST-NM                10        CHAR LOCAL   20         20     68    AABWTUI               Empl Last Nm
     EMPL-FIRST-NAME             10        CHAR LOCAL   20         20     88    AABWTUI               Empl First Name
     CLS-DT                      10        CHAR LOCAL   10         10     108   AABWTUI               Cls Dt
     CLS-START-TM                10        CHAR LOCAL   8          8      118   AABWTUI               Cls Start Tm
     CLS-LOC                     10        CHAR LOCAL   20         20     126   AABWTUI               Cls Loc
     CLS-DUR                     10        BIN  LOCAL   4          2      146   AABWTUI               Cls Dur
     CLS-COST                    10        PACK LOCAL   9     2    5      148   AABWTUI               Cls Cost
     MMBRS-ONLY-IND              10        CHAR LOCAL   1          1      153   AABWTUI               Mmbrs Only Ind
     CLS-COMM                    10        CHAR LOCAL   240        240    154   AABWTUI               Cls Comm
     BW1700_HIDDEN_ITEMS         5         CHAR LOCAL   1          1      394   AABWTUI               


                                   RECORD NAME:                  BW1700-WSC-CTRL
                                   APPLICATION NAME:             AABWTUI
                                   ORGANIZATION:                 WORKING STORAGE
                                   LENGTH IN BYTES:              444
                                   DEFAULT SCOPE:                LOCAL
          PROLOGUE                                   **********************************************************  
                                   *** BW1700-WSC-CTRL                                         
                                   ***                                                         
                                   *** This record holds 'control' info for each server,       
                                   *** such as timestamps and counters for pseudo-conv         
                                   *** processing.  It also holds a copy of the items          
                                   *** passed in the -WSC record.  After a sucessful           
                                   *** select, the current row contents are loaded into        
                                   *** both the -WSC and this -WSC-CTRL record.  Client        
                                   *** applications should put new values for the items        
                                   *** into the -WSC record only, so that the -WSC-CTRL        
                                   *** values can be used to compare to the current row        
                                   *** values, or to the new values.                           
                                   ***                                                         
                                   **********************************************************  
     NAME                       LVL OCCURS TYPE SCOPE LENGTH DEC  BYTES  START  APPLICATION           DESCRIPTION 
     ISUD_ACTION                 10        CHAR LOCAL   1          1      1     AABWTUI               
     CURRENT-MAP                 10        BIN  LOCAL   9          4      2     AABWTUI               
     LAST-MAP                    10        BIN  LOCAL   9          4      6     AABWTUI               
     LAST_UPDATE_TS              10        CHAR LOCAL   26         26     10    AABWTUI               
     LAST_UPDATE_COUNT           10        BIN  LOCAL   9          4      36    AABWTUI               
     NEXT_UPDATE_COUNT           10        BIN  LOCAL   9          4      40    AABWTUI               
     ROW-COUNTER                 10        BIN  LOCAL   9          4      44    AABWTUI               
     LANGUAGE-CODE               10        CHAR LOCAL   3          3      48    AABWTUI               
     BW1700_DATA_ITEMS           10        CHAR LOCAL   393        393    51    AABWTUI               
     CLS-ID                      15        CHAR LOCAL   8          8      51    AABWTUI               
     CLS-TYPE-CD                 15        CHAR LOCAL   8          8      59    AABWTUI               CLS_TYPE_CD
     CLS-TYPE-NM                 15        CHAR LOCAL   35         35     67    AABWTUI               CLS_TYPE_NM
     FRANCHISE-ID                15        CHAR LOCAL   8          8      102   AABWTUI               FRANCHISE_ID
     EMPL-ID                     15        CHAR LOCAL   8          8      110   AABWTUI               EMPL_ID
     EMPL-LAST-NM                15        CHAR LOCAL   20         20     118   AABWTUI               EMPL_LAST_NM
     EMPL-FIRST-NAME             15        CHAR LOCAL   20         20     138   AABWTUI               EMPL_FIRST_NAME
     CLS-DT                      15        CHAR LOCAL   10         10     158   AABWTUI               
     CLS-START-TM                15        CHAR LOCAL   8          8      168   AABWTUI               CLS_START_TM
     CLS-LOC                     15        CHAR LOCAL   20         20     176   AABWTUI               CLS_LOC
     CLS-DUR                     15        BIN  LOCAL   4          2      196   AABWTUI               
     CLS-COST                    15        PACK LOCAL   9     2    5      198   AABWTUI               
     MMBRS-ONLY-IND              15        CHAR LOCAL   1          1      203   AABWTUI               
     CLS-COMM                    15        CHAR LOCAL   240        240    204   AABWTUI               
     BW1700_HIDDEN_ITEMS         10        CHAR LOCAL   1          1      444   AABWTUI
     
                                   RECORD NAME:                  BW1700_HC1T100
                                   APPLICATION NAME:             AABWTUI
                                   ORGANIZATION:                 SQL ROW
                                   DEFAULT KEY ITEM:             
                                   LENGTH IN BYTES:              362
                                   DEFAULT SCOPE:                GLOBAL
                                   SQL TABLE NAME(S)
                                   TABLE NAME:                   TABLE LABEL
                                   HC1T100                       T1
                                   DEFAULT SELECTION CONDITIONS
                                   SELECT
                                     T1.CLS_ID, T1.CLS_TYPE_CD, T1.FRANCHISE_ID, T1.EMPL_ID, T1.CLS_DT, T
     1.CLS_START_TM, T1.CLS_LOC, T1.CLS_DUR, T1.CLS_COST, T1.MMBRS_ONLY_IND, T1.CLS_COMM
                                   INTO
                                     :CLS-ID, :CLS-TYPE-CD, :FRANCHISE-ID, :EMPL-ID, :CLS-DT, :CLS-START-
     TM, :CLS-LOC, :CLS-DUR, :CLS-COST, :MMBRS-ONLY-IND, :CLS-COMM
                                   FROM
                                     HC1T100   T1
                                   WHERE
                                     /*
          PROLOGUE
                                   **********************************************************  
                                   ***                                                         
                                   *** BW1700_HC1T100                                          
                                   *** This record is used for SQL I/O against the primary     
                                   *** table selected by the developer.  It contains only      
                                   *** items based on columns in the primary table.            
                                   ***                                                         
                                   **********************************************************  
            NAME /                                                         SQL DATA CODE /
         DESCRIPTION            TYPE SCOPE  LENGTH DEC BYTES START R/O KEY SQL COLUMN NAME                APPLICATION
     CLS-ID                                                                453
                                CHAR GLOBAL    8        8      5   NO  NO  T1.CLS_ID                      AABWTUI
     CLS-TYPE-CD                                                           453
       CLS_TYPE_CD              CHAR GLOBAL    8        8      17  NO  NO  T1.CLS_TYPE_CD                 AABWTUI
     FRANCHISE-ID                                                          453
       FRANCHISE_ID             CHAR GLOBAL    8        8      29  NO  NO  T1.FRANCHISE_ID                AABWTUI
     EMPL-ID                                                               453
       EMPL_ID                  CHAR GLOBAL    8        8      41  NO  NO  T1.EMPL_ID                     AABWTUI
     CLS-DT                                                                0
                                CHAR GLOBAL    10       10     53  NO  NO  T1.CLS_DT                      AABWTUI
     CLS-START-TM                                                          0
       CLS_START_TM             CHAR GLOBAL    8        8      67  NO  NO  T1.CLS_START_TM                AABWTUI
     CLS-LOC                                                               449
       CLS_LOC                  CHAR GLOBAL    20       20     79  NO  NO  T1.CLS_LOC                     AABWTUI
     CLS-DUR                                                               0
                                BIN  GLOBAL    4        2      103 NO  NO  T1.CLS_DUR                     AABWTUI
     CLS-COST                                                              0
                                PACK GLOBAL    9   2    5      109 NO  NO  T1.CLS_COST                    AABWTUI
     MMBRS-ONLY-IND                                                        449
                                CHAR GLOBAL    1        1      118 NO  NO  T1.MMBRS_ONLY_IND              AABWTUI
     CLS-COMM                                                              449
                                CHAR GLOBAL    240      240    123 NO  NO  T1.CLS_COMM                    AABWTUI

                                   RECORD NAME:                  BW1700S_HC1T100
                                   APPLICATION NAME:             AABWTUI
                                   ORGANIZATION:                 SQL ROW
                                   DEFAULT KEY ITEM:             
                                   LENGTH IN BYTES:              449
                                   DEFAULT SCOPE:                GLOBAL
                                   SQL TABLE NAME(S)
                                   TABLE NAME:                   TABLE LABEL
                                   HC1T100                       T1
                                   HC1T001                       T2
                                   HC1T002                       T3
                                   DEFAULT SELECTION CONDITIONS
                                   SELECT
                                     T1.CLS_ID, T1.CLS_TYPE_CD, T2.CLS_TYPE_NM, T1.FRANCHISE_ID, T1.EMPL_
     ID, T3.EMPL_LAST_NM, T3.EMPL_FIRST_NAME, T1.CLS_DT, T1.CLS_START_TM, T1.CLS_LOC, T1.CLS_DUR, T1.CLS_
     COST, T1.MMBRS_ONLY_IND, T1.CLS_COMM
                                   INTO
                                     :CLS-ID, :CLS-TYPE-CD, :CLS-TYPE-NM, :FRANCHISE-ID, :EMPL-ID, :EMPL-
     LAST-NM, :EMPL-FIRST-NAME, :CLS-DT, :CLS-START-TM, :CLS-LOC, :CLS-DUR, :CLS-COST, :MMBRS-ONLY-IND, :
     CLS-COMM
                                   FROM
                                     HC1T100   T1,
                                     HC1T001   T2,
                                     HC1T002   T3
                                   WHERE
                                     /*
          PROLOGUE
                                   **********************************************************  
                                   ***                                                         
                                   *** BW1700S_HC1T100                                         
                                   *** This record is used for SQL SELECTs, using joins        
                                   *** to read column data from all tables selected by the     
                                   *** developer.                                              
                                   ***                                                         
                                   **********************************************************  
            NAME /                                                         SQL DATA CODE /
         DESCRIPTION            TYPE SCOPE  LENGTH DEC BYTES START R/O KEY SQL COLUMN NAME                APPLICATION
     CLS-ID                                                                453
                                CHAR GLOBAL    8        8      5   YES NO  T1.CLS_ID                      AABWTUI
     CLS-TYPE-CD                                                           453
       CLS_TYPE_CD              CHAR GLOBAL    8        8      17  YES NO  T1.CLS_TYPE_CD                 AABWTUI
     CLS-TYPE-NM                                                           453
       CLS_TYPE_NM              CHAR GLOBAL    35       35     29  YES NO  T2.CLS_TYPE_NM                 AABWTUI
     FRANCHISE-ID                                                          453
       FRANCHISE_ID             CHAR GLOBAL    8        8      68  YES NO  T1.FRANCHISE_ID                AABWTUI
     EMPL-ID                                                               453
       EMPL_ID                  CHAR GLOBAL    8        8      80  YES NO  T1.EMPL_ID                     AABWTUI
     EMPL-LAST-NM                                                          453
       EMPL_LAST_NM             CHAR GLOBAL    20       20     92  YES NO  T3.EMPL_LAST_NM                AABWTUI
     EMPL-FIRST-NAME                                                       453
       EMPL_FIRST_NAME          CHAR GLOBAL    20       20     116 YES NO  T3.EMPL_FIRST_NAME             AABWTUI
     CLS-DT                                                                0
                                CHAR GLOBAL    10       10     140 YES NO  T1.CLS_DT                      AABWTUI
     CLS-START-TM                                                          0
       CLS_START_TM             CHAR GLOBAL    8        8      154 YES NO  T1.CLS_START_TM                AABWTUI
     CLS-LOC                                                               449
       CLS_LOC                  CHAR GLOBAL    20       20     166 YES NO  T1.CLS_LOC                     AABWTUI
     CLS-DUR                                                               0
                                BIN  GLOBAL    4        2      190 YES NO  T1.CLS_DUR                     AABWTUI
     CLS-COST                                                              0
                                PACK GLOBAL    9   2    5      196 YES NO  T1.CLS_COST                    AABWTUI
     MMBRS-ONLY-IND                                                        449  
                                CHAR GLOBAL     1        1      205 YES NO  T1.MMBRS_ONLY_IND             AABWTUI
     CLS-COMM                                                              449
                                CHAR GLOBAL    240      240    210 YES NO  T1.CLS_COMM                    AABWTUI


                                   RECORD NAME:                  BWSYSTEM
                                   APPLICATION NAME:             AABWTUI
                                   ORGANIZATION:                 WORKING STORAGE
                                   LENGTH IN BYTES:              4100
                                   DEFAULT SCOPE:                LOCAL
          PROLOGUE
                                   This is the System Working Storage Record that is           
                                   used in every application to store User messages            
                                   and error data used by the BW Error Application             
                                   - SYSERRA.                                                  
     NAME                       LVL OCCURS TYPE SCOPE LENGTH DEC  BYTES  START  APPLICATION           DESCRIPTION 
     APPLNM                      10        CHAR LOCAL   8          8      1     AABWTUI               APPLICATION NAME
     PROCNM                      10        CHAR LOCAL   18         18     9     AABWTUI               PROCESS NAME
     RECNM                       10        CHAR LOCAL   18         18     27    AABWTUI               CSPRECORD NAME
     OPTION                      10        CHAR LOCAL   10         10     45    AABWTUI               Process Option
     SQL-CODE                    10        BIN  LOCAL   9          4      55    AABWTUI               SQL Code
     SQL-ERRMC                   10        CHAR LOCAL   72         72     59    AABWTUI               SQL Text
     BWERR-SQLCA                 10        HEX  LOCAL   272        136    131   AABWTUI               SQL CA area
     BWERR-CAID                  15        CHAR LOCAL   8          8      131   AABWTUI               SQLCAID
     BWERR-CABC                  15        BIN  LOCAL   9          4      139   AABWTUI               SQLCABC
     BWERR-SQLCD                 15        BIN  LOCAL   9          4      143   AABWTUI               SQLCODE
     BWERR-ERRM                  15        CHAR LOCAL   72         72     147   AABWTUI               SQLERRM
     BWERR-ERRML                 20        BIN  LOCAL   4          2      147   AABWTUI               SQLERRML
     BWERR-ERRMC                 20        CHAR LOCAL   70         70     149   AABWTUI               SQLERRMC
     BWERR-ERRP                  15        CHAR LOCAL   8          8      219   AABWTUI               SQLERRP
     BWERR-ERRD                  15   6    BIN  LOCAL   9          4      227   AABWTUI               SQLERRD
     BWERR-WARN                  15        CHAR LOCAL   8          8      251   AABWTUI               SQLWARN
     BWERR-WARN0                 20        CHAR LOCAL   1          1      251   AABWTUI               SQLWARN0
     BWERR-WARN1                 20        CHAR LOCAL   1          1      252   AABWTUI               SQLWARN1
     BWERR-WARN2                 20        CHAR LOCAL   1          1      253   AABWTUI               SQLWARN2
     BWERR-WARN3                 20        CHAR LOCAL   1          1      254   AABWTUI               SQLWARN3
     BWERR-WARN4                 20        CHAR LOCAL   1          1      255   AABWTUI               SQLWARN4
     BWERR-WARN5                 20        CHAR LOCAL   1          1      256   AABWTUI               SQLWARN5
     BWERR-WARN6                 20        CHAR LOCAL   1          1      257   AABWTUI               SQLWARN6
     BWERR-WARN7                 20        CHAR LOCAL   1          1      258   AABWTUI               SQLWARN7
     BWERR-EXT                   15        CHAR LOCAL   8          8      259   AABWTUI               SQLEXT
     KEYTX                       10        CHAR LOCAL   50         50     403   AABWTUI               record KEY:not currently used
     TRANCD                      10        CHAR LOCAL   8          8      453   AABWTUI               TRAN CODE: not used
     BWERR-SYSTEM-ID             10        CHAR LOCAL   6          6      461   AABWTUI               System ID/region: not used
     CHANGES-MADE                10        CHAR LOCAL   1          1      467   AABWTUI               I/O CHANGE IND
     ERROR-DESC                  10        CHAR LOCAL   78         78     468   AABWTUI               Error Description
     ERROR-NUM                   10        CHAR LOCAL   8          8      546   AABWTUI               EZERT8 CODE
     ERROR_IND                   10        CHAR LOCAL   1          1      554   AABWTUI               
     SAVE_ERROR_IND              10        CHAR LOCAL   1          1      555   AABWTUI               
     RAD_SQL_CODE                10        BIN  LOCAL   4          2      556   AABWTUI               
     FIRST-MESSAGE               10        CHAR LOCAL   128        128    558   AABWTUI               
     MSGAREA                     10   20   CHAR LOCAL   170        170    686   AABWTUI               Error message array
     MESSAGE                     15        CHAR LOCAL   128        128    686   AABWTUI               
     MESSAGE-TYPE                20        CHAR LOCAL   4          4      686   AABWTUI               
     MESSAGE-LIT                 20        CHAR LOCAL   124        124    690   AABWTUI               
     MESSAGE-APPLNM              15        CHAR LOCAL   8          8      814   AABWTUI               
     FIELD-NAME                  15        CHAR LOCAL   32         32     822   AABWTUI               
     FIELD-INDEX                 15        BIN  LOCAL   4          2      854   AABWTUI               
     MESSAGE-KEY                 10        CHAR LOCAL   15         15     4086  AABWTUI               
     MESSAGE-CODE                15        CHAR LOCAL   12         12     4086  AABWTUI               
     MESSAGE-SQL-CONSTANT        20        CHAR LOCAL   3          3      4086  AABWTUI               
     MESSAGE-SQL-SIGN            20        CHAR LOCAL   1          1      4089  AABWTUI               
     MESSAGE-SQL-CODE            20        NUM  LOCAL   5          5      4090  AABWTUI               
     *                           20        CHAR LOCAL   3          3      4095  AABWTUI               
     LANGUAGE-CODE               15        CHAR LOCAL   3          3      4098  AABWTUI               
     VARIABLE-1                  10        CHAR LOCAL   30         30     4101  AABWTUI               
     VARIABLE-1-BYTE             15   30   CHAR LOCAL   1          1      4101  AABWTUI               
     VARIABLE-2                  10        CHAR LOCAL   30         30     4131  AABWTUI               
     VARIABLE-2-BYTE             15   30   CHAR LOCAL   1          1      4131  AABWTUI               
     VARIABLE-3                  10        CHAR LOCAL   30         30     4161  AABWTUI               
     VARIABLE-3-BYTE             15   30   CHAR LOCAL   1          1      4161  AABWTUI               
     FLD-INDEX                   10        BIN  LOCAL   4          2      4191  AABWTUI               
     VARIABLE-1-LENGTH           10        BIN  LOCAL   4          2      4193  AABWTUI               
     VARIABLE-2-LENGTH           10        BIN  LOCAL   4          2      4195  AABWTUI               
     VARIABLE-3-LENGTH           10        BIN  LOCAL   4          2      4197  AABWTUI               
     SEL-MSG                     10        BIN  LOCAL   4          2      4199  AABWTUI               
     MAX-MSG                     10        BIN  LOCAL   4          2      4201  AABWTUI               
     LIMIT-MSG                   10        BIN  LOCAL   4          2      4203  AABWTUI               
     IX                          10        BIN  LOCAL   4          2      4205  AABWTUI               
     IX2                         10        BIN  LOCAL   4          2      4207  AABWTUI               
     INIT                        10        CHAR LOCAL   4          4      4209  AABWTUI               
     SAVE-MSG                    10        BIN  LOCAL   4          2      4213  AABWTUI               
     MSG-PAGE                    10        BIN  LOCAL   4          2      4215  AABWTUI               
     INSERT-REQ                  10        BIN  LOCAL   4          2      4217  AABWTUI               
     INSERT-OK                   10        BIN  LOCAL   4          2      4219  AABWTUI               
     UPDATE-REQ                  10        BIN  LOCAL   4          2      4221  AABWTUI               
     UPDATE-OK                   10        BIN  LOCAL   4          2      4223  AABWTUI               
     DELETE-REQ                  10        BIN  LOCAL   4          2      4225  AABWTUI               
     DELETE-OK                   10        BIN  LOCAL   4          2      4227  AABWTUI               
     BW-USER-ID                  10        CHAR LOCAL   8          8      4229  AABWTUI               

      TABLE DEFINITIONS
                                   TABLE NAME:                   BWMSGTB
                                   APPLICATION NAME:             AABWTUI
                                   TABLE TYPE:                   UNSPECIFIED
                                   TYPE OF LOAD MODULE:          SHARED
                                   DEFAULT SCOPE:                LOCAL
          NO PROLOGUE
     NAME                       LEVEL  TYPE  SCOPE  LENGTH   DEC   BYTES     APPLICATION           DESCRI
     PTION 
     MESSAGE-KEY                 10    CHAR  LOCAL    15            15       AABWTUI               
     MESSAGE-TEXT                10    CHAR  LOCAL    128           128      AABWTUI               
                                        TABLE CONTENTS
     MESSAGE-KEY     MESSAGE-TEXT                                                                        
                                                  
     SQL+00100   001 (W) Row not found - Check Key fields                                                
                                                  
     SQL-00180   001 (E) Date error: Format should be YYYY-MM-DD OR MM/DD/YYYY                           
                                                  
     SQL-00181   001 (E) Date error: Format should be YYYY-MM-DD OR MM/DD/YYYY                           
                                                  
     SQL-00407   001 (E) Cannot Add or Change row - "Not Null Column(s)" uninitialized                   
                                                  
     SQL-00530   001 (E) Cannot Add or Change row - Parent Row not found                                 
                                                  
     SQL-00532   001 (E) Cannot Delete Row - Dependant Row(s) exist                                      
                                                  
     SQL-00803   001 (E) Duplicate Row found - Check Key fields                                          
                                                  
     INV PF KEY  001 (E) Invalid PF Key                                                                  
                                                  
     INV ACTION  001 (E) Invalid Action                                                                  
                                                  
     INV FASTPATH001 (E) Invalid Fastpath                                                                
                                                  
     NO CHANGES  001 (W) No changes made                                                                 
                                                  
     NO HELP     001 (I) Help not available                                                              
                                                  
     BLANK KEY   001 (E) Key cannot be blank for &1 or &2                                                
                                                  
     READ FIRST  001 (E) Key Changed - Record must be &1ed                                               
                                                  
     POP-UP DIS  001 (W) Pop-up lists disabled - BWRT table not available                                
                                                  
     NO POP-UP   001 (I) No pop-up list available for this field                                         
                                                  
     BLNK NOT ALW001 (E) &1 cannot be blank                                                              
                                                  
     < MIN VALUE 001 (E) &1 must be >= &2                                                                
                                                  
     > MAX VALUE 001 (E) &1 must be <= &2                                                                
                                                  
     CALL FAILED 001 (E) Call to &1 failed                                                               
                                                  
     MUST BE > 0 001 (E) &1 must be > 0                                                                  
                                                  
     I/O OK      001 (I) &1 Successful                                                                   
                                                  
     INV OPTION  001 (E) Invalid Option                                                                  
                                                  
     DUP RECORD  001 (E) Duplicate &1 record                                                             
                                                  
     NRF RECORD  001 (W) &1 record not found - Please recheck                                            
                                                  
     UPDATE OTHER001 (E) &1 &2 by another person - &3 again                                              

     VAL NOT ALWD001 (E) &1 value is not allowed                                                         
                                                  
     INV VALUE   001 (E) &1 value is not valid                                                           
                                                  
     REQ FIELD   001 (E) &1 is a required field                                                          
                                                  
     NO POP-UP   001 (I) No pop-up list available for this field                                         
                                                  
     NO DATA     001 (I) No data found for specified search criteria                                     
                                                  
     DTE/TIME ERR001 (E) Ensure correct Date/Time format is being used                                   
                                                  
     UNKNOWN ERR 001 (E) Unknown Error                                                                   
                                                  
     END OF DATA 001 (I) End of data                                                                     
                                                  
     DATA ERROR  001 (E) Data error has occurred - contact your System Administrator                     
                                                  
     TOP OF DATA 001 (I) Top of data                                                                     
                                                  
     MAX SCREEN  001 (W) Maximum screen reached - Change selection                                       
                                                  
     NOT AUTH    001 (W) Sorry, You are not authorized for the selected action                           
                                                  
     ERR ON AUTH 001 (E) Unexpected Error reading Authorization table                                    
                                                  
     CHGS FAILED 001 (W) Some of the requested changes have failed, check other messages                 
                                                  
     CHGS OK     001 (I) All requested changes completed successfully                                    
                                                  
     BWRT DUP    001 (E) Duplicate BWRT record                                                           
                                                  
     FAILED EDIT 001 (E) Value does not pass the edit routine                                            
                                                  
     BAD SUB     001 (E) Programmer Error - bad appl_sub                                                 
                                                  
     ONLY ONE ROW001 (W) Only one row can be selected                                                    
                                                  
     SELECT A ROW001 (I) Select a Row                                                                    
                                                  
     ROW COUNT   001 (W) There are more &1 rows than can be displayed                                    

                                                  
     ----------------------------------------------------------------------------------------------------

About Bridgewater  BW*Wizard  Presentations  Services  Partner Page 

JAVA  COBOL  VAGen  Overview  How does it work?  White Papers 

Customer Quotes  Support  Contact Us

     Bridgewater Consultants Copyright © 2005 Bridgewater Consultants, Inc.  All rights reserved.