|
ОписаниеТипов при СОМ соединении | ☑ | ||
---|---|---|---|---|
0
Альбатрос
15.11.16
✎
14:19
|
1С:Предприятие 8.3 (8.3.8.2167)
Пытаюсь в базе, к которой подключился по СОМ типизировать колонки ТЗ. Делаю так: ТЗУТ = БазаУТ.NewObject("ТаблицаЗначений"); ТЗУТ.Колонки.Добавить("Склад", БазаУТ.NewObject("ОписаниеТипов","СправочникСсылка.Склады")); ТЗУТ.Колонки.Добавить("Номенклатура", БазаУТ.NewObject("ОписаниеТипов","СправочникСсылка.Номенклатура")); Выводит ошибку про незарегистрированный класс. Как правильно типизировать? |
|||
1
Лефмихалыч
15.11.16
✎
14:25
|
попробуй инициализировать описание типов массивом типов, а не строкой
|
|||
2
Serginio1
15.11.16
✎
14:32
|
Используй внешние отчеты Как через оле задать отбор?
Премущество это отладка и использование интеллисенсе |
|||
3
Альбатрос
15.11.16
✎
14:38
|
(1) (2) Я поторопился, сорри. Проблема пока не в типизации, а вот здесь:
Попытка Соединение = Новый COMобъект("V83.ComConnector"); Исключение Сообщить(ОписаниеОшибки()); Возврат; КонецПопытки; Выдает вот такую ошибку: {ВнешняяОбработка.ОприходованияНаОснованииПостановкиНаБаланс.Форма.Форма.Форма(87)}: Ошибка при вызове конструктора (COMобъект): -2147221164(0x80040154): Класс не зарегистрирован |
|||
4
azernot
15.11.16
✎
14:40
|
Необходимо от имени администратора выполнить команду:
Regsvr32 «C:\Program Files\1cv8\8.х.хх.хх\bin\comcntr.dll» где 8.х.хх.хх - это версия платформы в которой запускаются обе базы. |
|||
5
Альбатрос
15.11.16
✎
14:45
|
(4) Это не помогает.
Стоит дополнить, что в других базах создание коннектора работает нормально. Базы все на одной платформе, на одном сервере. Хрень какая-то... |
|||
6
Лефмихалыч
15.11.16
✎
14:49
|
||||
7
Альбатрос
15.11.16
✎
14:54
|
(6) Чот я ссу без админа туда лезть :)
А почему для других баз СомОбъект работает? |
|||
8
Serginio1
15.11.16
✎
15:37
|
Может для внешнего отчета нужно открыть с помощью
ВнешниеОбработки.Создать(ПутьКОбработке_epf",ложь); |
|||
9
Serginio1
15.11.16
✎
15:38
|
Создать(<ПолноеИмяФайла>, <БезопасныйРежим>)
|
|||
10
Лефмихалыч
15.11.16
✎
15:42
|
(7) думаешь админ не зассыт?..
почему для других - вопрос. Либо СОМ-объектт создается на другой машине, где он зарегистрирован, либо СОМ-объект все-таки есть, но у него имя другое (например v83.comconnector.1) либо это неправда, что для дугих баз все работает. Либо что-то еще неправда |
|||
11
Torquader
15.11.16
✎
16:53
|
Может быть, для других баз там V82.
Кроме того, можно прописать ключ в реестр пользователя, а не системы - тогда этот ключ будет действовать только под пользователем, у которого прописан - так вероятность что-то исправить в системе будет минимальна. |
|||
12
Альбатрос
16.11.16
✎
09:47
|
Всем большое спасибо! Помогла вот эта инструкция:
Книга знаний: Вызов 32-битных COM-объектов на стороне 64-битного сервера 1С |
|||
13
Serginio1
16.11.16
✎
09:57
|
(12) Проще установить 64 разрядный comcntr который запрашивается при установке
|
|||
14
Serginio1
16.11.16
✎
09:59
|
http://catalog.mista.ru/public/197627/
Com-соединение |
|||
15
Альбатрос
16.11.16
✎
10:05
|
(13) Компоненту устанавливал на сервере, сообщал, что все ОК, компонента успешно установлена. Но коннектор все равно не работал.
(14) Ну собссно это то же самое, что и в (12), разве нет? |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |