Forum > Databases

Ancora su 'Operation cannot be performed on an inactive dataset'.

<< < (2/2)

Stilgar:

--- Citazione da: JonnyB - Dicembre 03, 2019, 09:41:43 pm ---Sono d'accordo con te, rimane il fatto che creando un campo di tipo fklookup in una TZTable, a designtime, tutto sembra funzionare correttamente, mentre a runtime avviene l'errore in argomento.
Si aggira l'errore aprendo la TZTable a runtime.
In una precedente installazione di Lazarus, se non ricordo male, lo stesso errore lo ottenevo anche con i componenti ibx4lazarus.
Se qualcuno potesse approfondire quanto sopra, si renderebbe più performante la piattaforma.
Comunque grazie.

--- Termina citazione ---

Ciao
Ho sempre preferito aprire le TZTable a manella, nell'ordine che mi serviva.
Così avevo il controllo e non delegavo alla libreria l'apertura. Se apri prima le tabelle che usi per il lookup, non ci sono problemi, di solito.
(Poi chiusura a manella della destroy nell'ordine inverso)

Stilgar


antoniog:
ho avuto lo stesso problema e sono curioso di sapere se l'errore è dovuto a BUGS sugli aggiornamenti. Prova a retrocedere lazarus alla 1.6.2 e zeos alla 7.1.2 e ricompilare il progetto . Io ho risolto così!

JonnyB:
Ciao a tutti,
ho risolto il problema di ‘operation cannot be performed on an inactive dataset’, che si presenta in fase di esecuzione di un programma, che fa uso di tabelle contenenti campi di lookup o campi calcolati sulla base di altre tabelle.
La soluzione è la seguente:
Ho creato due datamodule: DM1 e DM2 impostando il medesimo ordine di creazione automatica in ‘opzioni progetto’ facendo seguire la form principale e a seguire le altre.
In DM1 metto tutte le tabelle che devono essere create per prima, in sostanza quelle di lookup da cui vengono prelevati i dati.
In DM2 metto le tabelle che contengono i campi di lookup o campi calcolati.
La soluzione sembra banale anche se in rete non ho trovato un’alternativa.
In questo modo riduco anche il codice per gestire la fase di apertura di ogni singola tabella.
Spero di essere stato d’aiuto, ne approfitto per augurarvi Buone Feste.

Stilgar:
Grazie, anche a te e ai tuoi cari.

Navigazione

[0] Indice dei post

[*] Pagina precedente

Vai alla versione completa