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

Ciao Ng, grazie hai vostri consigli sono riuscito a implementare una specie
di db per immagini...ora un altro problemino...
Questo è il codice con il quale inserisco l'immagine nel db:
Private Sub Comando5_Click()
  Dim Rst As DAO.Recordset
  Dim Percorso As String
  Percorso = cmdlg_file("*.*")
  If Percorso <> vbNullString Then
       Set Rst = CurrentDb().OpenRecordset("Immagini")
          Rst.AddNew
          Rst!Immagine = Percorso
          Rst.Update
          Rst.Close
  End If
End Sub
Questo è quello con cui visualizzo l'immagine nel form:
Private Sub Form_Current()
  On Error Resume Next
  With Forms!Immagini
      Me.Immagine1.Picture = Me.Immagine
  End With
Ora quando inserisco una nuova immagine per farla visualizzare devo chiudere
e riaprire la finestra...vorrei lo facesse in tempo reale...immagino che
devo usare un requery ma dove?ho provato ovunque.Grazie.Ciao Christian

 ha scritto nel messaggio
news:2XMu7.7697$Fq5....@news2.tin.it...

Sicuramente la tua maschera si chiama Immagini ed ha come origine record la
tabella Immagini che ha al suo interno un campo di tipo testo chiamato
Immagine che contiene il path completo del file immagine; a questo campo è
associato un controllo della maschera chiamato Immagine.
La maschera contiene anche un controllo immagine chiamato Immagine1.
E allora:
Private Sub Comando5_Click()
Dim Rst As DAO.Recordset
Dim Percorso As String
Percorso = cmdlg_file("*.*")
If Percorso <> vbNullString Then
    Set Rst = CurrentDb().OpenRecordset("Immagini")
    Rst.AddNew
    Rst.Update
    Set Rst = Nothing
    Me!Immagine = Percorso
    Me!Immagine1.Picture = Me!Immagine
End If
End Sub
Inoltre:
Private Sub Form_Current()
Me!Immagine1.Picture = Me!Immagine
End Sub
Per me così ti sei complicato inutilmente la vita, comunque dovrebbe
funzionare.
--
Roberto
---------------------------------------------
il Sito Comune di it.comp.appl.access:
http://www.sitocomune.com
---------------------------------------------

 ha scritto nel messaggio
news:UdOu7.18763$0Y2.2...@news.infostrada.it...


 Christian
[CUT]
Ti saremmo grati in molti se rispondessi DOPO e non PRIMA del testo dei
messaggi precedenti.
Più veloce e/o più efficiente? Non saprei, ma io direi di far fare ad Access
quello che è capace di fare da solo.
Se la tabella Immagini contiene il campo di tipo testo Immagine nel quale
memorizzi il percorso completo del file immagine che vuoi visualizzare.
Se la maschera Immagini ha come origine record la tabella Immagini e
contiene un controllo immagine chiamato Immagine1 ed una casella di testo
chiamata Immagine associata al campo Immagine.
Io a fronte dell'evento "Su clic" del pulsante di comando mi limiterei a
generare il seguente codice VBA:
Private Sub Comando5_Click()
Dim Percorso As String
Percorso = cmdlg_file("*.*")
If Percorso <> vbNullString Then
    'posizionati su un nuovo record
    DoCmd.RunCommand acCmdRecordsGoToNew
    'popola il controllo Immagine
    Me!Immagine = Percorso
    'visualizza il contenuto del file immagine scelto
    Me!Immagine1.Picture = Percorso
End If
End Sub
Quindi lascerei ad Acces la registrazione del nuovo record alla
disattivazione del record corrente, per qualsiasi motivo avvenga; insomma
non vedo la necessità di aprire un recordset sulla tabella Immagini per
inserire un nuovo record.
Resta invece valida la routine:
Private Sub Form_Current()
Me!Immagine1.Picture = Me!Immagine
End Sub
al fine di impostare la proprietà Picture del controllo Immagine1 allo
scorrimento dei record ed all'apertura della maschera Immagini; però anche
qui non vedo a cosa ti servisse With e End Whit.


 ha scritto nel messaggio
news:9pid8n$86o$1...@stargate1.inet.it...

Ciao ho provato a d utilizzare il codice che gentilmente mi hai
consiligliato ma c'è qualcosa che non va a rigurado della riga
DoCmd.RunCommand acCmdRecordsGoToNew
Comando o azione 'RecordVaiaNuovo' non disponibile
Esiste il metodo acCmdReocordsGoToNew?
Ciao e Grazie