GASS Operations

Thanks you very much for using MSI.


                                  TABLES
     TABLES ARE ONE OF GASS'S UNIQUE AND POWERFUL DATA STRUCTURES, SO SOME 
EXPLANATION AND STUDY OF THEIR USAGE IS CALLED FOR.
     TABLES ARE ESSENTIALLY ONE-DIMENSIONAL ARRAYS OF DATA ON THE DISK. THEY 
ARE ADDRESSED BY TABLE NUMBER (OP.81) AND ROW NUMBER (OP.51 TO WRITE; OP.38 
TO READ), AND BY THE FORMAT SPECIFIED WHEN THEY ARE ACCESSED. TABLES MAY BE   
WRITTEN TO, READ FROM, ADDED TO, OR SEVERAL OTHER THINGS MAY BE DONE WITH 
THEM. A REVIEW OF THE TABLES OPERATIONS, PARTICULARLY OP 113 WITH ITS SEARCH 
TYPES WILL SUGGEST SOME OF THE THINGS THAT MAY BE DONE USING TABLES.
    TABLES ARE CREATED AT THE TIME THAT THEY ARE FIRST WRITTEN INTO - UNTIL 
THAT TIME THEY DO NOT EXIST. ALL DATA STORED IN TABLES MUST BE ACCESSED AND/OR 
UPDATED VIA REPORTS WHICH HAVE BEEN WRITTEN TO CONTROL THE DATA. IF A TABLE IS 
EXPECTED TO EXCEED TWO DISC RECORDS (508 BYTES/RECORD) IN LENGTH, PARALLEL 
ACCESS VIA A DIRECTORY IS MORE EFFICIENT THAN SEQUENTIAL ACCESS. SEE A-100 FOR 
A DISCUSSION OF TABLE DIRECTORIES. PROGRAMMERS SHOULD NOTE THAT A DIRECTORY 
ONLY ESTABLISHES THE EXTENT OF THE TABLE ON THE DISC, AND DOES NOT FORCE YOU 
TO USE THE DIRECTORY, OR EVEN THE FORMAT WHICH IT WAS ESTABLISHED UNDER. BE 
VERY CAREFUL WITH THIS, THOUGH. THINK IT THROUGH VERY CAREFULLY.
     A SIMPLE ONE-DIMENSIONAL ARRAY IS OF LIMITED USE, BUT SEVERAL TABLES MAY 
BE WRITTEN PARALLEL TO EACH OTHER, SO THAT THE DATA IN THE SAME ROW NUMBER OF 
EACH OF THE TABLES IS RELATED. AS AN EXAMPLE, WE COULD HAVE TABLE# 1 AS AN "I" 
FORMAT TABLE TO STORE CUSTOMER NUMBER, TABLE 2 AS AN "F" FORMAT TABLE FOR INV- 
OICE NUMBER, TABLE# 3 AS A "D" FORMAT TABLE FOR AMOUNT BILLED, AND TABLE# 4 AS 
AN "A16" TABLE FOR PURCHASE ORDER NUMBER. DATA FROM THE FIRST INVOICE OF THE 
MONTH COULD BE WRITTEN TO ROW# 1 OF THE FOUR TABLES, THE SECOND INVOICE INTO 
ROW# 2, ETC. THIS DATA COULD THEN BE MANIPULATED AS DESIRED BY REPORTS USING 
ROW# OR SEARCHES.
     MULTI-DIMENSIONAL ARRAYS MAY ALSO BE IMPLEMENTED BY DOING ARITHMETIC WITH 
