Программа "АвтоДилер" - справочная система. Перейти на сайт autodealer.ru | |
OLE Automation. Связь с другими программами |
Содержание |
Система "АвтоДилер: Каталог" может выступать в роли сервера автоматизации, т.е. выполнять запросы, исходящие из других программ (клиентов).
Следующая информация предназначена для программистов (настройщиков), желающих получить возможность совместного использования системы "АвтоДилер: Каталог" и их разработок.
Система "АвтоДилер" включает в себя несколько процедур, которые Вы можете использовать в своих целях.
Для вызова системы "АвтоДилер" из другой программы необходимо произвести следующие действия:
•Инициализировать сервер
•Вызвать нужную процедуру или функцию
Процедуры
procedure GetDetailByName(const DetailName: WideString; Whole, StopFirstFound: WordBool);
Открывает Поиск. В качестве критерия поиска используются параметры процедуры.
Параметр |
Тип |
Описание |
DetailName |
WideString (строка) |
Наименование детали |
Whole |
WordBool (логичесикй) |
Истина - точный поиск, Ложь - поиск по подстроке |
StopFirstFound |
WordBool (логичесикй) |
Определяет, следует ли прерывать поиск при первой успешно найденной детали |
procedure GetDetailByNumber(const DetailNo: WideString; Whole, StopFirstFound: WordBool);
Открывает Поиск. В качестве критерия поиска используются параметры процедуры.
Параметр |
Тип |
Описание |
DetailNo |
WideString (строка) |
Номер детали |
Whole |
WordBool (логичесикй) |
Истина - точный поиск, Ложь - поиск по подстроке |
StopFirstFound |
WordBool (логичесикй) |
Определяет, следует ли прерывать поиск при первой успешно найденной детали |
procedure GetDetailByUID(const AUID: WideString);
Открывает Иллюстрацию. В качестве критерия используются параметр процедуры.
Параметр |
Тип |
Описание |
AUID |
WideString (строка) |
Идентификатор детали |
procedure GetPicture(AModel, AGroup, APart: Integer; const ADetailNo: WideString);
Открывает Иллюстрацию. В качестве критерия используются параметры процедуры.
Данная процедура считается устаревшей и ее использование не рекомендуется. Оставлена для совместимости с предыдущими версиями АвтоКаталога.
Параметр |
Тип |
Описание |
AModel |
Integer (целое) |
Идентификатор марки/модели автомобиля |
AGroup |
Integer (целое) |
Идентификатор группы |
APart |
Integer (целое) |
Идентификатор раздела |
ADetailNo |
WideString (строка) |
Номер детали |
Функции
function GetAttribute(const Parameter: WideString): OleVariant;
Возвращает значение в соответствии с указанным параметром вызова.
Параметр |
Тип |
Описание |
Parameter |
WideString (строка) |
Параметр вызова: Current_DetailName - наименование текущей детали Current_DetailNo - номер текущей детали Current_ModelID - идентификатор модели автомобиля Current_Group - идентификатор группы Current_Part - идентификатор раздела |
Примеры
Следует заметить, что если переменная MyObject объявлена локально в процедуре, то она будет уничтожена после окончания работы самой процедуры, а следовательно и будет автоматически закрыт и сам сервер. Если Вы хотите чтобы этого не происходило, объявляйте переменную как глобальную (только не забывайте ее потом разрушить).
Delphi |
uses ActiveX, ComObj; var MyObject: variant;
procedure TForm1.Button1Click(Sender: TObject); begin MyObject := CreateOleObject ( 'AutoDealer.Catalog' ); MyObject.GetDetailByName( 'Фильтр топливный', False, False ); end; |
С++ Builder |
#include ComObj.hpp; Variant MyObject;
void __fastcall TForm1::Button1Click(TObject *Sender) { MyObject = CreateOleObject ( "AutoDealer.Catalog" ); MyObject.GetDetailByName( "Фильтр топливный", false, false ); } |
Visual Basic |
Dim MyObject As Object
Sub GetDetailByName() Set MyObject = CreateObject( "AutoDealer.Catalog" ) MyObject.GetDetailByName "Фильтр топливный", False, False End Sub |
1C |
Процедура Процедура1() MyObject = СоздатьОбъект( "AutoDealer.Catalog" ); MyObject.GetDetailByName( "Фильтр топливный", 0, 0 ); КонецПроцедуры |
PHP |
<? $MyObject = new COM( "AutoDealer.Catalog" ); $MyObject->GetDetailByName( "Фильтр топливный", False, False ); ?> |