Struttura che contiene i dati del dbase.
Sintassi
typedef struct {
SINT iVer; // Versione
SINT hdl; // hdl EH Memory
UTF8 utfNomeFile[200]; // Nome del file
#ifdef __windows__
HANDLE hFile;
#endif
BOOL bFileSource; // T/F se il sorgente è su file (non in memoria)
INT64 uiFileSize;
DWORD dwFisMax; // Numero massimo di posizioni fisiche allocabili
UINT64 *ariFis; // Posizione fisica su disco
UINT64 uiDataOffset;
CHAR * pszSource; // Sorgente dati
CHAR * pszDataStart; // Primo record (se sono in modalità in memoria bFileSource=FALSE)
SINT iRealLines; // Linee presenti totali
CHAR ** arRealLine; // Puntatori alle linee Reali (Ordine fisico)
SINT iFilterLines; // Linee presenti dopo un Filtro
SINT * arFilterLine; // Puntatori alle linee Filtrata (NULL nessun filtro)
SINT iSortLines; // Line presenti nell'array del sort
SINT * arSortLine; // Puntatori alle linee Ordinate (NULL nessun ordinamento)
// Usato nel filtro di ricerca per notificare l'avanzamento
SINT iFilterMax;
SINT iFilterPos;
SINT iFieldCount; // Campi presenti
//BYTE **lpFieldName; // Puntatore al nome dei campi
TXBFLD *lpFieldInfo; // Puntatore al nome dei campi
CHAR ** lpFieldPtr; // Puntatore al valore dei campi
SINT iMaxBuffer; // Dimensione del buffer "rows"
CHAR * lpBuffer; // Buffer "Rows"
SINT iVirtualCursor; // Linea corrente virtuale (da 1 a iLineCount) nel Buffer
SINT iRealCursor; // Linea corrente Reale (con il sort potrebbe essere differente)
FILE * ch;
CHAR szColSep[8];
SINT iColSep; // Dimensioni col sep
CHAR szRowSep[8];
SINT iRowSep; // Dimensioni Row sep
void * pvPointMax;
EN_CHARTYPE iCharType; // 0=Ascii, 1=Iso(ansi), 2=uf8
EN_CHARTYPE iCharDecoding; // 0=no, 1=Ansi
BOOL bSilentError;
} S_TXB;