| 
    
        
     
     | 
    
    
  | 
не создается 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) Ну тем более.
  
        "Вызов сервера" помог.  | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |