Show/Hide Toolbars

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

Использование TSQL

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

Если стандартных возможностей SMART не достаточно для создания нужного выражения, можно напрямую использовать возможности TSQL.

Редактор TSQL смартов учитывает контекстные параметры смарт-выражения и позволяет протестировать созданное выражение на существующих задачах.

new_tsql_editor3_

Редактор TSQL смартов

Вы можете напрямую отредактировать текст запроса. Для этого в окне редактирования переключитесь в режим TSQL.

smart_edit_smart_tsql001

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

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

warning_icon  Сначала выполните тестирование, чтобы код конвертировался в TSQL. Иначе, после конвертирования, редактор кода будет пустым

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

При внесении изменений в код слева от кнопки Сохранить появляется текст "Отредактировано" до сохранения изменений.

smart_edit_sql04

Индикатор наличия несохраненных изменений

Действия с выражением

По кнопке с изображением многоточия открывается список доступных действий со смарт-выражением.

smart_edit_sql-003

Действия с выражением

Действие

Описание

Настройки

Название

Смена названия TSQL-выражения

smart_edit_sql-004

Окно настроек

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

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

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

selection

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

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

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

В настройках Смарт все настроенные отборы находятся во вкладке Доступен в смарт поиске.

Дублировать

При выборе пункта откроется окно редактирования копии текущего смарт-выражения.

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

IntelliSense

Функция IntelliSense помогает ускорить процесс написания запросов, предоставляя подсказки, автозаполнение, и дополнительную информацию.

Начните вводить название категории и система предложит вам доступные варианты:

IntelliSense1

Предложенные варианты объектов БД

Справа от названия выделенного объекта в списке отображается кнопка информации — нажатие на нее отображает название категории с указанием ее ID.

IntelliSense2

Результат нажатия на кнопку Информация

Используйте стрелки вверх/вниз, чтобы выбрать нужный вариант из списка. Выберите вариант кликом мыши или нажмите Enter, чтобы вставить выбранный вариант в запрос.

Добавление точки после названия категории автоматически раскроет список всех доступных параметров в ней.

IntelliSense4

Список параметров в категории

Справа от названия дополнительного параметра в списке отображается кнопка информации — нажатие на нее отображает название параметра с указанием его ID. Кнопка информации не отображается для системных параметров.

IntelliSense3

Результат нажатия на кнопку Информация

Используйте стрелки вверх/вниз, чтобы выбрать нужный параметр из списка, для добавления параметра в запрос выберите вариант кликом мыши или нажмите Enter.

Пример написания запроса

warning_icon  Функция Intellisense учитывает особенности синтаксиса PostgreSQL

История версий

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

show_ver_sql

Кнопка "Просмотр версий"

Версии создаются при каждом сохранении изменений. Если код еще не редактировался, на экране будет написано "Нет истории версий".

show_ver_sql3

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

Если в код ранее были внесены изменения, то при переходе в историю открывается список версий с указанием пользователя и времени изменения.

show_ver_sql2

Просмотр версии

Если вы решили восстановить выбранную неактуальную версию, нажмите на кнопку Восстановить версию. Эта кнопка станет доступной, когда вы выберете версию, отличную от текущей.

После того как вы закончили просмотр и восстановление версий, вы можете закрыть интерфейс истории версий, вернувшись к редактированию скрипта по кнопке Выйти из просмотра.

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

В блоке Тестирование можно проверить TSQL выражение.

Быстрое тестирование

Во вкладке Быстрое тестирование вы можете быстро проверить созданное выражение, для этого введите контекстные параметры и нажмите кнопку Тест.

fast_test_tsql

Быстрое тестирование

Сценарии тестирования

Во вкладке Сценарии тестирования вы можете создать создать свой сценарий или выбрать из добавленных ранее кейсов.

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

Создать новый сценарий можно по кнопке add_test_case_tsql — в открывшемся окне введите название нового сценария, после его создания заполните параметры и нажмите на кнопку Создать сценарий.

Для выполнения сценария нажмите на кнопку Тест.

Для отмены выбора сценария с очисткой контекстных параметров в поле "Сценарий" нажмите на крестик.

test_case_tsql

Сценарии тестирования

Выполнение фрагмента кода

В редакторе поддерживается возможность выполнения выделенного фрагмента кода. Для этого нужно выделить нужную часть выражения и нажать кнопку Тест. При выполнении учитываются значения контекстных параметров.

При выделении части кода в блоке тестирования появляется индикатор "Выполнение фрагмента", который сигнализирует о том, что при тестировании будет выполнен не весь заданный код, а только его часть.

code_fragment

Выполнение фрагмента

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

Результат выполнения смарт-выражения отображается в специальном блоке в нижней части экрана. Блок содержит две вкладки: TSQL-скрипт и сообщение с результатом. Если смарт-выражение является фильтром, в окне результатов будет отображаться "Смарт фильтр вернул значение: true/false". Если смарт-выражение не является фильтром, в окне результатов будет отображаться таблица возвращаемых запросом данных. По кнопке tsql_copy_button результат можно скопировать в буфер обмена. Вы можете закрыть вкладку нажатием на крестик слева от ее названия или скрыть блок целиком по кнопке Очистить результаты в блоке Тестирование.

smart_edit_sql02

Сообщение с результатом тестирования

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

Зеленый индикатор сигнализирует о нормальном значении времени выполнения: до 50 миллисекунд.

Желтый индикатор указывает на среднее значение: от 50 до 200 миллисекунд.

Красный индикатор сигнализирует о большом значении времени выполнения: от 200 миллисекунд и более.

smart_edit_sql002

Время выполнения запроса

В случае timeout отображается текст "Время ожидания ответа истекло".

Полезные ссылки