Имя: Пароль:
1C
 
Как ПодключитьВнешнююКомпоненту на сервере в обычном приложении?
,
0 mikecool
 
22.04.20
18:00
Пробую поднять компонент Диадока
длл в hklm на сервере зарегистрирована
ВКПодключена = ПодключитьВнешнююКомпоненту("AddIn.DiadocInvoiceAPI"); - ложь
ВКПодключена = ПодключитьВнешнююКомпоненту(Макет); - ложь // макет - двоичные данные с длл, которую зарегали в hklm
чего я делаю не так?
1 ДенисЧ
 
22.04.20
19:07
А длл-депенденсы смотрел?
ЧТо тех-поддержка говорит?
На сервере не линух (а то сейчас это модно)...
2 mikecool
 
23.04.20
12:50
(1) ты как спросишь! техподдержка пока мычит, видимо намекает купить обработку для УФ
смущает меня, что СистемнаяИнформация() в месте с инициализацией выдает Вин7
3 Cyberhawk
 
23.04.20
12:53
Так ты не на сервере
4 Cyberhawk
 
23.04.20
12:54
Запускай клиент на хосте сервера 1С для проверки работоспособности кода в серверном окружении, потом уже переноси выполнение кода в настоящий серверный модуль
5 mikecool
 
23.04.20
12:54
(3) вот это то меня и смутило, я сижу в терминале, запускаю из приложения в терминале, перехожу в модуль на сервере - но операционка физической машины, откуда я поднял терминал
6 mikecool
 
23.04.20
12:55
(4) терминал = тестовый сервер 1с
7 Cyberhawk
 
23.04.20
12:56
"перехожу в модуль на сервере" // Так модуль-то пади для клиента ОП тоже компилируется
8 mikecool
 
23.04.20
12:57
(7) у модуля только галка Сервер, клиент толстый - не установлена
9 mikecool
 
23.04.20
12:59
забубенить проверку в тонком клиенте, что-ли, для полного антуражу?
10 mikecool
 
23.04.20
13:06
хотя в отладке вижу, что нахожусь на сервере
11 Cyberhawk
 
23.04.20
13:13
(8) "клиент толстый - не установлена" // Куда-то ты не туда смотришь. Такой галки не существует.
12 mikecool
 
23.04.20
13:36
(11) у ОМ галки доступности в свойствах
13 Сказочный
 
23.04.20
13:39
Может компонента не работает с 64 битной 1С?
14 mikecool
 
23.04.20
13:42
(13) компоненты две ,подключаю ту, что с суффиксом 64
15 Сказочный
 
23.04.20
13:48
(14) Может проблема с правами пользователя, под которым стартует служба 1С, может от админа попробовать запустить 1С?
Пальцем в небо тыкаю...
16 Garykom
 
гуру
23.04.20
13:53
17 Garykom
 
гуру
23.04.20
13:53
18 Garykom
 
гуру
23.04.20
13:56
(0) Ну и изучи https://its.1c.ru/db/v8312doc#bookmark:dev:TI000001197

"35.4. Особенности работы на сервере"
19 mikecool
 
23.04.20
15:16
(18) читаю, что для сервера должна быть натив-компонента
а как понять по длл - какая она? если в коде встречается VCComTypeInfoHolder - это ком компонента?
20 mikecool
 
23.04.20
18:07
скачал ком-компонент, поставили на сервере - ситуация не поменялась
то, что в (2) писал ,так и осталось - Вин7, словно сис инфо с моей локальной тачки
собрал тестовую обработку на УФ - выдает то же самое
21 Cyberhawk
 
23.04.20
18:10
А что за ОС на сервере?
22 mikecool
 
23.04.20
18:11
(21) сервер 2008 датацентр
23 Garykom
 
гуру
23.04.20
18:11
(20) прочитай внимательно мануал в (16)

и сделай
1.Перед использованием компоненты нужно зарегистрировать файл DiadocComApi.dll с помощью команды regsvr32
2.
//создаем корневой элемент COM-объекта
DiadocApi = Новый ComОбъект("Diadoc.DiadocClient");

//Задаем параметры подлючения к серверу
DiadocApi.ApiClientId = КлючРазработчика;
DiadocApi.ServerUrl   = "https://diadoc-api.kontur.ru:443";;
24 mikecool
 
23.04.20
18:12
(23) класс ком-объекта в регистре прописан
у меня ощущение, что сторона сервера в коде - это моя локальная машина, а не реальное место, где крутится сервер 1с
25 Garykom
 
гуру
23.04.20
18:15
(24) Зайди на сервер и запусти с него
26 mikecool
 
23.04.20
19:36
(25) таки я и пишу, что я на сервере в терминале сижу, и на нем же запускаю
27 Cyberhawk
 
23.04.20
20:03
(26) Покажи список рабочих серверов в консоли твоего кластера
28 mikecool
 
28.04.20
18:00
вернулся к задаче
тестовый сервер не в кластере, отдельный инстанс
в регистре класс зарегистрирован
но Новый ComОбъект("Diadoc.DiadocClient") выдает, что класс не обнаружен.
это у меня главная проблема ((
29 Garykom
 
гуру
28.04.20
18:24
(28) Права нужны еще от кого сервер 1С запущен.
Независимо от того, куда вы едете — это в гору и против ветра!