Me.Recordset et "no current record" - VB/VBA/VBS - Programmation
MarshPosté le 25-07-2014 à 08:24:22
Bonjour,
J'ai créé un form sous Access 2010, avec une table comme recordsource et dynaset. Sur le form, tous les champs sont liés aux champs de la table à part un champ de texte que j'utilise pour uploader des pièces jointes (stocké comme attachment dans le champ "business_case" de la table) comme suit:
Code :
Private Sub attachementText_Click()
Dim filepath As String
Dim rs As Recordset2
filepath = SelectFile
Dim fso As New FileSystemObject
Dim fileName As String
fileName = fso.GetFileName(filepath)
Set rs = Me.Recordset
Select Case isValidPackBusinessCase(filepath)
Case 1 ' valid business case, approved
Me.attachementText.Value = fileName
AddAttachment rs, "pack_business_case", filepath
Case -1 'valid business case, but not approved
MsgBox "Uploaded file is not an approved business case"
Case Else
MsgBox "Uploaded file is not a valid business case"
End Select
End Sub
Dans la méthode AddAttachment, j'ai la commande:
Code :
rstCurrent.Fields("business_case" ).Value
Et là je me mange un "no current record". En googlant j'ai bien compris que c'est parce que le recordset ne contient pas encore d'entrées (confirmé par le AbsolutePositon = -1), mais comment changer ça? J'ai essayé de faire un rs.AddNew dans mon event "attachementText_Click()", mais j'ai une erreur me disant que l'action a été bloquée (probablement par le fait que le Form est lié à ce même recordset).
Voyez-vous où je fais faux?
merci!
Esox
--------------- Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
Marsh Posté le 25-07-2014 à 08:24:22
Bonjour,
J'ai créé un form sous Access 2010, avec une table comme recordsource et dynaset. Sur le form, tous les champs sont liés aux champs de la table à part un champ de texte que j'utilise pour uploader des pièces jointes (stocké comme attachment dans le champ "business_case" de la table) comme suit:
Dans la méthode AddAttachment, j'ai la commande:
Et là je me mange un "no current record". En googlant j'ai bien compris que c'est parce que le recordset ne contient pas encore d'entrées (confirmé par le AbsolutePositon = -1), mais comment changer ça? J'ai essayé de faire un rs.AddNew dans mon event "attachementText_Click()", mais j'ai une erreur me disant que l'action a été bloquée (probablement par le fait que le Form est lié à ce même recordset).
Voyez-vous où je fais faux?
merci!
Esox
---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait