ПроверитьОГРН (1С 8.3,8.2)
Функция выполняет проверку переданной строки с ОГРН на предмет корректности согласно алгоритму подсчёта контрольных сумм. Возвращает Истина, если Ок, иначе Ложь.
Функция ПроверитьОГРН(Знач Значение) Экспорт ОГРН = СокрЛП(Значение); Если Не ПопыткаПеревестиВЧисло(ОГРН) Тогда Возврат Ложь; КонецЕсли; Если СтрДлина(ОГРН) = 13 Тогда Число = Число(Сред(ОГРН, 1, 12)); Остаток = Число % 11; Если Остаток > 9 Тогда Остаток = Остаток % 10; КонецЕсли; Возврат Остаток = Число(Сред(ОГРН, 13, 1)); ИначеЕсли СтрДлина(ОГРН) = 15 Тогда Число = Число(Сред(ОГРН, 1, 14)); Остаток = Число % 13; Если Остаток > 9 Тогда Остаток = Остаток % 10; КонецЕсли; Возврат Остаток = Число(Сред(ОГРН, 15, 1)); Иначе Возврат Ложь; КонецЕсли; КонецФункции |