Newsgroup: it.comp.appl.access
Titolo: OnCurrent. strano comportamento

salve,
Acc2002,
questo problema mi sta facendo impazzire!
Ho una form con due subforms. Il primo subform contiene records dipendenti
dal form mentre i records sul secondo dipendono sia dal form che dal primo
subform.
Link Child fields Secondo subform: Field1; field2
Link Parent Fields Secondo subform: Field1 sul form; [PrimoSubform].Field2
Ovviamente nell'evento Current del primo subform richiamo il Requery del
secondo.
Il tutto funziona a meraviglia, ma se navigando sui records del form
principale, vado indietro di 2 o piu' records, su entrambi i subform si
reitera l'evento current all'infinito!!!!!
Da due giorni sto facendo ogni prova possibile per capire cosa crea il
problema!
Gli eventi current di entrambi i subforms contengono una serie di istruzioni
tramite le quali setto la proprieta' Visible di controlli ognuno proprio del
subform, in dipendenza di valori di altri controlli sempre contenuti nello
stesso subform. Cioe' ad esempio dal secondo subform non setto proprieta'
Visible di controlli del primo e viceversa e non valuto o setto valori di
controlli non contenuti nel subform da dove li richiamo nel codice....
l'unica istruzione requery e' quella menzionata sopra. non ho altri requery,
o refresh o repaint ne' sul codice del form ne' dei due subforms!
Non ho procedure su altri eventi richiamati automaticamente su nessuno dei
tre forms (activate, got focus, open, load, enter, exit o dir si voglia!)
La reiterazione all'infinito si instaura solo ed esclusivamente
nell'evenienza che vado indietro contemporaneamente di almeno due records!
(nel form principale ho un list box che elenca tutti i records del form e
cliccando sullo stesso posso saltare tra ogni record) non importa tra quali
records (cioe' la loro posizione nel recordset), e non importa quali valori
o quali proprieta' i controlli dei subforms assumano a seconda del record
corrente.
Non so se abbia attinenza, ma entrambi i subforms prendono i records da due
SQL statements che richiamano diverse tabelle mentre il form principale e'
basato su un'unica tabella.
gli statement SQL dei due subforms hanno una tabella in comune.....
Ho provato ad eliminare questa tabella da uno dei due subforms e poi
dall'altro, senza risultati.
Ho provato ad eliminare uno alla volta i due collegamenti Parent/Child
Fields, ancora senza risultati!
Ho provato a richiamare il requery del secondo subform nel current del primo
in diversi punti della procedura (prima all'inizio e poi alla fine). Nulla.
Se tolgo il requery, allora elimino il problema. Il fatto e' che non posso
toglierlo!
La cosa davvero strana e' che, stoppando il codice in runtime in diversi
punti della procedura Current del primoSubform, ho notato che fino a che la
procedura fissa solo delle proprieta' Visible di certi controlli senza che
vengano richiamate condizioni (es istruzioni If Then, ecc.) o senza che
vengano calcolati o anche semplicemente valutati i valori di controlli o
variabili, il problema non si presenta! Appena il codice passa per una
istruzione o esegue dei calcoli o valuta dei valori, il problema appare!
Spero di essermi spiegato....
Il mio problema si e' gia' presentato? qualcuno ne hai mai sentito parlare??
come posso ovviare?
Grazie in anticipo!
Carlo

 reitera l'evento current all'infinito!!!!!
cut
Non vorrei dire, ma ti sconsiglio di scrivere romanzi perche' non c'e' mai
il tempo di leggere tutto.
Ad ogni modo un requery puo' scatenare l'evento current quindi se metti un
requery dentro l'evento current...
Sib