Бипуим: Документация
8-800-505-24-05Сайт Бипиум
  • 😎Отвечаем на ваши вопросы
  • 🎂Версии и обновления
  • ❗Обновление до версии 2.0
  • Документация
    • 🆕С чего начать
      • Регистрация и вход
      • Создаем каталоги и записи
      • Формируем отчёты
      • Настраиваем правовую политику
      • Применяем автоматизации
    • ⚙️Конструктор данных
      • Отделы
      • Каталоги
        • Редактирование структуры
        • Настройка отображения
        • Поиск и фильтрация
        • Импорт записей
          • 📗Импорт из Excel
        • Экспорт записей
        • Активность
      • Системные каталоги
        • Сотрудники
        • События
        • Внешние запросы
        • Сценарии
        • Процессы
        • Доступ к сервисам
        • Вебхуки
      • Виды
      • Записи
    • 📊Отчеты
      • Графики
    • 🔑Права
      • Правила
      • Привилегии
      • Правовые группы
      • Правовые виды
      • Права на поля
      • Комбинация прав
    • 🤖Автоматизации
      • События
        • Изменение данных
        • Внешние запросы
      • Сценарии
        • Компоненты
          • Начало процесса
          • Конец процесса
          • Таймер
          • Ошибка
          • Шлюз «ИЛИ» (условное ветвление)
          • Шлюз «И» (распараллеливание)
          • Получить запись
          • Найти записи
          • Изменить запись
          • Создать запись
          • Удалить запись
          • Структура каталога
          • Загрузить файл
          • Сгенерировать документ
          • Назначение переменных
          • Код (Javascript)
          • Веб-запрос
          • SQL-запрос
          • Конвертер
          • Парсер
          • Запуск процесса
          • Получение почты
          • Отправка почты
          • Соединяющая линия
          • Отправить сообщение
        • Переменные
        • Выражения
        • Входные и выходные параметры компонентов
        • Примеры настройки
          • Условие
          • Цикл
      • Ограничения
  • Лицензии
    • 🌐Тип лицензирования
  • Примеры
    • 🔑Права доступа к данным
    • 🤖Автоматизации
      • Выгрузка файлов на Яндекс Диск
      • Отправка на больничный
      • Автоматизация оплаты счетов
      • Создание наименований записей
      • Расчет скидок для клиентов
      • Запрет на создание дубликатов в каталоге
      • Автозаполнение данных по ИНН
      • Переброс данных между связанными каталогами
      • Очередь сценариев
      • Отслеживание заявок с сайта помощью UTM-меток
      • Просрочка задач по дедлайну
      • Реализация механизма согласования записей
      • Массовое изменение записей
      • Создание каталога для рассылки почты
      • Перенос данных между системами Бипиума
      • Импорт данных из Excel
      • Генерация счет-фактуры
      • Генерация excel-отчетов
      • Планировщик задач
      • Импорт банковских выписок
      • Производственный календарь
      • Складской учет
  • Интеграции
    • 🥂Методы интеграции
      • Интеграция данных
        • API
        • Вебхуки (webhooks)
      • Интеграция интерфейса
        • Веб-формы
        • Веб-расширения
      • Примеры интеграций
        • Тильда
          • Прием данных с формы Tilda
          • Интеграция веб-интерфейса в Tilda
        • Интеграция с сервисом «DaData»
        • Интеграция c «Единой информационной системой в сфере закупок»
        • Мессенджеры
          • Интеграция с Telegram-ботом
        • Почтовые сервисы
          • UniSender
          • MailChimp
        • Сервисы Google
          • Google Calendar
        • Телефония
          • Oktell
            • Панель телефонии Oktell
            • Компонент Bpium в Oktell
        • 1C
    • 🔌API
      • Данные
        • Каталоги (Catalogs)
        • Записи (Records)
        • Связи (Relations)
        • Истории (Histories)
        • Файлы (Files)
        • Отделы (Sections)
        • Виды (Views)
        • Сообщения (Messages)
      • Агрегация
        • Разложения (Values)
        • Сводка (Totals)
      • Отчеты
        • Дашборды (Boards)
        • Графики (Widgets)
      • Поисковые выборки
        • Доступные связи (AvailableRecords)
        • Доступные условия фильтра (AvailableFilterRecords)
        • Сотрудники (Users)
        • Контакты (Contacts)
      • Права (Rights)
      • Профиль (Profile/me)
  • Установка на сервер
    • 🧱Архитектура
      • Варианты разворачивания
    • 🖥️Требования
    • 📂Установка как служба
    • 🛳️Установка через Docker
    • 🎛️Мультидоменная среда
    • 🆘Материалы
      • TLS/SSL Сертификат
      • Параметры config.env
        • Для Bpium
        • Для Bpium S3
        • Для Bpium BPM
      • Запуск
      • Обсуживание
        • Активация
        • Обновление
        • Бэкап и восстановление базы
        • Брендирование (Whitelabel)
        • Удаление
      • Перенос базы из облака
      • Возможные проблемы в ходе установки и работы
  • Обучение
    • Базовый курс
      • Урок 1. Отделы
      • Урок 2. Каталоги с данными
      • Урок 3. Карточки записей
      • Урок 4. Связи между данными
      • Урок 5. Фильтры и виды
      • Урок 6. Приглашение сотрудников
      • Урок 7. Права доступа к данным
      • Урок 8. Графические отчеты
      • Урок 9. Бизнес-процессы
      • Урок 10. Интеграции
    • Технический курс
      • Урок 1. Принцип работы автоматизаций
      • Урок 2. Первая автоматизация изнутри
      • Урок 3. Валидация данных
      • Урок 4. Простые вычисления
      • Урок 5. Расчет суммы заказа
      • Урок 6. Генерация счетов/документов
      • Урок 7. Рассылка почтовых сообщений
      • Урок 8. Прием внешних данных
      • Урок 9. Отправка данных на сторонние сервисы
    • Паттерны проектирования ИС
      • Унификация
      • Упорядоченность
      • Разделение
      • Актуализация
      • Вынос параметров
      • Выделение позиций
      • Слияние
      • Дублирование
      • Типизация
      • Информирование
