Первая Форма — полезные статьи и обновления системы

1F Дайджест: репозиторий Lua-скриптов, тестовые сценарии и ещё 26 апдейтов

Обновления системы

Сборка 2.259 Центавр

Сборка 2.260 Пегас

Сборка 2.259 Центавр

Апдейты для админов

Важное об отображении ссылок в меню администратора в SPA

На#nbsp;отображение ссылок в меню влияет пользовательский ключ isSpaAdminMode:
  • Если он#nbsp;принимает значение true, в#nbsp;дереве отображаются ссылки вида /spa/administration/entity/{entity}/represent/table. Они соответствуют новому режиму администрирования.
  • Если значение#nbsp;— false, ссылки имеют вид /spa.aspx. Это соответствует прежнему режиму администрирования.
Важно: ключ учитывается, когда в#nbsp;базе данных нет записей в#nbsp;схеме dbadmin.

Выдача пользователям серверного ключа PayControl

Для этого мы#nbsp;добавили смарт-действие «Изменить расширенное свойство пользователя».
Оно работает так: когда смарт-действие вызвано, к расширенному свойству пользователя «PayControlServerSigner» при постановке опции добавляется серверный ключ. Запись об#nbsp;этом появится в#nbsp;таблице#nbsp;БД «EdsExternalUsers».

Возможность задать таймаут для IMAP-операций при синхронизации

Значение можно задать только в#nbsp;миллисекундах. Его можно указать в пользовательском ключе «ImapTimeout».
Таймаут по#nbsp;умолчанию#nbsp;— 40 секунд (40 тысяч миллисекунд).

Сборка 2.260 Пегас

Новые особенности входа в личную комнату пользователя в ВКС

Теперь ссылка в#nbsp;поле «ВКС» профиля пользователя стала активной. Если на#nbsp;неё нажать, откроется окно видеоконференции в#nbsp;личной комнате пользователя, а#nbsp;он#nbsp;увидит соответствующее оповещение. При этом входящий звонок ему не#nbsp;поступит.

Новое обозначение проверки обязательных полей при создании новой задачи

Рассмотрим на#nbsp;примере задачи, в#nbsp;которой обязательно нужно установить срок, заполнить текст задачи или назначить исполнителей. Обратите внимание: в#nbsp;основных настройках категории при этом должны быть включены соответствующие опции.
После того, как пользователь ввёл значение в#nbsp;одно из#nbsp;указанных полей, а#nbsp;затем решил его очистить, поле подсветится красным, а#nbsp;под ним появится сообщение «Поле обязательно для заполнения».
Аналогично проверка обозначается и#nbsp;для дополнительных параметров, если в#nbsp;настройках опция «При постановке» установлена в#nbsp;значении «Обязателен».

Новая логика работы личных чатов

Покинуть личный чат можно по нажатию соответствующей кнопки.
После этого вы#nbsp;больше не#nbsp;сможете отправлять сообщения в#nbsp;чат, он#nbsp;станет доступен только для чтения во#nbsp;вкладке «Закрытые». В#nbsp;неё также попадают закрытые групповые чаты и#nbsp;чаты с#nbsp;уволенными сотрудниками.
Обратите внимание: закрытый чат невозможно открыть заново. Если вы#nbsp;создадите с#nbsp;пользователем новый диалог, сообщения из#nbsp;закрытого в#nbsp;нём отображаться не#nbsp;будут.

Обновление страницы «События» в календаре

Теперь на#nbsp;странице отображаются все новые календарные события, в#nbsp;которых участвует пользователь. Ранее на#nbsp;ней отображались только приглашения на#nbsp;встречи, поступившие из#nbsp;Outlook.

Новая логика работы поля «О себе» в профиле

Теперь поле «О#nbsp;себе» в#nbsp;профиле можно редактировать всегда, независимо от настроек в#nbsp;режиме администрирования.

Новое контекстное меню сообщения

  • Пункт «Копировать» переименован в#nbsp;«Копировать текст».
  • Добавить сообщение в#nbsp;избранное теперь можно из#nbsp;пункта «Переслать», для этого нужно выбрать «В#nbsp;избранное».
  • «В#nbsp;задачу» и#nbsp;«В#nbsp;подзадачу» переименованы и#nbsp;свёрнуты в#nbsp;пункт «Создать».
  • Поле «Просмотры» переименовано в#nbsp;«Прочтения».

Обновление пространств

