122 lines
		
	
	
		
			7.2 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			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
 |