Newsgroup: it.comp.appl.access
Titolo: Aggiornare (sincronizzare) maschera principale dopo inserimento da  quella pop-up

'nGiorno a tutti!
Ho più maschere(lato uno) "simili" da cui richiamo una STESSA
"sottomaschera pop-up" (lato molti). Il codice se serve per capire è:
Private Sub PrezzoAccettato_DblClick(Cancel As Integer)
On Error GoTo Err_PrezzoAccettato_DblClick
Me.Refresh
    Dim stDocName As String
    Dim stLinkCriteria As String
    stDocName = "M_RateAccettazione"
    stLinkCriteria = "[Id_Lavori_Rata]=" & Me![Id_Lavori]
    DoCmd.OpenForm stDocName, , , stLinkCriteria
Exit_PrezzoAccettato_DblClick:
    Exit Sub
Err_PrezzoAccettato_DblClick:
    MsgBox Err.Description
    Resume Exit_PrezzoAccettato_DblClick
End Sub
Inserisco i dati nella sottomaschera ma poi per avere i dati
aggiornati nella maschera(lato uno) mi "tocca" pigiare F9.
Comando di codice suggerito per aggiornare al volo?
Su che evento?
(possibilmente un codice un po' generale o che possa decidere se una
form è aperta o meno visto che più maschere aprono la stesa
sottomaschera...)


MMmmmm...
Mi sa che mi tocca fare tante sottomaschere pop up diverse altrimenti
come faccio a mettergli al chiave esterna??
Io di solito gli metto il valore predefinito pari alla chiave della
mschera(lato uno)
F.

 - Mostra testo tra virgolette -
Mi resta il problema dela sincronizzazione
metto un
forms![NomeForm].refresh
su dopo aggiornaemnto nel campo della "sottomaschera" pop up?
F.

     DoCmd.OpenForm stDocName, , , stLinkCriteria
DoCmd.OpenForm stDocName, , , stLinkCriteria,,acDialog,"parametri 
apertura(openargs)"
Refresh
[...]
se la fai cosi' (cfr Help.tra l'altro non mi sembra una pop-up) c'e' 
buona possibilita' che risolvi i tuoi problemi.
Se non hai risolto. Prima guardati cosa dice l'Help, ci sono esempi, se 
hai ulteriori problemi siamo qui.
-- 
ac
y-1=x

On 28 Dic 2007, 11:29, Alessandro Cara

Tornato dalle ferie!!!!
Provato funziona è già sono contento e molto!
Grazie grazie!!
Poi però mi scappa fuori la vocina da ingegnere che vuole capire anche
per non disturbare in futuro su cose simili:
1) perchè il refresh lì funziona??? pensavo (erroneamente direi) che
tutto il codice venisse eseguito al momento del doppio click e quindi
anche il refresh e invece mi pare di veder che lo fa dopo che io ho
inserito i dati nella popup-sottomaschera (e non prima)??
2) credo-spero di aver capito OpenArgs. Ma poi nella popup-
sottomaschera per legare la chiave esterna? metter su tutti i
campi_dopoaggiornamento del record l'istruzione
me.id_esterna=OpenaArgs  ??
Lo usate spesso Openargs per settare la chiave esterna di una popup-
sottomaschera oppure di solito si utilizza anche il valore predefinito
Forms!mascheraPrincipale.[Id]? (scrivendo mi viene il sospetto che
forse potrei aver problemi se per sbaglio viene chiusa la maschera
principale...)
Sperando si essere stato vagamente chiaro... :-)
F.

 - Mostra testo tra virgolette -
In risposta a me stesso a 1)  appena scoperto che acDialog blocca
esecuzione codice fino a chiusura maschera popup...

 esecuzione codice fino a chiusura maschera popup...
Non solo quello. Non ti consente di uscire dal form aperto in acDialog 
fino a quando non lo chiudi, ergo non ti sara' possibile *chiudere* il 
form principale. Su Openargs puoi metterci tutto quello che ti pare e 
farne l'uso che ritieni piu' opportuno.
-- 
ac
y-1=x

 Poi però mi scappa fuori la vocina da ingegnere che vuole capire anche
se lo dicevi prima, il fatto dell'ingegnere, ti avrei dato un 
suggerimento errato. ;<)
-- 
ac
y-1=x