Работа со сценариями
В K3 используется возможность выполнять сценарии (программы-скрипты, scripts), написанные на языке Visual Basic Script (VBS) и JavaScript (JS).
Основное назначение сценариев это дать возможность системе K3 взаимодействовать с другими приложениями, поддерживающими автоматизацию.
Данное руководство не предназначено для детального описания языка Visual Basic Script или JavaScript. Описание и способы работы с Visual Basic Script или JavaScript приведены в соответствующих руководствах. Один из подробных справочников находится в справочной системе Script56.chm. Данный файл поставляется в комплекте с системой и находится на дистрибутивном диске.
Команды выполнения сценариев
Команда Script имеет несколько режимов работы, которые представлены ниже.
Команда Script не возвращает никакого значения. Если требуется вернуть результат работы сценария, необходимо воспользоваться функциональными аналогами (см. «Функции работы со сценариями»). |
Script VBS
Script VBS, <FileVbs>, <FuncName>, [<Params>]
Команда вызывает на выполнение функцию с именем <FuncName>
в сценарии, написанном на языке VBS в файле с именем <FileVbs>
. <Params>
– текстовая строка с набором переменных, разделенных запятой, передаваемых в виде параметров.
Пример:
script VBS, "d:\\cel.vbs","Celsius","12"
Script MDB
Script MDB <FileMdb>, <ScriptName>, <FuncName>, [<Params>]
Команда вызывает на выполнение функцию с именем <FuncName>
в сценарии, находящемся в модуле <ScriptName>
в сборке сценариев в файле с именем <FileMdb>
. <Params>
– текстовая строка с набором переменных, разделенных запятой, передаваемых в виде параметров
Пример:
script MDB,”d:\\base.mdb”,"Cel","Celsius","12"
Script JS
Script JS, <FileJs>, <FuncName>, [<Params>]
Команда вызывает на выполнение функцию с именем <FuncName>
в сценарии, написанном на языке JS в файле с именем <FileJs>
. <Params>
– текстовая строка с набором переменных, разделенных запятой, передаваемых в виде параметров
Пример:
script JS, "d:\\cel.js","Celsius","12"
Script PRJ
Script PRJ <FileKzp>, [<FuncName>, [<Params>]]
Команда вызывает на выполнение функцию с именем <FuncName>
в проекте сценариев в файле с именем <FileKzp>
. <Params>
– текстовая строка с набором переменных, разделенных запятой, передаваемых в виде параметров. В принципе имя функции <FuncName>
и строку параметров <Params>
можно не указывать, поскольку эти параметры задаются в самом проекте. Возможность указания сделана для обеспечения гибкости использования.
Пример:
script PRJ,”d:\\base.kzp”,"Celsius","12"
Функции работы со сценариями
В данном разделе дается очень краткое описание функций работы со сценариями. Более подробную информацию можно получить из "Руководства пользователя по работе со сценариями".
FVbsScript
VARIANT FVbsScript(STRING <FileVbs>, STRING <FuncName>, STRING <Params>)
Функция инициирует исполнение функции с именем <FuncName>
в сценарии с полным именем файла <FileVbs>
, написанном в отдельном модуле на языке VisualBasic. Параметр <Params>
– строка со значениями параметров, передаваемыми функции, разделенными запятой.
Пример:
=FVbsScript("d:\\cel.vbs","Celsius","12"); -11.111 VbsScript("d:\\lec.vbs","Func1","12,15,23")</nowiki> 152
FMdbScript
VARIANT FMdbScript(STRING <FileMdb>, STRING <ScriptName>, STRING <FuncName>, STRING <Params>)
Функция инициирует исполнение функции с именем <FuncName>
в сценарии с именем <ScriptName>
, находящимся в сборке сценариев в базе данных с полным именем файла <FileMdb>
. Параметр <Params>
– строка со значениями параметров, передаваемыми функции, разделенными запятой.
Пример:
=FMdbScript("d:\\Sz.mdb",”Cel”,"Celsius","12") -11.111 =FMdbScript("d:\\Sz.mdb",”Lec”,"Func1","12,15,23") 152
FJsScript
variant FJsScript(string <FileJs>, string <FuncName>, string <Params>)
Функция инициирует исполнение функции с именем <FuncName>
в сценарии с полным именем файла <FileJs>
, написанном в отдельном модуле на языке JavaScript. Параметр <Params>
– строка со значениями параметров, передаваемыми функции, разделенными запятой.
Пример:
=FJsScript("d:\\cel.js","Celsius","12"); -11.111 =FJsScript("d:\\lec.js","Func1","12,15,23") 152
FPrjScript
variant FPrjScript(string <FileKzp>, string <FuncName>, string <Params>)
Функция инициирует исполнение функции с именем <FuncName>
, находящейся в проекте сценариев с полным именем файла <FileKzp>
. Параметр <Params>
– строка со значениями параметров, передаваемыми функции, разделенными запятой. При описании проекта допускается указывать функцию – точку входа. В этом случае, если требуется вызвать функцию, описанную в проекте, как точку входа, вместо имени функции допускается указывать пустую строку. Однако делать этого не рекомендуется для обеспечения гибкости проекта сценариев.
Пример:
=FPrjScript("d:\\Sz.kzp,"Celsius","12") -11.111 =FPrjScript("d:\\Sz.kzp","Func1","12,15,23") 152
ftxtscript
variant ftxtscript("Jscript”|”VBScript", string <FuncName>, string <Params>, string <ProgText>)
Функция инициирует исполнение сценария на языке VisualBasic или JavaScript, текст которого записан в строке. <ProgText>
“JScript” или “VBScript” – указание типа языка (JavaScript или VisualBasic). <FuncName>
— имя функции, являющейся точкой входа для работы. Параметр <Params>
содержит список параметров, передаваемых в функцию, разделенных запятыми. Если в функцию параметры передаваться не должны, то параметр <Params>
должен содержать пустую строку. Параметр <ProgText>
– собственно текст программы.
Пример:
// сформируем текст программы szText="function YouFunc(){var s; s = \"Тут\"; for(var i = 0; "; szText=SzText+"i < 10; i++) s += i; return(s);}"; // Выполним её aaa=ftxtscript("JScript","YouFunc","",szText); =aaa; «Тут0123456789»