לא נכון.במספר המוסד תכניס את קוד המוסד בן 8 ספרות
במוסד שולח מה שאתה רוצה.
את שני המספרים הללו מקבלים ממס"ב.
נכון, לא כמו שכתבת למעלה.ממסב מקבלים מספר אחד, בן 8 ספרות, יותר נכון תקרא לזה 5 ועוד 3
בדקתי שוב בקובץ שאני משתמש בו
במוסד שולח רק את ה 5 ספרות
ובקוד המוסד כל ה 8 ספרות
על זה נאמר, ט.ל.ח.נכון, לא כמו שכתבת למעלה.
באיזה קידוד צריך להיות שם הלקוח
אני מנסה ליצק קובץ מס"ב בעזרת PHP אך לא מצליח להבין באיז קידוד הוא אמור להיות
קוד מעודכן לפונקציה שבודקתהבנק הדיגיטלי הראשון מס בנק 18
מערכת זיהוי שגיאות לא מכירה אותו
איך אפשר לתקן זאת?
מאתר מסב
וואן זירו הבנק הדיגיטלי
קוד בנק - 18
שיטת החישוב
שארית החלוקה ב97- (97MOD(.
אורך מספר חשבון
מס' חשבון בבנק הדיגיטלי מורכב מ 7 ספרות + 2 ספרות ביקורת.
דוגמא
חשבון מספר 1234567 בסניף 001 יהיה כולל ספרת ביקורת.
001 1234567 71
bbbXXXXXXXCC
11234567 % 97 = 27
98 - 27 = 71
@moishy
תודה לעוזרים
Public Function fValidateBankAccount(lngBankNumber As Long, _
lngBranch As Long, _
lngAccount As Long) As Boolean
fValidateBankAccount = False
Dim lngRequiredAccountLength As Long
Dim lngTotal As Long
Dim strArrayAccount() As String
Dim strArrayBranch() As String
Dim strAccount As String
Dim strBranch As String
Select Case lngBankNumber
Case 10, 13, 34
lngRequiredAccountLength = 8
Case 12, 4, 20, 46, 14
lngRequiredAccountLength = 6
Case 11, 17, 31, 52, 9, 22, 23, 18
lngRequiredAccountLength = 9
End Select
If lngBankNumber <> 54 Then
strAccount = String(lngRequiredAccountLength - Len(CStr(Left(lngAccount, lngRequiredAccountLength))), "0") & CStr(Left(lngAccount, lngRequiredAccountLength))
Else
strAccount = CStr(lngAccount)
End If
' strAccount = Right("0000000000" & CStr(lngAccount), lngRequiredAccountLength) ' This is an alternative to the previous line
strAccount = StrConv(strAccount, vbUnicode)
strArrayAccount = Split(strAccount, vbNullChar)
If lngBankNumber = 20 And lngBranch > 400 And lngBranch < 800 Then ' a`i' i^n~o^? a"n~?e'o' a'a'?º i^??c,e'-e`o^c,a*u' a^a~a*i` i^400
strBranch = CStr(lngBranch - 400) ' i`o^?e' a"c,e'u`a*a'e'i' e'u` i`a"o^c,e'u' 400
Else
strBranch = lngBranch
End If
If Len(strBranch) < 3 Then
strBranch = String(3 - Len(strBranch), "0") & strBranch ' i^a*n~e'o' a`o^n~e'i' i`a"u`i`e'i' i`3 n~o^?a*u'
End If
strBranch = StrConv(strBranch, vbUnicode)
strArrayBranch = Split(strBranch, vbNullChar)
Select Case lngBankNumber
Case 10, 34
lngTotal = CLng(strArrayBranch(0)) * 10 + _
CLng(strArrayBranch(1)) * 9 + _
CLng(strArrayBranch(2)) * 8 + _
CLng(strArrayAccount(0)) * 7 + _
CLng(strArrayAccount(1)) * 6 + _
CLng(strArrayAccount(2)) * 5 + _
CLng(strArrayAccount(3)) * 4 + _
CLng(strArrayAccount(4)) * 3 + _
CLng(strArrayAccount(5)) * 2
fValidateBankAccount = 100 - ((lngTotal + 128) Mod 100) = CLng(Right(lngAccount, 2))
If Not fValidateBankAccount Then fValidateBankAccount = 100 - ((lngTotal + 180) Mod 100) = CLng(Right(lngAccount, 2))
If Not fValidateBankAccount Then fValidateBankAccount = 100 - ((lngTotal + 330) Mod 100) = CLng(Right(lngAccount, 2))
If Not fValidateBankAccount Then fValidateBankAccount = 100 - ((lngTotal + 340) Mod 100) = CLng(Right(lngAccount, 2))
If Not fValidateBankAccount Then
Select Case strArrayAccount(2) & strArrayAccount(1)
Case "00"
fValidateBankAccount = 100 - ((lngTotal + 110) Mod 100) = CLng(Right(lngAccount, 2))
Case "23", "20"
If lngBranch = 800 Then fValidateBankAccount = 100 - ((lngTotal + 110) Mod 100) = CLng(Right(lngAccount, 2))
End Select
End If
Case 12, 4
lngTotal = CLng(strArrayBranch(0)) * 9 + _
CLng(strArrayBranch(1)) * 8 + _
CLng(strArrayBranch(2)) * 7 + _
CLng(strArrayAccount(0)) * 6 + _
CLng(strArrayAccount(1)) * 5 + _
CLng(strArrayAccount(2)) * 4 + _
CLng(strArrayAccount(3)) * 3 + _
CLng(strArrayAccount(4)) * 2 + _
CLng(strArrayAccount(5)) * 1
Select Case lngTotal Mod 11
Case 0, 2
fValidateBankAccount = True
Case 4, 6
Select Case lngBankNumber
Case 12
fValidateBankAccount = True
Case Else
fValidateBankAccount = False
End Select
Case Else
fValidateBankAccount = False
End Select
Case 11, 17
lngTotal = CLng(strArrayAccount(0)) * 9 + _
CLng(strArrayAccount(1)) * 8 + _
CLng(strArrayAccount(2)) * 7 + _
CLng(strArrayAccount(3)) * 6 + _
CLng(strArrayAccount(4)) * 5 + _
CLng(strArrayAccount(5)) * 4 + _
CLng(strArrayAccount(6)) * 3 + _
CLng(strArrayAccount(7)) * 2 + _
CLng(strArrayAccount(8)) * 1
Select Case lngTotal Mod 11
Case 0, 2, 4
fValidateBankAccount = True
Case Else
fValidateBankAccount = False
End Select
Case 20
lngTotal = CLng(strArrayBranch(0)) * 9 + _
CLng(strArrayBranch(1)) * 8 + _
CLng(strArrayBranch(2)) * 7 + _
CLng(strArrayAccount(0)) * 6 + _
CLng(strArrayAccount(1)) * 5 + _
CLng(strArrayAccount(2)) * 4 + _
CLng(strArrayAccount(3)) * 3 + _
CLng(strArrayAccount(4)) * 2 + _
CLng(strArrayAccount(5)) * 1
Select Case lngTotal Mod 11
Case 0, 2, 4
fValidateBankAccount = True
End Select
Case 13
Select Case CLng(Right( _
CLng(strArrayBranch(0)) * 10 + _
CLng(strArrayBranch(1)) * 9 + _
CLng(strArrayBranch(2)) * 8 + _
CLng(strArrayAccount(0)) * 7 + _
CLng(strArrayAccount(1)) * 6 + _
CLng(strArrayAccount(2)) * 5 + _
CLng(strArrayAccount(3)) * 4 + _
CLng(strArrayAccount(4)) * 3 + _
CLng(strArrayAccount(5)) * 2 + _
CLng(Right(lngAccount, 2)) _
, 2))
Case 90, 72, 70, 60, 20
fValidateBankAccount = True
Case Else
fValidateBankAccount = False
End Select
Case 31, 52
lngTotal = CLng(strArrayAccount(0)) * 9 + _
CLng(strArrayAccount(1)) * 8 + _
CLng(strArrayAccount(2)) * 7 + _
CLng(strArrayAccount(3)) * 6 + _
CLng(strArrayAccount(4)) * 5 + _
CLng(strArrayAccount(5)) * 4 + _
CLng(strArrayAccount(6)) * 3 + _
CLng(strArrayAccount(7)) * 2 + _
CLng(strArrayAccount(8)) * 1
Select Case lngTotal Mod 11
Case 0, 6
fValidateBankAccount = True
Case Else
lngTotal = CLng(strArrayAccount(3)) * 6 + _
CLng(strArrayAccount(4)) * 5 + _
CLng(strArrayAccount(5)) * 4 + _
CLng(strArrayAccount(6)) * 3 + _
CLng(strArrayAccount(7)) * 2 + _
CLng(strArrayAccount(8)) * 1
If lngTotal Mod 11 = 0 Or lngTotal Mod 11 = 6 Then
fValidateBankAccount = True
End If
End Select
Case 14
lngTotal = CLng(strArrayBranch(0)) * 9 + _
CLng(strArrayBranch(1)) * 8 + _
CLng(strArrayBranch(2)) * 7 + _
CLng(strArrayAccount(0)) * 6 + _
CLng(strArrayAccount(1)) * 5 + _
CLng(strArrayAccount(2)) * 4 + _
CLng(strArrayAccount(3)) * 3 + _
CLng(strArrayAccount(4)) * 2 + _
CLng(strArrayAccount(5)) * 1
Select Case lngTotal Mod 11
Case 0
fValidateBankAccount = True
Case 2
Select Case strBranch
Case 347, 361, 362, 363, 365, 385, 384
fValidateBankAccount = True
End Select
Case 4
Select Case strBranch
Case 361, 362, 363
fValidateBankAccount = True
End Select
End Select
Case 46
lngTotal = CLng(strArrayBranch(0)) * 9 + _
CLng(strArrayBranch(1)) * 8 + _
CLng(strArrayBranch(2)) * 7 + _
CLng(strArrayAccount(0)) * 6 + _
CLng(strArrayAccount(1)) * 5 + _
CLng(strArrayAccount(2)) * 4 + _
CLng(strArrayAccount(3)) * 3 + _
CLng(strArrayAccount(4)) * 2 + _
CLng(strArrayAccount(5)) * 1
Select Case lngTotal Mod 11
Case 0
fValidateBankAccount = True
Case 2
Select Case strBranch
Case 154, 166, 178, 181, 183, 191, 192, 503, 505, 507, 515, 516, 527, 539
fValidateBankAccount = True
End Select
End Select
Case 9
lngTotal = CLng(strArrayAccount(0)) * 9 + _
CLng(strArrayAccount(1)) * 8 + _
CLng(strArrayAccount(2)) * 7 + _
CLng(strArrayAccount(3)) * 6 + _
CLng(strArrayAccount(4)) * 5 + _
CLng(strArrayAccount(5)) * 4 + _
CLng(strArrayAccount(6)) * 3 + _
CLng(strArrayAccount(7)) * 2 + _
CLng(strArrayAccount(8)) * 1
If lngTotal Mod 10 = 0 Then
fValidateBankAccount = True
End If
Case 22
lngTotal = CLng(strArrayAccount(0)) * 3 + _
CLng(strArrayAccount(1)) * 2 + _
CLng(strArrayAccount(2)) * 7 + _
CLng(strArrayAccount(3)) * 6 + _
CLng(strArrayAccount(4)) * 5 + _
CLng(strArrayAccount(5)) * 4 + _
CLng(strArrayAccount(6)) * 3 + _
CLng(strArrayAccount(7)) * 2
If 11 - (lngTotal Mod 11) = CLng(strArrayAccount(8)) Then
fValidateBankAccount = True
End If
Case 54
' i`a'?º e'?a*u`i`e'i' a`e'i" a`e'i^a*u', e"i` c,u`a'a*i" u'ºe'i"
fValidateBankAccount = True
Case 23
Select Case lngBranch
Case 101
fValidateBankAccount = CLng(strArrayAccount(6)) = 4
Case 102
fValidateBankAccount = strArrayAccount(6) & strArrayAccount(7) & strArrayAccount(8) = "001"
End Select
Case 18
lngTotal = CLng(lngBranch _
& strArrayAccount(0) _
& strArrayAccount(1) _
& strArrayAccount(2) _
& strArrayAccount(3) _
& strArrayAccount(4) _
& strArrayAccount(5) _
& strArrayAccount(6))
If ((lngTotal Mod 97) + CLng(strArrayAccount(7) & strArrayAccount(8))) = 98 Then
fValidateBankAccount = True
End If
End Select
End Function
בהנחה שהבנתי מה שהם רוצים:הבנק הדיגיטלי הראשון מס בנק 18
מערכת זיהוי שגיאות לא מכירה אותו
איך אפשר לתקן זאת?
מאתר מסב
וואן זירו הבנק הדיגיטלי
קוד בנק - 18
שיטת החישוב
שארית החלוקה ב97- (97MOD(.
אורך מספר חשבון
מס' חשבון בבנק הדיגיטלי מורכב מ 7 ספרות + 2 ספרות ביקורת.
דוגמא
חשבון מספר 1234567 בסניף 001 יהיה כולל ספרת ביקורת.
001 1234567 71
bbbXXXXXXXCC
11234567 % 97 = 27
98 - 27 = 71
@moishy
תודה לעוזרים
98 - מספר חשבון Mod 97
Case 18
If Len(CStr(lngAccount)) = lngRequiredAccountLength Then
If Right(CStr(lngAccount), 2) = 98 - CStr(lngBranch & Left(lngAccount, Len(CStr(lngAccount)) - 2)) Mod 97 Then
fValidateBankAccount = True
Else
fValidateBankAccount = False
End If
Else
fValidateBankAccount = False
End If
באיזה מקרה?בנק לאומי לא תקין
בכל המקריםבאיזה מקרה?
כי זה מה שמוגדר במס"ב
עובדבהנחה שהבנתי מה שהם רוצים:
- אורך מספר החשבון (כולל 2 ספרות ביקורת) הוא 9 ספרות
- ספרות הביקורות צריכות להיות שוות לתוצאה של התרגיל הבא:
קוד:98 - מספר חשבון Mod 97
תוסיף את הקוד הבא:
קוד:Case 18 If Len(CStr(lngAccount)) = lngRequiredAccountLength Then If Right(CStr(lngAccount), 2) = 98 - CStr(lngBranch & Left(lngAccount, Len(CStr(lngAccount)) - 2)) Mod 97 Then fValidateBankAccount = True Else fValidateBankAccount = False End If Else fValidateBankAccount = False End If
תנו לי מספר חשבון לדוגמאבכל המקרים
לוח לימודים
מסלולי לימוד שאפשר לההצטרף
אליהם ממש עכשיו:
19.11
י"ח חשוון
פתיחת
קורס בינה מלאכותית - חדשנות ב AI
קורס מקוצר
25.11
כ"ד
פתיחת
קורס פרסום קופי+
מלגות גבוהות!
26.11
כ"ה חשוון
אירוע שיתופים ייחודי
בוטים מספרים על עצמם
בואו לשמוע בוגרים מובילים שלנו משתפים אתהסיפור מאחורי הבוטים הייחודיים שהם פיתחו.הצצה מרתקת לעולמות האוטומציה, החדשנות והפתרונות החכמים,עם הזדמנות ללמוד איך גם אתם יכולים לקחת חלק במהפכה הטכנולוגית.
הכניסה חופשית!
27.11
כ"ו חשוון
נפתחה ההרשמה!
קורס צילום חוץ, אירועים וסטודיו - עם בינה מלאכותית!
מלגות גבוהות!
27.11
כ"ו חשוון
פתיחת
קורס פיתוח בוטים ואוטומציות עסקיות
מלגות גבוהות!
27.11
כ"ו חשוון
פתיחת
קורס עיצוב גרפי ודיגיטל - בסילבוס חדש ומטורף!
מלגות גבוהות!
תהילים פרק קכו
א שִׁיר הַמַּעֲלוֹת בְּשׁוּב יי אֶת שִׁיבַת צִיּוֹן הָיִינוּ כְּחֹלְמִים:ב אָז יִמָּלֵא שְׂחוֹק פִּינוּ וּלְשׁוֹנֵנוּ רִנָּה אָז יֹאמְרוּ בַגּוֹיִם הִגְדִּיל יי לַעֲשׂוֹת עִם אֵלֶּה:ג הִגְדִּיל יי לַעֲשׂוֹת עִמָּנוּ הָיִינוּ שְׂמֵחִים:ד שׁוּבָה יי אֶת (שבותנו) שְׁבִיתֵנוּ כַּאֲפִיקִים בַּנֶּגֶב:ה הַזֹּרְעִים בְּדִמְעָה בְּרִנָּה יִקְצֹרוּ:ו הָלוֹךְ יֵלֵךְ וּבָכֹה נֹשֵׂא מֶשֶׁךְ הַזָּרַע בֹּא יָבוֹא בְרִנָּה נֹשֵׂא אֲלֻמֹּתָיו: