Гость
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / ИНН - как расшифровать? / 20 сообщений из 20, страница 1 из 1
11.01.2007, 10:51
    #34247778
PVP
PVP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
Что входит в ИНН - индивидуальный налоговый номер?
Можно ли в нем найти дату рождения, пол человека, или еще что нибудь полезное?
...
Рейтинг: 0 / 0
11.01.2007, 11:14
    #34247902
Roman V Tchemisov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
Первые две цифры (как я понял) это код субъекта федерации. Например, у нас (в Иркутской области) это 38.
...
Рейтинг: 0 / 0
11.01.2007, 11:23
    #34247956
ModelR
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
В российском ИНН - только код региона и налоговой инспекции.
...
Рейтинг: 0 / 0
11.01.2007, 14:59
    #34249027
PVP
PVP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
А в пенсионном ПФР?
На Украине только один код используется - ИНК (индивидуальный налоговый код). Из него мы в программе берем дату и пол. А тут появился российский заказчик, и наш ИНК не подходит. А так не хочется вводить эти параметры в справочник лицевых счетов:(. Не столько лень программу изменять, сколько не хочется нагружать пользователей этой работой.
...
Рейтинг: 0 / 0
11.01.2007, 17:49
    #34249759
aag
aag
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
первые 4-ре цифры - код налоговой, далее по-моему, некий номер по порядку. Последний разряд - контрольный.
Алгоритм проверки был в Консультанте, если надо могу прислать ф-цию.
Если учесть, что ИНН начинались с юрлиц и для них более актуальны, то найти в нем дату рождения тяжело.

Nobody faults but mine... (LZ)
...
Рейтинг: 0 / 0
14.01.2007, 11:10
    #34253956
Dynamic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
Структура идентификационного номера налогоплательщика (ИНН) представляет собой:
- для организации - десятизначный цифровой код:

--T-T-T-T-T-T-T-T-T-¬
¦N¦N¦N¦N¦X¦X¦X¦X¦X¦C¦
L-+-+-+-+-+-+-+-+-+--

- для физического лица - двенадцатизначный цифровой код:

--T-T-T-T-T-T-T-T-T-T-T-¬
¦N¦N¦N¦N¦X¦X¦X¦X¦X¦X¦C¦C¦
L-+-+-+-+-+-+-+-+-+-+-+--

Идентификационный номер налогоплательщика (ИНН) формируется как цифровой код, состоящий из последовательности цифр, характеризующих слева направо следующее:
код налогового органа, который присвоил идентификационный номер налогоплательщика (ИНН) (NNNN);
собственно порядковый номер записи о лице в территориальном разделе единого государственного реестра налогоплательщиков налогового органа, осуществившего постановку на учет:
для организаций - 5 знаков (ХХХХХ);
для физических лиц - 6 знаков (ХХХХХХ);
контрольное число, рассчитанное по специальному алгоритму, установленному Министерством Российской Федерации по налогам и сборам:
для организаций - 1 знак (С);
для физических лиц - 2 знака (СС).
...
Рейтинг: 0 / 0
14.01.2007, 22:01
    #34254419
PVP
PVP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
Спасибо, Dynamic , все предельно ясно.

aagАлгоритм проверки был в Консультанте, если надо могу прислать ф-цию.Если не очень затруднит, то пришлите, пожалуйста. Принимать в базу такие коды без котроля - это есть не хорошо.
...
Рейтинг: 0 / 0
15.01.2007, 10:20
    #34254854
Dynamic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
PVPСпасибо, Dynamic , все предельно ясно.

aagАлгоритм проверки был в Консультанте, если надо могу прислать ф-цию.Если не очень затруднит, то пришлите, пожалуйста. Принимать в базу такие коды без котроля - это есть не хорошо.

это и есть из консультанта ;)
...
Рейтинг: 0 / 0
15.01.2007, 10:23
    #34254860
Dynamic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
есть еще функция для проверки валидности ИНН и СНИЛС (автор Камбалов А.Н.), но СНИЛС как-то не совсем правильно рассчитывается. Реализация на паскале.
...
Рейтинг: 0 / 0
15.01.2007, 12:39
    #34255370
Shtock
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
Эх,мне бы Ваши проблемы :) Исходники
...
Рейтинг: 0 / 0
15.01.2007, 18:17
    #34256791
