Kontrola matičnog broja privrednog subjekta
25.12.2015. u 16:31 · pre 131 meseci
#1
Pozdrav svim članovima foruma
Možda je tema već obradjivana ali neće biti na odmet da je malo osvežimo. Problem mi je provera matičnog broja preduzeća, koji se unosi sa neke forme i smešta u bazu. Poznato je da je taj broj jedinstven u bazi APR-a, ima 8 cifara s tim da je zadnja cifra kontrolna. cifre 0-5 se dodaljuju privrednim društvima a iznad preduzetnicima.
Pokušavao sam da nadjem kako se kontroliše unos broja i našao sam da se to vrši preko modula 11, nešto sam napravio ali to ne daje rezultate kako treba. U nastavku je kod:
Public Function KontrolniMBR(ByVal inTekst As String)
Dim cifra(1 To 7), i, zbir As Integer
Dim MbrT As String
Dim Result As Variant
KontrolniMBR = False
If inTekst = "" Then Exit Function
If Not IsNumeric(inTekst) Then Exit Function
If Len(inTekst) <> 8 Then Exit Function
MbrT = Mid$(inTekst, 1, 7)
For i = 1 To 7
cifra(i) = Int(Mid$(MbrT, i, 1))
Next i
zbir = cifra(1) * 7 + cifra(2) * 6 + cifra(3) * 5 + cifra(4) * 4
zbir = zbir + cifra(5) * 3 + cifra(6) * 2 + cifra(7) * 1
Result = 11 - (zbir - (Int(zbir / 11) * 11))
If Result = Val(Right(inTekst, 1)) Then
KontrolniMBR = True
Else
KontrolniMBR = False
End If
End Function
Kada se ovo startuje ne dobijaju se vrdnosti kakve treba za matične brojeve kojie se nalaze u bazi APR-a.
Može li pomoć?
Hvala
Možda je tema već obradjivana ali neće biti na odmet da je malo osvežimo. Problem mi je provera matičnog broja preduzeća, koji se unosi sa neke forme i smešta u bazu. Poznato je da je taj broj jedinstven u bazi APR-a, ima 8 cifara s tim da je zadnja cifra kontrolna. cifre 0-5 se dodaljuju privrednim društvima a iznad preduzetnicima.
Pokušavao sam da nadjem kako se kontroliše unos broja i našao sam da se to vrši preko modula 11, nešto sam napravio ali to ne daje rezultate kako treba. U nastavku je kod:
Public Function KontrolniMBR(ByVal inTekst As String)
Dim cifra(1 To 7), i, zbir As Integer
Dim MbrT As String
Dim Result As Variant
KontrolniMBR = False
If inTekst = "" Then Exit Function
If Not IsNumeric(inTekst) Then Exit Function
If Len(inTekst) <> 8 Then Exit Function
MbrT = Mid$(inTekst, 1, 7)
For i = 1 To 7
cifra(i) = Int(Mid$(MbrT, i, 1))
Next i
zbir = cifra(1) * 7 + cifra(2) * 6 + cifra(3) * 5 + cifra(4) * 4
zbir = zbir + cifra(5) * 3 + cifra(6) * 2 + cifra(7) * 1
Result = 11 - (zbir - (Int(zbir / 11) * 11))
If Result = Val(Right(inTekst, 1)) Then
KontrolniMBR = True
Else
KontrolniMBR = False
End If
End Function
Kada se ovo startuje ne dobijaju se vrdnosti kakve treba za matične brojeve kojie se nalaze u bazi APR-a.
Može li pomoć?
Hvala