ROW# AND/OR TABLE#. FOR EXAMPLE, ROW# 1 COULD CONTAIN INVOICE# 1 SALES AMOUNT, 
ROW# 2-INVOICE# 1 PROFIT, ROW# 3-INVOICE# 2 SALES, ROW# 4-INVOICE# 2 PROFIT, 
ETC. NOTE THAT THE RULE FOR THIS IS:(INV#-1)X2+1 FOR SALES AND +2 FOR PROFIT.  
THIS TECHNIQUE COULD BE COMBINED WITH PARALLEL TABLES FOR VERY COMPLEX DATA 
STRUCTURES.
     THE SYSTEM ALLOWS TABLES TO BE ACCESSED IN SEVERAL DIFFERENT WAYS, IN 
FREE-FORM, SO THE USER OF TABLES WOULD BE WELL ADVISED TO KEEP A LOG OF ALL 
TABLES USED, INCLUDING TABLE#, FORMAT, DATA CONTAINED, PARALLEL TABLES, ETC. 
IT IS UP TO YOU TO CONTROL HOW YOU USE TABLES. USE THEM WITH CARE!

                         APPENDIX C SYSTEM EDITOR                             

     DATA CAN BE VIEWED, PRINTED AND CHANGED USING "HEX PATCHING", AT FILE 
IDLE POSITION.  IF A REVIEW OF A REPORT AND THE RECORDS THAT COMPRISE IT ARE 
DESIRED, A BLIND NUMBER CODE OF 7 MAY BE ENTERED.  THE SYSTEM WILL RESPOND 
WITH: "REPORT NAME" AND A NAME OF A REPORT IN THE FILE MUST BE ENTERED.  THE 
SYSTEM WILL SAY:  "PRINT -1, VIEW -2" AND THE REVIEW OF THE  FORMAT AND A LIST 
OF THE RECORDS COMPRISING THE REPORT WILL BE TRANSMITTED.  THE "A" SET OF 
RECORDS IS THE FORMAT SET AND A BREAK DOWN OF THE FORMAT IS GIVEN, INCLUDING 
THE RECORD NUMBERS AND A DATA POINTER FOR EACH PART OF THE FORMAT IS PRINTED.  
ALL VALUES ARE DECIMAL (BASE TEN) EXCEPT OPERATIONS, WHICH ARE HEX DECIMAL 
(BASE 16).  (IT IS SUGGESTED THAT A PROGRAMMERS' CALCULATOR BE OBTAINED IF 
"HEX PATCHING" IS TO BE DONE.)
                                                                             
"B" RECORDS ARE DIRECTORY RECORDS
"C" RECORDS ARE DATA RECORDS
"D" RECORDS ARE NARRATIVE RECORDS

     TO CHANGE A RECORD IN A FILE, A 6 IS ENTERED AT THE FILE IDLE POSITION.  
THE SYSTEM WILL REQUEST "NUMBER" AND A RECORD NUMBER MUST BE ENTERED.  IF AN 
ILLEGAL RECORD NUMBER IS ENTERED, THE SYSTEM WILL REPEAT "NUMBER", WHEN A 
CORRECT NUMBER HAS BEEN ENTERED, THE SYSTEM WILL REQUEST "PRINT-1, VIEW-2", 
AND THE SYSTEM WILL PRINT OR VIEW THE RECORD IN HEXADECIMAL "WORDS" IN EACH 
RECORD AND EACH ONE IS POINTED TO BY A "DATA POSITION" (D.P.).  THE SYSTEM 
WILL NOW RESPOND WITH "CODE" AND 4 CODES (BELOW) ARE LEGAL; RETURN TO FILE 
WILL BE MADE IF ONE OF THE 4 CODES IS NOT ENTERED.

#    LOOK AT ANOTHER RECORD
$    CHANGE DATA OF ONE WORD.  SYSTEM WILL RESPOND WITH "D.P." AND A DATA
     POSITION MUST BE ENTERED.  THEN "DATA" WILL BE REQUESTED AND A 4 DIGIT
     HEX NUMBER MUST BE ENTERED.
%    CHANGE CONSECUTIVE DATA WORDS.  THE SYSTEM WILL REQUEST "D.P." AND A DATA 
     POSITION BETWEEN 1 AND 255 MUST BE ENTERED.  THE "DATA" WILL BE
     REQUESTED, AND A 4 DIGIT HEX NUMBER MUST BE ENTERED AND THE SYSTEM WILL
     AGAIN REQUEST "DATA".  THIS CONTINUES UNTIL "STOP" IS ENTERED AS DATA.
&    VIEW NEXT RECORD IN CHAIN OF RECORDS. THIS MAY BE CONTINUED UNTIL THERE 
     ARE NO MORE RECORDS IN THE CHAIN.
.PA

                         APPENDIX D SUB-REPORTS                               

     AFTER A REPORT HAS BEEN FORMATTED, THE SYSTEM WILL TRANSMIT "ENTER CODE" 
TO THE FORMATTING CRT AND IF "CY" IS NOT ENTERED A NORMAL REPORT WILL BE 
ENTERED INTO THE FILE. IF, HOWEVER, "CY" IS ENTERED, THE REPORT WILL BE 
ENTERED INTO THE FILE AS A MASTER FORMAT. THE MASTER REPORT IS A FORMAT THAT 
IS SHARED BY REPORTS THAT ARE NUMERICALLY ORDERED. SUBS DO NOT EXIST UNTIL 
DATA IS ENTERED INTO EACH ONE.
     IF A MASTER REPORT IS UPDATED, THE SYSTEM WILL REMEMBER THAT IT IS A 
MASTER AND REQUIRE THE "NUMBER" TO BE ENTERED. LIKEWISE, IF A MASTER IS 
PRINTED OR ACCESSED IN ANY WAY, THE SYSTEM WILL REQUIRE A SUB-REPORT NUMBER TO 
BE ENTERED WHEN IT TRANSMITS "NUMBER" TO THE REQUESTING CRT.
     OPERATIONS THAT ACCESS OTHER REPORTS (I.E., OPERATIONS 1,2,30,35,36,52, 
53,56,66,73,91,92,95 AND 107) MUST HAVE SUB-REPORT NUMBERS SPECIFIED IF THE 
REPORT IS A MASTER. THE SUB NUMBER IS THAT VALUE CONTAINED IN THE LAST 
I-FIELD. IT IS RECOMMEDED THAT 92 BE USED INSTEAD OF 91 SINCE FEWER RECORDS 
WILL BE TIED UP.

FIELD I FMT I COMMENT                            I \OR^ I OPERATIONS
--------------------------------------------------------------------
     1I  I4 IENTER SUB UNDER "MASTER TO UPDATE^  I  \   I 0 Y 35(0,MASTER) N
     2I  I4 INTER SUB UNDER "PRINT" TO PRINT^    I  \   I 0 N
     3I  A6 IPRINT ^                             I  ^   I 56 Y 65 N
     IN THE EXAMPLE, OPERATION 35 IN FIELD 1 WILL TRANSFER TO THE SUB REPORT 
(UNDER "MASTER") ENTERED BY THE OPERATOR DURING INPUT. OPERATION 56 WILL PRINT 
THE SUB REPORT UNDER "PRINT" ACCORDING TO THE VALUE ENTERED INTO FIELD 2 BY 
THE OPERATOR.

NOTE: TO REMOVE A MASTER FROM A FILE, YOU MUST USE THE "7602" OPTION IN THE 
EDITOR.
Gass Index
Hosted by www.Geocities.ws

 1