Bonjour,
Je développe un petit programme de location de matériel, et pour se faire il faudrait que je puisse supprimer la location créée dans ma BDD Access lors de la restitution de celui-ci.
Ma BDD se compose de 4 tables : CLIENTS(Code, Nom, Prenom ... ), PRODUITS(Code, Nom, QtéDispo ...), COMMANDE(CodeComm, CodeCli) et EMPRUNTER(CodeComm, CodeProd, QtéEmpr).

Voici le code de mon formulaire correspondant à la suppression de l'emprunt et de la réafectation des quantités de produits dans la BDD :

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
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
Private Sub btn_restituer_Click()
 
'Déclaration d'une variable cidecli ...
    Dim codecli As String
' ... permettant de récuperer le code du client sélectionné
    codecli = Right(Cmb_Clt, 5)
 
    MsgBox codecli
 
'Recherche des numéros de commandes passées par le client sélectionné
    Set Rs_Comm = New Recordset
    With Rs_Comm
        .ActiveConnection = Conn
        .Open "select * from COMMANDE", , adOpenDynamic, adLockPessimistic
 
        While Not Rs_Comm.EOF
            If codecli = Rs_Comm("Code_Cli") Then
                Dim codecomm As Integer
                codecomm = Rs_Comm("Code_Comm")
 
                MsgBox codecomm
 
            'Recherche des matériaux empruntés
                Set Rs_Empr = New Recordset
                With Rs_Empr
                    .ActiveConnection = Conn
                    .Open "select * from Emprunter", , adOpenDynamic, adLockPessimistic
 
                    While Not Rs_Empr.EOF
                        If codecomm = Rs_Empr("Code_Comm") Then
                            Dim codeprod As String
                            codeprod = Rs_Empr("Code_Prod")
 
                            MsgBox codeprod
 
                        'Restitution des quantités empruntées du produit concerné
                            Dim qteempr As String
                            qteempr = Rs_Empr("Qte_Empr")
 
                        'Mise à jour des quantités du stock dans la base Produits
                            Set Rs_Produits = New Recordset
                            With Rs_Produits
                                .ActiveConnection = Conn
                                .Open "select * from PRODUITS", , adOpenDynamic, adLockPessimistic
 
                                While Not Rs_Produits.EOF
                                    If codeprod = Rs_Produits("Code_Prod") Then
                                        MsgBox Rs_Produits("Code_Prod")
                                        Rs_Produits("QteRes_Prod") = (Rs_Produits("QteRes_Prod") + qteempr)
                                        Rs_Produits("QteEmpr_Prod") = (Rs_Produits("QteEmpr_Prod") - qteempr)
                                        Rs_Produits.Update
                                    End If
                                    Rs_Produits.MoveNext
                                Wend
                            End With
 
                        End If
                        Rs_Empr.MoveNext
                    Wend
                   ' Rs_Empr.Delete
                End With
 
            End If
            Rs_Comm.MoveNext
        Wend
       ' Rs_Comm.Delete
    End With
 
    btn_restituer.Enabled = False
 
'Ceci permet d'afficher seulement les boutons nécessaires
    If Lst_Prod.ListCount = 0 Then
        btn_ajout.Enabled = True
        btn_retirer.Enabled = True
        btn_valider.Enabled = True
    End If
 
End Sub
Comment supprimer les champs correspondant au code de la commande à restituer dans les tables EMPRUNTER et COMMANDE ??

Merci pour votre aide