Имя: Пароль:
1C
 
Delphi+ 8.2 Вопрос по подключению ВК &НаСервере
0 DSSS
 
09.04.11
15:50
Доброго дня!
Delphi 7.0 (4.453)
1C 8.2.13.205
Продолжаю пытаться создать простую ВК на delphi по технологии COM для 8.2. Требуемый функционал такой: в ВК передаются номер в виде строки и дата, а ВК возвращает ссылку на документ авансовый отчет, найденный по этим параметрам. В ветке v8: Вопрос по вк: Delphi + 1с 8.1 удалось таки получить ссылку в режиме толстого клиента. Что-то никак не получается решуть текущую задачу: получить ссылку на документ авансовый отчет на сервере. (нужно получить ссылку на сервере, чтобы вернуть ее тонкому клиенту)
Что делаю (весь код выполняется &НаСервере):

Вариант 1.

ПодключитьВнешнююКомпоненту("AddIn.LIB1");
ОбъектКомпоненты = Новый ("AddIn.LIB1");
Ссылка = ОбъектКомпоненты.GetNUM("ТД00-000001",ТекущаяДата());

Ошибка в строке 2: Тип не определен (AddIn.LIB1)

Вариант 2.

ПодключитьВнешнююКомпоненту("AddIn.LIB1");
ОбъектКомпоненты = Новый COMОбъект("AddIn.LIB1")
Ссылка = ОбъектКомпоненты.GetNUM("ТД00-000001",ТекущаяДата());

Ошибка в строке 3: Метод объекта не обнаружен (GetNUM)

Вариант 3.

ПутьККомпоненте = КаталогПрограммы()+ "LIB1.dll";
Идентификатор = "AddIn.LIB1";
ПодключитьВнешнююКомпоненту(ПутьККомпоненте,Идентификатор,ТипВнешнейКомпоненты.COM)ТОгда

Ошибка в строке 3: Не удалось загрузить внешнюю компаненту по причине: Ошибка при вызове метода контекста (ПодключитьВнешнююКомпоненту): Недопустимое значение параметра (параметр номер '1') (Некорректное имя компоненты)

Еще раз хочу подчеркнуть, что если подключить эту компоненту на клиенте (в режиме толстого клиента), то она нормально возвращает ссылку на документ.
Подскадите, пжл, если кто-то в курсе, что нужно сделать чтобы ВК вернула ссылку на сервере? Было бы интересно взглянуть на какой-нибудь пример по этой теме, если кто знает, подскажите, где глянуть?
Спасибо.
1 H A D G E H O G s
 
09.04.11
17:44
Вариант 3.

ПутьККомпоненте = КаталогПрограммы()+ "LIB1.dll";
Идентификатор = "LIBRARY";
ПодключитьВнешнююКомпоненту(ПутьККомпоненте,Идентификатор,ТипВнешнейКомпоненты.COM)ТОгда
Объект=Новый("Addin.LIBRARY.LIB1");
2 VitGun
 
09.04.11
17:45
(1) "Если" забыл...
3 H A D G E H O G s
 
09.04.11
17:50
Хмм, на этапе
Объект=Новый("Addin.LIBRARY.LIB1");

1c падает с 'access violation'

Дебагером Дельфи смотрю - Init() вроде отрабатывает.

Надо глядеть, может требования к описанию интерфейсов поменяли.
4 DSSS
 
09.04.11
17:51
(1) Благодарю!
ПодключитьВнешнююКомпоненту(ПутьККомпоненте,Идентификатор,ТипВнешнейКомпоненты.COM) возвращает истина. На строчке Объект=Новый("Addin.LIBRARY.LIB1"); 1с вылетает без какого-либо описания ошибки..
5 loh_pedalny
 
09.04.11
23:12
(4) ну дык попробуй версию по-свежее
6 DSSS
 
10.04.11
17:26
(3) >> Дебагером Дельфи смотрю - Init() вроде отрабатывает.
А у меня чото нифига не отрабатывает. Странно..
7 DSSS
 
12.04.11
18:07
Подниму. Может кто сталкивался с проблемой, описанной в (3) и (4).
8 acsent
 
12.04.11
18:18
Делать ком компоненты уже не актуально
9 DSSS
 
12.04.11
18:20
(8) подскажи, пжл, другой способ решения сабжа. Работать должно на Тонком, толстом и Вэбе.
10 acsent
 
12.04.11
18:40
(9) кури доку от 1С, как делать обычные компоненты
11 DSSS
 
12.04.11
18:48
(10) >> как делать обычные компоненты
в http://www.asd-dnepr.com/v82vkomponent.html#_Input не удалось найти такого раздела.. Расскажи, пжл, немного подробней про обычные компоненты.
12 H A D G E H O G s
 
12.04.11
21:14
13 DSSS
 
16.04.11
05:45
(12) так это.. вроде же из компонент NativeAPI невозможно работать с данными 1С? или можно?
Не подскажешь, как можно связаться с кирпичом?
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.