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 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
| Private Sub SignalerRéception_Click()
Dim sql, message As String, quantité As String, désignation As String, Titre As String, ValeurInuptBox As String
Dim id_Demande, ID_Référence, ID_Emetteur, ancienStock, nouveauStock As Integer
Dim odb As DAO.Database
Dim oRst As DAO.Recordset
Dim dateJours As Date
If IsNull(Me.lstResults.Column(0)) Then
MsgBox ("Veuillez selectionner un article dans la liste")
Exit Sub
End If
Set odb = CurrentDb
id_Demande = Me.lstResults
dateJours = Date
quantité = Me.lstResults.Column(9)
désignation = Me.lstResults.Column(7)
message = MsgBox("Confirmez vous la récéption de " & quantité & " " & désignation & "(s) ?" & Chr(10) & "Si oui, cette quantité sera ajouté au stock.", vbQuestion + vbYesNo, "Confirmation")
If message = 6 Then
DoCmd.OpenForm ("TerminerCommande")
Form_TerminerCommande.txtIDDemande.Caption = Me.lstResults
C'est la que je veux faire ma boucle:
Si Form_TerminerCommande.MonBoutonRetour.click then
Exit sub
else
end if
sql = "Update tbl_DemandeDeCommande set id_Etat='4' where ID_Demande =" & id_Demande & ";"
odb.Execute (sql)
sql = "Update tbl_DemandeDeCommande set DateRéception='" & dateJours & "' where ID_Demande =" & id_Demande & ";"
odb.Execute (sql)
Me.Refresh
sql = "Select * from tbl_DemandeDeCommande where ID_Demande =" & id_Demande & ";"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ID_Référence = oRst.Fields("ID_Référence").Value
ID_Emetteur = oRst.Fields("id_Emetteur").Value
sql = "select max(ID_transac) from tbl_transaction"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ID_Transac = oRst.Fields(0).Value + 1
sql = "select StockActuel from tbl_Référence"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ancienStock = oRst.Fields("StockActuel").Value
nouveauStock = ancienStock + quantité
sql = "Insert into tbl_Transaction values (" & ID_Transac & ", " & ID_Référence & ", 'Entrée'," & quantité & ",'" & dateJours & "'," & ID_Emetteur & ")"
odb.Execute (sql)
sql = "Update tbl_Référence set StockActuel='" & nouveauStock & "' where ID_Référence =" & ID_Référence & ";"
odb.Execute (sql)
Else
message = MsgBox("Avez vous reçu une autre quantité que " & quantité & " " & désignation & "(s) ?", vbQuestion + vbYesNo, "Confirmation")
If message = 6 Then
message = "Veuillez entrer la quantité réelement reçue "
Titre = "Quantité réelement reçue"
ValeurInuptBox = InputBox(message, Titre)
If ValeurInuptBox = "" Then
MsgBox ("Veuillez Indiquer une valeur dans la zone de saisie")
Exit Sub
Else
End If
If ValeurInuptBox < 1 Then
MsgBox ("Veuillez entrer une valeur différente de 0 ou positive")
Exit Sub
Else
End If
If ValeurInuptBox >= quantité Then
sql = "Update tbl_DemandeDeCommande set id_Etat='4' where ID_Demande =" & id_Demande & ";"
odb.Execute (sql)
sql = "Update tbl_DemandeDeCommande set DateRéception='" & dateJours & "' where ID_Demande =" & id_Demande & ";"
odb.Execute (sql)
Me.Refresh
sql = "Select * from tbl_DemandeDeCommande where ID_Demande =" & id_Demande & ";"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ID_Référence = oRst.Fields("ID_Référence").Value
ID_Emetteur = oRst.Fields("id_Emetteur").Value
sql = "select max(ID_transac) from tbl_transaction"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ID_Transac = oRst.Fields(0).Value + 1
sql = "select StockActuel from tbl_Référence"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ancienStock = oRst.Fields("StockActuel").Value
nouveauStock = ancienStock + ValeurInuptBox
sql = "Insert into tbl_Transaction values (" & ID_Transac & ", " & ID_Référence & ", 'Entrée'," & ValeurInuptBox & ",'" & dateJours & "'," & ID_Emetteur & ")"
odb.Execute (sql)
sql = "Update tbl_Référence set StockActuel='" & nouveauStock & "' where ID_Référence =" & ID_Référence & ";"
odb.Execute (sql)
Else
sql = "Update tbl_DemandeDeCommande set Quantité=" & quantité & "-'" & ValeurInuptBox & "' where ID_Demande =" & id_Demande & ";"
odb.Execute (sql)
Me.Refresh
sql = "Select * from tbl_DemandeDeCommande where ID_Demande =" & id_Demande & ";"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ID_Référence = oRst.Fields("ID_Référence").Value
ID_Emetteur = oRst.Fields("id_Emetteur").Value
sql = "select max(ID_transac) from tbl_transaction"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ID_Transac = oRst.Fields(0).Value + 1
sql = "select StockActuel from tbl_Référence"
Set oRst = odb.OpenRecordset(sql, dbOpenDynaset)
ancienStock = oRst.Fields("StockActuel").Value
nouveauStock = ancienStock + ValeurInuptBox
sql = "Insert into tbl_Transaction values (" & ID_Transac & ", '" & ID_Référence & "', 'Entrée','" & ValeurInuptBox & "','" & dateJours & "'," & ID_Emetteur & ")"
odb.Execute (sql)
sql = "Update tbl_Référence set StockActuel='" & nouveauStock & "' where ID_Référence =" & ID_Référence & ";"
odb.Execute (sql)
End If
End If
End If
End Sub |
Partager