Процедуры и функции взаимодействия с системой

Глобальный контекст. Представляет глобально доступные свойства и методы.

Свойства

ФайловыеПотоки / FileStreams

Доступ: Чтение

Менеджер файловых потоков.

АргументыКоманднойСтроки / CommandLineArguments

Доступ: Чтение

Доступ к аргументам командной строки. Объект АргументыКоманднойСтроки представляет собой массив в режиме "только чтение".

Символы / Chars

Доступ: Чтение

Тип значения: Набор системных символов.

Содержит набор системных символов.

Методы

Сообщить / Message()

Выдает сообщение в консоль.

Параметры

  • message: Выдаваемое сообщение.

  • status: Статус сообщения. В зависимости от статуса изменяется цвет вывода сообщения.

ПодключитьСценарий / AttachScript()

Подключает сторонний файл сценария к текущей системе типов. Подключенный сценарий выступает, как самостоятельный класс, создаваемый оператором Новый

Пример:

ПодключитьСценарий("C:\file.os", "МойОбъект");
А = Новый МойОбъект();

Параметры

  • path: Путь к подключаемому сценарию

  • typeName: Имя типа, которое будет иметь новый класс. Экземпляры класса создаются оператором Новый.

ЗагрузитьСценарийИзСтроки / LoadScriptFromString()

Создает экземпляр объекта на основании стороннего файла сценария. Загруженный сценарий возвращается, как самостоятельный объект. Экспортные свойства и методы скрипта доступны для вызова.

Пример:

Контекст = Новый Структура("ЧислоПи", 3.1415); // 4 знака хватит всем
ЗагрузитьСценарийИзСтроки("Сообщить(ЧислоПи);", Контекст);

Параметры

  • code: Текст сценария

  • externalContext: Структура. Глобальные свойства, которые будут инжектированы в область видимости загружаемого скрипта. (Необязательный)

ЗагрузитьСценарий / LoadScript()

Создает экземпляр объекта на основании стороннего файла сценария. Загруженный сценарий возвращается, как самостоятельный объект. Экспортные свойства и методы скрипта доступны для вызова.

Пример:

Контекст = Новый Структура("ЧислоПи", 3.1415); // 4 знака хватит
// В коде скрипта somescript.os будет доступна глобальная переменная "ЧислоПи"
Объект = ЗагрузитьСценарий("somescript.os", Контекст);

Параметры

  • path: Путь к подключаемому сценарию

  • externalContext: Структура. Глобальные свойства, которые будут инжектированы в область видимости загружаемого скрипта. (Необязательный)

ПодключитьВнешнююКомпоненту / AttachAddIn()

Подключает внешнюю сборку среды .NET (*.dll) и регистрирует классы 1Script, объявленные в этой сборке. Публичные классы, отмеченные в dll атрибутом ContextClass, будут импортированы аналогично встроенным классам 1Script. Загружаемая сборка должна ссылаться на сборку ScriptEngine.dll

Также подключает вншение компонеты, разработанные по технологии Native API, поставляемые в виде отдельных DLL или упакованные в ZIP-архив.

Пример:

//Подключает внешнюю сборку среды .NET (*.dll)
ПодключитьВнешнююКомпоненту("C:\MyAssembly.dll");
КлассИзКомпоненты = Новый КлассИзКомпоненты(); // тип объявлен внутри компоненты

//Подключает вншение компонеты Native API, упакованные в ZIP-архив
ПодключитьВнешнююКомпоненту("C:\AddInNative.zip", "AddInNative");
ЭкземплярВнешнейКомпоненты = Новый ("AddIn.AddInNative.NativeComponent", ТипВнешнейКомпоненты.Native);

//Подключает вншение компонеты Native API в виде отдельных DLL-файлов
ПодключитьВнешнююКомпоненту("C:\AddInNative.dll", "SimpleAddIn", ТипВнешнейКомпоненты.Native);
ЭкземплярВнешнейКомпоненты = Новый ("AddIn.SimpleAddIn.SimpleComponent");

Параметры

  • dllPath: Путь к внешней компоненте

  • name: Символическое имя подключаемой внешней компоненты (только для Native API)

  • type: Тип подключаемой внешней компоненты (для совместимости, необязательно)

СтартовыйСценарий / EntryScript()

Возвращает информацию о сценарии, который был точкой входа в программу. Можно выделить два вида сценариев: те, которые были подключены, как классы и те, которые запущены непосредственно. Метод СтартовыйСценарий возвращает информацию о сценарии, запущенном непосредственно. Для получения информации о текущем выполняемом сценарии см. метод ТекущийСценарий()

Возвращаемое значение

Объект ИнформацияОСценарии

Приостановить / Sleep()

Приостанавливает выполнение скрипта.

Параметры

  • delay: Время приостановки в миллисекундах

ЗавершитьРаботу / Exit()

Прерывает выполнение текущего скрипта.

Параметры

  • exitCode: Код возврата (ошибки), возвращаемый операционной системе.

ВвестиСтроку / InputString()

Ввод строки пользователем. Позволяет запросить у пользователя информацию.

Параметры

  • resut: Выходной параметр. Введенные данные в виде строки.

  • prompt: Строка, выводимая в качестве подсказки. Необязательный, по умолчанию - пустая строка.

  • len: Максимальная длина вводимой строки. Необязательный, по умолчанию - 0 (неограниченная длина). Указание неограниченной длины может не поддерживаться хост-приложением.

  • multiline: Булево, определяет режим ввода многострочного текста. Необязательный, по умолчанию - Ложь.

Возвращаемое значение

Булево. Истина, если пользователь ввел данные, Ложь, если отказался.

ОсвободитьОбъект / FreeObject()

Явное освобождение ресурса через интерфейс IDisposable среды CLR.

OneScript не выполняет подсчет ссылок на объекты, а полагается на сборщик мусора CLR. Это значит, что объекты автоматически не освобождаются при выходе из области видимости.

Метод ОсвободитьОбъект можно использовать для детерминированного освобождения ресурсов. Если объект поддерживает интерфейс IDisposable, то данный метод вызовет Dispose у данного объекта.

Как правило, интерфейс IDisposable реализуется различными ресурсами (файлами, соединениями с ИБ и т.п.)

Параметры

  • obj: Объект, ресурсы которого требуется освободить.

ВыполнитьСборкуМусора / RunGarbageCollection()

OneScript не выполняет подсчет ссылок на объекты, а полагается на сборщик мусора CLR. Это значит, что объекты автоматически не освобождаются при выходе из области видимости.

С помощью данного метода можно запустить принудительную сборку мусора среды CLR. Данные метод следует использовать обдуманно, поскольку вызов данного метода не гарантирует освобождение всех объектов. Локальные переменные, например, до завершения текущего метода очищены не будут, поскольку до завершения текущего метода CLR будет видеть, что они используются движком 1Script.

ЗапуститьПриложение / RunApp()

Запуск приложения в операционной системе

Параметры

  • cmdLine: Командная строка запуска

  • currentDir: Текущая директория запускаемого процесса (необязательно)

  • wait: Ожидать завершения (необязательно) по умолчанию Ложь

  • retCode: Выходной параметр. Код возврата процесса. Имеет смысл только если указан параметр wait=true

ТекущийПроцесс / CurrentProcess()

Получает текущий процесс

СоздатьПроцесс / CreateProcess()

Создает процесс, которым можно манипулировать из скрипта

Параметры

  • cmdLine: Командная строка запуска

  • currentDir: Текущая директория запускаемого процесса (необязательно)

  • redirectOutput: Перехватывать стандартные потоки stdout и stderr

  • redirectInput: Перехватывать стандартный поток stdin

  • encoding: Кодировка стандартных потоков вывода и ошибок

  • env: Соответствие, где установлены значения переменных среды

НайтиПроцессПоИдентификатору / FindProcessById()

Выполняет поиск процесса по PID среди запущенных в операционной системе

Параметры

  • PID: Идентификатор процесса

Возвращаемое значение

Процесс. Если не найден - Неопределено

НайтиПроцессыПоИмени / FindProcessesByName()

Выполняет поиск процессов с определенным именем

Параметры

  • name: Имя процесса

Возвращаемое значение

Массив объектов Процесс.

КаталогПрограммы / ProgramDirectory()

Каталог исполняемых файлов OneScript

Возвращаемое значение

КраткоеПредставлениеОшибки / BriefErrorDescription()

ПодробноеПредставлениеОшибки / DetailErrorDescription()

ТекущаяУниверсальнаяДата / CurrentUniversalDate()

ТекущаяУниверсальнаяДатаВМиллисекундах / CurrentUniversalDateInMilliseconds()

ЗначениеЗаполнено / ValueIsFilled()

Проверяет заполненность значения по принципу, заложенному в 1С:Предприятии

Параметры

  • inValue:

Возвращаемое значение

ЗаполнитьЗначенияСвойств / FillPropertyValues()

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

Параметры

  • acceptor: Объект-приемник

  • source: Объект-источник

  • filledProperties: Заполняемые свойства (строка, через запятую)

  • ignoredProperties: Игнорируемые свойства (строка, через запятую)

ПолучитьCOMОбъект / GetCOMObject()

Получает объект класса COM по его имени или пути. Подробнее см. синтакс-помощник от 1С.

Параметры

  • pathName: Путь к библиотеке

  • className: Имя класса

Возвращаемое значение

COMОбъект