helpf.pro
Регистрация
 0 
Распечатать

1С 8.x : Функция проверяет номер страхового свидетельства на соответствие требованиям ПФР

Проверка контрольного числа Страхового номера проводится только для номеров больше номера 001–001–998
Контрольное число Страхового номера рассчитывается следующим образом:
• каждая цифра Страхового номера умножается на номер своей позиции (позиции отсчитываются с конца)
• полученные произведения суммируются
• сумма делится на 101
• последние две цифры остатка от деления является Контрольным числом.
Например: Указан страховой номер 112–233–445 95
Проверяем правильность контрольного числа:
цифры номера 1 1 2 2 3 3 4 4 5
номер позиции 9 8 7 6 5 4 3 2 1
1х9+1х8+2х7+2х6+3х5+3х4+4х3+4х2+5х1=95
95 / !101! =95
Контрольное число=95 – указано верно
Некоторые частные случаи:
99 / !101! =99
100 / !101! =00
101 / !101! =00
102 / !101! =01
Код 1C v 8.х
 //Проверяет номер страхового свидетельства на соответствие требованиям ПФР
Функция СтраховойНомерПФРСоответствуетТребованиям(СтраховойНомер) Экспорт

Результат = Истина;

СтрокаЦифр=СтрЗаменить(Лев(СтраховойНомер,11),"-","");

Если ПустаяСтрока(СтрокаЦифр) Тогда
Возврат Ложь;
КонецЕсли;

Попытка
П1 = Число(СтрокаЦифр);
КонтрольноеЧисло=Число(Прав(СтраховойНомер,2));
Исключение
Возврат Ложь;
КонецПопытки;

Если Число(Лев(СтрокаЦифр,9)) > 1001998 Тогда
Всего=0;
Для Сч = 1 По 9 Цикл
Всего=Всего+Число(Сред(СтрокаЦифр,10-Сч,1))*Сч
КонецЦикла;
Остаток=Всего%101;
Остаток=?(Остаток=100,0,Остаток);
Если Остаток<>КонтрольноеЧисло Тогда
Результат = Ложь;
КонецЕсли;
КонецЕсли;

Возврат Результат;

КонецФункции
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 17931
 0 
Распечатать
Возможно, вас также заинтересует
17 правил для составления оптимального ЗАПРОСа к данным базы 1С 52
Для формирования и выполнения запросов к таблицам базы данных в платформе 1С используется специальный объект языка программирования Запрос . Создается этот объект вызовом конструкции Новый Запрос . Запрос удобно использовать, когда требуется получ
1С 8.x : Как убрать лидирующие нули в номере Документа (вариант2) 0
Скопировать строку с номером, с лидирующими нулями, в числовом поле (с форматом без групп, без группировки), и вернуть(скопировать) обратно в строковом поле с номером. Возвращает без нулей.
COM-подключение к базе 7.7 из 8.2 1С 7
Если код выполняется на стороне клиента, то необходимо наличие базы 7.7 на локальной машине. Пример (На форме объекта присутствует реквизит Таблица(ТаблицаЗначений)): НаКлиенте Процедура Загрузки() ПутьКБазе=" D:ВашаБаза1с77" ; Пользователь=
Cклонения по падежам 6
НаКлиенте Процедура Команда1(Команда) ФИО = " Иванов Иван Иванович" ; Падеж = 2; Пол = 1; Результат = СклонениеФИО(ФИО, Падеж, пол); Сообщить(Результат); КонецПроцедуры НаСервере Функция СклонениеФИО(ФИО, Падеж, пол) Результат = " " ;
QR код в 1С 21
Столкнулся с интересной задачей реализации генерации QR-кода в 1С 8.2 ( QR-код — матричный код (двухмерный штрихкод) ) Для генерации было использовано api от google (http://chart.apis.google.com/chart). Вот сайт , который работает с ним. После тог
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.