Справка

Быстрый старт

Облачный Pyrus
Безоблачный Pyrus

Платформа Pyrus Scripting позволяет аналитикам и консультантам расширять функционал форм Pyrus: автоматически вычислять значения полей и обеспечивать проверку вводимых пользователем значений.

Скрипты Pyrus предоставляют возможности:

  • Автоматически заполнять поля формы при вводе значений других полей.
  • Валидировать значения полей.
  • Автоматически заполнять поля формы с использованием реестров форм.

Скрипты разрабатываются на языке JavaScript и работают внутри формы Pyrus. Платформа обеспечивает безопасную среду выполнения и контролирует доступ скриптов к данным.

Чтобы попробовать скрипты Pyrus, выполните следующие действия:

  • Создайте новую форму или войдите в редактор шаблона существующей. Пусть для примера это форма согласования отпуска сотрудника.
  • Добавьте в шаблон числовое поле Продолжительность (продолжительность отпуска в днях)
  • В настройках формы нажмите кнопку Скрипт: Откроется редактор кода скрипта.
  • Вставьте в редактор следующий код:
    form.onChange(['Дата начала', 'Дата окончания'])
      .setValue('Продолжительность', state => {
        const [start, end] = state.changes;
    
        if (!start || !start.date || !end || !end.date)
          return null;
    
        return daysBetween(
          new Date(start.date),
          new Date(end.date)
        ) + 1;
      });
    
    function daysBetween(d1, d2) {
      const msInDay = 1000 * 60 * 60 * 24;
      return Math.floor((d2.getTime() - d1.getTime()) / msInDay);
    }
    
  • Сохраните изменения.

Теперь откройте новую форму «Отпуск» и заполните поля «Дата начала» и «Дата окончания». В поле «Продолжительность» автоматически появится количество дней отпуска:

Была ли эта статья полезной?