Здесь показаны различия между выбранной ревизией и текущей версией данной страницы.
ru:technical_manual:work_via_ole:oleapplication [2012/07/11 16:44] admin |
ru:technical_manual:work_via_ole:oleapplication [2019/08/20 08:58] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Класс «Система.OleApplication» ====== | + | ====== Класс "Система.OleApplication" ====== |
===== Метод ЗапуститьКлиентскоеПриложение ===== | ===== Метод ЗапуститьКлиентскоеПриложение ===== | ||
- | **Синтаксис:** ЗапуститьКлиентскоеПриложение(string "<Сервер>", string "<База>", string "<Версия>") | + | **Синтаксис:** ЗапуститьКлиентскоеПриложение(string "<Сервер>", string "<База>", string "<Редакция>") |
**Возвращаемый результат**: Система.КлиентскоеПриложение.Приложение (см. [[ru/technical_manual/work_via_ole/client_app]]). | **Возвращаемый результат**: Система.КлиентскоеПриложение.Приложение (см. [[ru/technical_manual/work_via_ole/client_app]]). | ||
- | Метод позволяет запустить клиентское приложение или получить уже запущенное. Используется для запуска элементов пользовательского интерфейса. В качестве параметров передаются три строки: имя сервера БД, название базы, версия продукта -- Enterprise, Professional, Cockpit. Версия продукта должна соответствовать имеющейся лицензии. | + | Метод позволяет запустить клиентское приложение или получить уже запущенное. Используется для запуска элементов пользовательского интерфейса. В качестве параметров передаются три строки: имя сервера БД, название базы, редакция продукта - Enterprise, Professional, Cockpit. Версия продукта должна соответствовать имеющейся лицензии. |
Замечание: в качестве имени сервера и/или базы данных могут быть переданы пустые строки. В этом случае при запуске появится стандартное окно выбора базы данных. При каждом запуске без параметров "<Сервер>" или "<База>" будет создан новый экземпляр приложения, который необходимо будет завершить явно, используя метод класса Система.OleApplication ЗавершитьПриложение(). | Замечание: в качестве имени сервера и/или базы данных могут быть переданы пустые строки. В этом случае при запуске появится стандартное окно выбора базы данных. При каждом запуске без параметров "<Сервер>" или "<База>" будет создан новый экземпляр приложения, который необходимо будет завершить явно, используя метод класса Система.OleApplication ЗавершитьПриложение(). | ||
Строка 15: | Строка 15: | ||
__Задача__: запустить приложение Business Studio. | __Задача__: запустить приложение Business Studio. | ||
+ | <code> | ||
Sub ПримерOLE_ЗапускПриложения() | Sub ПримерOLE_ЗапускПриложения() | ||
Строка 26: | Строка 27: | ||
End Sub | End Sub | ||
+ | </code> | ||
===== Метод ПолучитьКорневуюГруппуКласса ===== | ===== Метод ПолучитьКорневуюГруппуКласса ===== | ||
Строка 35: | Строка 37: | ||
Метод возвращает корневую группу класса по имени класса. | Метод возвращает корневую группу класса по имени класса. | ||
- | **Пример кода**. См. метод «ОткрытьФайл» ([[ru/technical_manual/work_via_ole/oleapplication#метод_окрытьфайл|Mетод окрытьфайл]]). | + | **Пример кода**. См. метод "ОткрытьФайл" ([[ru/technical_manual/work_via_ole/oleapplication#метод_открытьфайл|Mетод ОткрытьФайл]]). |
===== Метод ПолучитьОбъекты ===== | ===== Метод ПолучитьОбъекты ===== | ||
Строка 45: | Строка 47: | ||
Возвращает список объектов класса, указанный параметр которых равен заданному значению. | Возвращает список объектов класса, указанный параметр которых равен заданному значению. | ||
- | **Пример кода**. См. методы РедактироватьОбъект ([[ru/technical_manual/work_via_ole/oleapplication#метод_редактироватьобъект|Mетод редактироватьобъект]]) и СоздатьОбъект ([[ru/technical_manual/work_via_ole/oleapplication#метод_создатьобъект|Mетод создатьобъект]]). | + | **Пример кода**. См. методы РедактироватьОбъект ([[ru/technical_manual/work_via_ole/oleapplication#метод_редактироватьобъект|Mетод РедактироватьОбъект]]) и СоздатьОбъект ([[ru/technical_manual/work_via_ole/oleapplication#метод_создатьобъект|Mетод СоздатьОбъект]]). |
===== Метод ВыбратьОбъект ===== | ===== Метод ВыбратьОбъект ===== | ||
Строка 55: | Строка 57: | ||
Метод для выбора объекта с использованием окна выбора. | Метод для выбора объекта с использованием окна выбора. | ||
- | **Пример кода**. См. метод «ОткрытьФайл» ([[ru/technical_manual/work_via_ole/oleapplication#метод_окрытьфайл|Mетод окрытьфайл]]). | + | **Пример кода**. См. метод "ОткрытьФайл" ([[ru/technical_manual/work_via_ole/oleapplication#метод_открытьфайл|Mетод ОткрытьФайл]]). |
===== Метод РедактироватьОбъект ===== | ===== Метод РедактироватьОбъект ===== | ||
Строка 69: | Строка 71: | ||
__Задача__: открыть на редактирование окно свойств заданного показателя. | __Задача__: открыть на редактирование окно свойств заданного показателя. | ||
+ | <code> | ||
Sub ПримерOLE_РедактированиеОбъекта() | Sub ПримерOLE_РедактированиеОбъекта() | ||
Строка 77: | Строка 80: | ||
База = "ИмяБазы" | База = "ИмяБазы" | ||
- | Версия = "Enterprise" | + | Редакция = "Enterprise" |
Строка 91: | Строка 94: | ||
'В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно. | 'В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно. | ||
- | Set client_app = oleapp.ЗапуститьКлиентскоеПриложение(СерверБД, База, Версия) | + | Set client_app = oleapp.ЗапуститьКлиентскоеПриложение(СерверБД, База, Редакция) |
'В панели задач появится приложение | 'В панели задач появится приложение | ||
Строка 105: | Строка 108: | ||
НазваниеПоказателя = "Процент запасов, запланированных к выдаче" | НазваниеПоказателя = "Процент запасов, запланированных к выдаче" | ||
- | SetСписокПоказателей = oleapp.ПолучитьОбъекты("БизнесМодель.ПоказателиBSC", "Название", НазваниеПоказателя) | + | Set СписокПоказателей = oleapp.ПолучитьОбъекты("БизнесМодель.ПоказателиBSC", "Название", НазваниеПоказателя) |
Строка 130: | Строка 133: | ||
End Sub | End Sub | ||
+ | </code> | ||
===== Метод ВыполнитьКоманду ===== | ===== Метод ВыполнитьКоманду ===== | ||
Строка 137: | Строка 141: | ||
**Возвращаемый результат**: object (в зависимости от выполняемой команды) | **Возвращаемый результат**: object (в зависимости от выполняемой команды) | ||
- | Метод запускает команду на исполнение. Примеры команд см. [[ru/manual/administration/cmd_line]]. Если требуется выполнить команду, в которой нет аргументов, то на месте пустого аргумента следует вставлять значение с пустым значением - Null, Nothing или другие значения, предопределенные конкретным языком программирования. | + | Метод запускает команду на исполнение. Примеры команд см. [[ru/manual/manual]], глава [[ru/manual/administration/cmd_line]]. Если требуется выполнить команду, в которой нет аргументов, то на месте пустого аргумента следует вставлять значение с пустым значением - Null, Nothing или другие значения, предопределенные конкретным языком программирования. |
**Пример кода.** | **Пример кода.** | ||
Строка 143: | Строка 147: | ||
__Задача__: открыть окно объектной модели. | __Задача__: открыть окно объектной модели. | ||
+ | <code> | ||
Sub ПримерOLE_ВыполнитьКоманду() | Sub ПримерOLE_ВыполнитьКоманду() | ||
Строка 159: | Строка 164: | ||
oleapp.ПоказатьКлиентскоеПриложение | oleapp.ПоказатьКлиентскоеПриложение | ||
- | 'Открыть окно объектной модели (Справочники --> Объектная модель) | + | 'Открыть окно объектной модели (Справочники → Объектная модель) |
- | + | ||
- | object_model = oleapp.ВыполнитьКоманду("База.КлиентскиеМетоды.ВыполнитьФорму", "База.ФормаОписаниеОбъектнойМодели") | + | |
+ | Set object_model = oleapp.ВыполнитьКоманду("База.КлиентскиеМетоды.ВыполнитьФорму", "База.ФормаОписаниеОбъектнойМодели") | ||
+ | |||
End Sub | End Sub | ||
+ | </code> | ||
+ | |||
===== Метод ВыбратьКласс ===== | ===== Метод ВыбратьКласс ===== | ||
Строка 177: | Строка 184: | ||
__Задача__: открыть окно выбора справочников. | __Задача__: открыть окно выбора справочников. | ||
+ | <code> | ||
Sub ПримерOLE_ВыбратьКласс() | Sub ПримерOLE_ВыбратьКласс() | ||
Строка 187: | Строка 195: | ||
'В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно. | 'В Диспетчере задач появится Business Studio. В панели задач приложения не будет видно. | ||
- | Set client_app = oleapp.ЗапуститьКлиентскоеПриложение("ИмяСервера", "ИмяяБазы", "Enterprise") | + | Set client_app = oleapp.ЗапуститьКлиентскоеПриложение("ИмяСервера", "ИмяБазы", "Enterprise") |
'В панели задач появится приложение | 'В панели задач появится приложение | ||
Строка 198: | Строка 206: | ||
End Sub | End Sub | ||
+ | </code> | ||
===== Метод СоздатьОбъект ===== | ===== Метод СоздатьОбъект ===== | ||
Строка 205: | Строка 214: | ||
**Возвращаемый результат**: Система.МетаКласс (см. [[ru/technical_manual/work_via_ole/metaclass]]). | **Возвращаемый результат**: Система.МетаКласс (см. [[ru/technical_manual/work_via_ole/metaclass]]). | ||
- | Метод создает объект -- потомок по иерархии в группе. Для добавления элементов в списках нужно использовать метод «Добавить» класса «Система.Список» (см. [[ru/technical_manual/work_via_ole/list#метод_добавить|Mетод добавить]]). | + | Метод создает объект - потомок по иерархии в группе. Для добавления элементов в списках нужно использовать метод "Добавить" класса "Система.Список" (см. [[ru/technical_manual/work_via_ole/list#метод_добавить|Mетод Добавить]]). |
- | Структуры объекта (например, «Параметры должности», «Параметры подразделения», «Параметры СМК») создаются только вместе с объектом. Обращаться к ним надо через объект. | + | Структуры объекта (например, "Параметры должности", "Параметры подразделения", "Параметры СМК") создаются только вместе с объектом. Обращаться к ним надо через объект. |
**Пример кода.** | **Пример кода.** | ||
- | __Задача__: в папке «Объекты деятельности\Документы\Бумажный документ\Документы СМК» создать документ и заполнить некоторые его свойства, в том числе и параметры СМК. | + | __Задача__: в папке "Объекты деятельности\Документы\Бумажный документ\Документы СМК" создать документ и заполнить некоторые его свойства, в том числе и параметры СМК. |
+ | <code> | ||
Sub ПримерOLE_СоздатьОбъект() | Sub ПримерOLE_СоздатьОбъект() | ||
Строка 261: | Строка 271: | ||
ТребуемыйТипДока = "Запись" | ТребуемыйТипДока = "Запись" | ||
- | Set ТипыДоковСТребуемымТипом = _ | + | Set ТипыДоковСТребуемымТипом = oleapp.ПолучитьОбъекты("БизнесМодель.ТипыДокумента", "Название", ТребуемыйТипДока) |
- | + | ||
- | oleapp.ПолучитьОбъекты("БизнесМодель.ТипыДокумента", "Название", ТребуемыйТипДока) | + | |
НовБумДокумент.ТипДокумента = ТипыДоковСТребуемымТипом.ПолучитьЭлемент(0) | НовБумДокумент.ТипДокумента = ТипыДоковСТребуемымТипом.ПолучитьЭлемент(0) | ||
Строка 304: | Строка 312: | ||
End Sub | End Sub | ||
+ | </code> | ||
===== Метод СоздатьГруппу ===== | ===== Метод СоздатьГруппу ===== | ||
Строка 311: | Строка 320: | ||
**Возвращаемый результат**: Система.МетаКласс (см. [[ru/technical_manual/work_via_ole/metaclass]]) | **Возвращаемый результат**: Система.МетаКласс (см. [[ru/technical_manual/work_via_ole/metaclass]]) | ||
- | Метод создает группу -- потомок по иерархии в группе. Если объект является группой -- он может содержать другие объекты ниже по иерархии. | + | Метод создает группу - потомок по иерархии в группе. Если объект является группой - он может содержать другие объекты ниже по иерархии. |
**Пример кода.** | **Пример кода.** | ||
- | __Задача__: в бумажных документах создать группу (папку). Примечание: в других классах понятия «Папка» и «Группа» могут не совпадать. | + | __Задача__: в бумажных документах создать группу (папку). Примечание: в других классах понятия "Папка" и "Группа" могут не совпадать. |
+ | <code> | ||
Sub ПримерOLE_СоздатьГруппу() | Sub ПримерOLE_СоздатьГруппу() | ||
Строка 337: | Строка 347: | ||
'Дальше обращение будет с бумажными документами | 'Дальше обращение будет с бумажными документами | ||
- | Set БумДокументы = _ | + | Set БумДокументы = oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.БумажныйДокумент") |
- | + | ||
- | oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.БумажныйДокумент") | + | |
Строка 353: | Строка 361: | ||
- | 'Сохранить созданную папку, иначе его не будет видно | + | 'Сохранить созданную папку, иначе её не будет видно |
НоваяГруппа.Сохранить | НоваяГруппа.Сохранить | ||
Строка 360: | Строка 368: | ||
End Sub | End Sub | ||
+ | </code> | ||
- | ===== Метод ОкрытьФайл ===== | + | ===== Метод ОткрытьФайл ===== |
- | **Синтаксис**: ОкрытьФайл(object <Объект>) | + | **Синтаксис**: ОткрытьФайл(object <Объект>) |
**Возвращаемый результат**: не возвращает. | **Возвращаемый результат**: не возвращает. | ||
Строка 373: | Строка 382: | ||
__Задача 1__: открыть справочник бумажных документов и после выбора пользователем одного из документов открыть файл, закрепленный за ним. | __Задача 1__: открыть справочник бумажных документов и после выбора пользователем одного из документов открыть файл, закрепленный за ним. | ||
+ | <code> | ||
Sub ПримерOLE_ОткрытьФайлСУчастиемПользователя() | Sub ПримерOLE_ОткрытьФайлСУчастиемПользователя() | ||
Строка 393: | Строка 403: | ||
'Дальнейшее обращение будет с бумажными документами | 'Дальнейшее обращение будет с бумажными документами | ||
- | Set БумДокументы = _ | + | Set БумДокументы = oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.БумажныйДокумент") |
- | + | ||
- | oleapp.ПолучитьКорневуюГруппуКласса("БизнесМодель.БумажныйДокумент") | + | |
Строка 412: | Строка 420: | ||
End Sub | End Sub | ||
+ | </code> | ||
__ __ | __ __ | ||
- | __Задача 2__: открыть файл бумажного документа «Акт выполненных работ». | + | __Задача 2__: открыть файл бумажного документа "Акт выполненных работ". |
+ | <code> | ||
Sub ПримерOLE_ОткрытьФайлБезУчастияПользователя() | Sub ПримерOLE_ОткрытьФайлБезУчастияПользователя() | ||
Строка 437: | Строка 447: | ||
'Получить список всех объектов, у которых guid = myguid | 'Получить список всех объектов, у которых guid = myguid | ||
- | 'myguid соответствует документу «Акт выполненных работ» | + | 'myguid соответствует документу "Акт выполненных работ" |
myguid = "6bc61f07-2181-4e26-94c0-8cc9d2b805a3" | myguid = "6bc61f07-2181-4e26-94c0-8cc9d2b805a3" | ||
Строка 476: | Строка 486: | ||
End Sub | End Sub | ||
+ | </code> | ||
===== Метод ПоказатьКлиентскоеПриложение ===== | ===== Метод ПоказатьКлиентскоеПриложение ===== | ||
Строка 499: | Строка 510: | ||
__Задача__: открыть и закрыть Business Studio. | __Задача__: открыть и закрыть Business Studio. | ||
+ | <code> | ||
Sub ПримерOLE_ЗавершитьКлиентскоеПриложение() | Sub ПримерOLE_ЗавершитьКлиентскоеПриложение() | ||
Строка 520: | Строка 532: | ||
End Sub | End Sub | ||
+ | </code> | ||
+ | |||
+ | |||
+ | [<contextnavigator>] | ||
+ |