Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   Πρόβλημα σε άθροισμα (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/2651-problima-se-athroisma.html)

wint3r 21-08-13 10:21

Πρόβλημα σε άθροισμα
 
1 Συνημμένο(α)
Καλημέρα ονομάζομαι Πάνος,
χρησιμοποιώ τη βάση παραγγελιών του Τάσου και έχω κάνει κάποιες τροποποιήσεις έτσι ώστε να την φέρω στις απαιτήσεις τις δικές μου. Όλα καλά, πολύ εύχρηστη αλλά κάνοντας τις αλλαγές αντιμετώπισα πρόβλημα σε κάποια αθροίσματα των κελιών. Το πρόβλημα είναι: όταν πάω να επιλέξω είδος που αυτόματα συμπληρώνει κάποια πεδία, όπως πχ τιμή κλπ χτύπάει σφάλμα "Runtime error -2147352567 (800200009) Δεν μπορείτε να εκχωρήσετε τιμή σε αυτό το αντικείμενο" Και βγάζει "end" & "debug". Αν πατήσω "end" προχωράει, παίρνει τιμές αλλά δεν κάνει τα συνολικά αθροίσματα" Παραθέτω τον κώδικα & την βάση.
Κώδικας:

Private Sub CalculateValues()
    DoCmd.RunCommand acCmdSaveRecord
    Me.ProductPrice = Me.productid.Column(2)
    Me.TotalPrice = Nz(Me.productid.Column(2) * Me.Pieces, 0)
    DoCmd.RunCommand acCmdSaveRecord
    Me.Parent.OrderPrice = DSum("TotalPrice", "OrderDetails", "OrderID=" & Me.Parent.OrderId)
End Sub

Ευχαριστώ εκ των προτέρων.

Tasos 21-08-13 10:44

Καλημέρα!

Το πεδίο TotalPrice περιέχει τύπο οπότε δεν μπορεί να πάρει τιμή.

Φρόντισε στην προέλευση στοιχείου ελέγχου του πεδίου ( TotalPrice ) να αφαιρέσεις τον τύπο και να επιλέξεις το κατάλληλο πεδίο του πίνακα από την πτυσσόμενη λίστα.

Επίσης φρόντισε το πεδίο Pieces να έχει προεπιλεγμένη τιμή τη μονάδα (1) και για κάθε ενδεχόμενο άλλαξε την παρακάτω γραμμή του κώδικα:

Me.TotalPrice = Nz(Me.productid.Column(2) * Me.Pieces, 0)
σε
Me.TotalPrice = Nz(Me.productid.Column(2) * Nz(Me.Pieces,1), 0)

Καλή συνέχεια!

Τάσος

wint3r 21-08-13 10:58

Τάσο καλημέρα, ευχαριστώ για την άμεση βοήθεια

Παράθεση:

Αρχική Δημοσίευση από Tasos (Μήνυμα 15423)
Καλημέρα!

Το πεδίο TotalPrice περιέχει τύπο οπότε δεν μπορεί να πάρει τιμή.
Πώς μπορώ όμως να υπολογίσω την τελική τιμή (τιμή + φπα)

Φρόντισε στην προέλευση στοιχείου ελέγχου του πεδίου ( TotalPrice ) να αφαιρέσεις τον τύπο και να επιλέξεις το κατάλληλο πεδίο του πίνακα από την πτυσσόμενη λίστα.
Ποιό είναι το κατάλληλο πεδίο?

Επίσης φρόντισε το πεδίο Pieces να έχει προεπιλεγμένη τιμή τη μονάδα (1) οκ και για κάθε ενδεχόμενο άλλαξε την παρακάτω γραμμή του κώδικα:

Me.TotalPrice = Nz(Me.productid.Column(2) * Me.Pieces, 0)
σε
Me.TotalPrice = Nz(Me.productid.Column(2) * Nz(Me.Pieces,1), 0) οκ

Καλή συνέχεια!

Τάσος

Άλλαξα την γραμμή στον κώδικο άλλα πάλι δεν λειτουργεί σωστα.

wint3r 22-08-13 09:32

Καμιά βοήθεια παιδιά...:mellow:

Meteora 22-08-13 16:08

Καλησπέρα
Παράθεση:

Φρόντισε στην προέλευση στοιχείου ελέγχου του πεδίου ( TotalPrice ) να αφαιρέσεις τον τύπο και να επιλέξεις το κατάλληλο πεδίο του πίνακα από την πτυσσόμενη λίστα.
Ποιο είναι το κατάλληλο πεδίο?
Δοκίμασε το [TotalPrice] ! (φόρμα σε περιβάλλον σχεδίασης, επιλέγεις το πεδίο [TotalPrice], πας ιδιότητες...καρτέλα δεδομένα...προέλευση στοιχείου ελέγχου ... και επιλέγεις το πεδίο [TotalPrice].

Ελπίζω να βοήθησα λίγο...

Νίκος Δ.

wint3r 23-08-13 09:14

Παράθεση:

Αρχική Δημοσίευση από Meteora (Μήνυμα 15434)
Καλησπέρα


Δοκίμασε το [TotalPrice] ! (φόρμα σε περιβάλλον σχεδίασης, επιλέγεις το πεδίο [TotalPrice], πας ιδιότητες...καρτέλα δεδομένα...προέλευση στοιχείου ελέγχου ... και επιλέγεις το πεδίο [TotalPrice].

Ελπίζω να βοήθησα λίγο...

Νίκος Δ.

Το έχω κάνει αλλά τίποτα..

Tasos 23-08-13 09:33

Καλημέρα!

Αφαίρεσε την προβληματική γραμμή από τον κώδικα αφού χρησιμοποιείς τύπους στα πεδία της φόρμας.

Όμως: Θα πρέπει να επανασχεδιάσεις τη βάση σου. Αντιλαμβάνεσαι τι θα γίνει όταν χρειαστεί να τροποποιήσεις τιμές ή ΦΠΑ για ένα προϊόν :001_cool:;

Θα αλλάξουν τα ποσά σε όλες τις παραγγελίες που έχεις καταχωρήσει!

Με εκτίμηση

Τάσος


Η ώρα είναι 11:14.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2