Работа со сценариями

Материал из GEOS_WIKI
Перейти к: навигация, поиск

В 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&gt;, <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»