Bonjour à tous,
Dans un formulaire en mode continu, j'ai un champ "Dom_Sélect" de type Booléan. Je ne souhaite pouvoir ne sélectionner qu'un seul enregistrement, et donc, avant de donner la valeur -1 à un enregistrement, je met au préalable tous les enregistrements à la valeur 0, puis je met l'enregistrement actif à -1.
L'idée me semblait bonne, mais j'obtiens un message de conflit d'écriture.
Que faire pour contourner ce problème ?
Merci par avance pour votre aide
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
18 Private Sub Dom_Sélect_AfterUpdate() On Error GoTo Fin DoCmd.RunCommand acCmdSaveRecord NbSélect = DSum("Dom_Sélect", "T_Domiciliations", "Dom_Clé_Usager = " & Me.Parent.CléP_Usager) Me.Nb_Sélections.Requery Fin: End Sub Private Sub Dom_Sélect_BeforeUpdate(Cancel As Integer) DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE T_Domiciliations SET T_Domiciliations.Dom_Sélect = 0 WHERE T_Domiciliations.Dom_Clé_Usager= " & Me.Parent.CléP_Usager DoCmd.SetWarnings True If Me.Dom_Sélect = -1 Then Me.CléP = Me.CléP_Domiciliation End Sub Private Sub Dom_Sélect_Click() If Me.Dom_Sélect = -1 Then Me.Dom_Sélect = 0 If Me.Dom_Sélect = 0 Then Me.Dom_Sélect = -1 End Sub
Partager