Comment etablir un bon reçu de caisse

Résolu
cs_tchywallace Messages postés 6 Date d'inscription jeudi 5 avril 2007 Statut Membre Dernière intervention 24 juillet 2010 - 25 juin 2010 à 15:32
 Utilisateur anonyme - 25 juin 2010 à 17:32
Bonsoir,
Je veux afficher dans mon textbox multiline des information sur les articles commander par l'utilisateur qui vient se faire enregistrer a la caisse.
La caissiere va enregistrer la commande du client et établir son reçu.
La question est comment enregistrer ce client si celui çi commande 2 fois le même chose.
Ex :
* 2 X Bouteille de coca cola 3.000 frs
* 1 X Biscuit cleo 500 frs.
* Glace a a fraise 1000 frs.

NB : 1.500 frs l'unité la bouteille de coca cola


Voici mon ancien code qui ne me donne pas une bonne satisfaction


Private Sub BtnSaucelegRiz_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSaucelegRiz.Click
        Dim Prix As Integer = 1500
        Dim Sauce As String = "Sauce Lég+Riz                " + Prix.ToString + " CFA"
        TxtBoxCom.AppendText(Wrap & Sauce)
        Total = Total + Prix
        txtTotal.Text = Total
    End Sub

1 réponse

Utilisateur anonyme
25 juin 2010 à 17:32
Bonsoir,
J'ai réalisé un petit exemple qui te montrera une solution. Ca vaut ce que ca vaut
Pour tester, démarre un nouveau projet, remplace le code Form1 avec celui ci.
J'ai dimentionné le tableau à 500 articles par défaut.

Public Class Form1

    Dim T(500, 2) As Object
    Dim Num As Integer

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        AjouteArticle("Riz", 250, 1)
        AjouteArticle("Pates", 220, 1)
        AjouteArticle("Riz", 250, 1)

        AfficheTicket()
    End Sub

    Private Sub AjouteArticle(ByVal Reference As String, ByVal Prix As Integer, ByVal Quantite As Integer)

        Dim x As Integer
        Dim ArticleTrouve As Boolean
        Do Until T(x, 0) = Nothing
            If T(x, 0) = Reference Then
                T(x, 2) += 1
                ArticleTrouve = True
            End If
            x += 1
        Loop
        If ArticleTrouve = False Then
            T(Num, 0) = Reference
            T(Num, 1) = Prix
            T(Num, 2) = Quantite
            Num += 1
        End If
    End Sub

    Private Sub AfficheTicket()
        Dim x As Integer
        Dim prixtotal As Integer
        Do Until T(x, 0) = Nothing
            prixtotal += T(x, 1) * T(x, 2)
            Debug.Print(T(x, 2) & " x " & T(x, 0) & " - " & T(x, 1))
            x += 1
        Loop
        Debug.Print("-----")
        Debug.Print("Prix total : " & prixtotal)
    End Sub
End Class


Bonne soirée.
3
Rejoignez-nous