Powered by GitBook
On this page
  • Принцип работы
  • Реализация
  • Каталог для хранения правил запуска
  • Внешний запрос для запуска сценария
  • Сценарий обработки запланированных задач
  • Сервис периодической отправки web-запросов
  • Правила запуска сценариев
  • Тестирование
  1. Примеры
  2. Автоматизации

Планировщик задач

PreviousГенерация excel-отчетовNextИмпорт банковских выписок

Last updated 3 years ago

Планировщик задач — это сервис, который позволяет периодически запускать сценарии по указанному правилу. Примеры правил: «по пятницам в 18:00», «в конце каждого месяца», «в будни в 18:00», «каждый час в течении дня».

Принцип работы

Сервис отправки web-запросов каждые 5 минут отправляет web-запрос в Планировщик задач. Планировщик задач, анализируя Правила запуска сценариев, запускает Пользовательские сценария, которые соответствуют правилу в данный момент времени.

Реализация

Каталог для хранения правил запуска

Создайте каталог «Планировщик задач». При создании каталога нужно добавить и настроить следующие поля.

Важно: Добавлять статусы в полях нужно строго в вышеописанном порядке, не нарушая последовательность их API ID.

  • Статус (статус). Варианты: Включено, Выключено. Настройки: Ставим галочку напротив «По умолчанию: первый элемент».

  • Название (текст).

  • Описание (многострочный текст).

  • Месяцы (статус). Варианты: январь, февраль, март, апрель, май, июнь, июль, август, сентябрь, октябрь, ноябрь, декабрь, ежемесячно. Важно: Добавлять статусы нужно в вышеописанном порядке. После сохранения Каталога можно перенести статус «ежемесячно» в начало, чтобы он был выбран по умолчанию. Не делайте этого до сохранения каталога, иначе собьете последовательность API ID. Настройки: Ставим галочки напротив «Мультивыбор» и «По умолчанию: первый элемент».

  • Дни (статус). Варианты: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, последний день месяца, ежедневно. Важно: Добавлять статусы нужно в вышеописанном порядке. После сохранения Каталога можно перенести статус «ежедневно» в начало, чтобы он был выбран по умолчанию. Не делайте этого до сохранения каталога, иначе собьете последовательность API ID. Настройки: Ставим галочки напротив «Мультивыбор» и «По умолчанию: первый элемент».

  • Дни недели (статус). Варианты: ПН, ВТ, СР, ЧТ, ПТ, СБ, ВС, ежедневно. Важно: Добавлять статусы нужно в вышеописанном порядке. После сохранения Каталога можно перенести статус «ежедневно» в начало, чтобы он был выбран по умолчанию. Не делайте этого до сохранения каталога, иначе собьете последовательность API ID. Настройки: Ставим галочки напротив «Мультивыбор» и «По умолчанию: первый элемент».

  • Часы (статус). Варианты: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, ежечасно. Важно: Добавлять статусы нужно в вышеописанном порядке. После сохранения Каталога можно перенести статус «ежечасно» в начало, чтобы он был выбран по умолчанию. Не делайте этого до сохранения каталога, иначе собьете последовательность API ID. Настройки: Ставим галочки напротив «Мультивыбор» и «По умолчанию: первый элемент».

  • Минуты (статус). Варианты: 00, 05, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, каждые 5 минут. Важно: Добавлять статусы нужно в вышеописанном порядке. После сохранения Каталога можно перенести статус «каждые 5 минут» в начало, чтобы он был выбран по умолчанию. Не делайте этого до сохранения каталога, иначе собьете последовательность API ID. Настройки: Ставим галочки напротив «Мультивыбор» и «По умолчанию: первый элемент».

  • Выполнить (связанный каталог). Настройки: В пункте «Каталог/вид» указываем каталог «Сценария» и ставим галочку в пункте «Мультивыбор».

