Sei stato chiaro. La richiesta di informazioni aggiuntive era necessaria per suggerire eventuali soluzioni.
Purtroppo, rimango dell'idea che ho già espresso nel messaggio precedente...![]()
Credo che la cosa migliore sia quella di calcolare il valore all'interno di Delphi. Usando BDE e Paradox, potresti utilizzare direttamente la TTable o la TQuery che usi per visualizzare i dati (in una griglia?), scandendola al momento dell'apertura (o quando vengono modificati i dati) per calcolare il valore della media.
Per navigare all'interno di Query e Table (sono entrambi dei DataSet) puoi usare i metodi First, Last, Eof, Bof, Next e così via.
L'effetto collaterale che otterresti sarebbe quello di vedere la griglia scorrere mentre il tuo codice esplora i dati per calcolare la media, poichè la griglia è associata - tramite il TDataSource - al DataSet, query o tabella che sia.
Per evitare questo effetto, che ha anche lo svantaggio di rallentare le operazioni, potresti richiamare il metodo DisableControls della query o tabella per inibire l'aggiornamento dei Data Control associati, effettuare la scansione dei record dal primo all'ultimo estraendo i valori del campo calcolato e facendo la media, richiamando alla fine del processo il metodo EnableControl per ripristinare l'aggiornamento dei controlli visuali associati alla tabella dati.
Spero ti bastino queste indicazioni teoriche, perchè non ho purtroppo il tempo di produrre esempi codificati, ma sulla Guida trovi altre informazioni sulle classi, sui metodi e le proprietà citati.
Ciao!![]()