Newsgroup: it.comp.appl.access
Titolo: VaiARecord (non funziona)

Salve a tutto il NG.
Ho un problema che non riesco a risolvere.
Ho una maschera chiamata Ordini01 e una sottomaschera chiamata
DettaglioOrdiniComplessivo. Ora io da codice devo dire a DettaglioOrdini di
andare a nuovo record e così ho fatto:
DoCmd.GoToRecord , "Forms!Ordini01!DettaglioOrdiniComplessivo.Form", acNext
Questo comando è scritto in un modulo (se lo avessi messo dentro le
proprietà della sottomaschera avrebbe sicuramente funzionato).
Mi dice che la maschera DettaglioOrdiniComplessivo non è aperta......Avete
qualche idea??
Grazie ancora a tutti
Ultra


Prendine prima il fuoco con setfocus
sicuro di quel form alla fine?
ciao MAssimiliano
--------------------------------
Inviato via 
http://usenet.libero.it

 ha scritto nel messaggio
news:62Z94Z199Z30Y1...@usenet.libero.it...

Ciao MAssimiliano,
grazie per il tuo post, solo che già ci avevo pensato e visto che la
sottomaschera non la trovava apera ho fatto in modo di mettere un setfocus
su di una casella di testo di questa sottomaschera, ma nulla da fare....non
capisco.
Poi nel codice ho un DoCmd.GoToRecord , "", acNewRec ma non vuole
assolutamente andarci....come accidenti posso fare??? Quale è il comando per
mandare a nuovo o successivo un record da codice?? Non l'ho messo giusto???
Grazie ancora
Ultra


Focalizza prima la maschera
Poi la sottomaschera
Poi un controllo
E alla fine vai al record
L'adda fà p' forz!! Altrimenti vengo lì e tu lo mantieni e io gli do
cazzotti nella cache!!!



hihihihihiih :)
Ora provo.......Nulla da fare......
Provo a spiegarmi meglio ancora......
Ho creato una Public Function che mi serve ad accodare i dati che ho nella
Maschera Offerte a quella nella sottomaschera DettaglioOrdiniComplessivo.
Ora.....guardati il codice:
Public Function CopiaRecordRND78()
Dim db As Database
Dim rst As Recordset, rst1 As Recordset, rst2 As Recordset, rsta As
Recordset
Dim strSQL As String
Dim strSql2 As String
Dim strSqla As String
strSql2 = "SELECT * FROM Offerta WHERE IDOfferte = " &
Forms!SelezionaOfferta!IDOfferte & ""
strSQL = "SELECT * FROM DettaglioOfferta WHERE IDOfferte = " &
Forms!SelezionaOfferta!IDOfferte & " ORDER BY Riga"
    strSqla = "SELECT * FROM Collegamenti"
Set db = CurrentDb
    Set rst = db.OpenRecordset(strSQL, dbOpenDynaset)
Set rst2 = db.OpenRecordset(strSql2, dbOpenDynaset)
    Set rst1 = db.OpenRecordset("TabellaTemp", dbOpenDynaset)
Set rsta = db.OpenRecordset(strSqla, dbOpenDynaset)
      rst.MoveFirst
Do Until rst.EOF
    Forms!Ordini01.SetFocus
     Forms!Ordini01!DettaglioOrdiniComplessivo.Form.SetFocus
      Forms!Ordini01!DettaglioOrdiniComplessivo.Form!Operazione.SetFocus
       Forms!Ordini01!DettaglioOrdiniComplessivo.Form!Operazione =
rst!Operazione
        Forms!Ordini01!DettaglioOrdiniComplessivo.Form!Descrizione =
rst!Descrizione
         Forms!Ordini01!DettaglioOrdiniComplessivo.Form!IDOrdini =
Forms!Ordini01!IDOrdini
          Forms!Ordini01!DettaglioOrdiniComplessivo.Form!IDProdotto =
rst!IDProdotto
           Forms!Ordini01!DettaglioOrdiniComplessivo.Form!Quantità =
rst!Quantità
            Forms!Ordini01!DettaglioOrdiniComplessivo.Form!Sconto =
rst!Sconto
             Forms!Ordini01!DettaglioOrdiniComplessivo.Form!PrezzoVendita =
rst!PrezzoVendita
              Forms!Ordini01!DettaglioOrdiniComplessivo.Form!ColoreMerce =
rst!ColoreMerce
               Forms!Ordini01!DettaglioOrdiniComplessivo.Form!CausaleImporto
= rst!CausaleImporto
                Forms!Ordini01!DettaglioOrdiniComplessivo.Form!Lingua =
rst!Lingua
                 Forms!Ordini01!DettaglioOrdiniComplessivo.Form!Importo =
rst!Importo
                   DoCmd.GoToRecord , "", acLast
            rst.MoveNext
Loop
               rst2.Edit
                   rst2!Evaso.Value = -1
                       rst2.Update
        rsta.AddNew
                           rsta!IDOrdini = Forms!Ordini01!IDOrdini
                  rsta!DataOrdine = Forms!Ordini01!DataOrdine
                          rsta!IDOfferte = Forms!SelezionaOfferta!IDOfferte
                  rsta!DataOfferta = Forms!SelezionaOfferta!Testo12
    rsta.Update
DoCmd.RunMacro "ApriSelezionaOfferta", 1, ""
DoCmd.RunMacro "Chiudi.ChiudiPassaggioOfferte", 1, ""
rst.Close: rst1.Close: rst2.Close: rsta.Close
Set rst = Nothing
Set rst1 = Nothing
Set rst2 = Nothing
Set rsta = Nothing
Set db = Nothing
End Function
Ora per copiare i dati lo fa tranquillamente nella Sottomaschera
DettaglioOrdiniComplessivo. Solo che a fine codice non mi va la
sottomaschera a record nuovo e tutti i record vengono incollati nel medesimo
record finale...non sò se ho reso l'idea......
tu che ci capisci?
Grazie Ultra


Ma invece di ciclare non puoi fare una semplice query di accodamento e poi
di aggiornamento?
Take it easy
Ciao MAssimiliano



Ciao MAssimiliano.....in verità era come dici tu ma non mi applicava
funzionava il DMax (quello funziona solo nella maschera quando inserisci un
record). Doveva darmi in automatico un valore massimo e da quello aumentare
di 3 numeri (per intenderci un contatore). Serviva a conteggiare le righe di
dettaglio. E' una cosa abbastanza complessa da capire (visto che non sò che
accidenti ci farà) e facile da fare....il mio cliente è un po' strano.....
Comunque ora tra un tentativo e l'altro sono riuscito (o meglio SEI
riuscito) a farmelo funzionare....non voleva quel .Form alla fine.....
Ora fuziona tutto
Grazie ancora per la tua gentilezza e poi per la tua Pazienza!!
Ultra


                   DoCmd.GoToRecord , "", acLast
Solo per la cronaca, visto che ormai č comunque risolto
   DoCmd.GoToRecord , , , acNext
oppure piů semplicemente
   DoCmd.GoToRecord
Ciao
--
Alberto
No alle guerre