V83 comconnector 1 ошибка инициализации модуля модульвнешнегосоединения

4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

1

1C 8.x

Работать с двумя базами

18.07.2016, 12:18. Показов 5863. Ответов 24


Студворк — интернет-сервис помощи студентам

Добрый день! Можете подсказать реально реализовать работу одновременно с двумя базами? Есть основная база №1, пользователь с помощью обработки заносит данные, сохраняет и создается новый документ в базе №2. Так сказать при помощи обработки (которая находится в базе №1) мы подключаемся ко второй базе и работает с ней. Если такое реально можете показать пример.



0



Эксперт 1С

3053 / 2000 / 524

Регистрация: 25.06.2009

Сообщений: 6,964

18.07.2016, 14:28

2

Ermak27, что за базы? какие конфигурации?
Может обмен данными настроить?



0



4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

18.07.2016, 14:49

 [ТС]

3

GreenkA,
-) конфигурация 8.2
-) самаписная
-) Нет, обмен я могу сделать. Мне интересно можно ли сделать как я написал выше.
Через код подключаться к базе 1с и создавать там документ.



0



Эксперт 1С

434 / 305 / 92

Регистрация: 28.05.2014

Сообщений: 1,247

18.07.2016, 15:15

4

Ermak27, ну если только через com-соединение



1



Модератор

Эксперт 1С

3744 / 2932 / 581

Регистрация: 10.03.2011

Сообщений: 11,539

Записей в блоге: 1

18.07.2016, 15:15

5

Лучший ответ Сообщение было отмечено Ermak27 как решение

Решение

Цитата
Сообщение от Ermak27
Посмотреть сообщение

Мне интересно можно ли сделать как я написал выше.

Можно

http://programmist1s.ru/podkly… -2-po-com/



1



Ermak27

4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

19.07.2016, 10:46

 [ТС]

6