Теперь перейти в#nbsp;пространства можно из#nbsp;меню сервисов в#nbsp;панели навигации. Вкладка в#nbsp;боковой панели стала недоступна.
В#nbsp;самом пространстве в#nbsp;левой части экрана отображается навигация по#nbsp;разделам в#nbsp;виде дерева. В#nbsp;правой части#nbsp;— рабочая область со#nbsp;вкладками:
  • Избранные#nbsp;— статьи, которые были добавлены в#nbsp;избранное в#nbsp;порядке добавления.
  • Автор#nbsp;— статьи, в#nbsp;которых пользователь является автором (заказчиком). Они отображаются с#nbsp;сортировкой по#nbsp;дате внесения последних изменений любым пользователем.
  • Ответственный#nbsp;— статьи, где пользователь является ответственным исполнителем в#nbsp;поле «Контакты».
  • Подписка#nbsp;— статьи, в#nbsp;которых пользователь добавлен в#nbsp;качестве контакта.

Расширенные возможности Диска

В#nbsp;корневой папке хранилища появились две системные подпапки:
  • Файлы замещаемых. Здесь находится содержимое «Моих файлов» замещаемых сотрудников, разделённое на#nbsp;отдельные подпапки. Фамилия и#nbsp;имя владельца папки указаны в#nbsp;названии в#nbsp;скобках. Эта подпапка отображается, если у#nbsp;сотрудника в#nbsp;системе настроено замещение.
  • Файлы подчинённых. В#nbsp;папке находится содержимое «Моих файлов» подчинённых сотрудников, тоже разделённое по#nbsp;пользователям. Фамилия и#nbsp;имя владельца указываются в#nbsp;скобках. Подпапка доступна для роли руководителя.

Апдейты для админов

Новый репозиторий Lua-скриптов

По#nbsp;сути, репозиторий#nbsp;— это библиотека, к#nbsp;которой можно обратиться при написании скрипта. Скрипт из#nbsp;репозитория можно импортировать в#nbsp;текущий и#nbsp;вызывать функции, которые в#nbsp;нём содержатся.
Перейти в#nbsp;репозиторий можно прямо из#nbsp;редактора по#nbsp;соответствующей кнопке. Она откроет модальное окно с#nbsp;табличным списком скриптов с#nbsp;описанием и#nbsp;ID. Если нажать на#nbsp;строку, выбранный скрипт откроется в#nbsp;новом окне.
Для всех скриптов из#nbsp;репозитория будет активна опция «Из#nbsp;репозитория/библиотеки». Для подключения используйте lua-функцию «include»:
  • include (id)#nbsp;— подключение скрипта по#nbsp;его#nbsp;ID (Рекомендуется).
  • include ('Description')#nbsp;— подключение скрипта по#nbsp;его описанию (Не#nbsp;рекомендуется).
Подключать через функцию «include» можно только скрипты из#nbsp;репозитория, использование обычных скриптов вызовет ошибку. Мы#nbsp;рекомендуем подключать скрипты только в#nbsp;начале исходного кода.
Обратите внимание: в#nbsp;подключаемых скриптах не#nbsp;должно быть вычислений, только определения функций и#nbsp;глобальных переменных. Максимальная глубина рекурсии#nbsp;— 5. В#nbsp;системе запрещено удалять из#nbsp;библиотеки скрипты, которые используются в#nbsp;коде.

Привязка страницы пространства к должности в оргструктуре

Чтобы привязать страницу, нужно зайти на#nbsp;страницу «Управление группами», открыть вкладку «Свойства» и#nbsp;задать номер пространства в#nbsp;поле «Номер задачи в#nbsp;пространствах».
После этого возле должности появится кнопка «Информация», нажатие на#nbsp;неё откроет нужный материал.

Установка отбора и группировки в новых настройках табличного вида категории

  • «Отбор»: здесь отображаются все преднастроенные в#nbsp;категории отборы. Когда вы#nbsp;сделаете выбор, задачи категории в#nbsp;списке по#nbsp;умолчанию придут в#nbsp;соответствие с#nbsp;условием отбора.
  • «Группировать по»: здесь можно задать несколько полей в#nbsp;категории, по#nbsp;которым будут собираться задачи по#nbsp;умолчанию.
Путь к настройкам табличного вида категории: Администрирование#nbsp;— Категории#nbsp;— Управление категориями#nbsp;— Выбор категории#nbsp;— Таблица#nbsp;— кнопка «Настройки».

Автосохранение в дополнительном параметре «Таблица»

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

