![]() |
![]() |
|
не создается com объект базы в режиме управляемого приложения | ☑ | ||
---|---|---|---|---|
0
Белый Медведь
25.04.12
✎
15:58
|
вот функция:
Функция ПолучитьКоннектор() СтрокаПодключения = "ws=""http://192.141.0.25:1800/webbase"";Usr=""admin"";Pwd=""123"""; Попытка cntr = Новый COMObject("V82.COMConnector"); connection = cntr.Connect(СтрокаПодключения); Возврат connection; Исключение Сообщить(ОписаниеОшибки()); Возврат Неопределено; КонецПопытки; КонецФункции При выполнении происходит исключительная ситуация "{Обработка.ПопыткаСоединения.Форма.Форма.Форма(15)}: Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V82.COMConnector.1): Неверные или отсутствующие параметры соединения с информационной базой" Хотя при подключении к базе тонким клиентом со строкой "http://192.141.0.25:1800/webbase" все нормально, появляется приглашение для выбора пользователя и ввода пароля. Я чего-то не знаю, подскажите, плиз. |
|||
1
H A D G E H O G s
25.04.12
✎
16:15
|
Тонкий клиент - это не Внешнее соедниение.
|
|||
2
Белый Медведь
25.04.12
✎
16:21
|
Вы хотите сказать, что я не смогу создать com объект тонкого клиента?
|
|||
3
H A D G E H O G s
25.04.12
✎
16:28
|
(2) Точно не так:
V82.COMConnector |
|||
4
Белый Медведь
25.04.12
✎
17:03
|
Вот, нарыл http://forum.infostart.ru/forum14/topic31657/
надо было не "V82.COMConnector", а "V82c.Application" |
|||
5
Белый Медведь
27.04.12
✎
16:48
|
Теперь другая хрень :(. (прочитал все темы на мисте по поиску "V82C.Application" и "V82.Application" не то)
Вот код: Попытка КомОб = Новый COMОбъект("V82C.Application"); РезКоннект = КомОб.Connect(СтрокаПодключения); Сообщить("Соединение вернуло: " + РезКоннект); //КомОб.Visible = Ложь; ОбработкаОбменДанными = КомОб.Обработки.ОбменДанными; Результат = ОбработкаОбменДанными.ПолучитьДанные(); Исключение Сообщить(ОписаниеОшибки()); КонецПопытки; В итоге РезКоннект возвращает истину Появляется интерфейс запускаемой по строке подключения 1С-ки, т.е. подключилось нормально. КомОб имеет тип COMОбъект. Но теперь не могу обратиться к обрабокам. Ошибка в строке {ОбработкаОбменДанными = КомОб.Обработки.ОбменДанными;} выдает ошибку: "{Обработка.ПопыткаСоединения.Форма.Форма.Форма(5)}: Значение не является значением объектного типа (Обработки)" Смотрю в синтаксисе про "Automation сервер" там написано "создается COMОбъект с идентификатором V82.Application (для тонкого клиента V82C.Application);" это верно, дальше пример на вижуале: Set trade = CreateObject("V82.Application") trade.Connect("File=""c:\InfoBases\Trade"";Usr=""Director"";") Set Товар = trade.Справочники.Товары Set Группа = Товар.СоздатьГруппу() но тут пример для V82 а не для V82с, получается что для V82с .Справочники.Товары уже не доступно, или я опять че-то не понял??? Мож кто сталкивался? |
|||
6
H A D G E H O G s
27.04.12
✎
16:55
|
Глобальный контекст (Global context)
Обработки (DataProcessors) Использование: Только чтение. Описание: Тип: ОбработкиМенеджер. Используется для доступа к определенным в конфигурации обработкам. Доступность: Сервер, толстый клиент, внешнее соединение. |
|||
7
Лоботряс
27.04.12
✎
16:55
|
ОбработкаОбменДанными = КомОб.Обработки.ОбменДанными.Создать();
Результат = ОбработкаОбменДанными.ПолучитьДанные(); |
|||
8
H A D G E H O G s
27.04.12
✎
16:56
|
Надо написать ОМ, с галочкой Клиент(Управляемое приложение), который вызовет серверный модуль, который создаст обмект обработки и заставит эту сволочь работать
|
|||
9
Лоботряс
27.04.12
✎
16:58
|
(7)+Процедура ПолучитьДанные() должна быть экспортной
|
|||
10
H A D G E H O G s
27.04.12
✎
16:59
|
(5) В Source не рубишься?
|
|||
11
Белый Медведь
27.04.12
✎
22:35
|
(7) .Обработки уже не существует ибо как оказалось(6)
(8) попробую, отпишусь. (10) уже нет, лялько маленькое родилось... |
|||
12
AmoreMe
27.04.12
✎
22:45
|
Сonnector = Новый COMОбъект("V82.COMConnector");//COM
V8 = Сonnector.Connect(СокрЛП(Объект.СтрокаПодключения + СокрЛП(Объект.Пароль))); Сотрудники = V8.Справочники.Сотрудники; Выборка = Сотрудники.Выбрать(); Пока Выборка.Следующий() Цикл Сообщить(Выборка.Наименование); КонецЦикла; |
|||
13
AmoreMe
27.04.12
✎
22:46
|
Сonnector = Новый COMОбъект("V82.Application");//OLE
Сonnector.Connect("File=""D:\Базы\8.2\Режим"";Usr=""Администратор"";"); Сотрудники = Сonnector.Справочники.Должности; Выборка = Сотрудники.Выбрать(); Пока Выборка.Следующий() Цикл Сообщить(Выборка.Наименование); КонецЦикла; |
|||
14
Белый Медведь
27.04.12
✎
22:50
|
(12) V82.COMConnector для тонкого не создается, у меня строка подключения вида как в (0) ибо база в режиме управляемого приложения, к которой я подключаюсь.
(13) мне нужно не V82. а V82с. , а если V82с. то у Сonnector поля .Справочники не существует. |
|||
15
AmoreMe
27.04.12
✎
22:52
|
Я делал на тонком клиенте все работает!
|
|||
16
AmoreMe
27.04.12
✎
22:53
|
при чем как на сервере так и на форме!
|
|||
17
AmoreMe
27.04.12
✎
22:56
|
Попробуйте переустановить платформу... у меня был случай когда не мог установить COM соединение пока не переустановил платформу :( (Будет повторная регистрация COM компонентов при установке)
|
|||
18
Белый Медведь
27.04.12
✎
22:59
|
(17) Обязательно попробую, если (8) не получится. Спасибо за совет.
|
|||
19
Белый Медведь
28.04.12
✎
00:20
|
(12) Вспомнил, что уже делал так. Ругается на строку подключения, не нравится ключ ws=
(8) а как потом обращаться к модулю? вот так? КомОб = Новый COMОбъект("V82C.Application"); РезКоннект = КомОб.Connect(СтрокаПодключения); Результат = КомОб.ОбщиеМодули.ТотСамыйКлиентскийОМ.ЭкспортнаяПроцка() или так? КомОб = Новый COMОбъект("V82C.Application"); РезКоннект = КомОб.Connect(СтрокаПодключения); Результат = КомОб.ТотСамыйКлиентскийОМ.ЭкспортнаяПроцка() |
|||
20
Белый Медведь
28.04.12
✎
10:31
|
(8) вот такой код заработал:
КомОб = Новый COMОбъект("V82C.Application"); КомОб.Connect(СтрокаПодключения); Результат = КомОб.ТотСамыйСерверныйОМ.ЭкспортнаяПроцка(); ТотСамыйСерверныйОМ - это общий модуль с галочками "Сервер" и "Вызов сервера". Даже ОМ на клиенте не нужен. ЭкспортнаяПроцка() честно кладет текст в переменную Результат и выполняет другие процедуры из других серверных модулей. |
|||
21
H A D G E H O G s
28.04.12
✎
12:32
|
(20) Ну тем более.
"Вызов сервера" помог. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |