יצירת קובץ מס"ב

FullTime

משתמש מקצוען
במספר המוסד תכניס את קוד המוסד בן 8 ספרות
במוסד שולח מה שאתה רוצה.
 

moishy

משתמש סופר מקצוען
מנוי פרימיום

FullTime

משתמש מקצוען
את שני המספרים הללו מקבלים ממס"ב.

ממסב מקבלים מספר אחד, בן 8 ספרות, יותר נכון תקרא לזה 5 ועוד 3
בדקתי שוב בקובץ שאני משתמש בו
במוסד שולח רק את ה 5 ספרות
ובקוד המוסד כל ה 8 ספרות
 

moishy

משתמש סופר מקצוען
מנוי פרימיום
ממסב מקבלים מספר אחד, בן 8 ספרות, יותר נכון תקרא לזה 5 ועוד 3
בדקתי שוב בקובץ שאני משתמש בו
במוסד שולח רק את ה 5 ספרות
ובקוד המוסד כל ה 8 ספרות
נכון, לא כמו שכתבת למעלה.
 

מ321

משתמש חדש
תודה רבה לכל העוזרים והמסייעים, אתמול ב"ה הצלחתי לגבות.
תזכו למצוות!!!
 

מה הענינים

צוות הנהלה
מנהל
מנוי פרימיום
קודם תודה על התוכנה. משתמשת בה הרבה והיא נוחה וטובה מאד

שאלה, האם חובה לרשום מספר זהות בשביל להעביר את הקובץ? נאמר שלא היתה את העמודה של מספר הזהות, קובץ המס"ב לא היה תקין?
 

FullTime

משתמש מקצוען
בצורתה הנוכחית אין אפשרות לייצר קובץ עם תז לא תקין או ריק.
אפשר לעשות שינוי בקוד לכך.
אבל נדמה לי שאפשר לרשום אפסים ואז זה תקין.
 

efratd

משתמש חדש
יש למישהו דוגמא לקובץ TXT ששולחים למס"ב?
יש לי את המפרט אבל לא הבנתי איך לעבוד לפיו
אשמח ממש לעזרה
תודה רבה!
 
יצרתי קובץ מס"ב באופן פרטי אצלינו בתוכנה.
כתבתי ב#C ולא יודעת כיצד לקדד אותיות עבריות, וכן האם אותיות אנגליות לשדר כמות שהן? (בשם המוסד ושמות המוטבים...)
הבנתי מהדו שיח פה שיש צורך להפוך את המחרוזת, אבל מעבר לזה כיצד לכתוב את האותיות לקובץ?
ראיתי דוג' לקובץ כאשר האותיות מוצפנות ואין לי מושג כיצד עלי לקודד...
אשמח להסבר.
תודה רבה!
 
הבנק הדיגיטלי הראשון מס בנק 18
מערכת זיהוי שגיאות לא מכירה אותו
איך אפשר לתקן זאת?
מאתר מסב

וואן זירו הבנק הדיגיטלי
קוד בנק - 18
שיטת החישוב
שארית החלוקה ב97- (97MOD(.
אורך מספר חשבון
מס' חשבון בבנק הדיגיטלי מורכב מ 7 ספרות + 2 ספרות ביקורת.
דוגמא
חשבון מספר 1234567 בסניף 001 יהיה כולל ספרת ביקורת.
001 1234567 71
bbbXXXXXXXCC
11234567 % 97 = 27
98 - 27 = 71


@moishy
תודה לעוזרים
 

אפר

סתם מתעניין...
מנוי פרימיום
הבנק הדיגיטלי הראשון מס בנק 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
 

moishy

משתמש סופר מקצוען
מנוי פרימיום
הבנק הדיגיטלי הראשון מס בנק 18
מערכת זיהוי שגיאות לא מכירה אותו
איך אפשר לתקן זאת?
מאתר מסב

וואן זירו הבנק הדיגיטלי
קוד בנק - 18
שיטת החישוב
שארית החלוקה ב97- (97MOD(.
אורך מספר חשבון
מס' חשבון בבנק הדיגיטלי מורכב מ 7 ספרות + 2 ספרות ביקורת.
דוגמא
חשבון מספר 1234567 בסניף 001 יהיה כולל ספרת ביקורת.
001 1234567 71
bbbXXXXXXXCC
11234567 % 97 = 27
98 - 27 = 71


@moishy
תודה לעוזרים
בהנחה שהבנתי מה שהם רוצים:
- אורך מספר החשבון (כולל 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
 

prager

משתמש חדש
בהנחה שהבנתי מה שהם רוצים:
- אורך מספר החשבון (כולל 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
עובד
אחרי שהוספתי למעלה
Case 18
lngRequiredAccountLength = 9
 

אולי מעניין אותך גם...

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק קכב

א שִׁיר הַמַּעֲלוֹת לְדָוִד שָׂמַחְתִּי בְּאֹמְרִים לִי בֵּית יְהוָה נֵלֵךְ:ב עֹמְדוֹת הָיוּ רַגְלֵינוּ בִּשְׁעָרַיִךְ יְרוּשָׁלִָם:ג יְרוּשָׁלִַם הַבְּנוּיָה כְּעִיר שֶׁחֻבְּרָה לָּהּ יַחְדָּו:ד שֶׁשָּׁם עָלוּ שְׁבָטִים שִׁבְטֵי יָהּ עֵדוּת לְיִשְׂרָאֵל לְהֹדוֹת לְשֵׁם יְהוָה:ה כִּי שָׁמָּה יָשְׁבוּ כִסְאוֹת לְמִשְׁפָּט כִּסְאוֹת לְבֵית דָּוִיד:ו שַׁאֲלוּ שְׁלוֹם יְרוּשָׁלִָם יִשְׁלָיוּ אֹהֲבָיִךְ:ז יְהִי שָׁלוֹם בְּחֵילֵךְ שַׁלְוָה בְּאַרְמְנוֹתָיִךְ:ח לְמַעַן אַחַי וְרֵעָי אֲדַבְּרָה נָּא שָׁלוֹם בָּךְ:ט לְמַעַן בֵּית יְהוָה אֱלֹהֵינוּ אֲבַקְשָׁה טוֹב לָךְ:
נקרא  22  פעמים

לוח מודעות

למעלה