#ifndef __RECTYPES_H #define __RECTYPES_H #define NOERR 0 #define FIELDERR -1 typedef long TRecnotype; // @doc EXTERNAL // @enum TFilelock | Comandi per l'apertura dei file enum TFilelock { _excllock = 0x100, // @emem Apertura in modo esclusivo _autolock = 0x200, // @emem Apertura del file in modo auto _manulock = 0x400}; // @emem Apertura del file in modo manuale // @doc EXTERNAL // @enum TReclock | Comandi per la gestione dei lock su record enum TReclock { _unlock = 0x1000, // @emem Sblocca il record _nolock = 0x2000, // @emem Nessuna operazione di lock _lock = 0x4000, // @emem Blocca il record _testandlock = (int)0x8000} ; // @emem Blocca il record se possibile, altrimenti ritorna errore // @doc EXTERNAL // @enum TDirtype | Comandi per la gestione di enum TDirtype { _nordir, // @emem Riferimento operazioni col prefix corrente _comdir } ; // @emem Riferimento operazioni al direttorio comune // @doc EXTERNAL // @enum TDirop | Comandi per la gestione di enum TDirop { _nordirop, // @emem Riferimento per operazioni normali _sysdirop }; // @emem Riferimento per operazioni di sistema // @doc EXTERNAL // @enum TFieldtypes | Elenco tipi di campi enum TFieldtypes { _nullfld, // @emem Campo vuoto _alfafld, // @emem Campo di tipo alfanumerico _intfld, // @emem Campo di tipo intero _longfld, // @emem Campo di tipo intero lungo _realfld, // @emem Campo di tipo reale (vedi ) _datefld, // @emem Campo di tipo data (vedi ) _wordfld, // @emem Campo di tipo intero senza segno _charfld, // @emem Campo di tipo carattere _boolfld , // @emem Campo di tipo booleano _intzerofld, // @emem Campo di tipo intero zero filled _longzerofld, // @emem Campo di tipo intero lungo zero filled _memofld} ; // @emem Campo di tipo memo // @doc EXTERNAL // @enum TIsamop | Comandi per eseguire operazioni di lettura sul file enum TIsamop { _isfirst = 0x0, // @emem Legge il primo record del file _islast = 0x1, // @emem Legge l'ultimo record del file _isnext= 0x2, // @emem Legge il prossimo record del file _isprev = 0x4, // @emem Legge il precedente record del file _iscurr = 0x8, // @emem Legge il record corrente del file (rilettura) _isequal = 0x10, // @emem Legge il record con chiave uguale a quella specificata _isgreat = 0x20, // @emem Legge il record con chiave maggiore di quella specificata _isgteq = 0x40, // @emem Legge il record con chiave maggiore o uguale di quella specificata _isnextn = 0x100, // @emem Legge i prossimi n record _isprevn = 0x200} ; // @emem Legge i precedenti n record // @doc EXTERNAL // @enum TIsamerr | Elenco codici di errore enum TIsamerr { _iseof = 201, // @emem End of file _isbof = 202, // @emem Begin of file _isfileovf = 203, // @emem Overflow del file _iskeynotfound = 204, // @emem Chiave non trovata _isemptyfile = 205, // @emem File vuoto _isdupkey = 206, // @emem Chiave duplicata _isnocurkey = 207, // @emem Non esiste la chiave corrente _iskeyrangeerr = 211, // @emem Valore errato della chiave _iskeyerr = 212, // @emem Errore generico della chiave _iskeylenerr = 214, // @emem Lunghezza della chiave errata _ispatherr = 216, // @emem File indice non coerente _ispathfull = 217, // @emem UNUSED _isnrecerr = 218, // @emem Errore sul numero dei record _isfilefull = 219, // @emem File o disco pieno _isnotopen = 220, // @emem File non aperto _isnotcurr = 221, // @emem Non esiste il record corrente _isalropen = 222, // @emem File gia' aperto _isdeadlock = 223, // @emem Condizione di deadlock _isreinsert = 224, // @emem Chiva duplicata su indici diversi da 1 _islocked = 225} ; // @emem Record bloccato typedef long TRecnotype; #endif // __RECTYPES_H