
18-03-12, 09:47
|
| Όνομα: Γιώργος Έκδοση λογισμικού Office: Ms-Office 2010 Γλώσσα λογισμικού Office: Ελληνική, Αγγλική | | Εγγραφή: 18-06-2010
Μηνύματα: 3.674
| |
Καλημέρα
Χρήστο, στην επισυναπτόμενη ΒΔ υπάρχουν δύο προσεγγίσεις υλοποίησης του αλγόριθμου ελέγχου της εγκυρότητας του κωδικού πληρωμής των λογαριασμών της ΔΕΗ.
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
2. Η δεύτερη γίνεται με την ακόλουθη έκφραση της access: Κώδικας: 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))
Στην έκφραση ο κωδικός αποθηκεύεται στο πεδίο «numDEH»
Στο ερώτημα «qryTest» υπάρχουν και οι δύο λύσεις.
Φιλικά/Γιώργος
Τελευταία επεξεργασία από το χρήστη kapetang : 18-03-12 στις 09:54.
Αιτία: προσθήκη γραμμής για το ερώτημα
|