Listing: 1 IMPLEMENTATION MODULE DBFCustomer; 2 FROM ModBase3 IMPORT InitDBF,OpenDBF,CloseDBF,ReadDBRec,GetField,DBFile, 3 DeleteRecord,DefaultFixUp,NilDBF,PosOfField,DBFieldArray, 4 DBFieldPtr,BuildDBF,DBFieldDescriptor; 5 FROM DBCopier IMPORT DBPack; 6 FROM DBIndxes IMPORT InitIndex,OpenIndex,AddToUpdateList,CloseIndex, 7 CurrentRec,FindPositionCh,BuildIndex,GoTop,GoBottom, 8 NextRecord,PrevRecord,CurrentKeyCh,FindPositionN, 9 CurrentKeyN,InitCompIndex,BuildCompIndex,DBIndex; 10 FROM StrEdit IMPORT CrunchBlanks; 11 FROM HandleIO IMPORT FileExists; 12 FROM Storage IMPORT ALLOCATE,DEALLOCATE; 13 FROM DBStuff IMPORT MakeKey; 14 FROM Drectory IMPORT DeleteFile; 15 FROM StrConv IMPORT StrToReal; 16 FROM NumTypes IMPORT Real8; 17 FROM M2Strings IMPORT Assign; 18 FROM DBStuff IMPORT MakeKey,MakeDescriptor; ***** ^ duplicate identifier ***** ^ duplicate identifier 19 FROM ScanUtils IMPORT Present,CaseSens; 20 FROM LowLevel IMPORT Fill; 21 FROM DBFields IMPORT GetDateField,GetLogicalField,GetNumField,Replace, 22 ReplaceD,ReplaceN; 23 24 CONST 25 Buffer = 0; 26 Safty = TRUE; 27 Exclusive = FALSE; 28 AutoLock = TRUE; 29 KeepDeleted = FALSE; 30 VAR 31 IndexOpen : BOOLEAN; 32 33 PROCEDURE MakeDatabase(); 34 VAR 35 Error : CARDINAL; 36 Desc : POINTER TO ARRAY [1..200] OF DBFieldDescriptor; ***** ^ not supported yet ***** ^ not supported yet 37 BEGIN 38 ALLOCATE(Desc, 31 * SIZE(DBFieldDescriptor)); ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 39 Fill(Desc, 31 * SIZE(DBFieldDescriptor),0); ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet 40 MakeDescriptor( Desc^[ 1], 'CIN', 10, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 41 MakeDescriptor( Desc^[ 2], 'NAMEIDX', 40, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 42 MakeDescriptor( Desc^[ 3], 'NAME', 40, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 43 MakeDescriptor( Desc^[ 4], 'NOTES1', 40, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 44 MakeDescriptor( Desc^[ 5], 'NOTES2', 40, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 45 MakeDescriptor( Desc^[ 6], 'NOTES3', 40, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 46 MakeDescriptor( Desc^[ 7], 'AMTOUT', 10, 2, 'N'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 47 MakeDescriptor( Desc^[ 8], 'LASTINV', 8, 0, 'D'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 48 MakeDescriptor( Desc^[ 9], 'YTDPURCH', 10, 2, 'N'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 49 MakeDescriptor( Desc^[ 10], 'SALESREP', 10, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 50 MakeDescriptor( Desc^[ 11], 'CONTACT', 20, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 51 MakeDescriptor( Desc^[ 12], 'PHONENBR', 18, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 52 MakeDescriptor( Desc^[ 13], 'FAXNBR', 15, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 53 MakeDescriptor( Desc^[ 14], 'DATENTER', 8, 0, 'D'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 54 MakeDescriptor( Desc^[ 15], 'SHIPTOA1', 30, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 55 MakeDescriptor( Desc^[ 16], 'SHIPTOA2', 30, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 56 MakeDescriptor( Desc^[ 17], 'SHIPTOA3', 30, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 57 MakeDescriptor( Desc^[ 18], 'SHIPTOZP', 9, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 58 MakeDescriptor( Desc^[ 19], 'BILLTOA1', 30, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 59 MakeDescriptor( Desc^[ 20], 'BILLTOA2', 30, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 60 MakeDescriptor( Desc^[ 21], 'BILLTOA3', 30, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 61 MakeDescriptor( Desc^[ 22], 'BILLTOZP', 9, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 62 MakeDescriptor( Desc^[ 23], 'DISCLEVEL', 1, 0, 'N'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 63 MakeDescriptor( Desc^[ 24], 'DISCAMOUNT', 4, 2, 'N'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 64 MakeDescriptor( Desc^[ 25], 'SHIPVIA', 20, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 65 MakeDescriptor( Desc^[ 26], 'TERMS', 20, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 66 MakeDescriptor( Desc^[ 27], 'LIMIT', 10, 2, 'N'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 67 MakeDescriptor( Desc^[ 28], 'RESALENBR', 15, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 68 MakeDescriptor( Desc^[ 29], 'TAXABLE', 1, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 69 MakeDescriptor( Desc^[ 30], 'FREEFRGHT', 1, 0, 'C'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 70 MakeDescriptor( Desc^[ 31], 'SALEREPCOM', 4, 2, 'N'); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 71 InitDBF('Customer.DBF',CustomerDBF,0,FALSE,TRUE,FALSE,DefaultFixUp); ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 72 (* It would be a good to test error.*) 73 Error:=BuildDBF(Desc^, 31,CustomerDBF); ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier 74 CloseDBF(CustomerDBF); ***** ^ not supported yet ***** ^ undeclared identifier 75 DEALLOCATE(Desc, 31 * SIZE(DBFieldDescriptor)); ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 76 END MakeDatabase; ***** ^ not supported yet 77 78 PROCEDURE MoveCustomerToDBF(Rec : CustomerRec ); ***** ^ undeclared identifier 79 (* This code will move the data from the record to *) 80 (* the data base *) 81 BEGIN 82 WITH Rec DO ***** ^ not supported yet 83 Replace( CustomerDBF, 1,CIN); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 84 Replace( CustomerDBF, 2,NAMEIDX); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 85 Replace( CustomerDBF, 3,NAME); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 86 Replace( CustomerDBF, 4,NOTES1); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 87 Replace( CustomerDBF, 5,NOTES2); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 88 Replace( CustomerDBF, 6,NOTES3); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 89 ReplaceN( CustomerDBF, 7,AMTOUT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 90 ReplaceD( CustomerDBF, 8,LASTINV); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 91 ReplaceN( CustomerDBF, 9,YTDPURCH); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 92 Replace( CustomerDBF, 10,SALESREP); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 93 Replace( CustomerDBF, 11,CONTACT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 94 Replace( CustomerDBF, 12,PHONENBR); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 95 Replace( CustomerDBF, 13,FAXNBR); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 96 ReplaceD( CustomerDBF, 14,DATENTER); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 97 Replace( CustomerDBF, 15,SHIPTOA1); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 98 Replace( CustomerDBF, 16,SHIPTOA2); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 99 Replace( CustomerDBF, 17,SHIPTOA3); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 100 Replace( CustomerDBF, 18,SHIPTOZP); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 101 Replace( CustomerDBF, 19,BILLTOA1); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 102 Replace( CustomerDBF, 20,BILLTOA2); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 103 Replace( CustomerDBF, 21,BILLTOA3); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 104 Replace( CustomerDBF, 22,BILLTOZP); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 105 ReplaceN( CustomerDBF, 23,FLOAT(DISCLEVEL)); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ undeclared identifier 106 ReplaceN( CustomerDBF, 24,DISCAMOUNT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 107 Replace( CustomerDBF, 25,SHIPVIA); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 108 Replace( CustomerDBF, 26,TERMS); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 109 ReplaceN( CustomerDBF, 27,LIMIT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 110 Replace( CustomerDBF, 28,RESALENBR); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 111 Replace( CustomerDBF, 29,TAXABLE); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 112 Replace( CustomerDBF, 30,FREEFRGHT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 113 ReplaceN( CustomerDBF, 31,SALEREPCOM); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 114 END; (* end of with REC *) ***** ^ not supported yet 115 END MoveCustomerToDBF; ***** ^ not supported yet 116 117 118 119 PROCEDURE MoveCustomerFromDBF(VAR Rec : CustomerRec ); ***** ^ undeclared identifier 120 (* This code will move the data from the Database to *) 121 (* the record *) 122 VAR B : BOOLEAN; 123 R : Real8; 124 BEGIN 125 WITH Rec DO ***** ^ not supported yet 126 GetField( CustomerDBF, 1,CIN); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 127 GetField( CustomerDBF, 2,NAMEIDX); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 128 GetField( CustomerDBF, 3,NAME); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 129 GetField( CustomerDBF, 4,NOTES1); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 130 GetField( CustomerDBF, 5,NOTES2); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 131 GetField( CustomerDBF, 6,NOTES3); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 132 GetNumField( CustomerDBF, 7,AMTOUT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 133 GetDateField( CustomerDBF, 8,LASTINV); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 134 GetNumField( CustomerDBF, 9,YTDPURCH); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 135 GetField( CustomerDBF, 10,SALESREP); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 136 GetField( CustomerDBF, 11,CONTACT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 137 GetField( CustomerDBF, 12,PHONENBR); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 138 GetField( CustomerDBF, 13,FAXNBR); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 139 GetDateField( CustomerDBF, 14,DATENTER); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 140 GetField( CustomerDBF, 15,SHIPTOA1); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 141 GetField( CustomerDBF, 16,SHIPTOA2); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 142 GetField( CustomerDBF, 17,SHIPTOA3); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 143 GetField( CustomerDBF, 18,SHIPTOZP); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 144 GetField( CustomerDBF, 19,BILLTOA1); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 145 GetField( CustomerDBF, 20,BILLTOA2); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 146 GetField( CustomerDBF, 21,BILLTOA3); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 147 GetField( CustomerDBF, 22,BILLTOZP); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 148 GetNumField( CustomerDBF, 23,R); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 149 DISCLEVEL:= TRUNC(R); (* *) ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ not supported yet 150 GetNumField( CustomerDBF, 24,DISCAMOUNT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 151 GetField( CustomerDBF, 25,SHIPVIA); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 152 GetField( CustomerDBF, 26,TERMS); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 153 GetNumField( CustomerDBF, 27,LIMIT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 154 GetField( CustomerDBF, 28,RESALENBR); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 155 GetField( CustomerDBF, 29,TAXABLE); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 156 GetField( CustomerDBF, 30,FREEFRGHT); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 157 GetNumField( CustomerDBF, 31,SALEREPCOM); (* *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 158 END; (* end of with REC^ *) ***** ^ not supported yet 159 END MoveCustomerFromDBF; ***** ^ not supported yet 160 161 162 163 PROCEDURE OpenCustomerDBF(WithIdx : BOOLEAN); 164 VAR ER : CARDINAL; 165 BEGIN 166 167 IndexOpen := WithIdx; 168 (* Open the DBF file *) 169 IF NOT FileExists("Customer.DBF") ***** ^ not supported yet ***** ^ not supported yet 170 THEN MakeDatabase(); ***** ^ not supported yet ***** ^ not supported yet 171 END; 172 InitDBF("Customer.DBF", CustomerDBF,Buffer,Safty,Exclusive, ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet 173 AutoLock,DefaultFixUp ); ***** ^ not supported yet ***** ^ not supported yet 174 IF NOT OpenDBF( CustomerDBF) ***** ^ not supported yet ***** ^ undeclared identifier 175 THEN END; 176 177 178 (* open all indexes and append to dbfile *) 179 IF WithIdx THEN 180 181 InitIndex( "Name.NDX",NameIdx,CustomerDBF,Buffer, Safty, ***** ^ not supported yet ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier ***** ^ not supported yet 182 KeepDeleted,Exclusive); ***** ^ not supported yet ***** ^ not supported yet 183 IF NOT OpenIndex( NameIdx ) ***** ^ not supported yet ***** ^ undeclared identifier 184 THEN 185 ER := BuildIndex(NameIdx,'Name'); (* check key lenght *) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 186 END; 187 AddToUpdateList( CustomerDBF, NameIdx ); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ undeclared identifier 188 189 190 ActCustomerIdx := NameIdx; (* make current index *) ***** ^ undeclared identifier ***** ^ undeclared identifier 191 GoTop(ActCustomerIdx); ***** ^ not supported yet ***** ^ undeclared identifier 192 END; (* end with indext *) 193 END OpenCustomerDBF; ***** ^ not supported yet 194 195 196 197 PROCEDURE CloseCustomerDBF (); (* close Data and index files *) 198 199 BEGIN 200 CloseDBF(CustomerDBF); (* close dbf file *) ***** ^ not supported yet ***** ^ undeclared identifier 201 IF IndexOpen 202 THEN 203 204 CloseIndex(NameIdx ); (* close index file *) ***** ^ not supported yet ***** ^ undeclared identifier 205 END; (* end index open*) 206 END CloseCustomerDBF; ***** ^ not supported yet 207 208 209 210 PROCEDURE FindCustomerByName( Key : ARRAY OF CHAR) : BOOLEAN; ***** ^ not supported yet 211 VAR Found : BOOLEAN; 212 CKey : ARRAY[0..80] OF CHAR; ***** ^ not supported yet ***** ^ not supported yet 213 BEGIN 214 ActCustomerIdx := NameIdx ; (* make this index the active idx*) ***** ^ undeclared identifier ***** ^ undeclared identifier 215 FindPositionCh( NameIdx, Key, Found); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ not supported yet 216 CurrentKeyCh(NameIdx,CKey); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 217 Found := Present(Key,CKey,CaseSens); ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet ***** ^ not supported yet 218 IF Found 219 THEN ReadDBRec( CustomerDBF, CurrentRec( NameIdx)); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ undeclared identifier 220 END; 221 RETURN Found; 222 END FindCustomerByName; ***** ^ not supported yet 223 224 225 226 227 228 229 230 PROCEDURE NextCustomer () : BOOLEAN; 231 VAR 232 L : LONGINT; (* record number *) 233 BEGIN 234 IF NextRecord( ActCustomerIdx,L) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 235 THEN ReadDBRec( CustomerDBF,L ); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 236 RETURN TRUE; 237 ELSE RETURN FALSE; 238 END; 239 END NextCustomer; ***** ^ not supported yet 240 241 PROCEDURE PrevCustomer () : BOOLEAN; 242 VAR 243 L : LONGINT; (* record number *) 244 BEGIN 245 IF PrevRecord( ActCustomerIdx,L) ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 246 THEN ReadDBRec( CustomerDBF,L ); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet 247 RETURN TRUE; 248 ELSE RETURN FALSE; 249 END; 250 END PrevCustomer; ***** ^ not supported yet 251 252 PROCEDURE FirstCustomer (); 253 VAR 254 L : LONGINT; (* record number *) 255 BEGIN 256 GoTop(ActCustomerIdx); ***** ^ not supported yet ***** ^ undeclared identifier 257 ReadDBRec( CustomerDBF,CurrentRec( ActCustomerIdx)); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ undeclared identifier 258 END FirstCustomer; ***** ^ not supported yet 259 260 PROCEDURE LastCustomer (); 261 VAR 262 L : LONGINT; (* record number *) 263 BEGIN 264 GoBottom(ActCustomerIdx); ***** ^ not supported yet ***** ^ undeclared identifier 265 ReadDBRec( CustomerDBF,CurrentRec( ActCustomerIdx)); ***** ^ not supported yet ***** ^ undeclared identifier ***** ^ not supported yet ***** ^ undeclared identifier 266 END LastCustomer; ***** ^ not supported yet 267 PROCEDURE PackCustomer(); 268 VAR 269 EM : CARDINAL; 270 LI : LONGINT; 271 Tmp : CustomerRec; ***** ^ undeclared identifier 272 BEGIN 273 CloseCustomerDBF(); ***** ^ not supported yet ***** ^ not supported yet 274 OpenCustomerDBF(FALSE); (* open with no index *) ***** ^ not supported yet ***** ^ not supported yet 275 DBPack(CustomerDBF); ***** ^ not supported yet ***** ^ undeclared identifier 276 CloseCustomerDBF(); ***** ^ not supported yet ***** ^ not supported yet 277 278 EM := DeleteFile('Name'); ***** ^ not supported yet ***** ^ not supported yet 279 OpenCustomerDBF(TRUE); (* open to rebuild the indexes*) ***** ^ not supported yet ***** ^ not supported yet 280 CloseCustomerDBF(); ***** ^ not supported yet ***** ^ not supported yet 281 END PackCustomer; ***** ^ not supported yet 282 283 (* initialization code *) 284 BEGIN 285 NilDBF(CustomerDBF); ***** ^ not supported yet ***** ^ undeclared identifier 286 IndexOpen := FALSE; 287 288 END DBFCustomer. ***** ^ not supported yet 289 486 errors