Access - Ερωτήσεις / Απαντήσεις Access + VBA... Εδώ δεν υπάρχουν όρια! |
| Εργαλεία Θεμάτων | Τρόποι εμφάνισης |
#1
| |||
| |||
Ορθότητα λογαριασμού ΔΕΗ
Καλησπέρα σε όλους! Θα ήθελα αν έχει κάποιος λύσει τον κώδικα για τον έλεγχο του λογαριασμού της ΔΕΗ. Στον Ήφαιστο έχει τον παρακάτω κώδικα σε js και ήθελα αν είναι εύκολο να γίνει σε Αccess - φαντάζομαι είναι - αλλά... ο κώδικας του Ήφαιστου: Παίρνουμε τα πρώτα 11 ψηφία. Διαιρούμε με το 11, με ακέραια διαίρεση, και κρατάμε το υπόλοιπο (διαίρεση modulo 11) Εαν το υπόλοιπο είναι <10, τότε αυτό είναι το ψηφίο ελέγχου. Εαν το υπόλοιπο είναι 10, τότε το ψηφίο ελέγχου είναι η μονάδα (1) Παρατίθεται ο κώδικας σε Javascript, για διευκόλυνση σας : function check_deh_id(deh_id) { if (deh_id.length!=12) return false; var i=parseInt(deh_id.slice(0,11), 10) % 11; if (i==10) i=1; return deh_id.slice(11,12)==i ? true : false; ΕΥΧΑΡΙΣΤΩ ΓΙΑ ΤΗΝ ΦΙΛΟΞΕΝΙΑ ΧΡΗΣΤΟΣ ΣΟΦΙΑΔΗΣ Τελευταία επεξεργασία από το χρήστη Tasos : 17-03-12 στις 14:43. Αιτία: Μετατροπή κεφαλαίων σε πεζά (Δεν επιτρέπονται κεφαλαία στα μηνύματα). |
#2
| |||
| |||
Καλημέρα Χρήστο, στην επισυναπτόμενη ΒΔ υπάρχουν δύο προσεγγίσεις υλοποίησης του αλγόριθμου ελέγχου της εγκυρότητας του κωδικού πληρωμής των λογαριασμών της ΔΕΗ. 1. Η πρώτη γίνεται με VBA και συγκεκριμένα με τη συνάρτηση: Κώδικας: Public Function chcNumDEH(x As Variant) As Variant '================================================================ 'Ελέγχει την εγκυρότητα του κωδικού πληρωμής των λογαριασμών ΔΕΗ '================================================================ Dim j As Long If IsNull(x) Then chcNumDEH = Null Exit Function End If If Len(x) <> 12 Or Not IsNumeric(x) Then chcNumDEH = False Exit Function End If j = Left(x, 11) - Int(Left(x, 11) / 11) * 11 If j = 10 Then j = 1 chcNumDEH = j = Right(x, 1) End Function Κώδικας: Right([numDEH];1)=IIf(IIf(Len([numDEH])=12 And IsNumeric([numDEH]); Left([numDEH];11)-Int(Left([numDEH],11)/11)*11;15)=10;1; IIf(Len([numDEH])=12 And IsNumeric([numDEH]); Left([numDEH];11)-Int(Left([numDEH];11)/11)*11;15)) Στο ερώτημα «qryTest» υπάρχουν και οι δύο λύσεις. Φιλικά/Γιώργος Τελευταία επεξεργασία από το χρήστη kapetang : 18-03-12 στις 09:54. Αιτία: προσθήκη γραμμής για το ερώτημα |
#3
| |||
| |||
ΕΥΧΑΡΙΣΤΩ
Σε ευχαριστώ για την βοήθεια στο Εxcel το είχα κάνει αλλά θέλω να βάλω τον κώδικα μέσα σε υπάρχουσα βάση που χρησιμοποιώ για τον Ήφαιστο. Πάντως όπως και να χει ευχαριστώ. Ευχαριστώ και πάλι. Σοφιάδης Χρήστος Στέλνω και το αρχείο στο Excel Τελευταία επεξεργασία από το χρήστη Tasos : 18-03-12 στις 21:41. |
#4
| ||||
| ||||
Αγαπητέ Χρήστο, σε παρακαλώ μην γράφεις με κεφαλαία στα μηνύματα σου (ήδη σου έχω διορθώσει 2 μηνύματα). Φιλικά Τάσος
__________________ Ms-Office Development Team Ανάπτυξη επαγγελματικών εφαρμογών |
#5
| |||
| |||
Συγγνώμη καποτε θα μάθω και η πλακα είναι οταν εστελνα το μήυνυμα ειπα ας συμορφωθώ για να μην φαω κιτρινη κάρτα. Κανονικα ειμαι για κοκκινη αλλα ο αγωνας ειναι φιλικός φιλικα Σοφιαδης Χρήστος |
« Προηγούμενο Θέμα
|
Επόμενο Θέμα »
| |
Παρόμοια Θέματα | ||||
Θέμα | Δημιουργός | Forum | Απαντήσεις | Τελευταίο Μήνυμα |
[ Φόρμες ] ΠΡΟΟΔΕΥΤΙΚΗ ΚΙΝΗΣΗ ΛΟΓΑΡΙΑΣΜΟΥ | billkar | Access - Ερωτήσεις / Απαντήσεις | 3 | 07-10-14 11:13 |
[ Φόρμες ] ΠΡΟΟΔΕΥΤΙΚΗ ΚΙΝΗΣΗ ΛΟΓΑΡΙΑΣΜΟΥ | pdhmos | Access - Ερωτήσεις / Απαντήσεις | 31 | 21-02-12 13:22 |
[ Συναρτήσεις ] Έλεγχος Εγκυρότητας λογαριασμού ΙΒΑΝ | ΤΖΙΜΗΣ | Access - Ερωτήσεις / Απαντήσεις | 7 | 03-10-11 21:12 |
Η ώρα είναι 20:23.