RUS  ENG 

Плагин и ProjectLink

Страницы: 1
RSS
Плагин и ProjectLink
 
Возможно ли плагину получить ProjectLink(s). и как если да, не мог найти связи между IPluginConnector и Project
 
Пока связи IPluginConnector и текеущего проекта нет. Добавим.
 
Добавили доступ из IPluginConnector.Zulu к Project Качайте. Проверьте. Подробней на
http://www.politerm.com.ru/zulu/history.htm
 
Доступ - ОК.
теперь другой вопрос возник, можно поподробнее про QueryByExample, желательно с примерчиком
 
да, и еще...
из хелпа:
Применяется к:
ZbDatabase
Синтаксис:
Visual Basic:
Function Open(FilePath As String) As Boolean
FilePath - полное имя файла семантической базы данных.
Описание:
Имя присоединенной к графическому слою базы данных может быть получено через свойство BaseName объекта Layer.

так слой возвращает вместо имени базы пустую строку.
брал имя базы так:
SubLr.ObjectTypes.Item[Elem.TypeID].BaseName;
(в общем у элемента)
так он возвращает вот это:
zulu://127.0.0.1:6473/Main project\УТ-1(115МКРмаг.ОКТЯБРЬСКИЙ)\УТ-1(115МКРмаг,ОКТЯБРЬСКИЙ).zl?zb=1000006.zb
и ZBDatabase.Open("эта строка") вылетает с исключением.
как открыть эту базу и получить значения полей элемента?
 
что-то я так и не понял, как подключиться к базе на сервере, если он выдает имя базы в таком виде:
zulu://127.0.0.1:6473/Main project\УТ-1(115МКРмаг.ОКТЯБРЬСКИЙ)\УТ-1(115МКРмаг,ОКТЯБРЬСКИЙ).zl?zb=1000006.zb
 
Как минимум нужно попробовать избежать путей типа "УТ-1(115МКРмаг.ОКТЯБРЬСКИЙ)\УТ-1(115МКРмаг,ОКТЯБРЬСКИЙ).zl". В именах папок и файлов не должно быть всяких точек, запятых и всевозможных символов, кроме латиницы и цифр. Если все равно не работает, сообщите. (Я проверил, с нормальными путями работает)
 
хм... сделал так:

Pr:=FConnector.Zulu.ActiveProject;
Doc:=FConnector.Zulu.ActiveDocument;
Map:=IMapDoc(Doc.NativeDoc);
Lr:=Map.Layers.Active;
//ShowMessage(IntToStr(Lr.CurrentID));//cur id
//ShowMessage(IntToStr(Lr.Elements[Lr.CurrentID].TypeID));//type id
i:=Lr.Elements[Lr.CurrentID].TypeID;
//ShowMessage(Lr.ObjectTypes.Item[i].BaseName);
//Edit1.Text:=Lr.ObjectTypes.Item[i].BaseName;
try
zb.Open(Lr.ObjectTypes.Item[i].BaseName);
except
ShowMessage('Error');
end;

вылетает по исключению. имя базы - zulu://127.0.0.1:6473/Main project\Карта_вся\teplo_Cher.zl?zb=1000003.zb
работает через ZuluServer 1.0.
может в коде что-то не то?
 
Так, а объект zb создан ? (zb:= CoZbDatabase.Create;)
Страницы: 1