
05-07-12, 13:23
|
 | Διαχειριστής Όνομα: Τάσος Φιλοξενιδης Έκδοση λογισμικού Office: Ms-Office 365 Γλώσσα λογισμικού Office: Ελληνική, Αγγλική, Γερμανική | | Εγγραφή: 21-10-2009
Μηνύματα: 2.035
| |
Καλησπέρα σε όλους!
Αγαπητέ Σαράντο, είδα τη βάση σου και συγκεκριμένα την υποφόρμα OrderDetails_subform
Το μέγεθος αλλά και οι ιδιαιτερότητες της πανέμορφης αυτής βάσης δεν μου επιτρέπουν να την επισυνάψω στο φόρουμ.
Σε παρακαλώ, τη επόμενη φορά που θα χρειαστείς κάτι, να παραθέτεις ένα παράδειγμα όπου θα φαίνεται το ζητούμενο.
Έτσι, αφενός θα μπορούν να συμμετέχουν και οι υπόλοιποι αφετέρου θα μπορεί κανείς να αποκομίσει κάτι από τη συζήτηση.
Ο παρακάτω κώδικας ανήκει στη φόρμα OrderDetails_subform και πιστεύω να σε καλύπτει. Κώδικας: Option Compare Database
Option Explicit
Private Sub Barcode_AfterUpdate()
Me.ProductName = Barcode.Column(2)
Me.UnitPrice = Barcode.Column(4)
Me.SalePrice = Barcode.Column(6)
Me.SalesTax = Barcode.Column(5)
Me.ProductID = Barcode.Column(7)
Me.Quantity.Value = 1
'+++++++++++++++++++++++++++++++++++++++
Quantity_AfterUpdate
'+++++++++++++++++++++++++++++++++++++++
Me.Quantity.SetFocus
Me.Quantity.SelStart = 0
Me.Quantity.SelLength = 1
End Sub
Private Sub Form_BeforeUpdate(Cancel As Integer)
Dim cnt As Long, LngProductID As Long, strPurchaseOrderNumber As String, LngQty As Long
Dim CurrSalePrice As Variant, CurrUnitPrice As Variant, strSQL As String
If Me.NewRecord Then
CurrSalePrice = Me.SalePrice + 0
CurrUnitPrice = Me.UnitPrice + 0
LngQty = Me.Quantity + 0
LngProductID = Me.ProductID + 0
strPurchaseOrderNumber = Me.PurchaseOrderNumber + 0
If LngQty > 0 And strPurchaseOrderNumber > 0 And CurrSalePrice > 0 And CurrUnitPrice > 0 Then
cnt = Nz(DSum("[Quantity]", "[Order Details]", _
"[ProductID] =" & LngProductID & _
" AND [PurchaseOrderNumber]= '" & strPurchaseOrderNumber & "'"))
If cnt = 0 Then Exit Sub
Else
Cancel = True
If LngProductID = 0 Then Me.ProductID.SetFocus
If LngQty = 0 Then Me.Quantity.SetFocus
Exit Sub
End If
Cancel = True
Me.Undo
CurrSalePrice = Replace(CStr((cnt + LngQty) * CurrSalePrice), ",", ".")
CurrUnitPrice = Replace(CStr((cnt + LngQty) * CurrUnitPrice), ",", ".")
strSQL = "UPDATE [Order Details] SET [Order Details].Quantity =" & cnt + LngQty & _
", [Order Details].Σύνολο_ΜΦ =" & CurrSalePrice & _
", [Order Details].Σύνολο_ΧΦ =" & CurrUnitPrice & _
" WHERE [Order Details].ProductID = " & LngProductID & _
" AND [Order Details].PurchaseOrderNumber= '" & strPurchaseOrderNumber & "';"
CurrentDb.Execute strSQL
Me.Parent.Refresh
End If
End Sub
Φιλικά
Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών
Τελευταία επεξεργασία από το χρήστη Tasos : 05-07-12 στις 19:40.
|