Обновлённые возможности навигации в формах нового режима администрирования

Для нового режима мы#nbsp;добавили несколько возможностей навигации:
  • В#nbsp;шапке появились кнопки «Свернуть всё» и#nbsp;«Развернуть всё». Первая кнопка сворачивает все блоки на#nbsp;форме, вторая#nbsp;— разворачивает.
Обратите внимание: кнопка «Развернуть всё» отображается, только если все блоки на#nbsp;форме свёрнуты.
  • Встроенный поиск позволяет найти настройку прямо на#nbsp;форме по#nbsp;её#nbsp;названию. После ввода на#nbsp;форме останутся только релевантные поля.
Обратите внимание: вы#nbsp;можете искать не#nbsp;только по#nbsp;отдельным полям, но#nbsp;и#nbsp;по целому блоку, если искомое значение соответствует его названию. В#nbsp;результате поиска он#nbsp;отобразится целиком.

Новая смена локализованного значения дополнительного параметра и текста в карточке задачи

  • Если в#nbsp;расширенных настройках дополнительного параметра с#nbsp;типом «Текст», «Большой текст с#nbsp;форматированием» и#nbsp;«Большой текст без форматирования» включена опция «Локализуемый», в#nbsp;карточке задачи рядом с#nbsp;ним будет отображаться кнопка локализации. Она открывает модальное окно, в#nbsp;котором можно задать локализованное значение. Если у#nbsp;пользователя есть нужные права, по#nbsp;нажатию на#nbsp;поле он#nbsp;может отредактировать только отображаемое в#nbsp;карточке значение.
  • Если в#nbsp;настройках категории включить опцию «Локализовать текст задач», в#nbsp;карточке задачи над текстом появится соответствующая кнопка. По#nbsp;нажатию на#nbsp;текст в#nbsp;модальном окне можно отредактировать только значение из#nbsp;карточки.

Смарт-фильтры для ограничения действий со строками дополнительного параметра «Таблица»

Теперь смарт-фильтры «Ограничить добавление новых строк» и#nbsp;«Ограничить удаление строк» влияют на множественный выбор.
Если фильтры активны для задачи, в#nbsp;таблице будет недоступна соответствующая иконка.
Обратите внимание: активные фильтры принимают значение «false».

Новые API-методы

Для настройки дополнительных параметров в#nbsp;категории:
  • GET /api/admin/subcat/extparams — получить все ДП в категории.
  • POST /api/admin/subcat/extparams — создать ДП в категории.
  • GET /api/admin/subcat/extparams/subcat/{subcatId}/extparam/{extParamId} — получить ДП в категории.
  • DELETE /api/admin/subcat/extparams/subcat/{subcatId}/extparam/{extParamId} — удалить ДП в категории.
  • POST /api/admin/subcat/extparams/{subcatId} — обновить ДП в категории.
Для настройки уведомлений в#nbsp;категории:
  • POST /api/subcategories/{subcatId}/notifications/add — добавить уведомление в категорию.
  • GET /api/subcategories/{subcatId}/notifications — получить все уведомления в категории.
  • POST /api/subcategories/{subcatId}/notifications/update — изменить настройки уведомления в категории.
  • DELETE /api/subcategories/{subcatId}/notifications/delete — удалить уведомление в категории.

Модальное окно для добавления строк в новом дополнительном параметре «Таблица»

Режимы добавления строк в параметре можно регулировать в расширенных настройках с#nbsp;помощью новой опции «Создавать строки в#nbsp;модальном окне»:
  • Если настройка активна, при добавлении строки в#nbsp;таблицу по#nbsp;кнопке «+» откроется модальное окно, в#nbsp;котором нужно ввести значение колонок. Строка появится в#nbsp;таблице после нажатия кнопки «Ок» в#nbsp;этом окне.
  • Если настройка неактивна по умолчанию для всех таблиц, сразу добавляется пустая строка, в#nbsp;которую можно внести данные, как в#nbsp;режиме редактирования без дополнительных окон.

Новые возможности в интерфейсе SPA

В#nbsp;интерфейсе SPA теперь можно добавлять группы пользователей в#nbsp;подписчики, а#nbsp;также обращаться к#nbsp;группам из#nbsp;поля «Кому» при отправке сообщения.
Обратите внимание: если вы#nbsp;подписали группу со#nbsp;всеми её#nbsp;участниками на#nbsp;задачу, выборочно отписать отдельных пользователей будет невозможно.

Новые уведомления для смарт-действия «Отменить»

Теперь при работе смарт-действия «Отменить»:
  • в#nbsp;заголовке модального окна с#nbsp;уведомлением о#nbsp;том, что действие совершить невозможно, слово «Ошибка» изменилось на#nbsp;«Внимание»;
  • для события «Перед сменой#nbsp;ДП» уведомление о#nbsp;невозможности совершить действие теперь отображается не#nbsp;в#nbsp;модальном окне, а#nbsp;красным текстом под соответствующим параметром.

Новое уведомление о невозможности удалить файловый провайдер

Если провайдер загружаемых файлов выбран как файловый в#nbsp;настройках категории или для дополнительного параметра «Файл», удалить его нельзя.
Если попытаться это сделать, появится модальное окно с#nbsp;сообщением «Ошибка. Невозможно удалить провайдер, так как он#nbsp;используется. Для удаления провайдера, необходимо убрать связь в#nbsp;Категориях: Имя категории (ID#nbsp;категории)».

Обновлённая логика работы смарт-действий, вызванных из смарт-скриптов

В#nbsp;смарт-действии, вызванном из смарт-скрипта LUA в#nbsp;асинхронном режиме через ExecuteSmartScript, теперь доступны контекстные параметры (EVENTPARAMS) пакета, из#nbsp;которого вызван скрипт.
Пример вызова:

SMART:execute_action(
'ExecuteSmartScript',
nil,
nil,
{
Script = @string
}, true)

Новая возможность выбрать и создать преднастроенные кейсы для проверки смарт-выражения

Возможность появилась в#nbsp;новом редакторе TSQL-смартов. Для этого в#nbsp;строку с#nbsp;параметрами мы#nbsp;добавили секцию «Тестовые сценарии», вызвать её#nbsp;можно по#nbsp;кнопке «Сценарии тестирования».
Поле «Выбор тестового сценария» открывает выпадающий список. После выбора контекстные параметры, настроенные для этого сценария, заполняются автоматически. Если вы#nbsp;хотите отменить выбор и#nbsp;очистить параметры, нажмите на#nbsp;крестик.
Вы#nbsp;можете создать и#nbsp;сохранить собственный сценарий. Для этого заполните поля нужными данными и#nbsp;нажмите «Создать сценарий». При необходимости его можно отредактировать#nbsp;— для этого внесите изменения и#nbsp;нажмите «Сохранить сценарий».
Чтобы выполнить сценарий, нажмите «Выполнить и#nbsp;записать результат».

Настройка отображения аватарок задач в новом канбане

В#nbsp;шаблоне задач при настройке канбана логотип-аватарка подтягивается из#nbsp;дополнительного параметра «Файл».
Задать его можно в#nbsp;секции «footer» в#nbsp;качестве элемента. Для этого:
  • в#nbsp;параметре «type» укажите «extparam»,
  • в#nbsp;параметре «dataKey» пропишите#nbsp;ID параметра с#nbsp;типом «Файл», в#nbsp;который уже загружен аватар карточки,
  • в#nbsp;параметре «alias» задайте значение «avatar».
Пример:

{
"alias": "footer",
"elements": [
{
"type": "extparam",
"dataKey": 14089,
"alias": "avatar"
}
]
}

Автоматизация действий при получении нового письма

Автоматизация и#nbsp;события доступны только для Exchange Server. Чтобы она работала, нужно активировать опцию «Включить события о#nbsp;новых письмах» в#nbsp;настройках почтового ящика. Для этого перейдите в: Система#nbsp;— Почта#nbsp;— Почтовые ящики#nbsp;— Настройки ящика.
Настроить смарт-действия можно в#nbsp;новом глобальном событии «Пришло новое письмо». Его параметры:
  • ID#nbsp;пользователя (@eventParam0)#nbsp;— ID#nbsp;владельца ящика. Если их#nbsp;несколько, учитывается первый из#nbsp;владельцев.
  • Email (@eventParam1)#nbsp;— почтовый адрес, указанный в#nbsp;поле «Email отправителя» для исходящих писем или «Логин» в#nbsp;настройках почтового ящика.
  • ID#nbsp;подписки (@eventParam2).
  • ID#nbsp;почтового ящика (@eventParam3).
  • Название папки (@eventParam4).
  • ID#nbsp;письма (@eventParam5).
Обратите внимание: событие не#nbsp;может быть использовано в#nbsp;категории и#nbsp;доступно только в#nbsp;разделе «Общие SMART».