Справка

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

Облачный 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);
}
  • Сохраните изменения.

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

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