open-insight/SYSPROG/STPROCINS/SP.MFS.COMMON.txt
2024-03-25 15:17:34 -07:00

122 lines
7.2 KiB
Plaintext

compile insert SP.MFS.COMMON
* This is the LABELLED COMMON area for the SPINDEX MFS and the
* Background indexing routines...
*
COMMON /XSELECT.FLAGS/ SP.VAR0@, SP.VAR1@, SP.VAR2@, SP.VAR3@, SP.VAR4@, SP.SHO@, SP.PRN@, SP.IGN@, SP.MAK@, SP.USE@, SP.BEL@, SP.FOR@, SP.FAND@, SP.LASTX@, SP.LASTS@, SP.PCODE@
COMMON /FLAG.DEFAULTS/ SP.ERR@, SP.DSHO@, SP.DPRN@, SP.DIGN@, SP.DMAK@, SP.DUSE@, SP.DBEL@, SP.DFOR@, SP.DFAND@
COMMON /SPINDEX.COMMON/ SP.TABLE@, SP.TABLEDATA@, SP.TABLEKEYS@(10), SP.SORTKEYS@, SP.RN.NR@, SP.STAT@
COMMON /MSG.IMAGES/ IMAGE1@, IMAGE2@, IMAGE3@
*
* SP.TABLE@ ;* This carries the current spindex table, with overflow stored
* ;* in the ram.drive.file defined in sp.parms
* SP.TABLEDATA@ ;* Carries the data that tracks the 10 most recent tables used
* ;* in a readnext statment.
* SP.TABLEKEYS@(10) ;* This is a dimensionsed array that carries 10 blocks
* ;* of keys read from disk via this readnext. The 10
* ;* blocks correspond with the 10 sets of tabledata stored
* ;* in sp.tabledata@. This is done so that actual disk I/O
* ;* is eliminated when getting each record id via this
* ;* readnext...
* SP.SORTKEYS@ ;* If a sort has taken place, then this is the list of
* ;* resolved keys...
* SP.RN.NR@ ;* This is the readnext number that tells us what readnext
* ;* block of keys we are currently processing
* SP.STAT@ ;* the station's ID, usually the same as @station, but
* ;* could be different if on a banyon-vines network
*---------------------
*
* SP.PCODE@ ;* used to communicate to sp.parms.mfs that we are doing
* ;* an authorized access of spinp 'P' record...usually set
* ;* to the value of 'ESTER'
* SP.VAR1@ ;* THIS IS USED BY XSELECT TO TELL ALL OTHER PROCESSES,
* ;* PARTICULARLY XREADNEXT, THAT AN XSELECT HAS JUST TAKEN
* ;* PLACE; XREADNEXT WILL IMMEDIATELY TURN SP.VAR1@ OFF AND
* ;* START PROCESSING THE NEW SELECT DATA...
* SP.VAR2@ ;* USED BY SPINDFEX SELECT PROCESS TO TELL SP.MFS THAT
* ;* AN AREV SELECT IS NOW TAKING PLACWE AND THAT THE
* ;* CLEARSELECT FUNCTION MUST NOT BE EXECUTED AT COMPLETION
* ;* OF THE AREV SELECT!
* SP.VAR3@ ;* used ONLY by sp.mfs to handle readnext processing of
* ;* of sorted keys...
* SP.VAR4@ ;* Used by XSELECT to tell SPINDEX version of
* ;* RTP18.ENGLISH that the actual AREV select must be
* ;* perrformed instead of another call to XSELECT...
* SP.FOR@ ;* used for passing flags between certain processes
* ;* such as between xselect and sp.q33 regarding use of OR
* ;* operation...
* SP.FAND@ ;* forces an AND operation...with no msg prompt
* SP.LASTX@ ;* text of the last XSELECT statement
*
*
*
COMMON /SP.MFS.COMMON/ SP.FNAME@, SP.HAND@, SP.FNRS@, SP.ACC@, SP.STP1@, SP.STP2@, SP.1@, SP.DOS@, SP.TKEY@, SP.TFIL@(4), SP.PFIL@, SP.PARMS, SP.CODE@, SP.SNP1@, SP.SNP2@, SP.FILE@, SP.XREF@, SP.FIL@, SP.FLD@, SP.GRP@, SP.BUILD@
*
* SP.FNAME@ ;* All filenames that have been opened and correspond to
* ;* the SP.HAND@ array
* SP.HAND@ ;* All file handles used with OPEN statement, correspoinding to
* ;* the SP.FNAME@ array
* SP.FNRS@ ;* Actual SPINDEX File Numbers; in parallel with SP.FNAME@
* ;* and SP.HAND@ above
* SP.ACC@ ;* Field 1 has a flag; TRUE = allowed access; FALSE =no access
* ;* Field 2 contains the @STATION relative position in SPINP 'P'
* ;* Parameters File. This position tells SP.BUILD what volume
* ;* to use for RAM drive, etc.
* SP.STP1@ ;* The current directories that SP.BACKGROUND was at when interrupted
* Field 001: start.day (directory)
* Field 002: start.hr ""
* Field 003: days.left.to.check
* Field 004: hrs.left.to.check
*
* SP.STP2@ ;* USED BY SP.MFS to determine if the user wants to save the
* entire set of changed data fields, or just the SPINDEX
* INDEXED data fields that have changed!
*
* SP.1@ ;* Used by sp.mfs to hold the file variable of the current file
* dictionary during sort operations...
*
* SP.DOS@ ;* Name of DOS file that holds the name of the DOS extensions
* used during low level SPINDEX Boolean operations
* SP.TKEY@ ;* Used by SP.I01 to hold the keys for the TABLE1, TABLE2,
* RESULT, and BOOLEAN tables during table processing...
* This data is in the form of a @FM delimited variable.
* SP.TFIL@(4) ;* Used by SP.I01 to hold the TABLE file variables,
* where (1)=table1; (2)=result/table2; (3)=unused; (4)=Boolean
* SP.PFIL@ ;* SPINDEX SPINP Parms file
* SP.PARMS ;* The PARMS variable read from the SPINP
* SP.CODE@ ;* <1> used by sp.r04 (RTP18.ENGLISH) to tell whether or not to
* read the xselect voc file item...stores @account here
* <2> used to store the last xref key read by sp.mfs
* <3> used to store the list of 500 xref keys read by sp.mfs
* which is cleared out at the end of a series of readnexts
*
* SP.SNP1@ ;* used to store the RAM.STORE file's file handle for sp.d06 MFS
* SP.SNP2@ ;* not used
* SP.FILE@ ;* The file NAME that is currently being updated by the trans
* SP.XREF@ ;* Used to store the !filename data for all AREV indexed files;
* The variable uses SP.FIL@ to determine which attribute to
* look at; then, within each attribute is the same !filename
* record that is stored by AREV (see REVMEDIA vol 2, issue 1
* pg 6,7). We load that data here whenever the INSTALL is run
* and then we can use that data to determine whether a
* relational update is taking place! Because, on relational
* update, we CANNOT write the update to disk!
* SP.FIL@ ;* The actual indexed SP.FIL@
* SP.FLD@ ;* The attribute number of the current indexed field
* SP.GRP@ ;* The actual GROUP number that the indexed field belongs to
*
* SP.BUILD@ ;* flag indicating that SP.BUILD is in progress
*
* 08/03/93 - rkh comment out old copyright
*EQUATE COPYRIGHT TO "COPYRIGHT (C) 1991, 1992, BY SEARCH TECHNOLOGIES, ALL RIGHTS RESERVED"
*
EQUATE ONE.NULL TO CHAR(31)
EQUATE TWO.NULL TO CHAR(31): CHAR(31)
EQUATE SPINDEX.FOUR TO "SP": CHAR(125): CHAR(126)
EQUATE SPINDEX.SORT.FOUR TO "SP": CHAR(123): CHAR(156)
EQUATE SPINDEX.SORT.KEYS.FOUR TO "SP": CHAR(122): CHAR(157)
EQUATE SPINDEX.SORT.REAL.KEYS TO "SP": CHAR(121): CHAR(158)
*
EQUATE NULL.TABLE TO STR( CHAR(0), 3): CHAR(11): CHAR(0): CHAR(0): CHAR(0): CHAR(129): CHAR(128): CHAR(129): CHAR(128)
* Source Date: 09:27:40 04 OCT 1993 Build ID: SPINDEX_21*1.0.14 Level: 1.0