Show/Hide Toolbars

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

Смарт-скрипты (Lua)

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

term_icon Смарт-скрипт — это код, написанный на языке Lua.

По сравнению с использованием SMART-выражений смарт-скрипты имеют ряд преимуществ:

Смарт-скрипты выполняются на сервере, а не в СУБД, а значит

oпозволяют снизить нагрузку на СУБД;

oвыполняются быстрее чем SMART-выражения.

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

В отличие от SMART и SQL, Lua — это полноценный программный язык. В Lua-скриптах удобнее работать с циклами, массивами, файлами и пр.

Смарт-скрипты имеют более высокую степень безопасности (например, защищены от SQL-инъекций).

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

Смарт-скрипты могут использоваться как вместо смарт-выражений, так и вместо смарт-фильтров (в последнем случае они должны возвращать значение true/false). Но обычно с помощью смарт-скриптов автоматизируют какие-то действия (создать задачу, заполнить таблицу и пр.). Если нужно просто вычислить и вернуть какое-то значение, чаще используют смарт-выражения.

Создание и редактирование смарт-скрипта

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

По кнопке ? (1) откроется подсказка по работе с смарт-скриптом и вызову смарт-действий. В зависимости от контекста, в котором вызывается смарт-скрипт, в него передается разный набор контекстных параметров (2). Нажав кнопку Выполнить, вы можете протестировать Исходный код. Результаты выполнения будут отображаться внизу окна (3).

lua_help

Интерфейс редактирования смарт-скрипта

Новый редактор смарт-скриптов

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

В системе доступен новый редактор смарт-скриптов (LUA), он позволяет протестировать созданный код на существующих задачах по кнопке Выполнить. Нажатие на кнопку Отменить сбрасывает изменения к последнему сохраненному виду.

В редакторе поддерживается возможность выполнить часть выделенного фрагмента кода.

lua_editor

Новый LUA-редактор

По кнопке lua_editor_icon в панели инструментов редактора откроется подсказка по работе с смарт-скриптом и вызову смарт-действий.

lua_editor2

Окно Помощь по lua-скриптам

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