Newsgroup: it.comp.appl.access
Titolo: Requery

Ciao a tutti
Ho una maschera OrdiniPiaggio  con sottomaschera
SottomascheraOrdiniPiaggio,
nella sottomaschera tramite casella combinata trovo il codice che cerco e
sulla riga
mi appare la descrizione e la quantità. OK
Ora ho inserito sull'evento Non in Elenco della casella combinata  il
seguente codice:
Private Sub IDProdotto_NotInList(NewData As String, Response As Integer)
    Dim IntNuovo As Integer, strTitolo As String
   Dim IntFinestraMsg As Integer, strMsg As String
        strTitolo = "                       codice non in elenco"
        strMsg = "ATTENZIONE il Codice   " & NewData & "   è inesistente
vuoi codificarlo ? "
        IntFinestraMsg = vbYesNo + vbQuestion
        IntNuovo = MsgBox(strMsg, IntFinestraMsg, strTitolo)
        If IntNuovo = vbYes Then
                 Response = acDataErrContinue
                   DoCmd.OpenForm "CodificaArticoliPiaggio", , , , acFormAdd
                    Forms![CODIFICAARTICOLIPIAGGIO]![Codice Articolo] =
NewData
                        Forms![CODIFICAARTICOLIPIAGGIO]![Codice
Articolo].SetFocus
       Else
           strTitolo = "                      Informazione   "
            strMsg = "   digita un codice esistente nella casella.      "
                IntFinestraMsg = vbOKOnly + vbExclamation
                    IntNuovo = MsgBox(strMsg, IntFinestraMsg, strTitolo)
                  Response = acDataErrContinue
             Response = acDataErrAdded
             Me!IDProdotto.Undo
            Me!IDProdotto.requery
   End If
 -----
....che mi permette di codificare l'articolo non in elenco,
Il problema è che alla chiusura della maschera CodificaArticoliPiaggio il
focus
ritorna alla sottomaschera ordini piaggio , ma il codice appena inserito non
riesco a visualizzarlo,
o meglio, non mi appare la descrizione, ho provato a fare la requery della
casella riepilogo in tutti
gli eventi possibili , niente non mi funziona .
L'unico sistema per far visualizzare la descrizione è andare in
visualizzazione struttura, poi di nuovo in
visualizzazione maschera e allora vedo la riga per intero come codificata.
Non riesco a capire , sono due gioni che ci provo ma niente ,
speriamo che sia un'anima buona in giro.
Ciao Giuseppe

 casella riepilogo in tutti
Come la fai questa?
La fai così
forms("ordinipiaggio").sottomascheraordinipiaggio.form.combo.requery ?
Antonio

 ha scritto nel messaggio
news:XQap9.11817$RO.2...@twister1.libero.it...

Ciao Antonio
L'ho fatta in tanti modi , ora ho provato così come dici tu
forms("OrdiniPiaggio").SottomascheraOrdiniPiaggio.form.IDProdotto.requery
sull'evento Chiusura della maschera CodificaArticoliPiaggio non funziona e
mi
da quest'errore :
Errore di runtime 2118
E' necessario salvare il campo corrente prima di eseguire l'azione riesegui
query
(ma il record a quanto mi risulta viene salvato regolarmente anche perchè
nella casella combinata lo vedo)
Ho provato a mettere l'istruzione direttamente sulla maschera  per l'evento
su Attivato,
su Attivazione, dopo Aggiornamento,
Se io vado in visualizzazione struttura ,poi ritorno in visualizzazione
maschera ,
il record mi appare nella sua interezza.
Cosa avviene durante questo passaggio tra le due visualizzazione che non
riesco a
capire.
Ciao Giuseppe

 ha scritto nel messaggio
news:Zx%o9.31385$cS4.1...@news2.tin.it...

Prova così:
Private Sub IDProdotto_NotInList(NewData As String, Response As Integer)
    Dim IntNuovo As Integer, strTitolo As String
   Dim IntFinestraMsg As Integer, strMsg As String
        strTitolo = "                       codice non in elenco"
        strMsg = "ATTENZIONE il Codice   " & NewData & "   è inesistente
vuoi codificarlo ? "
        IntFinestraMsg = vbYesNo + vbQuestion
        IntNuovo = MsgBox(strMsg, IntFinestraMsg, strTitolo)
        If IntNuovo = vbYes Then
                   DoCmd.OpenForm "CodificaArticoliPiaggio", , , ,
acFormAdd, acDialog, NewData
                    Response = acDataErrAdded
                    Me!IDProdotto = NewData
                    Me!IDProdotto.Requery
       Else
           strTitolo = "                      Informazione   "
            strMsg = "   digita un codice esistente nella casella.      "
                IntFinestraMsg = vbOKOnly + vbExclamation
                    IntNuovo = MsgBox(strMsg, IntFinestraMsg, strTitolo)
                  Response = acDataErrContinue
             Response = acDataErrAdded
             Me!IDProdotto.Undo
            Me!IDProdotto.Requery
   End If
End Sub
E a fronte dell'evento "Su caricamento" della maschera
CodificaArticoliPiaggio genera questa riga di codice VBA:
Private Sub Form_Load()
If Not IsNull(Me.OpenArgs) Then
    Me![Codice Articolo] = Me.OpenArgs
End If
End Sub
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 nella casella combinata lo vedo)
Hai fatto Response = acDataErrContinue nell'evento non in elenco?
Antonio

         strMsg = "ATTENZIONE il Codice   " & NewData & "   č inesistente

 Ok  funziona !!!!!!!!!
anche se il problema era tutto nel controllo descrizione
con tipo dati non corrispondente .
Grazie di nuovo
Ciao Giuseppe