Newsgroup: it.comp.appl.access
Titolo: DAO su rete workaroud trigger after update. OnTimer?

Buon giorno ragazzi.
Spero che possiate aiutarmi.
Ho necessità di verificare costantemente se un determinato record è stato modificato da altri utenti connessi in rete.
Al verificarsi dell'update necessariamente devo eseguire una determinata procedura.
Ho pensato ad un modulo di classe dichiarata con nome ObjHandler pubblica a livello di form.
La form su timere ogni 150 ms invoca il metodo ObjHandler.Sincronizza.
Il metodo a sua volta invoca un Sincronzza di un altro Oggetto ObjData dichiarato a livello private in ObjHandler.
Il ObjData.Sincronizza verifica se i dati sono modificati ed invoca (se ci sono cambiamenti) un Raise evento che chiamo per esempio DataUpdate.
In ObjHandler avendo dichiarato ObjData con WithEvents gestisco l'evento DataUpdate.
E' necessario avere due oggetti poiché ObjHandler istanziato con scope global deve essere fruito anche da altre form mentre per poter gestire gli eventi di ObjData devono essere necessariamente istanziati a livello di modulo di classe.
Ci sono suggerimenti?
Grazie a tutti
Daniele

Non ti basta una Maschera Listener, aperta in Hidden mode, che su Timer effettua la verifica..? 
La forme di fatto è una Classe e puoi creare su questa un Evento personalizzato... ed ereditario da altra maschera allo stesso modo in cui lo faresti con una classe.
Come ti suggerisco risparmi una Classe che non serve.
 
@ALEX


Una piccola complicazione: ObjData viene invocato anche per fare update da altre form, per cui non potendo dichiararla pubblica devo incapsularla in un oggetto public.
Però l'idea di spostare la logica di ObjHandler all'interno di una hidden form, non è affatto male! Quindi dichiarando in una altra form Dim WithEvents HiddenForm ecc. ecc. potrei evitare l'uso di ObjHandler.
Resta sempre il fatto che cmq ci vuole un modulo di classe "intermediario" per la verifica di ObjData (che all'interno ha diverse proprietà e metodi -  a meno che sposto tutta la "logica" nella HiddenForm, ma non mi piace molto)
Che ne pensi?
Grazie

Hai a disposizione sia Funzioni Public richiamabili, quindi se istanzi l'oggetto Privato, puoi anche generare metodi Public.
Ricordo anche che esistono le Interfacce, sconosciute ai più nel VBA, ma che possono ribaltare alle forme chiamarti azioni...
Un limite delle Classi di Maschera è che non supportano la dichiarazione Friend.
 
A titolo di curiosità puoi vedere questi vecchi demo:
http://mirror.masterdrive.it/alessandrobaraldi/DettaglioFaq.asp%3FIdFAQ=299.html
 
http://mirror.masterdrive.it/alessandrobaraldi/DettaglioFaq.asp%3FIdFAQ=271.html
 
 
@ALEX


In pratica stavo inventando l'acqua calda!.
Ottimo! Approfondirò. Mi sembra molto interessante.
Grazie
Tra l'altro mi ha dato un suggerimento per altri "eventi" form da "ritarare" per un uso più vicino alle mie esigenze.
Grazie!
 


Non conosco la programmazione per classi e oggetti, ma so che una volta per fare queste cose si usavano i "semafori".
- chi fa Update scrive "Occupato" su un file o in una tabella e lancia la "determinata procedura"
- quando la procedura finisce scrive sul medesimo file "libero"
 
-- 
Greg