Пример того, как будет выглядеть карточка каталога «Планировщик задач»:

Внешний запрос для запуска сценария

Перейдите в каталог «Внешние запросы» (по умолчанию он находится в отделе «Управление») и создайте новую запись, указав в ней следующие данные:

  • Название: укажите название внешнего запроса, например: Обработка каталога «Планировщик задач».

Пример заполненных данных карточки каталога «Внешние запросы»:

Сценарий обработки запланированных задач

Создание записи сценария

Перейдите в каталог «Сценарии» (по умолчанию он находится в отделе «Управление») и создайте новую запись, указав в ней следующие данные:

  • Название: укажите название сценария, например: Обработчик каталога «Планировщик задач».

Пример заполненных данных карточки каталога «Сценарии»:

Настройка файла сценария

Откройте файл сценария в поле «Сценарий» и отредактируйте следующие компоненты, согласно комментариям внутри них:

  • Компонент: «utcOffset & scriprtFieldId».

    • Укажите часовой пояс - сотрите комментарий и вместо него укажите по какому часовому поясу будут запускаться запланированные задачи. Например: 3 или -5.

    • Укажите ID поля «Выполнить» - сотрите комментарий и вместо него укажите API ID поля «Выполнить» из каталога «Планировщик задач», который был создан в пункте 3.1.

  • Компонент: «Поиск записей, которые подходят по фильтрам».

    • Укажите ID поля «Статус» - сотрите комментарий и вместо него укажите API ID поля «Статус» из каталога «Планировщик задач», который был создан в пункте 3.1.

    • Укажите ID поля «Месяцы» - сотрите комментарий и вместо него укажите API ID поля «Месяцы» из каталога «Планировщик задач», который был создан в пункте 3.1.

    • Укажите ID поля «Дни» - сотрите комментарий и вместо него укажите API ID поля «Дни» из каталога «Планировщик задач», который был создан в пункте 3.1.

    • Укажите ID поля «Дни недели» - сотрите комментарий и вместо него укажите API ID поля «Дни недели» из каталога «Планировщик задач», который был создан в пункте 3.1.

    • Укажите ID поля «Часы» - сотрите комментарий и вместо него укажите API ID поля «Часы» из каталога «Планировщик задач», который был создан в пункте 3.1.

    • Укажите ID поля «Минуты» - сотрите комментарий и вместо него укажите API ID поля «Минуты» из каталога «Планировщик задач», который был создан в пункте 3.1.

Компоненты сценария, в которые нужно внести изменения:

Прикрепление записи сценария к внешнему запросу

Перейдите в каталог «Внешние запрос», откройте запись, которая была создана в пункте 3.2 и в поле «Выполнить» укажите сценарий, который был создан в пункте 3.3.1.

Пример заполненных данных карточки каталога «Сценарии»:

Сервис периодической отправки web-запросов

Выбор сервиса

Сервис отправки web-запросов должен уметь отправлять GET запросы на определенный URL не реже, чем каждые 5 минут. Мы советуем использовать сервис «CronJob».

Настройка сервиса

Настройте и создайте «Задачу» (cronjob). Заполните следующие поля:

  • Title: укажите название на ваше усмотрение, например: Запуск планировщика задач каждые 5 минут.

  • Address: укажите URL на который будут отправляться GET запросы, пример: https://[Ваш домен]/api/webrequest/[URL-идентификатор].

    • Ваш домен: это URL по которому вы переходите в систему БИПИУМ. Например: somedomen.bpium.ru.

    • URL-идентификатор: данные из поля «URL-идентификатор» записи внешнего запроса, которая была создана в пункте 3.1.

  • Schedule: выберите первый вариант и в количестве минут укажите «5».

