Newsgroup: it.comp.lang.delphi
Titolo: Problema assurdo con database

Salve a tutti, ho riscontrato di recente un problema che mi sembra assurdo
su un programma fatto in D3 che gira su WinNT.
Il programma in questione ha una maschera con due griglie, ognuna associata
a una tabella (sono due tabelle master/dettaglio). Le tabelle sono entrambe
Paradox e NON utilizzano oggetti database ne' transazioni, ogn update fatto
con la griglia aggiorna subito le tabelle. Il problema e' il seguente:
lancio il programma, vado in modifica sulla dettaglio (o sulla master),
salvo e va tutto bene. Dopo qualche ora di lavoro mi succede una cosa
assurda: modifico (ad esempio) la dettaglio, salvo, modifico la master,
salvo, cancello alcune righe dalla dettaglio, ne cancello alcune dalla
master, ecc. ecc. (insomma, continuo a lavorare normalmente). Poi chiudo il
programma perche' ho finito di lavorare, lo riapro e mi ritrovo la master e
la dettaglio come erano PRIMA che iniziassi a modificare i dati: le righe
cancellate sono di nuovo li', e anche i record master e dettaglio che avevo
modificato e cancellato sono tornati com'erano ancora PRIMA della modifica.
Non si tratta quindi di un semplice "undelete", ma di un vero e proprio
rollback di "n" operazioni! Ripeto, le tabelle NON hanno Cached Update, non
sono legate a componenti TDatabase ne' a TSession, e il "rollback" non
avviene per tutte le operazioni effettuate, ma solo per alcune, senza alcun
motivo apparente e non in modo sistematico.
Non mi e' mai successa una cosa simile, qualcuno di voi sa aiutarmi?
Grazie
Diego
--
And the beast shall come forth surrounded by a roiling
cloud of vengeance. The house of the unbelievers shall
be razed and they shall be scorched to the earth. Their
tags shall blink until the end of days.
From The Book of Mozilla, 12:10

 motivo apparente e non in modo sistematico.
Come DataBaseName delle TTable che cosa ci hai messo?


Il DatabaseName punta direttamente ad un alias Paradox, che a sua volta fa
riferimento alla directory contenente le tabelle.
Ciao (e intanto grazie per l'interessamento)
Daigo

Sicuro di fare TUTTI i post sulle tabelle, e TUTTI i close prima di uscire
dal programma?
Ciao, Sandro


Si', sono sicurissimo...
Daigo
--
------------------------------------------------------------
E-Mail:    
dai...@usa.net
 
dragons...@yahoo.com
 
da...@telemail.it
ICQ: 2031448
------------------------------------------------------------

Hai provato a vedere se la stessa cosa succede:
1) in locale (sposti la cartella dati sul tuo pc e modifichi l'alias)
2) in rete w95/08 (come sopra e entri da un altro pc della rete sul tuo PC)
Se non lo hai fatto, verifica.
Inoltre, accertati che sia installato un solo protocollo di rete (tcp/ip).
Ho lavorato su applicazioni che usavano Il btrieve della Pervasive: se avevo
+ protocolli installati, avevo situazioni assurde: ci mancavano solo le
ragazze che ballano il can-can sul monitor del pc.
Saluti
AS


Il PC funziona SOLO in locale... Non e' in rete e non ci sono protocolli
installati. =(
Altri suggerimenti? Io non so proprio che fare...


> Altri suggerimenti? Io non so proprio che fare...
Verifica che quando fai l'append del detail le operazioni sono quelle che
seguono:
1) TableDetail.append
2) TableDetail.edit
3)
TableDetail.RiferimentoCampoChiaveMaster:=TableMaster.RiferimentoCampoChiave
Master
4) TableDetail.post
5) .. solo a questo punto consenti all'utente di editare il detail
se non funziona cosi' o c'e' qualche bug nascosto o il BDE e' corrotto
Ciao, Sandro