• Добро пожаловать на Форум пользователей ПО АСКОН. Пожалуйста, авторизуйтесь.
 

Уважаемые пользователи,

Хотим проинформировать вас о режиме работы регистрации на нашем сайте.

Зарегистрироваться возможно в рабочие дни, с 8:00 до 20:00 (мск).

Если у вас возникнут вопросы или потребуется дополнительная информация, не стесняйтесь обращаться к нашей службе поддержки. Вы можете связаться с нами по указанным контактным данным на нашем сайте.

Благодарим вас за понимание и сотрудничество. Мы ценим ваше терпение и стремимся предоставить вам лучший опыт использования нашего сервиса.

С уважением,
Команда Ascon

CreateDocument

Автор l2qwe, 20.09.10, 12:53:08

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

l2qwe

В описании API Лоцман написано что "Внимание. Этот метод не поддерживается в ЛОЦМАН 8.5 и последующих версиях."
У нас сейчас Лоцман 10, какой метод можно использовать вместо CreateDocument

Chaa

Для этого используется интегратор.
В папке Client\Integrator\SDK\ есть файл Integrator.chm с описанием интерфейса интегратора IIntegrator. Документ создается вызовом IIntegrator.CreateDocument.
Там нужно будет указать "случай использования прокси", получить его можно вызовом функции GetProxyUseCases сервера приложений.

l2qwe

Я так понимаю чт необходимо отдельно подключится к интегратору как к COM-серверу? Если так то как узнать GUID?

Chaa

LoodsmanIntegrator.dll регистрирует в реестре библиотеку типов IntegratorObject Library, нужно ее импортировать в свою программу.
Если пользуетесь Delphi, то в меню Project -> Import Type Library или Component -> Import Component... -> Import a Type Library, смотря какая Delphi.

l2qwe

Цитата: Chaa от 21.09.10, 09:42:36
LoodsmanIntegrator.dll регистрирует в реестре библиотеку типов IntegratorObject Library, нужно ее импортировать в свою программу.
Если пользуетесь Delphi, то в меню Project -> Import Type Library или Component -> Import Component... -> Import a Type Library, смотря какая Delphi.
Сделал, спасибо.
У интерфейса IIntegrator функция
HResult Connect(
BSTR stConnectionString,        // строка соединения с сервером приложений ЛОЦМАН:PLM
BSTR stDBName,        // имя базы данных ЛОЦМАН:PLM
long inIdCheckOut,        // идентификатор чекаута
BSTR stUserName,        // имя пользователя базы данных
BSTR stPassword,        // пароль пользователя базы данных
);
Что такое "строка соединения с сервером приложений ЛОЦМАН:PLM" и где её взять.


Chaa

В самом простом случае это имя сервера приложений.

Вообще ConnectionString живет в реестре Software\ASCON\Loodsman\SP. Там их может быть несколько, они разделены ";". Каждый из них это либо имя сервера приложений, либо, для сокет-соединения, более сложного вида "ConnectionType=1|Host=127.0.0.1|Port=4804|User=User1|Password=Password1".

Лоцман при запуске пробует по очереди все, пока не подключится к какому-либо. И та строка, с помощью которой Лоцман подключился к серверу приложений, и передается в Connect интегратора.

P.S.
Это все мои домыслы, так как в Асконе я не работал. Но у меня так работает.

l2qwe

При вызове метода Connect выдает ошибку.
У меня самостоятельный экзешник а не плагин к Лоцман клиенту, может ли это быть связанно с этим?

Chaa

Интегратор сделан не очень удачно, для него важно, какая сейчас текущая папка.
Попробуйте SetCurrentDirectory('C:\Program Files\ASCON\Loodsman\Client') или в другое место, где стоит Лоцман.
Так же интегратор не запускается под отладчиком Delphi, видимо из-за защиты.