Newsgroup: it.comp.appl.access
Titolo: Collegare i campi di una Form via ADO

Ho una maschera vuota con tutte le textbox "non associato". La apro con
un'istruzione che crea un recordset e mi stampa i campi in msgbox, sulla
finestra debug ma assolutamente non rieso a mandare i valori nelle textbox,
ottengo errori che al meglio dicono che il campo deve avere il focus... ma
possibile che devo impostare il focus su ogni casella x riempirla ? non
esiste un metodo piů lineare ?
Grazie a tutti (siete tanti!) e buona giornata


che istruzione usi?
Saluti.
Emanuele.


E' naturale se fai riferimento esplicito alla proprietà VALUE.
Es:
Me.TxtBox1.Value=rs.Fields(0)  da errore di FOCUS
Es:
Me.TxtBox1=rs.Fields(0)
Non da nessun errore e funziona.
--
@Alex
*--------------------------------------------------------------------------*
Alessandro B.
Sito Comune      :   
http://www.sitocomune.com
Sito Personale   :   
http://digilander.iol.it/ik2zok/
*--------------------------------------------------------------------------*

 @Alex
Mi dà Errore 424: Necessario oggetto
Di seguito il codice
Grazie ancora
davide
Private Sub Comando9_Click()
  On Error GoTo BindRst_Trap
    Dim cnn1 As ADODB.Connection
    Dim rst1 As Recordset
    'Create connection
    Set cnn1 = New ADODB.Connection
    cnn1.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
    "Data Source=C:\Documenti\Shelter2002.mdb;"
    'create recordseet reference and set itrs propereties
    Set rst1 = New ADODB.Recordset
    rst1.CursorType = adOpenKeyset
    rst1.LockType = adLockOptimistic
    'Oper rs based on 1998 orders
    rst1.Open "SELECT b.Modello, b.IDFornitore, b.OrdinatoIl, " & _
    "b.Sollecito, b.DataArrivo " & _
    "FROM BatteriaEstesa as b; ", cnn1
    '& _
    ' "WHERE Year(b.sollecito) = 2001;", cnn1
    'Assign ADO recodset to Recordset property of
    ' Forms("frmSimpleUnboundForm")
    DoCmd.OpenForm "frmSimpleUnboundForm2"
    Set Application.Forms("frmSimpleUnboundForm2").Recordset = rst1
    With frmSimpleUnboundForm2
   '   .RecordSource = rst1 'Commento o non ommento, sempre 424
      .txtModello.RowSource = rst1.Fields(0)
      .txtDataOrdine.RowSource = rst1.Fields(1)
    '  .txtSollecito.RowSource = rst1.Fields(2)
    End With
BindRst_Exit:
rst1.Close
cnn1.Close
Set rst1 = Nothing
Set cnn1 = Nothing
Exit Sub
BindRst_Trap:
If Err.Number = -
2147352567
 Then
 MsgBox "The form is open in read-only mode. " & _
 "Change source assignment. ", vbCritical, "PMA2002"
 Resume BindRst_Exit
Else
 MsgBox Err.Number, vbCritical, "Pippo"
 MsgBox Err.Description, vbCritical, "Pluto"
End If
End Sub

     End With
Prova a modificare così:
     With frmSimpleUnboundForm2
          .RecordSource = rst1 'Commento o non ommento, sempre 424
          .txtModello = rst1.Fields(0)
          .txtDataOrdine = rst1.Fields(1)
          .txtSollecito = rst1.Fields(2)
     End With
Come ti dicevo se vuoi esplicitamente fare riferimento alla proprietà di un
OGGETTO
deve avere lo stato attivo.
Nel caso della 1° riga riguarda la Form, quindi non c'è problema visto che
stai lavorando
su quella, ma i controlli al suo interno non hanno il FOCUS.
Ciao.



scusa Alex
ma l'errore di focus dovrebbe esserci se fai riferimento alla proprietà text
?!
ciao

 ciao
No, tutte le proprietà di un controllo sono accessibili solo se il controllo
ha lo stato attivo.
In effetti adesso FUNZIONA.
Ciao.
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG