Для того, чтобы это работало, надо:
1. У регистра сведений "ГраницыЗапретаИзмененияДанных" нужно создать в ресурсах 2 новых:
ГраницаЗапретаИзмененийУстановлена (тип дата и время)
КоличествоДнейДоступа (тип число, длина 5, не отрицательный)
2. Общие формы "УстановкаДатыЗапретаИзмененияДанных" нужно на обе закладки добавить по 2 колонки (2 новых ресурса из регистра сведений "ГраницыЗапретаИзмененияДанных")
Модуль заменить на приложенный в файле "Модуль Общей Формы (УстановкаДатыЗапретаИзмененияДанных)". На тот случай, если есть вероятность, что модуль общей формы мог быть изменен с поставкой
то из приложенного листинга перенести все внесенные изменения, которые начинаются с "//нс+" и заканчиваются на "//нс-"
3. В модуле обычного приложения найти процедуру "ПриНачалеРаботыСистемы()" и в самый конец поместить:
//нс+ ПриНачалеРаботыСистемы() установка граници запрета редактирования
СФ_Дополнения.УстановитьГраницуПериодаРедактирования();
//нс-
5. Разместить приложенный модуль "УстановитьГраницуПериодаРедактирования", расположенный в одноименном файле в общем модуле. В данном случае поместил в созданный общий модуль "СФ_Дополнения"
6. Проверить запуск под пользователем с ролью не администратора. Для того, чтобы работал автомат по установке даты запрета входа, придется дать права на запись регистра "ГраницыЗапретаИзмененияДанных"
Установив в обработке по установке даты запрета количества "дней доступа" каждой группе пользователей или пользователю, можно забыть про эту проблему.
Работает это так:
Пользователь открывает 1С предприятие и автоматически срабатывает процедура при запуске, далее проверяется факт установки даты запрета в текущий день (фактически дату запрета сдвигает первый вошедший в БД пользователь). Если дата еще не сдвигалась\устанавливалась, то согласно прописанным в обработке количеству "дней доступа" устанавливается крайняя дата запрета. Пример на скриншоте.