![]() |
![]() |
|
Проверка ИНН | ☑ | ||
---|---|---|---|---|
0
SVolk
27.07.06
✎
08:36
|
Существует ли алгоритм проверки правильности заполнения ИНН подобный проверки правильности заполнения расчетного счета? В типовой бухгалтерии есть только проверки на длину ИНН для физ.лиц и юр.лиц.
|
|||
1
ZolotarevAA
27.07.06
✎
08:37
|
(0) Существует.
|
|||
2
Морозов Александр
27.07.06
✎
08:38
|
алгоритм проверки ИНН 10 знаков:
1. Вычисляется контрольная сумма со следующими весовыми коэффициентами: (2,4,10,3,5,9,4,6,8,0) 2. Вычисляется контрольное число как остаток от деления контрольной суммы на 11 3. Если контрольное число больше 9, то контрольное число вычисляется как остаток от деления контрольного числа на 10 4. Контрольное число проверяется с десятым знаком ИНН. В случае их равенства ИНН считается правильным. алгоритм проверки ИНН 12 знаков. 1. Вычисляется контрольная сумма по 11-ти знакам со следующими весовыми коэффициентами: (7,2,4,10,3,5,9,4,6,8,0) 2. Вычисляется контрольное число(1) как остаток от деления контрольной суммы на 11 3. Если контрольное число(1) больше 9, то контрольное число(1) вычисляется как остаток от деления контрольного числа(1) на 10 4. Вычисляется контрольная сумма по 12-ти знакам со следующими весовыми коэффициентами: (3,7,2,4,10,3,5,9,4,6,8,0). 5. Вычисляется контрольное число(2) как остаток от деления контрольной суммы на 11 6. Если контрольное число(2) больше 9, то контрольное число(2) вычисляется как остаток от деления контрольного числа(2) на 10 7. Контрольное число(1) проверяется с одиннадцатым знаком ИНН и контрольное число(2) проверяется с двенадцатым знаком ИНН. В случае их равенства ИНН считается правильным. |
|||
3
Морозов Александр
27.07.06
✎
08:41
|
||||
4
Мулька
27.07.06
✎
08:43
|
(3) Только для членовозов (добавлять надо)
|
|||
5
у лю 427
27.07.06
✎
09:04
|
у mszsuz на синоре есть... Я оттуда всегда дергаю...
|
|||
6
SVolk
27.07.06
✎
15:00
|
Спасибо всем
|
|||
7
SVolk
28.07.06
✎
10:16
|
Описанный алгоритм(2) некорректен.
>2. Вычисляется контрольное число как остаток от деления контрольной суммы на 11 >3. Если контрольное число больше 9, то контрольное число вычисляется как остаток от деления контрольного числа на 10 >4. Контрольное число проверяется с десятым знаком ИНН. В случае их равенства ИНН считается правильным Остаток от деления всегда меньше 0. И что делать, если по п.3 будет иначе? (<9) |
|||
8
SVolk
28.07.06
✎
11:01
|
Прошу прощения про остаток от деления, с ним я лопухнулась. Но все равно не ясно, что делать, если остаток меньше 9. Почему нет таких проверок и отчетах по проверки ИНН, которые мне удалось найти.
|
|||
9
bse
28.07.06
✎
11:08
|
Функция КонтрольнаяСуммаИНН(n,inn)
Перем checksum[11]; checksum[1]=3; checksum[2]=7; checksum[3]=2; checksum[4]=4; checksum[5]=10; checksum[6]=3; checksum[7]=5; checksum[8]=9; checksum[9]=4; checksum[10]=6; checksum[11]=8; s=0; Для i=1 По n-1 Цикл s=s+Число(Сред(inn,i,1))*checksum[12-n+i]; КонецЦикла; Возврат s%11%10; КонецФункции Функция ПроверитьИНН(Знач inn) inn=СокрЛП(Строка(inn)); len=СтрДлина(inn); Если len=10 тогда Если Число(Сред(inn,10,1))<>КонтрольнаяСуммаИНН(10,inn) тогда Возврат 0; КонецЕсли; ИначеЕсли len=12 then Если Число(Сред(inn,11,1))<>КонтрольнаяСуммаИНН(11,inn) тогда Возврат 0; КонецЕсли; Если Число(Сред(inn,12,1))<>КонтрольнаяСуммаИНН(12,inn) тогда Возврат 0; КонецЕсли; Иначе Возврат 0; КонецЕсли; Возврат 1; КонецФункции |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |