|
v7: Проверка ОГРНИП. Алгоритм | ☑ | ||
|---|---|---|---|---|
|
0
svsrus
04.08.07
✎
12:22
|
Нашел вот алгоритм проверки правильности ввода ОГРН. А у меня вводится не только ОГРН, но и ОГРНИП. ОГРН - 13 цифр, ОГРНИП - 15 цифр. Никто не подскажет алгоритм проверки ОГРНИП. Или он такой же как и у ОГРН.
|
|||
|
1
ИльяА
04.08.07
✎
12:45
|
А какой у ОГРН?
|
|||
|
2
svsrus
04.08.07
✎
13:21
|
Алгоритм проверки ОГРН:
Функция КонтрольноеЧисло(СтрокаЦифр, Знач СтрокаМножителей="") СтрокаМножителей=СтрЗаменить(СтрокаМножителей,",",РазделительСтрок); Сумма=0; Если ПустаяСтрока(СтрокаМножителей)=1 Тогда Сумма=Число(СтрокаЦифр); Иначе Для а=1 По Мин(СтрДлина(СтрокаЦифр),СтрКоличествоСтрок(СтрокаМножителей)) Цикл Цифра = Число(Сред(СтрокаЦифр,а,1)); Множитель=Число(СтрПолучитьСтроку(СтрокаМножителей,а)); Сумма=Сумма+Цифра*Множитель; КонецЦикла; КонецЕсли; КонтрольноеЧисло=Сумма-(Цел(Сумма/11)*11); КонтрольноеЧисло=?(КонтрольноеЧисло=10,0,КонтрольноеЧисло); Возврат КонтрольноеЧисло; КонецФункции // КонтрольноеЧисло Функция глПроверкаОГРН(Знач ОГРН) Экспорт Хорошо=1; СтрокаЦифр=Лев(ОГРН,12); КонтрольноеЧисло=Число(Прав(ОГРН,1)); Если ПустаяСтрока(СтрокаЦифр)=0 Тогда Если КонтрольноеЧисло<>КонтрольноеЧисло(СтрокаЦифр) Тогда Хорошо=0; КонецЕсли; Иначе Хорошо=0; КонецЕсли; Возврат Хорошо; КонецФункции // глПроверкаОГРН |
|||
|
3
1Сергей
04.08.07
✎
13:23
|
А что такое ОГРН?
|
|||
|
4
1Сергей
04.08.07
✎
13:28
|
Впервые вижу, чтобы были функция и переменная с одним идентификатором. Это работает?
|
|||
|
5
svsrus
04.08.07
✎
13:44
|
(3) ОГРН - обязательный гос. регистрационный номер. ОГРНИП - то же самое, но для ИП.
Работает!:))) |
|||
|
6
svsrus
04.08.07
✎
13:50
|
Т.е. по сути нужно узнать как расчитывается контрольное число для ОГРНИП.
|
|||
|
7
svsrus
04.08.07
✎
13:52
|
Нашел. Кому интересно:
Номера ОГРН и ОГРНИП (Основной Государственный Регистрационный Номер (для Индивидуального Предпринимателя)) Состоят из 13 (или 15) цифр, из них последняя — n1 — контрольная. Контрольная цифра равна остатку от деления на 11 числа, состоящего из первых 12 (или 14) цифр. Если остаток есть 10, то n1 = 0. Конкретные примеры: 1037739010891 — 13 цифр, ОГРН. Вычисляем остаток: -1+0-3+7-7+3-9+0-1+0-8+9 = -10; -10 + 11 = 1(остаток) Контрольное число = 1 — совпадает, номер правильный. 304500116000157 — 15 цифр, ОГРНИП. Вычисляем остаток: -3+0-4+5-0+0-1+1-6+0-0+0-1+5= -4; -4 + 11 = 7(остаток) Контрольное число = 7 — совпадает, номер правильный. |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |