Show/Hide Toolbars

Руководство администратора

Смарт-выражения и смарт-фильтры

Ссылки Назад Вверх Вперед

term_icon Смарт-выражения представляют собой SQL-запросы, только "сконструированные" с помощью встроенных в "Первую Форму" инструментов. Смарт-выражения могут содержать арифметические и логические операторы, а также функции, поддерживаемые системой "Первая Форма"

term_icon Смарт-фильтр — это смарт-выражение, которое ограничивает выборку. Оно строится таким образом, чтобы на выходе получалось логическое значение истина (true, 1), ложь (false, 0), или массив элементов

В настройках категории на странице Смарты вы можете посмотреть все настроенные в категории смарт-выражения и смарт-фильтры, а в разделе Общие смарты — глобальные смарт-выражения и смарт-фильтры.

Smart-00002

Список смарт-выражений

Доступен в смарт-поиске

Для смарт-фильтров доступна опция Доступен в смарт-поиске: если она активна, то данный фильтр может быть использован в пользовательском интерфейсе в режиме smart-поиска (отбора), который включается в табличном представлении категории.

smart_edit_sql004-0002

Окно настроек смарт-фильтра

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

grid-selection-01

Отборы в пользовательском интерфейсе

Как и обычные смарт-фильтры, фильтры для отбора должны возвращать значение true/false.

warning_icon  Недопустимо использование сортировки значений с помощью команды ORDER BY в скрипте отбора

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

smart-filters-switch-01

Переключатель смарт-фильтров

Список фильтров, которые доступны в смарт-поиске:

smart-filters-switch-02

Доступен в смарт-поиске

Создание автоматизации без привязки к смарт-правилу

Вы можете создать смарт-выражение без привязки к смарт-событию и пакету действий по кнопке Создать. В открывшемся окне введите название выражения и выберите режим его редактирования.

smart-expr-create-0

Окно создания смарт-выражения

Параметр

Описание

Название

Название смарт-выражения или смарт-фильтра

warning_icon  Проверка на уникальность наименования выражения работает в рамках одной категории

Режим редактирования

Выбор режима редактирование: SMART или TSQL

warning_icon Обратите внимание: в интерфейсе отсутствует возможность конвертации из режима TSQL в SMART

Доступен в смарт поиске

warning_icon Обратите внимание: опция доступна только для смарт-фильтров

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

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

grid-selection-01

Отборы в пользовательском интерфейсе

Как и обычные смарт-фильтры, фильтры для отбора должны возвращать значение true/false.

warning_icon Недопустимо использование сортировки значений с помощью команды ORDER BY в скрипте отбора

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

smart-filters-switch-02

Доступен в смарт поиске

Публичный

warning_icon Обратите внимание: опция доступна только для смарт-фильтров

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

По умолчанию активна

Описание

Описание работы и назначения смарт-выражения или смарт-фильтра. Количество доступных для ввода символов — 300. После создания описание будет доступна для просмотра и редактирования во вкладке Описание редактора SMART- или TSQL-выражения

Отдаваемый результат

Определяет тип данных, который должно возвращать выражение или фильтр.

В их числе доступны: объекты (Entity.User, Entity.Task, Entity.File и др.), коллекции объектов (Collection<Entity.User>, Collection<Entity.Task> и др.), примитивные типы (Число, Строка, Дата и время, Логический (true/false)), специальные перечисления (Тип комментария, Связь с задачей, Таймзона, Метод HTTP-запроса и др.).

При создании смарт-фильтра, когда используемое выражение обязано возвращать логический тип данных (boolean), система автоматически и всегда устанавливает отображаемый результат как "Логический (true/false)". Поле для выбора другого типа результата в этом случае становится недоступным.

После создания информация об отдаваемом результате будет доступна для просмотра и редактирования во вкладке Описание редактора SMART- или TSQL-выражения. Отдаваемый результат "Логическое значние" недоступно для редактирования.

smart-descr-result

Блок "Описание"

При тестировании выражений тип возвращаемого значения должен строго соответствовать выбранному в настройках. В случае несоответствия система отобразит ошибку: "Неправильный тип отдаваемого результата".

smart-expr-result-error

Ошибка неправильного типа отдаваемого результата

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

Smart-004-001

Редактор смарт-выражения

Создание автоматизации с привязкой к смарт-правилу

Вы можете создать смарт-выражение по кнопке Smart-08 или отредактировать — по кнопке Smart-09 из окна редактирования смарт-действия, а смарт-фильтр — из окна привязки пакета к событию.

Smart-10

Кнопки создания и редактирования smart-фильтра и smart-выражения

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

Правая часть редактора может работать в двух режимах: конструктора смарт-выражений или запросов TSQL. Из режима SMART доступна конвертация в режим TSQL по кнопке в панели инструментов. Обратная конвертация из TSQL в SMART не предусмотрена.

smart_edit_smart_tsql001-001

Переключение в режим TSQL

warning_icon  Возможность работать с SQL напрямую из интерфейса системы по умолчанию отключена. Чтобы кнопка Конвертировать в режим TSQL была доступна в интерфейсе администратора, в файле web.config (appsettings.json) должна быть отключена опция disableSQLShell. См. Руководство по техподдержке.

warning_icon  При переводе смарта в TSQL возможны ошибки, в этом случае необходимо ручное исправление кода

Работа со смарт-выражениями

Работа с TSQL-выражениями

Тестирование smart выражений

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

Smart-0003

Варианты тестирования

По завершении тестирования появится модальное окно с результатом тестирования смартов, которое содержит информацию о количестве успешно обработанных выражений, возникших ошибках и некорректно настроенных тестовых сценариях. Ниже доступен список ошибок с ссылками на соответствующие смарты. Кликнув по ссылке с номером смарта, вы сможете открыть редактор смарт-выражения для внесения необходимых правок.

Smart-0004

Результаты тестирования смартов