Вызвать функцию скрипта
Выполняет Lua код из строки или файла и вызывает указанную функцию
- Параметры
- Расширенный вызов ?
Функция ВызватьФункциюСкрипта(Знач Lua, Знач Скрипт, Знач ИмяФункции, Знач Параметры = Неопределено, Знач Пакеты = Неопределено, Знач Переменные = Неопределено) Экспорт
| Параметр | CLI опция | Тип | Обяз. | Назначение |
|---|---|---|---|---|
| Lua | --lua | Произвольный | ✔ | Компонента Lua или версия Lua для запуска |
| Скрипт | --script | Строка | ✔ | Код Lua или путь к файлу |
| ИмяФункции | --func | Строка | ✔ | Имя функции или путь вида module.func |
| Параметры | --params | Соответствие Из КлючИЗначение | ✖ | Параметры функции, если необходимо |
| Пакеты | --packages | Соответствие Из КлючИЗначение | ✖ | Пакеты: ключ > имя, значение > код или путь к файлу |
| Переменные | --globals | Соответствие Из КлючИЗначение | ✖ | Глобальные переменные модуля, если необходимо |
Возвращаемое значение
Произвольный - Результат вызова
| Параметр | Описание |
|---|---|
| addin_mode | Ручной выбор режима подключения внешней компоненты (для 1С): Изолированно, НеИзолированно |
| dontwait | Создает фоновое задание и возвращает его данные (только для 1С и OneScript) |
подсказка
Аналогично раздельному вызову ВыполнитьКодИзСтроки, ДобавитьПакетИзСтроки, УстановитьГлобальнуюПеременную и ВызватьФункцию
Пример использования для 1С:Предприятие/OneScript
Параметры = Новый Массив;
Параметры.Добавить(6);
Параметры.Добавить(7);
Результат = OPI_Lua.ВызватьФункциюСкрипта("Lua54"
, "function mul(a, b) return a * b end"
, "mul"
, Параметры);
- Bash
- CMD/Bat
# JSON данные также могут быть переданы как путь к файлу .json
oint lua ВызватьФункциюСкрипта \
--lua "Lua54" \
--script "function mul(a, b) return a * b + bonus end" \
--func "mul" \
--params "['6','7']" \
--globals "{'bonus':'2'}"
:: JSON данные также могут быть переданы как путь к файлу .json
oint lua ВызватьФункциюСкрипта ^
--lua "Lua54" ^
--script "function mul(a, b) return a * b + bonus end" ^
--func "mul" ^
--params "['6','7']" ^
--globals "{'bonus':'2'}"
Результат
42