Не могу подключиться

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
Функция ПолучитьПодключениеКСервернойБД()
     Сервер = "server";
     ИмяБазы = "copy_baza";
     Пользователь = "Админ";
     Пароль = "1c";
     
     Параметры = "srvr=""" + Сервер + """; ref=""" + ИмяБазы + """; usr=""" + Пользователь + """; pwd=""" + Пароль + """;";
     V8 = Новый COMОбъект("V83.COMConnector");
     Попытка
         Base1С = V8.Connect(Параметры);
     Исключение
         Предупреждение ("Ошибка подключения!");
     КонецПопытки;
     
КонецФункции



0



Эксперт 1С

842 / 605 / 211

Регистрация: 24.07.2013

Сообщений: 2,102

19.07.2016, 20:38

7

Убери попытку-исключение и посмотри какую ошибку выдает платформа.



0



Dethmontt

Модератор

Эксперт 1С

3744 / 2932 / 581

Регистрация: 10.03.2011

Сообщений: 11,539

Записей в блоге: 1

19.07.2016, 20:41

8

или хотя бы так

1C
1
2
3
4
5
Попытка
         Base1С = V8.Connect(Параметры);
     Исключение
         Сообщить(ОписаниеОшибки());
     КонецПопытки;



0



4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

20.07.2016, 10:24

 [ТС]

9

Dethmontt, Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V83.COMConnector.1): Ошибка инициализации модуля: МодульВнешнегоСоединения . Это что значит?



0



Модератор

Эксперт 1С

3744 / 2932 / 581

Регистрация: 10.03.2011

Сообщений: 11,539

Записей в блоге: 1

20.07.2016, 11:30

10

Цитата
Сообщение от Ermak27
Посмотреть сообщение

Это что значит?

Что там фигня какая то написана…
В

Цитата
Сообщение от Ermak27
Посмотреть сообщение

МодульВнешнегоСоединения



0



4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

20.07.2016, 11:35

 [ТС]

11

Dethmontt, что это за модуль? Где мне искать его? Мне не понятно. Я работаю на платформе 8.3, почему проблема



0



Модератор

Эксперт 1С

3744 / 2932 / 581

Регистрация: 10.03.2011

Сообщений: 11,539

Записей в блоге: 1

20.07.2016, 12:44

12

Ermak27, в базе к которой ты подключаешься не компилируется МодульВнешнегоСоединения

Добавлено через 13 секунд
Ermak27, там какие то ошибки

Добавлено через 49 секунд

Цитата
Сообщение от Ermak27
Посмотреть сообщение

Где мне искать его?

ПКМ по конфигурации в дереве — МодульВнешнегоСоединения



1



4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

20.07.2016, 14:55

 [ТС]

13

Dethmontt, В общих модулях такого нет.



0



Модератор

Эксперт 1С

3744 / 2932 / 581

Регистрация: 10.03.2011

Сообщений: 11,539

Записей в блоге: 1

20.07.2016, 16:52

14

Цитата
Сообщение от Ermak27
Посмотреть сообщение

В общих модулях такого нет.

А где я выше написал про Общие модули ?



0



4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

20.07.2016, 17:19

 [ТС]

15

Dethmontt, я тогда не понимаю где искать ПКМ по конфигурации в дереве — МодульВнешнегоСоединения ?



0



4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

21.07.2016, 08:55

 [ТС]

17

Dethmontt, Спасибо. А какая процедура или функция должна быть в этом модуле чтобы не выдавала ошибки? У меня самописная конфигурация.



0



Модератор

Эксперт 1С

3744 / 2932 / 581

Регистрация: 10.03.2011

Сообщений: 11,539

Записей в блоге: 1

21.07.2016, 16:00

18

Ermak27, а что там вообще есть?

Добавлено через 36 секунд
Ermak27, в базе к которой ты подключаешься!!!! (не из которой подключаешься!!!!)?



0



Ermak27

4 / 4 / 0

Регистрация: 16.01.2013

Сообщений: 1,228

22.07.2016, 10:01

 [ТС]

19

Dethmontt, То что есть в внешнем модуле

1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Перем глОбщиеЗначения Экспорт;
 
Перем глТекущийПользователь Экспорт;
 
///////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ ЗАВЕРШЕНИЯ РАБОТЫ ПОЛЬЗОВАТЕЛЕЙ И ОБРАБОТКИ ПАРАМЕТРОВ
 
// Процедура выполняется при старте системы во внешнем сосединении
//
Процедура ПриНачалеРаботыСистемы()
        
    ПользовательОпределен = Ложь;
    ОписаниеОшибкиОпределенияПользователя = "";
    Если Не ЗначениеЗаполнено(ПараметрыСеанса.ТекущийПользователь) Тогда
        Если УправлениеПользователями.ОпределитьТекущегоПользователя(ОписаниеОшибкиОпределенияПользователя) Тогда
            ПользовательОпределен = ЗначениеЗаполнено(ПараметрыСеанса.ТекущийПользователь);
        КонецЕсли;
    Иначе
        ПользовательОпределен = Истина;
    КонецЕсли;
    
    Если Не ПользовательОпределен Тогда
        Если ПустаяСтрока(ОписаниеОшибкиОпределенияПользователя) Тогда
            ОписаниеОшибкиОпределенияПользователя = "Ошибка идентификации пользователя. Обратитесь к администратору";
        КонецЕсли;
        ВызватьИсключение ОписаниеОшибкиОпределенияПользователя;
    КонецЕсли;
    
    глТекущийПользователь = ПараметрыСеанса.ТекущийПользователь;
 
КонецПроцедуры //ПриНачалеРаботыСистемы()
 
///////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ ЗАПОЛНЕНИЯ ПАРАМЕТРОВ СЕАНСА
 
Функция глЗначениеПеременной(Имя) Экспорт
    
    Возврат ОбщегоНазначения.ПолучитьЗначениеПеременной(Имя, глОбщиеЗначения);
 
КонецФункции
 
// Процедура установки значения экспортных переменных модуля приложения
//
// Параметры
//  Имя - строка, содержит имя переменной целиком
//  Значение - значение переменной
//
Процедура глЗначениеПеременнойУстановить(Имя, Значение, ОбновлятьВоВсехКэшах = Ложь) Экспорт
    
    ОбщегоНазначения.УстановитьЗначениеПеременной(Имя, глОбщиеЗначения, Значение, ОбновлятьВоВсехКэшах);
    
КонецПроцедуры



0



Модератор

Эксперт 1С

3744 / 2932 / 581

Регистрация: 10.03.2011

Сообщений: 11,539

Записей в блоге: 1

27.07.2016, 14:55

20

Ermak27, У общих модулей
1. УправлениеПользователями
2. ОбщегоНазначения

стоят галки «Внешнее соединение» ?



0



IT_Exp

Эксперт

87844 / 49110 / 22898

Регистрация: 17.06.2006

Сообщений: 92,604

27.07.2016, 14:55

20

Ошибка при попытке подключения к базе для обмена данными ☑ 0

AlkisTer

18.02.14

17:38

{ОбщийМодуль.яъОбменДанными.Модуль(904)}: Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V83.COMConnector.1): Ошибка инициализации библиотеки модулей

Ошибка при попытке подключения к базе для обмена данными (Выполнение обмена, Проверка подключения, Обновление данных). Ошибка появилась после обновления конфигурации основанной на ВерсияБП 3.0.28.13.

Я не программист, системный администратор, в коде не разбираюсь. Отчего такая ошибка может быть?

1

21stas

18.02.14

19:02

А сама база нормально открывается той версией платформы, которой открыта конфигурация, которая обменивается?

2

AlkisTer

19.02.14

10:02

База открывается нормально, объект V83.COMConnector.1 (comcntr.dll) зарегистрировал, переустанавливал 1С сервер.

Проблема появилась после обновления релиза конфигурации.

3

AlkisTer

19.02.14

11:06

Народ помогите, реально вешаться надо :)

4

AlkisTer

19.02.14

16:17

Разобрались наши разработчики, их ответ:

В режиме конфигуратора нужно запустить проверку конфигурации (Конфигурация -> Проверка конфигурации) с включенными флажками «Внешнее соединение» и «Внешнее соединение (вариант клиент-сервер)». После исправления найденных ошибок должно работать.

Может кому-то поможет.

Попытка чтения или записи в защищенную память    оглавление    Ошибка: подключение не установлено, т.к. конечный компьютер отверг запрос на подключение

2020-12-17T15:30:51+00:00

Такое сообщение означает, что разработчиками конфигурации допущена ошибка в модуле внешнего соединения, который выполняется при внешнем подключении к базе.

Если для вас доступна поддержка разработчиков этой конфигурации, тогда напишите им об этой ошибке.

При наличии этой ошибки ничего не остаётся кроме как зайти в свойства проблемной базы и установить галку «Для этой базы используется базовая платформа»: ссылка.

В этом случае обновлятор сможет работать с базой, потому что не будет предпринимать попытки подключения к ней.

Но из-за этого не будут автоматически выполняться обработчики обновления и будут недоступны некоторые операции обновлятора над базой.

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

Владимир Милькин

Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

Нажмите одну из кнопок, чтобы поделиться:

Попытка чтения или записи в защищенную память    оглавление    Ошибка: подключение не установлено, т.к. конечный компьютер отверг запрос на подключение

Если сервер 1С стоит на Windows х64, то рано или поздно Вы столкнетесь с проблемой создания COM-соединения, если соединение инициируется на стороне сервера. На стороне клиента COM-соединение работает нормально, на стороне сервера вываливается с ошибкой.

Данная статья позволяет снять проблему. НО – до переустановки или обновления платформы!

Столкнулся с проблемой создания COM-соединения на стороне сервера. Обновили версию платформы, но после установки, компонент COM-соединения не регистрировался в системе. Предлагаемая ниже методика позволяет избавиться от описываемой проблемы.

Ниже алгоритм настройки системы, со скрином к каждому действию. Внимание скрины взяты с другого сайта, для общего понимания действий!

И так:

  1. Остановка сервера 1С (рекомендуется, но не обязательно)
  2. Регистрация компоненты comcntr.dll
  3. Создание обертки COM+, позволяющей 64-битному приложению взаимодействовать с 32-битном.
  4. Перезагрузка сервера (физического). Не обязательно, но рекомендуется
  5. Старт сервера 1С. (обязательно 🙂  

Вызываем консоль

Регистрируем компоненту. Компонента отсутствует, если установлен только сервер 1С. Почему-то 1С публикует ее только в составе клиента.

вызвать в cmd

regsvr32 "C:\Program Files\1cv8\[номер платформы]\bin\comcntr.dll"

Библиотека успешно зарегистрирована.

Теперь запускаем службу компонентов. Описывается для Windows Server 2008 R2 Standart.

Создаем приложение.

Выбираем – Создать приложение

Называем наше приложение – V83.COMConnector, ставим галочку – Серверное приложение.

На этом окне – выбираем учетную запись под которой будет запускаться наше приложение. Лучше указать “учетку” с правами Администратора. Я ставил – текущий пользователь т.к., работал под Администратором.

После того как мы создали Приложение, заходим в него, в раздел – Компоненты и создаем новый компонент.

На данном этапе нужно указать где лежит библиотека dll. Как правило библиотека лежит – “С:\Program Files\1cv8\[номер платформы]\bin\comcntr.dll”

Теперь установи права на Приложение. Правой кнопкой на созданном Приложении – Свойства.

Выбираем вкладку – Безопасность и Снимаем галочку – Принудительная проверка доступа для приложений => (Ставим галочку)  => Применить политику программных ограничений => Уровень ограничений => Неограниченный.

Далее переходим к самому Компоненту – Выбираем – Свойства, раздел Безопасность.

Проверяем что галка стоит на “Владельце”

На этом у меня заработало!

Наткнулся на инфостарте на инструкцию по преодолению ошибок. Полезный мануал, сохраню тут:

Пришлось регистрировать объект «вручную» (это решение нашел раньше, чем причину выдаваемой ошибки): заходим в Панель управления=>  Администрирование => Службы компонентов => Компьютеры => Мой компьютер => Приложения COM+ => Создать приложение => Создать новое приложение (Вводим имя приложения) V83.COMConnector=> (Поставить переключатель в) Серверное приложение => Указанный пользователь (Любой с правами администратора)

Далее необходимо создать компонент V82COMConnector => Компоненты => Создание нового компонента => Установка новых компонентов => (Открываем каталог с 1С  и ищем библиотеку)  comcntr.dll

Теперь щелкаем правой кнопкой мыши  V83COMConnector и настраиваем его:  V83COMConnector => Свойства=> Безопасность => (Снимает галочку) Принудительная проверка доступа для приложений => (Ставим галочку)  => Применить политику программных ограничений => Уровень ограничений => Неограниченный.

После проверяем соединенние и видим, что все работает.

Благодарю за внимание всех, кто прочел. На вопросы и комментарии постараюсь отвечать в срочном порядке.

+

Как регистрировать COM компоненту 1С через исполняемый файл

Понравилась статья? Поделить с друзьями:
  • Utm ошибка 403
  • V82 comconnector ошибка формата потока
  • V83 comconnector 1 ошибка инициализации библиотеки модулей
  • Usbutil выдает ошибку
  • Usb001 ошибка принтера canon