PVP
PVP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
ShtockЭх,мне бы Ваши проблемы :) Исходники Так в чем дело, можем поделиться проблемами :)
Спасибо за алгоритмы проверки кодов, очень полезная вещь.
...
Рейтинг: 0 / 0
16.01.2007, 01:27
    #34257258
Dmitry V. Liseev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
Hi!

aag
Алгоритм проверки был в Консультанте, если надо могу прислать ф-цию.
Желательно прямо сюда в форум вот это:
Dynamic
контрольное число, рассчитанное по специальному алгоритму, установленному Министерством
Российской Федерации по налогам и сборам:
Думаю, многим бы пригодилось.
____________________________
С уважением, Лисеев Дмитрий.
http://private.peterlink.ru/dimik/
PGP key fingerprint: 09 28 74 28 6C 39 62 29 2E CB 95 03 4F 04 33 73


Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
16.01.2007, 04:26
    #34257282
sn1251
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
Вот как это делалось в старину на Sybase Transact-SQL
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
create procedure CheckINN
  @inn varchar( 20 ),
  @msg varchar( 255 ) = null output
as
begin

  declare
    @l   int,
    @cs  int

  if @inn like '%[^0-9]%' begin
    select @msg = 'ИНН должен быть полностью цифровой'
    return  1 
  end

  select @l = char_length(@inn)
  if @l not between  10  and  12  begin
    select @msg = 'Неверное число знаков (должно быть 10,11 или 12)'
    return  2 
  end

  select @cs = ((
    convert(int, substring(@inn, @l -  1 ,  1 )) *  8 
  + convert(int, substring(@inn, @l -  2 ,  1 )) *  6 
  + convert(int, substring(@inn, @l -  3 ,  1 )) *  4 
  + convert(int, substring(@inn, @l -  4 ,  1 )) *  9 
  + convert(int, substring(@inn, @l -  5 ,  1 )) *  5 
  + convert(int, substring(@inn, @l -  6 ,  1 )) *  3 
  + convert(int, substring(@inn, @l -  7 ,  1 )) * 10 
  + convert(int, substring(@inn, @l -  8 ,  1 )) *  4 
  + convert(int, substring(@inn, @l -  9 ,  1 )) *  2 
  + case when @l >  10 
      then convert(int, substring(@inn, @l - 10 ,  1 )) *  7 
    + case when @l >  11 
      then convert(int, substring(@inn, @l - 11 ,  1 )) *  3 
      else  0 
      end
    else  0 
    end ) %  11 ) %  10 

  if convert(int, substring(@inn, @l,  1 )) <> @cs begin
    select @msg = 'Несовпадает контрольная сумма (должна быть '+convert(varchar( 10 ),@cs)+')'
    return  3 
  end

  return  0 

end
go

--тест
declare @err int, @msg varchar( 255 )
exec @err=CheckINN '6451107170', @msg output
select @err, @msg
go
declare @err int, @msg varchar( 255 )
exec @err=CheckINN '6451107171', @msg output
select @err, @msg
go
...
Рейтинг: 0 / 0
17.01.2007, 08:09
    #34260390
Dynamic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
ShtockЭх,мне бы Ваши проблемы :) Исходники

Спасибо большущее за ссылку, будем тестить ;)
...
Рейтинг: 0 / 0
02.02.2007, 15:12
    #34302639
Anna Yu.
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
вот так делают у нас

