Newsgroup: it.comp.appl.access
Titolo: Popup e inserimento dati

Ciao,
seguento l'aiuto di Max ho provato ad utilizzare il codice che mi ha
dato, modificato.
Al Form_frmAltriDatiAnagrafici
ho inserito il codice seguente:
Private Sub Form_Open(Cancel As Integer)
Dim P As DAO.Recordset
Set P = Me.RecordsetClone
P.FindFirst "[Codice cliente]=" & Forms!
[frmAnagraficaClienti_Principale]![Codice cliente]
If P.NoMatch Then
    DoCmd.GoToRecord acActiveDataObject, Me.Name, acNewRec
    Me.[Codice cliente] = Forms![frmAnagraficaClienti_Principale]!
[Codice cliente]
    Else
    Me.Bookmark = P.Bookmark
    End If
End Sub
Questo codice parte all'aperura della maschera di popup.
Il suo compito è quello di copiare il codice cliente della tabella1,
visibile in maschera1, all'interno poi della maschera2, scrivendo il
codice cliente anche nella tabella2, più altri dati inseriti a mano.
Ebbene, adesso vengono inseriti i record con i dati immessi a mano ma
il codice cliente, (ereditato dalla maschera1) non viene scritto nella
tabella2....
Ma perche?
Devo forse aggiungere un bottone che ordini di scrivere i dati in
tabella2?
Grazie cmq Max per il tuo aiuto per arrivare fino a qui.
Questo NG è proprio valido e spero di contribuire presto dando qualche
risposta
Fabio

 ha scritto nel messaggio 
news:1174403440....@p15g2000hsd.googlegroups.com...




Ma perche?


[risposta]
Il problema è nel pezzo di codice sopra esposto?
Se è così prova ad utilizzare i metodi del recordsetclone:
'---
Me.RecordsetClone.FindFirst "[Codice cliente]=" & 
Forms![frmAnagraficaClienti_Principale]![Codice cliente]
If Me.RecordsetClone.NoMatch Then
    Me.RecordsetClone.AddNew
    Me.RecordsetClone![Codice cliente] = 
Forms![frmAnagraficaClienti_Principale]!
[Codice cliente]
    Me.RecordsetClone.Update
    Me.Requery
Else
    Me.Bookmark = Me.RecordsetClone.Bookmark
End If
End Sub
'---
Ciao.
-- 
Sergio MAZZA 

 '---
Grazie! Funziona ma ho inserito nella maschera2, all'interno del campo
codice cliente il seguente codice (altrimenti con il codice di Mazza
non mi si popolava il campo codice cliente in tabella2):
=forms![frm_AnagraficaClienti_Principale]![Codice cliente]
, ma con un grosso problemino...
All'apertura della maschera se il [codice cliente] non esiste già
nella tabella2 allora in maschera popup mi compare il primo record
della tabella, ma in tabella 2 mi crea un nuovo record con il codice
cliente popolato con il codice cliente preso in maschera.
Poi se esco dalla maschera e rientro allora è tutto ok, trovo il campo
codice cliente nuovo con i campi vuoti e se li scrivo mi riempono il
record corretto.
Cosa dovrei fare? In pratica la prima volta che si apre la maschera2
se non trova già un codice cliente lo deve anche scrivere su nuovo
record in tabella2 prendendo quello che si trova nella maschera2 (che
a sua volta lo prende dalla maschera1 principale)
Qualcuno di voi potrebbe darmi un aiuto??
Ciao, Fabio

 ha scritto nel messaggio news:1174928069....@p77g2000hsh.googlegroups.com...
Grazie! Funziona ma ho inserito nella maschera2, all'interno del campo
codice cliente il seguente codice (altrimenti con il codice di Mazza
non mi si popolava il campo codice cliente in tabella2):
=forms![frm_AnagraficaClienti_Principale]![Codice cliente]
, ma con un grosso problemino...
All'apertura della maschera se il [codice cliente] non esiste già
nella tabella2 allora in maschera popup mi compare il primo record
della tabella, ma in tabella 2 mi crea un nuovo record con il codice
cliente popolato con il codice cliente preso in maschera.
Poi se esco dalla maschera e rientro allora è tutto ok, trovo il campo
codice cliente nuovo con i campi vuoti e se li scrivo mi riempono il
record corretto.
Cosa dovrei fare? In pratica la prima volta che si apre la maschera2
se non trova già un codice cliente lo deve anche scrivere su nuovo
record in tabella2 prendendo quello che si trova nella maschera2 (che
a sua volta lo prende dalla maschera1 principale)
Qualcuno di voi potrebbe darmi un aiuto??
Ciao, Fabio
[risposta]
Ne avevo poche di certezze; ora ne ho ancora di meno e più confuse.
In poche parole non ci ho capito un mio cognome...
Ciao.
-- 
Sergio MAZZA 

 Sergio MAZZA
Si, infatti immaginavo non si capisse un tuo cognome...
Scusami...Vorrei essere chiaro per trovare aiuto e invece...
Allora,
in Maschera1 click sul bottone
apre Maschera2 in popup.
(nel field codice cliente in maschera 2 ho "=forms!
[frmAnagraficaClienti_Principale]![Codice cliente]".)
All'apertura di maschera2 esegue il tuo codice:
"Private Sub Form_Open(Cancel As Integer)
Me.RecordsetClone.FindFirst "[Codice cliente]=" & Forms!
[frmAnagraficaClienti_Principale]![Codice cliente]
 If Me.RecordsetClone.NoMatch Then
     Me.RecordsetClone.AddNew
     Me.RecordsetClone![Codice cliente] = Forms!
[frmAnagraficaClienti_Principale]![Codice cliente]
     Me.RecordsetClone.Update
     Me.Requery
 Else
     Me.Bookmark = Me.RecordsetClone.Bookmark
 End If
 End Sub"
Cosa accade:
In maschera2 vedo il codice cliente ereditato da maschera1 ma negli
altri campi trovo i valori del primo record della tabella2 (a cui fa
riferimento maschera2).
Chiudo maschera2 e la riapro.
Solo ora è ok, vedo il campo codice cliente con gli altri campi vuoti.
Nella tabella2 infatti solo ora esiste un record nuovo che ha il
codice cliente popolato, e con gli altri campi da riempire.
Spero di essere stato + chiaro...
Ma perchè non mi crea un record con riempito il codice cliente nuovo
in tabella2, subito alla prima apertura?
Ciao Fabio