Правила запуска сценариев

Настройка правил

Правилами запуска сценариев являются записи в каталоге «Планировщик задач». Чтобы создать новое правило, нужно создать новую запись в этом каталоге и указать следующие данные:

  • Статус: определяет включено или выключено правило.

  • Название: указываем название на ваше усмотрение.

  • Описание: здесь можно описать назначение используемого правила.

  • Месяцы: в каких месяцах правило будет действовать. Чтобы правило действовало в течении всех месяцев укажите «ежемесячно».

  • Дни: в какие числа месяца (не важно какой именно месяц) правило будет действовать. При выборе значений, нужно учитывать, что значения: «29», «30», «31» есть не во всех месяцах, поэтому лучше использовать значение «последний день месяца». Чтобы правило действовало в течении всех чисел месяца укажите «ежедневно».

  • Дни недели: в какие дни недели правило будет действовать. Чтобы правило действовало в течении всех дней недели укажите «ежедневно».

  • Часы: в какие часы дня правило будет действовать. Чтобы правило действовало в течении всех дней недели укажите «ежечасно».

  • Минуты: в какие минуты часа правило будет действовать. Чтобы правило действовало в течении всех дней недели укажите «каждые 5 минут».

При создании правил нужно учитывать, что выбранные значения в полях: Месяцы, Дни, Дни недели, Часы, Минуты применяются по логическому выражению «И». А в рамках одного поля применение идет по логическому выражению «ИЛИ».

Пример противоречия. В поле Дни указано (только) значение «17», а в поле Дни недели указано (только) значение «СР». Обработка правил запустилась 17.12.2020 в 13:00. В этом случае правило не сработает, так как 17 число не СР (среда).

Примеры правил

Пример 1. Правило запуска сценариев по пятницам в 18:00. В соответствующих полях нужно указать следующие данные:

  • Месяцы - ежемесячно

  • Дни - ежедневно

  • Дни недели - ПТ

  • Часы - 18

  • Минуты - 00

Пример 2. Правило запуска сценариев в конце каждого месяца. В соответствующих полях нужно указать следующие данные:

  • Месяцы - ежемесячно

  • Дни - последний день месяца

  • Дни недели - ежедневно (указываем чтобы правило не противоречило предыдущему, описано в пункте 3.5.1)

  • Часы - 18 (чтобы в течении последнего дня месяца сценарий не запускался каждые 5 минут, нужно указать определенное время)

  • Минуты - 00 (чтобы в течении последнего дня месяца сценарий не запускался каждые 5 минут, нужно указать определенное время)

Пример 3. Правило запуска сценариев в будни в 18:00. В соответствующих полях нужно указать следующие данные:

  • Месяцы - ежемесячно

  • Дни - ежедневно

  • Дни недели - ПН, ВТ, СР, ЧТ, ПТ

  • Часы - 18

  • Минуты - 00

Пример 4. Правило запуска сценариев каждый час в течении дня. В соответствующих полях нужно указать следующие данные:

  • Месяцы - ежемесячно

  • Дни - ежедневно

  • Дни недели - ежедневно

  • Часы - 8, 9, 10, 11, 12, 13, 15, 16, 17, 18, 19, 20

  • Минуты - 00

Тестирование

Откройте каталог «Планировщик задач» и создайте новое правило, указав следующие данные в полях:

  • Статус: Включено.

  • Название: Тестирование.

  • Месяцы: ежемесячно.

  • Дни: ежедневно.

  • Дни недели: ежедневно.

  • Часы: ежечасно.

  • Минуты: 00, 15, 30, 45.

  • Выполнить: создайте тестовый сценарий компонентами которого являются «Начало процесса» и «Конец процесс» и укажите его в данному поле. Пример сценария:

Пример заполненных данных карточки каталога «Планировщик задач»:

По данному правилу указанный сценарий будет запускаться каждые 15 минут.

После создания правила, перейдите в каталог «Процессы», отфильтруйте все записи по сценарию, который указан в ранее созданном правиле, и проверьте запускается ли он каждые 15 минут. Пример того, что «Планировщик задач» настроен правильно:

URL-идентификатор: укажите уникальный PATH для формирования URL, на который будут отправляться web-запросы, например: cron. Правило, по которому можно определить сформированный url, описано в комментарии к полю.

Сценарий: скачайте сценария и загрузите его в поле.

Перейдите по ссылке на сервис и зарегистрируйте аккаунт. После регистрации аккаунта, перейдите во вкладку «Cronjobs» и нажмите кнопку «Create cronjob».

🤖
файл
CronJob