Bonsoir tout le monde,
Je rencontre un problème avec la méthode DAO.
Je travaille sur des tables SQL server et je rencontre une erreur d'execution 94 (utilisation incorrecte de Null), au niveau de la ligne "numero_commande = rs.Fields("ID").Value" (voir code ci-dessous)
Pourtant dans l'excellent article de Christophe WARIN, il est mentionné "Dans le cas où un des champs est de type NuméroAuto, il est impossible d'affecter une valeur à ce champ. La numérotation automatique est gérée par le moteur Jet. Toutefois, pour des raisons diverses et variées, vous pouvez avoir le besoin de connaitre la nouvelle valeur du NuméroAuto créé. La valeur d'un tel champ est disponible avant l'appel de la méthode Update."
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 'insertion dans dbo_COMMANDE_MERE Dim rs As DAO.Recordset Dim db As DAO.Database Set db = CurrentDb() Set rs = db.OpenRecordset("dbo_COMMANDE_MERE", dbOpenDynaset, [dbSeeChanges]) rs.MoveLast rs.AddNew rs.Fields("NUMERO_COMMANDE").Value = nouv_num_bc_complet rs.Fields("DATE_COMMANDE").Value = Now() rs.Fields("ID_FOURNISSEUR").Value = id_fournisseur rs.Fields("DEVISE").Value = Me.txt_devise.Value numero_commande = rs.Fields("ID").Value rs.Update rs.Close db.Close Set rs = Nothing Set db = Nothing
Ma ligne est bien placée avant Update et je ne vois pas trop comment m'en sortir sur ce coup.
Si quelqu'un avait une petite idée ça me rendrait bien service !
Merci d'avance à tous
Partager