File incluso per le funzioni DAO di Proteus |
; Include file per le funzioni DAO di Proteus
; Tipi di attributi per DAODBATTRIB
; sono supportate le transazioni
CONST DAOATTCANTRANSACT = 1
; è possibile l'aggiornamento
CONST DAOATTCANUPDATE = 2
; stringa di connessione
CONST DAOATTGETCONNECT = 3
; nome
CONST DAOATTGETNAME = 4
; timeout della query
CONST DAOATTGETSETQUERYTIMEOUT = 5
; numero di record influenzati dall'ultima operazione
CONST DAOATTGETRECORDSAFFECTED = 6
; versione
CONST DAOATTGETVERSION = 7
; aperto
CONST DAOATTISOPEN = 8
; -----------------------------------------------------------------------------------------
; Tipi di locale per DAODBCREATE
; arabo
CONST DAOCLangArabic = ";LANGID=0x0401;CP=1256;COUNTRY=0"
; ceco
CONST DAOCLangCzech = ";LANGID=0x0405;CP=1250;COUNTRY=0"
; olandese
CONST DAOCLangDutch = ";LANGID=0x0413;CP=1252;COUNTRY=0"
; da utilizzare per inglese, tedesco, francese, portoghese, italiano e spagnolo moderno
CONST DAOCLangGeneral = ";LANGID=0x0409;CP=1252;COUNTRY=0"
; greco
CONST DAOCLangGreek = ";LANGID=0x0408;CP=1253;COUNTRY=0"
; ebraico
CONST DAOCLangHebrew = ";LANGID=0x040D;CP=1255;COUNTRY=0"
; ungherese
CONST DAOCLangHungarian = ";LANGID=0x040E;CP=1250;COUNTRY=0"
; islandese
CONST DAOCLangIcelandic = ";LANGID=0x040F;CP=1252;COUNTRY=0"
; nordico
CONST DAOCLangNordic = ";LANGID=0x041D;CP=1252;COUNTRY=0"
; norvegese e danese
CONST DAOCLangNorwDan = ";LANGID=0x0414;CP=1252;COUNTRY=0"
; polacco
CONST DAOCLangPolish = ";LANGID=0x0415;CP=1250;COUNTRY=0"
; cirillico
CONST DAOCLangCyrillic = ";LANGID=0x0419;CP=1251;COUNTRY=0"
; spagnolo tradizionale
CONST DAOCLangSpanish = ";LANGID=0x040A;CP=1252;COUNTRY=0"
; svedese e finlandese
CONST DAOCLangSwedFin = ";LANGID=0x040B;CP=1252;COUNTRY=0"
; turco
CONST DAOCLangTurkish = ";LANGID=0x041F;CP=1254;COUNTRY=0"
; giapponese
CONST DAOCLangJapanese = ";LANGID=0x0411;CP=932;COUNTRY=0"
; cinese semplificato
CONST DAOCLangChineseSimplified = ";LANGID=0x0804;CP=936;COUNTRY=0"
; cinese tradizionale
CONST DAOCLangChineseTraditional = ";LANGID=0x0404;CP=950;COUNTRY=0"
; coreano
CONST DAOCLangKorean = ";LANGID=0x0412;CP=949;COUNTRY=0"
; thailandese
CONST DAOCLangThai = ";LANGID=0x041E;CP=874;COUNTRY=0"
; sloveno
CONST DAOCLangSlovenian = ";LANGID=0x0424;CP=1250;COUNTRY=0"
; -----------------------------------------------------------------------------------------
; Opzioni per DAODBCREATE
; crea con Jet 1.0
CONST DAOCVersion10 = 1
; salva il database cifrato su disco
CONST DAOCEncrypt = 2
; salva il database non cifrato su disco
CONST DAOCDecrypt = 4
; crea con Jet 1.1
CONST DAOCVersion11 = 8
; crea con Jet 2.0
CONST DAOCVersion20 = 16
; crea con Jet 3.0
CONST DAOCVersion30 = 32
; -----------------------------------------------------------------------------------------
; Attributi per DAODBCREATERELATION e per le informazioni sul tipo di relazione restituite
; da DAODBGETRELATIONINFO
; relazione 1 a 1
CONST DAOCRelationUnique = 1
; no integrità referenziale
CONST DAOCRelationDontEnforce = 2
; la relazione esiste in un database non concorrente che contiene le due tabelle allegate
CONST DAOCRelationInherited = 4
; gli aggiornamenti saranno propagati
CONST DAOCRelationUpdateCascade = 256
; le cancellazioni saranno propagate
CONST DAOCRelationDeleteCascade = 4096
; la relazione è un join sinistro. Un join sinistro esterno include tutti i record
; della prima delle due tabelle (parte sinistra), anche se non ci sono valori
; corrispondenti nella seconda tabella (parte destra).
CONST DAOCRelationLeft = 16777216
; la relazione è un join destro. Un join destro esterno include tutti i record
; della seconda delle due tabelle (parte destra), anche se non ci sono valori
; corrispondenti nella prima tabella (parte sinistra).
CONST DAOCRelationRight = 33554432
; -----------------------------------------------------------------------------------------
; Opzioni per DAODBEXECUTE
; nega la possibilità di scrivere ad altri utenti
CONST DAOCDenyWrite = 1
; ammette aggiornamenti inconsistenti (default)
CONST DAOCInconsistent = 16
; forza aggiornamenti consistenti
CONST DAOCConsistent = 32
; lo statement è passato verbatim al data source ODBC per l'elaborazione
CONST DAOCSQLPassThrough = 64
; elimina tutti gli aggiornamenti in caso di errore
CONST DAOCFailOnError = 128
; genera un errore se un altro utente sta cambiando i dati in editing
CONST DAOCSeeChanges = 512
; nega la possibilità di leggere ad altri utenti
CONST DAOCDenyRead = 2
; sola lettura
CONST DAOCReadOnly = 4
; sola aggiunta in coda
CONST DAOCAppendOnly = 8
; apre in modalità di solo scorrimento in avanti (non supportato)
;CONST DAOCForwardOnly = 256
; esegue in modo asincrono
CONST DAOCRunAsync = 1024
; esegue direttamente
CONST DAOCExecDirect = 2048
; -----------------------------------------------------------------------------------------
; Indici nel vettore restituito da DAODBGETQUERYINFO
; nome della query
CONST DAOQI_NAME = 1
; tipo della query
CONST DAOQI_TYPE = 2
; data creazione
CONST DAOQI_CDATE = 3
; ora creazione
CONST DAOQI_CTIME = 4
; data ultimo aggiornamento
CONST DAOQI_UDATE = 5
; ora ultimo aggiornamento
CONST DAOQI_UTIME = 6
; aggiornabile
CONST DAOQI_UPDATE = 7
; ritorna record
CONST DAOQI_RECORDSET = 8
; stringa SQL
CONST DAOQI_SQL = 9
; info sorgente
CONST DAOQI_SOURCE = 10
; timeout del DB Engine
CONST DAOQI_TIMEOUT = 11
; -----------------------------------------------------------------------------------------
; Indici nel vettore restituito da DAODBGETRELINFO
; nome della relazione
CONST DAORI_NAME = 1
; nome della tabella
CONST DAORI_TABLE = 2
; nome della tabella esterna
CONST DAORI_EXTTABLE = 3
; tipo della relazione
CONST DAORI_TYPE = 4
; coppie di campi in relazioni (vettore)
CONST DAORI_FIELDS = 5
; -----------------------------------------------------------------------------------------
; Indici nel vettore restituito da DAODBGETTABINFO
; nome della tabella
CONST DAOTI_NAME = 1
; aggiornabile
CONST DAOTI_UPDATE = 2
; attributi
CONST DAOTI_ATTRIB = 3
; data creazione
CONST DAOTI_CDATE = 4
; ora creazione
CONST DAOTI_CTIME = 5
; data ultimo aggiornamento
CONST DAOTI_UDATE = 6
; ora ultimo aggiornamento
CONST DAOTI_UTIME = 7
; tabella collegata (se esiste)
CONST DAOTI_LINK = 8
; sorgente
CONST DAOTI_SOURCE = 9
; regola di validazione
CONST DAOTI_VALIDATE = 10
; messaggio se la validazione fallisce
CONST DAOTI_INVALID = 11
; numero di record visti
CONST DAOTI_RECNUMBER = 12
; -----------------------------------------------------------------------------------------
; Indici nel vettore restituito da DAORSGETFIELDINFO
; nome del campo
CONST DAOFI_NAME = 1
; tipo
CONST DAOFI_TYPE = 2
; massima dimensione
CONST DAOFI_SIZE = 3
; attributi
CONST DAOFI_ATTRIB = 4
; posizione ordinale
CONST DAOFI_POSITION = 5
; richiesto
CONST DAOFI_REQUIRED = 6
; ammetti lunghezza zero
CONST DAOFI_ALLOWZL = 7
; ordine di collating
CONST DAOFI_COLLATE = 8
; nome esterno
CONST DAOFI_EXTNAME = 9
; campo sorgente
CONST DAOFI_EXTFIELD = 10
; tabella sorgente
CONST DAOFI_EXTTABLE = 11
; regola di validazione
CONST DAOFI_VALIDATE = 12
; testo visualizzato se la validazione fallisce
CONST DAOFI_INVALID = 13
; valore di default
CONST DAOFI_DEFAULT = 14
; -----------------------------------------------------------------------------------------
; Indici nel vettore restituito da DAORSGETINDEXINFO
; nome dell'indice
CONST DAOII_NAME = 1
; vettore dei campi
CONST DAOII_FIELDS = 2
; primario
CONST DAOII_PRIMARY = 3
; unico
CONST DAOII_UNIQUE = 4
; a cluster
CONST DAOII_CLUSTERED = 5
; ignora Null
CONST DAOII_NULLIGNORE = 6
; richiesto
CONST DAOII_REQUIRED = 7
; esterno
CONST DAOII_EXTERN = 8
; chiavi distinte nell'indice
CONST DAOII_KEYS = 9
; -----------------------------------------------------------------------------------------
; Tipi di query restituite da DAODBGETQUERYDEFINFO
; la query è di selezione
CONST DAOCQSelect = 0
; la query muove o cambia dati, ma non ritorna record
CONST DAOCQAction = 240
; la query ritorna dati in formato tipo spreadsheet
CONST DAOCQCrosstab = 16
; la query cancella un insieme di righe specificate
CONST DAOCQDelete = 32
; la query cambia un insieme di record
CONST DAOCQUpdate = 48
; la query aggiunge nuovi record alla fine della tabella o della query
CONST DAOCQAppend = 64
; la query crea una nuova tabella da un recordset
CONST DAOCQMakeTable = 80
; la query influenza la struttura delle tabelle o delle loro parti
CONST DAOCQDDL = 96
; lo statement è passato direttamente all'engine, senza elaborazione intermedia.
CONST DAOCQSQLPassThrough = 112
; la query crea un recordset tipo snapshot con i dati dei record specificati
; in due o più tabelle con ogni record duplicato rimosso. Per includere i
; duplicati, aggiungere la keyword ALL nello statement SQL.
CONST DAOCQSetOperation = 128
; utilizzato con DAOCQSQLPassThrough per specificare una query che non ritorna record
CONST DAOCQSPTBulk = 144
; -----------------------------------------------------------------------------------------
; Attributi restituiti da DAODBGETTABLEDEFINFO
; per tabelle che usano Jet, indica che è una tabella collegata aperta per uso esclusivo
CONST DAOCAttachExclusive = 65536
; per tabelle che usano Jet, indica che lo User ID e la password per la tabella
; collegata sono salvate con le informazioni di connessione
CONST DAOCAttachSavePWD = 131072
; indica che la tabella è di sistema (sola lettura)
CONST DAOCSystemObject = -2147483646
; indica che la tabella è nascosta (per uso temporaneo, sola lettura)
CONST DAOCAttachedTable = 1073741824
; indica che la tabella è collegata da un database non-ODBC, come Paradox.
CONST DAOCAttachedODBC = 536870912
; indica che la tabella è collegata da un database ODBC, come MS SQL Server.
CONST DAOCHiddenObject = 1
; -----------------------------------------------------------------------------------------
; Nomi di attributi per DAORSATTRIB
; ritorna non-zero se possono essere aggiunti record ("CanAppend")
CONST DAORSATTCANAPPEND = 1
; ritorna non-zero se il recordset supporta i bookmark ("CanBookmark")
CONST DAORSATTCANBOOKMARK = 2
; ritorna non-zero se può essere ripetuta la query ("CanRestart")
CONST DAORSATTCANRESTART = 3
; ritorna non-zero se è possibile muoversi tra i record ("CanScroll")
CONST DAORSATTCANSCROLL = 4
; ritorna non-zero se il data source supporta le transazioni ("CanTransact")
CONST DAORSATTCANTRANSACT = 5
; ritorna non-zero se il recordset può essere aggiornato ("CanUpdate")
CONST DAORSATTCANUPDATE = 6
; ritorna la data di creazione della tabella base del recordset ("GetDateCreated")
CONST DAORSATTGETDATECREATED = 7
; ritorna l'ora di creazione della tabella base del recordset ("GetTimeCreated")
CONST DAORSATTGETTIMECREATED = 8
; ritorna la data di ultima modifica della tabella base del recordset ("GetDateLastUpdated")
CONST DAORSATTGETDATELASTUPDATED = 9
; ritorna l'ora di ultima modifica della tabella base del recordset ("GetTimeLastUpdated")
CONST DAORSATTGETTIMELASTUPDATED = 10
; ritorna il nome del recordset ("GetName")
CONST DAORSATTGETNAME = 11
; ritorna la stringa SQL utilizzata per estrarre il recordset ("GetSQL")
CONST DAORSATTGETSQL = 12
; ritorna la stringa di validazione per i dati introdotti nel record ("GetValidationRule")
CONST DAORSATTGETVALIDATIONRULE = 13
; ritorna il testo visualizzato quando la validazione fallisce ("GetValidationText")
CONST DAORSATTGETVALIDATIONTEXT = 14
; ritorna lo stato dell'editing per il record corrente ("GetEditMode")
CONST DAORSATTGETEDITMODE = 15
; ritorna il nome dell'indice selezionato in un recordset di tipo tabella ("GetCurrentIndex")
CONST DAORSATTGETCURRENTINDEX = 16
; ritorna il numero di record acceduti in un oggetto recordset ("GetRecordCount")
CONST DAORSATTGETRECORDCOUNT = 17
; ritorna non-zero se il recordset è stato posizionato prima del primo record; non c'è record corrente ("IsBOF")
CONST DAORSATTISBOF = 18
; ritorna non-zero se il recordset è posizionato su un record cancellato ("IsDeleted")
CONST DAORSATTISDELETED = 19
; ritorna non-zero se il recordset è stato posizionato oltre l'ultimo record; non c'è record corrente ("IsEOF")
CONST DAORSATTISEOF = 20
; ritorna non-zero se è stato aperto il recordset ("IsOpen")
CONST DAORSATTISOPEN = 21
; ritorna il tipo di recordset: tabella, dynaset, snapshot ("GetType")
CONST DAORSATTGETTYPE = 22
; ritorna un bookmark handle al record aggiunto o modificato più recentemente ("GetLastModifiedBookmark")
CONST DAORSATTGETLASTMODBMARK = 23
; imposta l'indice da utilizzare in un recordset di tipo tabella ("SetCurrentIndex")
CONST DAORSATTSETCURRENTINDEX = 24
; ritorna il valore del parametro specificato (se numerico, considera la posizione; se stringa, considera il nome) ("GetParamValue")
CONST DAORSATTGETPARAMVALUE = 25
; imposta il valore corrente per il parametro specificato a Null (nessun valore) ("SetParamValueNull")
CONST DAORSATTSETPARAMVALUENULL = 26
; -----------------------------------------------------------------------------------------
; Nomi di attributi per DAOTDATTRIB
; ritorna non zero se la tabella può essere aggiornata (è possibile modificare la definizione dei campi o le
; proprietà della tabella)
CONST DAOTDCANUPDATE = 1
; ritorna gli attributi della tabella
CONST DAOTDATTRIBUTES = 2
; ritorna un valore che fornisce informazioni sulla sorgente di una tabella
CONST DAOTDCONNECT = 3
; ritorna la data di creazione della tabella
CONST DAOTDCREATDATE = 4
; ritorna l'ora di creazione della tabella
CONST DAOTDCREATTIME = 5
; ritorna la data di ultimo aggiornamento
CONST DAOTDLASTUPDATE = 6
; ritorna l'ora di ultimo aggiornamento
CONST DAOTDLASTUPDTIME = 7
; ritorna il numero di campi nella tabella
CONST DAOTDNUMFIELDS = 8
; ritorna informazioni sul campo exp (se numerico, considera la posizione; se stringa, considera il nome);
; ritorna un vettore di 14 elementi, vedi DAORSGETFIELDINFO
CONST DAOTDFIELDINFO = 9
; ritorna il numero di indici
CONST DAOTDINDEXCOUNT = 10
; ritorna informazioni sull'indice exp (se numerico, considera la posizione; se stringa, considera il nome);
; ritorna un vettore di 9 elementi, vedi DAORSGETINDEXINFO
CONST DAOTDINDEXINFO = 11
; ritorna il nome della tabella
CONST DAOTDNAME = 12
; ritorna il numero di record acceduti finora nella tabella
CONST DAOTDRECCOUNT = 13
; ritorna il nome della tabella sorgente
CONST DAOTDSOURCE = 14
; ritorna la regola di validazione
CONST DAOTDVALRULE = 15
; ritorna il testo mostrato in caso di errore di validazione
CONST DAOTDVALTEXT = 16
; ritorna non zero se la tabella è aperta
CONST DAOTDISOPEN = 17
; imposta ad exp il valore degli attributi della tabella
CONST DAOTDSETATTR = 18
; imposta ad exp il valore della stringa di connessione
CONST DAOTDSETCONN = 19
; imposta ad exp il nome della tabella
CONST DAOTDSETNAME = 20
; imposta ad exp il nome della tabella sorgente
CONST DAOTDSETSOURCE = 21
; imposta ad exp la regola di validazione
CONST DAOTDSETVALRULE = 22
; imposta ad exp il testo mostrato in caso di errore di validazione
CONST DAOTDSETVALTEXT = 23
; -----------------------------------------------------------------------------------------
; Nomi di attributi per DAOQDATTRIB
; ritorna non zero se la query può aggiornare il database
CONST DAOQDCANUPDATE = 1
; ritorna la stringa di connessione associata alla QueryDef
CONST DAOQDCONNECT = 2
; ritorna la data di creazione della QueryDef
CONST DAOQDCREATDATE = 3
; ritorna l'ora di creazione della QueryDef
CONST DAOQDCREATTIME = 4
; ritorna la data di ultimo aggiornamento
CONST DAOQDLASTUPDATE = 5
; ritorna l'ora di ultimo aggiornamento
CONST DAOQDLASTUPDTIME = 6
; ritorna il nome della QueryDef
CONST DAOQDNAME = 7
; ritorna il timeout utilizzato da ODBC quando la query è eseguita
CONST DAOQDODBCTOUT = 8
; ritorna il numero di record influenzati dalla query
CONST DAOQDRECAFFECT = 9
; ritorna nonzero se la query ritorna record
CONST DAOQDRETURNREC = 10
; ritorna la stringa SQL che specifica la query definita
CONST DAOQDSQL = 11
; ritorna il tipo della query: di cancellazione, di aggiornamento, di aggiunta, di creazione tabella, ecc.
CONST DAOQDTYPE = 12
; ritorna non-zero se la query è aperta
CONST DAOQDISOPEN = 13
; imposta la stringa di connessione per una query SQL pass-through su una sorgente ODBC aperta
CONST DAOQDSETCONN = 14
; imposta il nome della query salvata, sostituendo il nome assegnato alla creazione
CONST DAOQDSETNAME = 15
; imposta il valore di timeout usato da ODBC quando la query sarà eseguita
CONST DAOQDSETODBCTO = 16
; specifica se la query ritorna record; è valido solo per query SQL pass-through
CONST DAOQDSETRETREC = 17
; imposta la stringa SQL che specifica la query definita
CONST DAOQDSETSQL = 18
; -----------------------------------------------------------------------------------------
; Costanti per DAOQDPARAMINFO
; nome del parametro
CONST DAOQDPNAME = 1
; tipo del parametro
CONST DAOQDPTYPE = 2
; valore del parametro
CONST DAOQDPVALUE = 3
; -----------------------------------------------------------------------------------------
; Possibili modalità di apertura per DAORSOPEN
; tipo tabella con scrolling bidirezionale
CONST DAOCOpenTable = 1
; tipo dynaset con scrolling bidirezionale. Questo è il default
CONST DAOCOpenDynaset = 2
; tipo snapshot con scrolling bidirezionale
CONST DAOCOpenSnapshot = 4
; tipo scorrimento in avanti (non supportato)
; CONST DAOCOpenForwardOnly = 8
; tipo dinamico
CONST DAOCOpenDynamic = 16
; -----------------------------------------------------------------------------------------
; Possibili tipi per DAORSGETFIELDINFO
; vale 1 (TRUE) o 0 (FALSO)
CONST DAOCBoolean = 1
; tipo byte (0-255)
CONST DAOCByte = 2
; tipo intero (16 bit)
CONST DAOCInteger = 3
; tipo intero lungo (32 bit)
CONST DAOCLong = 4
; tipo valuta
CONST DAOCCurrency = 5
; tipo virgola mobile, precisione singola
CONST DAOCSingle = 6
; tipo virgola mobile, precisione doppia
CONST DAOCDouble = 7
; tipo data
CONST DAOCDate = 8
; tipo binario
CONST DAOCBinary = 9
; tipo testo
CONST DAOCText = 10
; tipo binario lungo
CONST DAOCLongBinary = 11
; tipo memo
CONST DAOCMemo = 12
; tipo GUID
CONST DAOCGUID = 15
; tipo intero grande (64 bit)
CONST DAOCBigInt = 16
; tipo binario variabile
CONST DAOCVarBinary = 17
; tipo carattere
CONST DAOCChar = 18
; tipo numerico generico
CONST DAOCNumeric = 19
; tipo numerico decimale
CONST DAOCDecimal = 20
; tipo virgola mobile
CONST DAOCFloat = 21
; tipo ora
CONST DAOCTime = 22
; tipo data/ora
CONST DAOCTimeStamp = 23
; tipo Null
CONST DAOCNull = 25
; -----------------------------------------------------------------------------------------
; Possibili attributi per DAORSGETFIELDINFO
; il campo è a lunghezza fissa (default per i campi di tipo numerico)
CONST DAOCFixedField = 1
; il campo è a lunghezza variabile (solo campi testo)
CONST DAOCVariableField = 2
; il valore del campo per i nuovi record è automaticamente incrementato ad un
; nuovo valore long che non può essere modificato; supportato solo nella tabelle
; di database Microsoft® Jet
CONST DAOCAutoIncrField = 16
; il valore del campo può essere modificato
CONST DAOCUpdatableField = 32
; il campo è ordinato in modo decrescente (Z-A o 100-0); si applica solo ai campi indice
CONST DAOCDescending = 1
; -----------------------------------------------------------------------------------------
FUNCTION DAORSEOF(rs)
; Ritorna non-zero se il recordset è stato posizionato oltre l'ultimo record
RETURN DAORSATTRIB(rs, _DAORSATTISEOF)
FUNCTION DAORSBOF(rs)
; Ritorna non-zero se il recordset è stato posizionato prima del primo record
RETURN DAORSATTRIB(rs, _DAORSATTISBOF)