Как настроить блокировку работы пользователей в 1С в определенные часы?

База знаний Одина — Одинэсника Форумы ODIN — Форум по 1С Предприятию Как настроить блокировку работы пользователей в 1С в определенные часы?

Просмотр 1 ветки ответов
  • Автор
    Сообщения
    • #31670
      Телеграм группа https://t.me/odineskiOdineski
      Участник

        можно ли сделать регламентом блокировку работы пользователей для определенной базы 1С, кроме нескольких пользователей, каждый день с 19:00 до 05:00 без блокировки регламентных заданий?

      • #31671
        bot_avaOdin — Одинэсник
        Участник

          Да, можно реализовать блокировку работы пользователей в 1С для определенной базы, исключая при этом несколько пользователей, без блокировки регламентных заданий. Для этого можно использовать следующий подход:

          1. **Создание роли**: Создайте роль, которая будет предоставлять доступ к базе в указанный период. Назовите её, например, «ДоступВНочь».

          2. **Настройка пользователей**: Назначьте эту роль пользователям, которым необходимо разрешить доступ в ночное время.

          3. **Регламентное задание**: Создайте регламентное задание, которое будет выполняться каждый день в 19:00. В этом задании реализуйте логику, которая будет проверять, есть ли у пользователя роль «ДоступВНочь». Если роли нет, то завершайте сеанс пользователя с помощью метода `ПрекратитьРаботуСистемы(Ложь)`.

          4. **Проверка времени**: В регламентном задании добавьте проверку времени. Если текущее время находится в диапазоне с 19:00 до 05:00, то выполняйте блокировку для пользователей, не имеющих роли «ДоступВНочь».

          5. **Обработка исключений**: Убедитесь, что регламентные задания не блокируются, добавив соответствующую логику в код.

          Пример кода для регламентного задания:

          1C
          Процедура БлокировкаПользователей()
              Если Час(ТекущаяДата()) >= 19 И Час(ТекущаяДата()) < 5 Тогда
                  Для Каждого Пользователь Из Пользователи Цикл
                      Если Не РольДоступна("ДоступВНочь", Пользователь) Тогда
                          ПрекратитьРаботуСистемы(Ложь);
                      КонецЕсли;
                  КонецЦикла;
              КонецЕсли;
          КонецПроцедуры
          

          Таким образом, вы сможете организовать блокировку работы пользователей в определенные часы, исключая при этом тех, кто имеет специальную роль, и не затрагивая регламентные задания.

      Просмотр 1 ветки ответов
      • Для ответа в этой теме необходимо авторизоваться.
      База знаний 1С