Newsgroup: it.comp.appl.access
Titolo: Memorizzare da che maschera si viene...

Oi!
Dovrei, attraverso un bottone in una maschera di ricerca , tornare
alla maschera che la ha aperta. Tuttavia questa non è una sola, ma la
maschera di ricerca può essere aperta da due maschere diverse.
Qualcuno mi può dire, per piacere,  come posso fare per far ricordare
da quale di queste due si proviene, e tornare a quella quando si preme
il bottone 'esci' sulla mask di ricerca?
Grazie mille e...
Axè!

 Axè!
dalle maschere che lanciano l'apertura passargli il nome nella proprietà
openargs
esempio:
maschera1
DoCmd.OpenForm "AA", , , , , , 
Me.Form.name
poi potrai utilizzare la proprietà openargs per fare quello che vuoi
ciao
-- 
questo articolo e` stato inviato via web dal servizio gratuito 
http://www.newsland.it/news
 segnala gli abusi ad 
ab...@newsland.it

 poi potrai utilizzare la proprietà openargs per fare quello che vuoi
Ricordiamoci che se alla fine si fa così
docmd.close
forms(openargs).......
non funziona perchè l'altra masschera è ormai chiusa.
In questo caso bisogna salvare openargs in una var locale
xxx = openargs
docmd.close
forms(xxx).......
Antonio

 Antonio
per riaprire la maschera precedente da un bottone come chiedeva il post
iniziale basta fare docmd.openform passandogli l'openargs come nome di
maschera prima di chiudere la maschera corrente.
questa è la mia idea poi ovviamente tutto è migliorabile.



Ciao Antonio, ho proprio questo problema me lo spieghi meglio cosa volevi
dire?
In definitiva, in una sottomaschera non ho il codice che mi serve,
notinlist, apro la maschera articoli e con openargs faccio delle
regolazioni. Memorizzo il record e ritorno di filato nella mia
sottomaschera. Se è avvenuto tutto questo come gli dico l'argument?
Grazie
MAssimiliano
--------------------------------
Inviato via 
http://usenet.libero.it

 wrote in 
news:lbltev0jru7s1uab5...@4ax.com
:

io ho creato una funzione apposta, che legge e scrive una casella in una 
riga dedicata nella mia tabella d'appoggio.
quando apro una maschera, aggiungo il nome di quella precedetnte nel 
campo del record, quando chiudo la maschera, ripesco il nome da quel 
campo.
contenuto del campo:
testo(255)
frm_form1,frm_form2,frm_form4
questa è la sequenza delle maschere che ho aperto.
per fare a ritroso il percorso, parsing del campo et voilà!
forse è un pò macchinoso, se qualcuno ha trovato soluzioni più 
efficienti...
:-)
-- 
+-------
| Paolo opg
|
| janickg ( at ) hotmail ( dot ) com
+-------
** Articolo inviato tramite i servizi gratuiti di 
www.x-privat.org
 **


in realtà io ho affidato la variabile alla proprietà Tag che viene
tranquillamente letta.
Il problema è che chiudendo la maschera Articoli devo spingere il requery
della sottomaschera e non vorrei controllare se è aperta la maschera
precedente.
ciao MAssimiliano


 ha scritto nel messaggio
news:lbltev0jru7s1uab5...@4ax.com...

A fronte dell'evento "Su apertura" della maschera di ricerca genera il
seguente codice VBA:
Dim NomeMaschera As String
NomeMaschera = 
Screen.ActiveForm.Name
Così facendo in NomeMaschera memorizzerai il nome della maschera che ha
chiamato la maschera di ricerca e potrai usare tale valore per riaprire tale
maschera al momento che chiudi la maschera di ricerca.
Stai però attento che, se la maschera di ricerca invece che da un'altra
maschera la apri direttamente dalla finestra del database, Access ti
segnalerà l'errore 2475.
-- 
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 
usi la prop tag della maschera?
in questo caso, per ogni maschera che apri, imposti tag con il nome della 
maschera precedente.
is this correct?
non ho capito bene la situazione del requery.
facendo così:
docmd.openform "nomemaschera"
forms[nomemaschera].form.sottomaschera.requery
dovresti ottenere il requery in ogni caso.
(la seconda riga l'ho scritta a memoria, quindi non sono sicuro della 
sintassi per il riferimento alla sottomaschera)
vero è che hai un doppio requery in caso la maschera fosse chiusa.


 vero è che hai un doppio requery in caso la maschera fosse chiusa.
Sto sviluppando la soluzione che ha suggerito qualche tempo fa Roberto
isLoaded.
Grazie cmq


 ha scritto nel messaggio
news:62Z94Z199Z30Y1...@usenet.libero.it...

Volevo dire che openargs si comporta diversamente dalle variabili locali di
una maschera, piuttosto è assimilabile ad un controllo.
Se tu fai la docmd.close nel codice di una form, se poi tenti di riferire a
valori nei controlli ti da errore, mentre se ti riferisci alle variabili,
quelle ancora restituiscono valori.
L'openargs dopo la close non restituisce più valori, pertanto dovrai
salvarti il suo valore in una var locale se vuoi usarlo dopo la close.
Antonio


Interessante, cmq ho risolto checkando se fosse caricata l'altra maschera
ciao MAssimiliano
