none
Casse-tête intéressant - Avec Northwind effectuer une réception automatique pour tous les enregistrements RRS feed

  • Question

  • Sommaire: En utilisant Northwind (Les comptoirs), lors de la réception d'une commande d'achat, nous devons passer les enregistrements un par un afin d'obtenir des données dans la table "Opérations d'inventaire", c'est bien lorsque nous avons de 1 à 10 produits, mais si on a 150 enregistrements, cela devient fastidieux. Donc, j'essaie de trouver le code que je placerais sur un bouton afin de recevoir tous les items commandés d'un seul coup... j'ai essayé plusieurs fois et je suis arrivé à presque réussir, cependant, j'ai besoin d'aide pour qu'il fonctionne correctement... merci de bien vouloir essayer.

    Il y a beaucoup de code, mais c'est juste enfin que vous possédiez le code nécessaire à la compréhension.

    À la toute fin de ce document, voir le code que j'ai créé sur le bouton "Post test" afin de recevoir tous les produits automatiquement. (Vous voudriez peut-être commencer par ce code)


    Merci, Claude du Québec, Canada

    CODE SUR BOUTON "Post test":

    Private Sub Post_test_Click()
    
        Dim InventoryID As Long
        Dim ProductID As Long
        Dim Quantity As Long
        
    Dim PurchaseOrderID As Long
    Dim InvoiceID As Long
    
    PurchaseOrderID = Nz(Forms![Détails bon de commande].[Réf bon de commande], 0)
    
    Dim rsw As New WrapperJeuEnregistrements
        With rsw.GetRecordsetClone(Forms![Détails bon de commande].sbfPurchaseReceiving.Form.Recordset)
            While Not .EOF
                        .Edit
            ![Date de réception] = Date
            ![Entré en inventaire] = True
    
            ProductID = Nz(Me![Réf produit], 0)
            Quantity = Nz(Me![Quantité], 0)
            InventoryID = Nz(Me![Réf inventaire], 0)
            If Inventaire.AddPurchase(Me![Réf bon de commande], ProductID, Quantity, InventoryID) Then
                If InventoryID > 0 Then
                    Me![Réf inventaire] = InventoryID
                    Me![Entré en inventaire] = True
                End If
            
            End If
    
    
            If InventoryID > 0 Then
                Me![Entré en inventaire] = True
            End If
    
            rsw.Update
    
                rsw.MoveNext
            Wend
        End With
    
    Forms![Détails bon de commande].Requery
    End Sub

    If you prefer, I did upload Northwind database on OneDrive here is the link:

    https://onedrive.live.com/redir?resid=F7190044A52FAE85%21663


    Claude Larocque




    samedi 21 février 2015 10:02