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/605-epilogi-timis-basei-kritirion.html)

David 25-05-10 19:39

Επιλογή τιμής βάσει κριτηρίων
 
Παιδιά Καλησπέρα, απο access δεν σκαμπάζω και πολλά οπότε θα ήθελα αν μπορούσατε να μου δώσετε μια βοήθεια. Μας έχουν βάλει μια άσκηση η οποία λέει να φτιάξουμε πληροφοριακό σύστημα για φροντιστήριο ξένων γλωσσών. Λοιπόν, 2 ξένες γλώσσες Αγγλικά-Γαλλικά με κόστος 80,60Ε. Όταν πληρώσει κάποιος με μετρητά 10% έκπτωση ανεξαρτήτως αν παρακολουθεί και τις 2. Αν κάποιος παρακολουθεί και τις 2 έχει έκπτωση 30% στην δεύτερη γλώσσα. Η επιλογή των γλωσσών θα γίνει yes/no boxes. Όπως καταλαβαίνετε η κυριότερη δυσκολία έχει να κάνει με τους περιορισμούς και πως θα τους παρουσιάσουμε για να βγούν τα δίδακτρα! Αυτά είναι τα κυριότερα, όποιος έχει κάποια πρόταση τον ευχαριστώ!!!!!!!!!!!!!!!!!

nisgia 26-05-10 20:51

Φίλε Δημήτρη, καλωσόρισες στο φόρουμ!

Ένα επιλεγμένο χειριστήριο επιλογής (Checkbox) στην Access έχει τιμή -1
ενώ ένα μη επιλεγμένο την τιμή 0.

Συνεπώς αν προσθέσεις τα δυο Checkboxes θα έχεις ένα αποτέλεσμα από -2 έως 0.
Οπότε μετατρέπεις με τη βοήθεια της συνάρτησης ABS() το αποτέλεσμα σε θετικό
και το περνάς στη συνάρτηση Choose() όπως φαίνεται παρακάτω:

Κώδικας:

Choose(Abs([fldEnglish]+[fldFrench])+1;0;0,1;0,3)
Όπου fldEnglish και fldFrench τα Checkboxes των μαθημάτων.
Το αποτέλεσμα θα είναι είτε 0, είτε 0,1 είτε 0,3.

Στη συνέχεια πολλαπλασιάσεις το αποτέλεσμα της Choose() με ένα άλλο Checkbox ("Μετρητοίς") και είσαι έτοιμος.

Η τελική μορφή της παράστασης θα μοιάζει με την παρακάτω:
Κώδικας:

Choose(Abs([fldEnglish]+[fldFrench])+1;0;0,1;0,3)*Abs([fldCash])
Αναλόγως που θέλεις να εμφανίσεις το αποτέλεσμα της έκπτωσης, την εισάγεις είτε σε ένα
υπολογιζόμενο πεδίο ενός ερωτήματος είτε σε ένα χειριστήριο κειμένου σε μια φόρμα ή έκθεση.

Τα λέμε!
Γιάννης

mdragon 27-05-10 21:47

Καλησπέρα,
Γιάννη μηπως θα σου ήταν εύκολο να ανεβάσεις ένα παράδειγμα για να το καταλάβω καλύτερα???




Σε ευχαριστώ,
Μάρω

nisgia 29-05-10 22:51

1 Συνημμένο(α)
Καλησπέρα Μάρω!

Έχεις δίκιο! Ένα παράδειγμα πάντα βοηθάει!
Απλά προχθές, έδωσα την απάντηση υπό πίεση χρόνου...:blush:

Στο παράδειγμα λοιπόν που ετεροχρονισμένα επισυνάπτω, εξέτασε τις εκφράσεις
στα τελευταία τρία πεδία του μοναδικού ερωτήματος (qryTuition).

Τα λέμε!
Γιάννης

mdragon 31-05-10 11:10

Καλημέρα και σε ευχαριστώ.


Μάρω


Η ώρα είναι 17:16.

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


Search Engine Optimization by vBSEO 3.3.2