Newsgroup: it.comp.appl.access
Titolo: apertura maschera da sottomaschera

Ho un problema apparentemente semplice ma che non riesco a risolvere...
Ho una maschera principale chiamata "sito" con all'intreno una sottomaschera
"Sito_su" relazionate tra loro: uno a molti.
nella maschera "Sito_su" ho una casella di testo "unita" e un pulsante con
il seguente codice su evento click:
DoCmd.openform "UNITA", acNormal, "",
"[CODICE_UNITA]=[Forms]![Sito_su]![unita]", , acNormal
con questo codice vorrei aprire una terza maschera chiamata "UNITA" al
record corrispondente alla casella di testo di  Sito_su.
se apro la maschera Sito_su da sola il codice funziona......ma  se apro la
maschera sito la sottomaschera Sito_su non fa più il suo dovere...
evidentemente il problema deriva che Sito_su possiede più record....
come devo fare? è qualè il codice corretto?
grazie per l'aiuto
saluti a tutti


Alcune volte mi chiedo quale sia la difficolta' di usare l'help:
--
Il metodo OpenForm esegue l'azione ApriMaschera in Visual Basic.
espressione.OpenForm(NomeMaschera, Visualizzazione, NomeFiltro, 
*CondizioneWHERE*, ModalitàDati, ModalitàFinestra, ArgomentiApertura)
espressione      Obbligatorio. Espressione che restituisce uno degli 
oggetti indicati nell'elenco Si applica a.
NomeMaschera     Elemento Variant obbligatorio. Espressione stringa che 
rappresenta il nome valido di una maschera nel database corrente. Se si 
esegue codice di Visual Basic che include il metodo OpenForm in un 
database di libreria, Microsoft Access cerca la maschera con questo nome 
prima nel database di libreria e quindi nel database corrente.
Visualizzazione     Costante AcFormView facoltativa.
AcFormView può essere rappresentata da una delle costanti AcFormView 
riportate di seguito.
acDesign
acFormDS
acFormPivotChart
acFormPivotTable
acNormal impostazione predefinita Apre la maschera in visualizzazione 
Maschera.
acPreview
Se si omette questo argomento, viene utilizzata la costante predefinita 
(acNormal).
NomeFiltro     Elemento Variant facoltativo. Espressione stringa che 
rappresenta il nome valido di una query nel database corrente.
CondizioneWHERE     Elemento Variant facoltativo. Espressione stinga che 
rappresenta una proposizione WHERE SQL valida senza la parola WHERE.
ModalitàDati   Costante AcFormOpenDataMode facoltativa. La modalità di 
immissione dati per la maschera. Tale argomento si applica solo alle 
maschere aperte in visualizzazione Maschera o visualizzazione Foglio dati.
AcFormOpenDataMode può essere rappresentata da una delle costanti 
AcFormOpenDataMode riportate di seguito.
acFormAdd L'utente può aggiungere nuovi record ma non modificare record 
esistenti.
acFormEdit L'utente può modificare i record esistenti e aggiungere nuovi 
record.
acFormPropertySettings impostazione predefinita
acFormReadOnly L'utente può esclusivamente visualizzare i record.
Se si omette questo argomento (viene utilizzata la costante predefinita 
acFormPropertySettings), Microsoft Access apre la maschera nella 
modalità dati impostata dalle proprietà AllowsEdits, AllowsDeletions, 
AllowsAdditions e DataEntry.
ModalitàFinestra   Costante AcWindowMode facoltativa. La modalità 
finestra in cui viene aperta la maschera.
AcWindowMode può essere rappresentata da una delle costanti AcWindowMode 
riportate di seguito.
acDialog Le proprietà Modal e PopUp sono impostate su True.
acHidden La maschera è nascosta.
acIcon La maschera viene aperta ridotta a icona sulla barra delle 
applicazioni di Windows.
acWindowNormal impostazione predefinita La modalità finestra per la 
maschera corrisponde alla modalità impostata dalle relative proprietà.
Se si omette questo argomento, viene utilizzata la costante predefinita
(acWindowNormal).
ArgomentiApertura     Elemento Variant facoltativo. Espressione stringa. 
Questa espressione viene utilizzata per impostare la proprietà OpenArgs 
della maschera. È quindi possibile utilizzare questa impostazione dal 
codice in un modulo di maschera, ad esempio la routine evento Open. È 
possibile fare riferimento alla proprietà OpenArgs anche nelle macro e 
nelle espressioni.
Si supponga, ad esempio, che la maschera che si apre sia un elenco a 
modulo continuo di clienti. Se si desidera spostare lo stato attivo sul 
record di un determinato cliente all'apertura della maschera, è 
possibile specificare il nome del cliente con l'argomento 
argomentiapertura    e quindi utilizzare il metodo FindRecord per 
spostare lo stato attivo sul record del cliente del quale è stato 
specificato il nome.
Questo argomento è disponibile solo in Visual Basic.
DoCmd.OpenForm "Employees", , ,"LastName = 'King'"
--
-- 
ac
y-1=x