Newsgroup: it.comp.lang.delphi
Titolo: I misteri di EDBEngineError

Richiesta di aiuto:
Per consentire la modifica di un campo DATA in un database paradox con tutti
i campi indicizzati utilizzo un TDateTimePiker. All'evento OnCloseUp ho
collegato il seguente codice:
procedure TSchedaForm.DateTimePicker1CloseUp(Sender: TObject);
begin
  DataModule1.LogsTbl.Edit;
  DataModule1.LogsTblDATA.AsDateTime := DateTimePicker1.Date;
 
DataModule1.LogsTbl.Post
;
end;
Orbene, quando _aggiungo_ un record (quindi usando un codice simile a
questo:
procedure TSchedaForm.SetNew;
begin
  DataModule1.LogsTbl.Append;
  DataModule1.LogsTblDATA.AsDateTime := TDate(Now);
  ... ecc, ecc
end;
nessun problema, ma quando invece modifico un record esistente con il codice
indicato sopra ricevo il seguente messaggio di errore: "Record/Key deleted".
Che significa? Forse qualche problema con i files di indice? Si rimedia?
grazie.
--
Sam Sahara - sam.s[at]
iol.it
http://samahara.cjb.net

Primo consiglio: buttare paradox e passare a IB
Secondo consiglio: buttare il datepicker
terzo consiglio: prendi gli rx da torry: hanno un componente carino:
DdbdateEdit che essendo dbaware ti risparmia un bel casino
Lo stesso componente esiste anche non dbaware (TDateEdit)
Saluti
AS
-- 
Posted from  [212.177.19.163] 
via Mailgate.ORG Server - 
http://www.Mailgate.ORG

Io avrei le mie riserve sugli RX
apparte il fatto che io tendo a includere nei miei programmi il minor numero
possibile di componenti sviluppati da terzi, in quanto temo che con il
progredire di delphi magari chi ha sviluppato quei componenti non avanzi di
paripasso...
poi gli rx.... mi sembra che stiano tutti in tre librerie... se includi uno
dei componentini su una tua form ti aumenta l'eseguibile in modo
straordinerio, in quanto ti tiri dentro anche tutto ciň che serve per far
funzionare gli altri componenti che non stai utilizzando!!!

L'errore dovrebbe essere "Record Deleted / Key modified"
Mi sa che le tue tabella è in relazione master detail con un' altra,
attento, credo che tua stia modificando un campo che interagisce con la
relazione tra le due....
fammi sapere se ho ragione che mi interessa...
Ciaoux

>Mi sa che le tue tabella č in relazione master detail con un' altra...
No. Si tratta di una tabella singola con un indice primario costituito da un
campo autoincrementante e un indice secondario per ognuno degli altri campi.
Tra l'altro la data modificata viene inserita nella tabella, solo che
l'eseguibile stand-alone (che cioč non gira sotto il debugger) si blocca
completamente, costringendo l'utente ad un sempre attuale ctrl-alt-canc.
Sui libri (Cantů, T&P) non ho trovato alcun aiuto: i file di indice di
paradox si aggiornano automaticamente e non necessitano di istruzioni
particolari, neanche a livello di API di BDE.
Non mi lasciate solo dinanzi al mistero...
--
Sam Sahara - sam.s[at]
iol.it
http://samsahara.cjb.net

paripasso...
Hai perfettamente ragione.
--
Andrea Laforgia - walkietalkie(at)
libero.it
http://www.geocities.com/AndreaLaforgia

 messaggio di errore: "Record/Key deleted".
Hai provato a vedere se la stessa eccezione e' sollevata anche se usi
una query?
(UPDATE Nometabella SET campoData = :NewData WHERE campoID = :CurrentID
/* o qualcosa di simile */)
Hai provato, inoltre, don il DbDesktop?
Saluti
Paolo Arosio

 {...}


 l'interprete bloccava l'esecuzione per cabale imperscutabili
be, volendo puoi eseguire passo passo anche bde.pas, ma quando chiami
una dll dubito che per questa ci sia in giro la versione debuggubile
Saluti
Paolo Arosio