... функция оракла
AS
checksum number(10) default 0;
BEGIN
BEGIN
if length(inn)=10 then -- для юридических лиц
checksum := checksum + to_number(substr(inn,1,1)) * 2;
checksum := checksum + to_number(substr(inn,2,1)) * 4;
checksum := checksum + to_number(substr(inn,3,1)) *10;
checksum := checksum + to_number(substr(inn,4,1)) * 3;
checksum := checksum + to_number(substr(inn,5,1)) * 5;
checksum := checksum + to_number(substr(inn,6,1)) * 9;
checksum := checksum + to_number(substr(inn,7,1)) * 4;
checksum := checksum + to_number(substr(inn,8,1)) * 6;
checksum := checksum + to_number(substr(inn,9,1)) * 8;
checksum := mod(checksum,11);
checksum := mod(checksum,10);
if checksum <> to_number(substr(inn,10,1)) then
return 'код ИНН содержит ошибку, проверьте правильность кода!';
end if;
elsif length(inn)=12 then -- для ЧП, ИЧП и ПБОЮЛ
checksum := checksum + to_number(substr(inn,1,1)) * 7;
checksum := checksum + to_number(substr(inn,2,1)) * 2;
checksum := checksum + to_number(substr(inn,3,1)) * 4;
checksum := checksum + to_number(substr(inn,4,1)) *10;
checksum := checksum + to_number(substr(inn,5,1)) * 3;
checksum := checksum + to_number(substr(inn,6,1)) * 5;
checksum := checksum + to_number(substr(inn,7,1)) * 9;
checksum := checksum + to_number(substr(inn,8,1)) * 4;
checksum := checksum + to_number(substr(inn,9,1)) * 6;
checksum := checksum + to_number(substr(inn,10,1)) * 8;
checksum := mod(checksum,11);
checksum := mod(checksum,10);
if checksum <> to_number(substr(inn,11,1)) then
return 'код ИНН содержит ошибку, проверьте правильность кода!!';
end if;
checksum := 0;
checksum := checksum + to_number(substr(inn,1,1)) * 3;
checksum := checksum + to_number(substr(inn,2,1)) * 7;
checksum := checksum + to_number(substr(inn,3,1)) * 2;
checksum := checksum + to_number(substr(inn,4,1)) * 4;
checksum := checksum + to_number(substr(inn,5,1)) *10;
checksum := checksum + to_number(substr(inn,6,1)) * 3;
checksum := checksum + to_number(substr(inn,7,1)) * 5;
checksum := checksum + to_number(substr(inn,8,1)) * 9;
checksum := checksum + to_number(substr(inn,9,1)) * 4;
checksum := checksum + to_number(substr(inn,10,1)) * 6;
checksum := checksum + to_number(substr(inn,11,1)) * 8;
checksum := mod(checksum,11);
checksum := mod(checksum,10);
if checksum <> to_number(substr(inn,12,1)) then
return 'код ИНН содержит ошибку, проверьте правильность кода!!!';
end if;
else
return 'код ИНН должен состоять из 10 или 12 знаков';
end if;
EXCEPTION WHEN VALUE_ERROR THEN
return 'код ИНН должен состоять только из цифр';
END;
return '';
END;
...
Рейтинг: 0 / 0
22.05.2007, 19:20
    #34543589
StasK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
PVPА в пенсионном ПФР?
На Украине только один код используется - ИНК (индивидуальный налоговый код). Из него мы в программе берем дату и пол.

Поподробнее, пожалуйста, как это сделать?
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
23.04.2009, 22:09
    #35951263
zvl
zvl
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
<?php
function CalcCtrlSum($n) {
$a = str_split($n);
$b = '';
foreach($a as $value) {
if (ctype_digit($value)) {
$b .= $value;
}
}
if (strlen($b) == 9) {
settype($b, "integer");
$sum = 0;
$ki = 1;
for ($i = 9; $i > 0; $i--) {
$ni = $b % 10;
$b = (int)($b / 10);
$sum = $sum + $ni * $ki;
$ki++;
}
$sum = $sum % 101;
if ($sum >= 100) $sum = 0;
return $sum;
}
else {echo "Номер СНИЛС должен содержать 9 цифр";};
}
?>
после вызова функции сверяете полученные результаты и оставшиеся 2 цифры (которые не вводили)
...
Рейтинг: 0 / 0
31.10.2009, 16:22
    #36283809
ИНН - как расшифровать?
Зачем изобретать то, что уже давно изобретено ?
В интернете на сайте http://ukrlab.freevar.com есть программа для расшифровки идентификационного кода граждан Украины UA-ID v3.5 Она идет вместе с пакетом других программ в оболочке UkrSoftBox v9.7

Берите и пользуйтесь и не морочте голову другим http://ukrlab.freevar.com
...
Рейтинг: 0 / 0
02.11.2009, 17:41
    #36286667
sobolev
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
ShtockЭх,мне бы Ваши проблемы :) Исходники
Спасибо. Встроили в систему - отлично работает.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
17.05.2012, 18:23
    #37799708
vetalbob
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ИНН - как расшифровать?
Я живу в Украине и юзаю онлайн сервис для расшифровки украинских инн http://decode.org.ua/inn , быстро и без заморочек. Может кому пригодится.
...
Рейтинг: 0 / 0
Форумы / Разработка информационных систем [игнор отключен] [закрыт для гостей] / ИНН - как расшифровать? / 20 сообщений из 20, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]