| RTP Series - RTP57 |
| File Variables |
| Reader's Clinic - Volume Pointer Record |
| REVMEDIA Revisted |
| Utility Diskette # 4 |
| Playing with Scan Codes |
| QTIPS - Compiling Protection Code |
| QTIPS - Invalid Code and Command |
| QTIPS - Code/Command Help |
| Compiling 64K on a Shoestring by Blaise Wrenn (LexStat Systems Ltd) |
| Make.Index |
| QTIPS - Btree.Extract |
| !File Records |
| Index Sub Revisited |
| QTIPS - Stop Lists |
| Reader's Clinic - Stop Lists |
| Utility Diskette # 4 |
| QTIPS - Manipulating XREF formulae. |
| SecureUser |
| VERBatim - V25 |
| @ATTACK - @Files.System |
| Advanced Revelation Initialisation Sequence (Overview) by Mike Pope |
| REVMEDIA Revisted |
| Simple Security |
| QTIPS - Hiding Symbolic Source Code |
| Using One Dictionary With Multiple Tables - Aaron Kaplan - SoftMart Inc |
| Reader's Clinic - Functions and Subroutines |
| Argument passing - Subroutines and Functions - Mike Pope |
| QTIPS - Using @Upper.Case and @Lower.Case with Foreign Languages |
| @ATTACK - @Lower.Case |
| @ATTACK - @Upper.Case |
| Sorting out Collation Sequences by Mike Pope |
RevMedia FKB
| Document | V2I4A2 |
| Title | Index Sub Revisited |
| Keywords | INDEX.SUB MAKE.INDEX XREF REBUILD INDEXING @PSEUDO @SENTENCE |
| Text | One of the most popular articles in Volume 1 of REVMEDIA was that explaining the use of the undocumented routine MAKE INDEX to manipulate INDEXES on files The first utility diskette contained a routine called INDEX SUB which used MAKE INDEX and INDEXING to simplify all handling of INDEXES With the release of 2 0 RevTech have changed the way in which both of these routines work This article reflects these changes and explains how to modify the INDEX SUB code to cope WITH the new release Adding XREF Indexes Whilst the old "A" call to add XREF INDEXES seems to work an index rebuild does not work on an XREF index created in this manner This is because RevTech have rationalised the way in which the system treats symbolic btrees Whereas previously the XREF dictionary item did not require a flag in field six indicating that it was btreed version 2 0 insists that this be present Thus the MAKE XREF DICT portion of INDEX SUB must be modified to take account of this as follows MAKE XREF DICT: DICT REC = "S" DICT REC<3> = ITEM : " XREF" DICT REC<4> = "M" DICT REF<6> = 1 < NEW!! DICT REF<8> = "CALL XREF( (as before) DICT REF<9> "L" : @FM : 10 RETURN Rebuilding Indexes The INDEXING subroutine has been modified so that it looks for its input in @PSEUDO rather than in @SENTENCE The structure of @PSEUDO must be @PSEUDO<1>= FILENAME @PSEUDO<2>= ITEMNAME @PSEUDO<3>= B for BTREE C for Cross Reference R for Relational The relevant sections of INDEX SUB should be modified as follows CASE ACTION = "B" *Rebuild a btree @PSEUDO = FILE : @FM : ITEM : @FM : "B" OR *Rebuild an XREF @PSEUDO = FILE : @FM : ITEM : @FM : "C" OR *Rebuild a relational @PSEUDO = FILE : @FM : ITEM : @FM : "R" CALL INDEXING ("TCL") (Volume 2 Issue 4 Page 4) |
Page last modified: 30/01/03