Опубликовано в Блогерские заметки
7 ноября
Всем Доброго времени суток!
Многие из нас сталкиваются в своей деятельности с программными продуктами Компании 1С. Более того, некоторым из нас иногда приходится даже иногда обслуживать продукты 1С. Иногда в этом «чудесном» процессе обслуживания возникают различные казусы. Сегодня мы поговорим об одном из них.
А именно, тема данного материала: Как исправить ошибку, возникающую в 1С — Не удалось подключиться к другой программе: Метод объекта не обнаружен (Connect).
Если Вам посчастливилось увидеть такую же ошибку, как на этом скриншоте, читайте далее, как её исправить 😉
[yandex_ban1]
Немного вводной теории:
1С:Предприятие 8.x предоставляет разные интересные возможности для организации обмена данными с другими программными системами. Наряду с механизмом OLE Automation также было введено понятие COM-соединения, которое позволяет обеспечить надежный и более быстрый доступа к данным 1С:Предприятия 8.0 из внешних приложений, поддерживающих данную технологию.
Для организации доступа к данным 1С:Предприятия 8.0 через COM-соединение создается COM-объект с идентификатором V8.COMConnector , с помощью которого и производится установка соединения. Затем производится обращение к методу Connect ранее созданного объекта V8.COMConnector. Метод Connect возвращает ссылку на объект COM -соединения с информационной базой 1С:Предприятия 8.0. И через полученный объект COM-соединения производится обращение к допустимым методам, свойствам и объектам информационной базы, с которой установлено соединение.
Теперь, зная откуда растут ноги, переходим к практике. Допустим (при обновлении и ли другой какой-то операции) Вы получили ошибку вида:
Чтобы исправить ошибку, возникающую в 1С — метод объекта не обнаружен (connect), нужно сделать следующее:
В операционных системах Windows последних версий заходим в «Службы компонентов». Данная функциональность вызывается следующей последовательностью: Панель управления — Администрирование — Службы компонентов.
Выбираем: Компьютеры – Мой компьютер – Приложения COM+ — Создать приложение – Создать новое приложение – вводим имя «V82COMConnector» (переключатель «Серверное приложение») – Указанный пользователь (Администратор)
В появившейся ветке V82COMConnector – выбираем подветку Компоненты – создание нового компонента – Установка новых компонентов — <каталог 1С>bincomcntr.dll
Нажимаем правой кнопкой по ветке V82COMConnector – Свойства – Безопасность – снимаем галку «Принудительная проверка доступа для приложений» — ставим галку «Применить политику программных ограничений» — Уровень ограничений «Неограниченный»:
Также в профилях пользователей C:UsersНашПользовательAppDataRoaming1C1CEStart.cfg изменяем параметр UseHWLicenses=0 на UseHWLicenses=1
После всех этих изменений можно (для чистоты эксперимента) перезагрузить комп и наслаждаться дальнейшей работой в 1С, но уже без данной ошибки (!)
[yandex_ban2]
P.S. Небольшой бонус в конце: 1С обновление от имени администратора
Довольно часто какой-то Ваш удалённый клиент — бухгалтер и т.д. — не может произвести самостоятельно обновление программных продуктов 1С, ему требуются права администратора, а правой кнопкой нажимать на ярлыке (и выбирать «Запуск от имени администратора») он не хочет или «боится». Поэтому он постоянно напрягает нашего брата АйТишника.
Давайте же нажмём за него правой кнопкой, но сделаем это один раз и навсегда забудем о данной теме!
Итак, делаем разовую настройку — нажимаем правой кнопкой на ярлыке запуска 1С, выбираем «Свойства», жмём «Изменить параметры для всех пользователей» и устанавливаем галку «Запускать эту программу от имени администратора». Затем пару раз кликаем Ок, и забываем про «боязливого» клиента 😉
Надеюсь, Вы смогли найти здесь немного полезностей для себя. Пишите в комментах о Ваших «хитростях» — будем совместно приносить просветительскую пользу.
До связи и всего хорошего! 😉
При попытке подключения к информационной базе произошла ошибка: Метод объекта не обнаружен (Connect)
Описание ошибки:
Терминальный сервер. У пользователя 1С при попытке инициировать прямое подключение к одной базе из другой с помощью com-соединения возникает ошибка: «При попытке подключения к информационной базе произошла ошибка: Метод объекта не обнаружен (Connect)» Релиз платформы 1С: Предприятие 8.3.16.1063
Найденные решения:
Стоит отметить, что ошибка, связанная с com-компонентой, отвечающей за com-соединение между базами плафтормы 1С: Предприятие 8, не похожа по тексту на самую распространенную ошибку Ошибка при вызове конструктора (COMObject) COMConnector = Новый COMObject(ИмяCOMСоединителя()); // «V82.COMConnector» по причине: -2147221164(0x80040154): Класс не зарегистрирован
Так же стоит отметить, что данная проблема возникла у одного пользователя удаленного рабочего стола. Хотя, к примеру, у двух других пользователей удаленного рабочего стола то же com-соединение работало безотказно.
В таком случае можно было бы прибегнуть к рекомендациям, изложенным, в идентичной по проблематике публикации на ресурсе igorman.ru, но уже было «на своем месте» приложение COM+ «V82COMConnector».
Так же не помогла ценная в последнее время рекомендация, связанная с очисткой кэша базы из обсуждения на форуме mista.ru . Т.к. на удивление в последнее время на практике возникает просто много странных ошибок, которые устраняются очисткой кэша базы — самым простым способом — удалить и снова добавить базу в список баз.
Но вернемся к тому факту, который был отмечен в самом начале, о том, что у других пользователей того же терминального сервера соединение работало без проблем. Сравнение прав пользователей показало, что у пользователя, у которого com-соединение выдавало ошибку «Метод объекта не обнаружен (Connect)», более низкий уровень прав. Поэтому не будет линим проверить и при необходимости добавить прав пользователю в настройках безопасности «1CV83 Application» в «Службе компонентов» в ветке «Настройка DCOM»
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
30-04-2020
Журавлев А.С.
(Сайт azhur-c.ru)
Исправление следующей ошибки 1С 8.3 (может возникать при синхронизации, выгрузке-загрузке различных данных с удаленным подключением и т.п., как правило после обновления платформы):
«При попытке подключения к информационной базе произошла ошибка:
Ошибка при вызове конструктора (COMОбъект): Недопустимая строка с указанием класса»
Решение: в реестре Windows необходимо зарегистрировать компоненту comcntr.dll
Сначала пробуем простые варианты.
Первый вариант: пробуем удалить и заново установить платформу 1С, войдя в систему с полными правами (предварительно перезагрузив компьютер).
Проверяем. Если не помогло —
Второй вариант:
Открываем Проводник (Мой компьютер), в адресной строке пишем %windir% и нажимаем Enter,
открывается командное окно с путем: C:Windows,
Далее в зависимости от разрядности вашей версии Windows (32 или 64 разряда) входим в соответствующую директорию,
находим среди файлов cmd.exe и запускаем его от имени Администратора (клик правой клавишей — запустить от имени Администратора).
В появившемся окне также в зависимости от разрядности Windows вставляем (можно отсюда через копировать-вставить) следующую строку:
для Windows 7×32
в %windir%System32RegSvr32.exe «С:Program Files (x86)1cv88.3.11.3034bincomcntr.dll»
для Windows 7×64
в %windir%SysWoW64RegSvr32.exe «С:Program Files (x86)1cv88.3.11.3034bincomcntr.dll»
Важно! Здесь вместо подстроки «С:Program Files (x86)1cv88.3.11.3034» укажите путь к Вашему каталогу 1С Предприятие.
Если и это не помогло —
Третий вариант, регистрируем компонент в реестре вручную:
Открываем: Панель управления — Администрирование — Службы компонентов – Компьютеры – Мой компьютер
Выбираем: Приложения COM+ — Дополнительные действия — Приложения — Создать приложение.
Вводим имя «V83COMConnector» , ставим опцию «Серверное приложение», и Указанный пользователь выбираем «Администратор», либо «Текущий пользователь».
В появившейся ветке V83COMConnector выбираем Компоненты – Создание нового компонента – Установка новых компонентов.
Выбираем файл — входим в Ваш каталог 1С, далее bincomcntr.dll, и выбираем Готово.
Правой кнопкой мыши нажимаем по ветке V83COMConnector, далее переходим на Свойства – Безопасность.
Снимаем опцию «Принудительная проверка доступа для приложений», выставляем опцию «Применить политику программных ограничений» и выбираем уровень «Неограниченный».
После обновления платформы 1С на версию 8.3.11.2867 и конфигурации Розница 2 на версию 2.2.7.23 нарушилась работа ТСД и появилась ошибка — #Ошибка выполнения операции — #Ошибка при подключении: «МодульОбычногоПриложения(90)»: Метод объекта не обнаружен (Connect) (1С: версия приложения = «8.3.11.2867», режим работы основной базы = «файловый», режим работы базы драйвера= «файловый»)
Ответа в базе знаний найти не удалось.
Ошибка из логов конфигурации:
0; 24; 09.12.2017 17:55:38.794 ERROR
ADDITION TEXT: InvokeMethodAction.InvokeMethod
MESSAGE: Серверу не удалось обработать запрос. —> Ошибка при подключении: «МодульОбычногоПриложения(90)»: Метод объекта не обнаружен (Connect) (1С: версия приложения = «8.3.11.2867», режим работы основной базы = «файловый», режим работы базы драйвера= «файловый») STACK TOP: at System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke (System.IAsyncResult asyncResult) [0x00048] in <a56b5e68cf104ffe9b4e972326e290d3>:0
at Cleverence.Warehouse.Compact.DataStorage.Invoke (System.String methodName, System.Object[] parameters, System.Int32 timeout) [0x00116] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
at Cleverence.Warehouse.Compact.DataStorage.InvokeRemoteMethod (System.String methodPath, System.String invokeArgs, System.String deviceInfoXml) [0x00000] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
at (wrapper remoting-invoke-with-check) Cleverence.Warehouse.Compact.DataStorage:InvokeRemoteMethod (string,string,string)
at Cleverence.Warehouse.Compact.InvokeMethodAction.InvokeMethod () [0x001d3] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
TYPE: System.Web.Services.Protocols.SoapException
CORE INFO: 1С Драйвер ТСД Wi-Fi ПРОФ.Document=new_dbb3f5a3-df94-491b-89fa-82a932066e27(Просмотр номенклатуры).Action=ПолучитьСписокТоваров
SOURCE: System.Web.Services
TARGETSITE: EndInvoke
[STACK TRACE]
at System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke (System.IAsyncResult asyncResult) [0x00048] in <a56b5e68cf104ffe9b4e972326e290d3>:0
at Cleverence.Warehouse.Compact.DataStorage.Invoke (System.String methodName, System.Object[] parameters, System.Int32 timeout) [0x00116] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
at Cleverence.Warehouse.Compact.DataStorage.InvokeRemoteMethod (System.String methodPath, System.String invokeArgs, System.String deviceInfoXml) [0x00000] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
at (wrapper remoting-invoke-with-check) Cleverence.Warehouse.Compact.DataStorage:InvokeRemoteMethod (string,string,string)
at Cleverence.Warehouse.Compact.InvokeMethodAction.InvokeMethod () [0x001d3] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
[STACK TRACE]
CODE: http://schemas.xmlsoap.org/soap/envelope/:Server
DETAIL: System.Xml.XmlElement
DATA: System.Collections.ListDictionaryInternal
HRESULT: -2146233087
Подскажите как исправить.
Метод объекта не обнаружен в 1С 8.3
После обновлений, доработок и других подобных изменений конфигурации пользователи могут столкнуться с ошибкой Метод объекта не обнаружен. В качестве метода выступают процедуры и функции, выполняющие некоторые действия с объектом. За каждым типом метаданных закреплены свои методы. Сообщение Метод объекта не обнаружен программа выдает в случаях, когда не находит во встроенном языке метод с таким именем или одноименную процедуру/функции в модулях объекта.
Примеры появления и исправления ошибки рассмотрены нами на конфигурации 1С:Бухгалтерия 8.3.
Причины возникновения ошибки в 1С 8.3
Пользователь получает предупреждение в виде всплывающего окна с текстом «Метод объекта не обнаружен ([Имя_метода])», если:
- метод не принадлежит к типу метаданных;
- опечатка в имени метода;
- у процедуры или функции, вызываемой в качестве метода объекта, не указанно ключевое слово Экспорт.
Для решения проблемы следует разобраться в структуре объектов конфигурации и их наборе методов.
Объекты и методы
Объекты или метаданные — основные составляющие конфигурации, куда сохраняются данные информационной базы. Состав метаданных закреплен на уровне платформы и не может дополняться программистом.
В список стандартных объектов 1С входят:
- константы;
- справочники;
- документы;
- отчеты;
- регистры сведений;
- и т. д.
Состав метаданных не ограничен объектами, перечисленными в окне дерева конфигурации: их в несколько раз больше. К тому же один объект может иметь несколько типов: например, ДокументОбъект, ДокументСсылка, ДокументВыборка и т. д. У каждого типа есть свой набор методов, которые позволяют выполнить определенную последовательность действий с отдельным экземпляром объекта.
Методы делятся на два вида:
- встроенные в платформу;
- написанные программистом в модулях объектов.
Встроенные методы объектов описаны в Синтакс-Помощнике: например, записать документ позволит метод Записать(). Имена методов созвучны с глаголом действия, которое будет произведено с метаданными.
Процедуры и функции, описанные в модулях объектов с ключевым словом Экспорт, дополняют типовые методы своих объектов и могут вызываться из любых программных модулей, где используются эти метаданные.
Исправление ошибки
Сообщение «Метод объекта не обнаружен» может возникнуть, например, при нажатии кнопки в документе.
Для детального анализа ошибки запустите конфигурацию в режиме отладки из конфигуратора Отладка — Начать отладку и повторите те же действия, чтобы вызвать повторное появление ошибки на экране. Кнопка Подробно раскроет окно с указанием строчки программного кода, где возникает сбой.
Для перехода в конфигуратор нажмите Конфигуратор.
В режиме конфигурирования курсор автоматически установится в месте появления ошибки, а информация из окна с подробным описанием сбоя в 1С отразится в служебном окне Конфигуратора.
Решение вопроса с ошибкой «Метод объекта не обнаружен» в 1С 8.3 будет зависеть от вида метода: созданный вручную или типовой.
Встроенные в платформу методы
Стандартные методы перечислены в Синтакс-Помощнике на ветках соответствующих объектов. Откройте Ситнакс-Помощник через меню конфигуратора Справка или по одноименной кнопке на панели инструментов. Для быстрого поиска на вкладке Индекс введите часть имени типа объекта, а для перехода к его описанию нажмите кнопку Найти текущий элемент в дереве.
Программа перейдет на вкладку Содержание и выделит искомый объект. Раскройте ветвь с методами и попытайтесь отыскать похожий по наименованию. Если такой нашелся, замените на него метод в строке кода с ошибкой.
Запустите 1С в режиме отладки и проверьте работу конфигурации в месте возникновения ошибки. Если окно со сбоем больше не выходит, обратите внимание на корректность обработки данных программой. Исправляйте имя метода в коде на типовое, только если видите явную опечатку в наименовании и не нашли одноименной процедуры/функции в моделях объекта.
Методы, добавленные вручную
Программисты могут добавлять экспортные процедуры и функции (со словом Экспорт) в модулях объектов, например, вкладке Прочее в окне редактирования объекта конфигурации.
Перед поиском метода узнают тип объекта, от которого запускается выполнение. Возможны варианты:
- для типов ДокументОбъект, СправочникОбъект и т. д. методы прописывают в Модуле объекта;
- типы ДокументМенеджер, ПеречислениеМенеджери т. д. — Модуль менеджера;
- типы РегистрСведенийНаборЗаписей и т. д. — Модуль набора записей (у регистров);
- тип КонстантаМенеджерЗначения — Модуль менеджера значения (у констант);
- и др.
Чтобы определить тип объекта, воспользуйтесь одним из способов:
1. Разберите в окне ошибки строку кода, где идет обращение к методу:
- Документ.СчетНаОплатуПоставщика.Форма.ФормаДокумента — метод выполняется в модуле формы документа;
- Документ — объект, от которого запускается метод;
- Добавить() — имя метода. Характерная черта — наличие круглых скобок в конце, в них перечисляются параметры, если они необходимы для выполнения операций;
- ПодборТовараСервер() — имя процедуры/функции, где возникает ошибка.
В данном примере Документ является переменной, содержащей объект с типом ДокументОбъект, получаемый встроенным методом ПолучитьОбъект().
2. Если конфигурация допускает вносить изменения, выведите тип объекта в окне сообщений в пользовательском режиме с помощью встроенных функций Сообщить() и ТипЗнч():
- впишите в процедуру строку кода с функцией, указав в скобках обращение к объекту без имени метода;
- запустите 1С в режиме отладки и повторите действия, вызывающие сбой;
- проигнорируйте окно с ошибкой, нажав ОК. В нижней части рабочей области программы появится сообщение с типом объекта.
3. Через команду контекстного меню Вычислить выражение в Конфигураторе
- в строчке, где возникает сбой, поставьте точку останова для принудительной остановки выполнения программного кода, имеет вид красного круга на полях с левой стороны;
- запустите программу в режиме отладки;
- повторите действия, при которых возникала ошибка;
- работа программы остановится, откроется окно конфигуратора;
- выделите часть кода, где идет обращение к объекту, без метода;
- правой кнопкой вызовите контекстное меню, выберите команду Вычислить выражение;
- в открывшемся окне в колонке Тип будет указан тип объекта.
Переменная Документ тип ДокументОбъект.СчетНаОплатуПостащика, поэтому запускаемые методы программа ищет среди экспортных процедур/функций в модуле объекта документа СчетНаОплатуПоставщику.
Для поиска метода:
- откройте модуль объекта/менеджера/набора записей;
- найдите одноименную процедуру или функцию, для быстрого перехода к нужной части текста модуля воспользуйтесь окном поиска, набрав в нем часть имени метода;
- проверьте наличие ключевого слова Экспорт. При его отсутствии программа не сможет передать процедуру/функцию в другой модуль. Соответственно, она не будет обнаружена, что приведет к появлению ошибки «Метод объекта не обнаружен»;
- имя процедуры/функции должно совпадать с вызываемым методом: если имеются явные орфографические ошибки или опечатки, исправьте их;
- если наименование процедуры/функции полностью совпадает с методом, и ключевое слово Экспорт указано, возможно, причина — в неверном типе объекта.
Если тип объект задан неверно, то программа будет производить поиск экспортных процедур/функции вне тех модулях и пользователь получит ошибку «Метод объекта не обнаружен». Для решения проблемы потребуется переписать программный код, пользователю стоит обратиться к программисту.
Если ни один из вариантов исправления ошибки не дал результата, попробуйте закомментировать строку кода, где происходит сбой, добавив в начале строки два правых слеша.
Эти действия приведут к отключению строки кода с методом для выполнения программой. Возможно, это устранит появление ошибки, но может исказить или повредить данные в базе из-за нарушения алгоритма их обработки, т. к. из него исключена последовательность действий, описанная в методе. Поэтому вносить самостоятельные правки в программный код нужно с осторожностью.
Метод объекта не обнаружен Connect 1С 8.3
Ошибку «Метод объекта не обнаружен (Connect)» 1С может показать при попытке обновить конфигурацию, синхронизации или загрузке/выгрузке данных из другой программы, базы.
Connect — наименование встроенного метода, принадлежит COM-объектам, которые 1С создает на основании объектов базы данных для их передачи или получения из других источников.
Поскольку метод типовой, следует проверить в конфигураторе корректность написания его имени в коде программы.
Ошибка «Метод объекта не обнаружен (Сonnect)» в 1С 8.3 не всегда связана с конфигурацией, причина может заключаться в операционной системе. Перед использованием метода Connect программа 1С должна создать COM-объект с помощью специальных компонентов, которые не всегда есть в системе компьютера. Проблему решают через регистрацию dll компонентов обмена, процедуру выполняют на сервере:
- в папке C:Windows найдите и запустите от имени администратора файл cmd.exe;
- в зависимости от вида операционной системы выполните команду:
- для x32: %windir%System32RegSvr32.exe “С:[путь до каталога 1С]bincomcntr.dll”;
- для x64: %windir%SysWoW64RegSvr32.exe “С:[путь до каталога 1С] bincomcntr.dll”;
- перезагрузите компьютер.
Стандартная утилита RegSvr32 автоматически зарегистрирует файл dll с компонентами обмена в реестре операционной системы, что устранит сбой в 1С, связанный с отсутствием метода connect. В Windows есть инструменты для ручного внесения компонент в реестр через пункт Администрирование на Панели управления, но эту задачу лучше поручить системному администратору компьютеров.
Запасным вариантом для решения вопроса с отсутствующим методом Connect остается чистка кэш-памяти 1С.
«Метод объекта не обнаружен» в 1С — ошибка серьезная, говорящая об отсутствии в программе алгоритмов, необходимых для выполнения действий пользователя. Если 1С сообщает о невозможности найти поле, элемент, реквизит или объект — такие проблемы сотрудник может решить самостоятельно. Но при недоступности методов необходимы знания о типах объектов, умения разбираться в программном коде, поэтому, когда ни один из способов не помог устранить сбой, следует обращаться к специалисту 1С.
Заказать консультацию
По этой или иной ошибке Вы можете обратиться к нашим специалистам, мы Вам поможем решить Вашу проблему.
lirt82
18.01.19 — 10:45
Вчера на сервере где крутиться база и клиентских компах поменяли платформу была 8.3.9, 32 бита, стала 8.3.12 так же 32 бита. Самописная обработка перестала работать выдает ошибку на строке
Попытка
Возврат ComConnector.Connect(ПараметрыПодключенияИБ);
Метод объекта не обнаружен.(Connect)
Я на сервере зарегил компоненту comcntrl.dll успешно, затем на компе у пользака тоже успешно, далее перезагрузил комп пользователя но ошибка все равно осталась. Где копать? При чем заметил, регистрировать dll что на сервере что на компе у пользователя можно до бесконечности и всегда успешно:) т.е. больше одного раза — это нормально? на сервере и на клиентских компах винда 64 битная.
lirt82
1 — 18.01.19 — 10:49
&НаКлиенте
Процедура Импорт(Команда)
ИмпортНаСервере();
КонецПроцедуры
&НаСервере
Процедура ИмпортНаСервере()
Соединение = ПолучитьПодключениеКБД();
**************
КонецПроцедуры
Функция ПолучитьПодключениеКБД()
БазаДанных = Строка(Путь);
Юзер = Строка(П);
ПарольЮзеря = Строка(ППароль);
ComConnector = ПолучитьCOMОбъектПоВерсииПлатформы();
ПараметрыПодключенияИБ = «File=’» + СокрЛП(БазаДанных) + «‘; usr=’» + СокрЛП(Юзер) + «‘; pwd=’» + СокрЛП(ПарольЮзеря) + «‘;»;
Попытка
Возврат ComConnector.Connect(ПараметрыПодключенияИБ);
Исключение
Сообщить(ОписаниеОшибки());
Возврат Неопределено;
КонецПопытки;
КонецФункции
Функция ПолучитьCOMОбъектПоВерсииПлатформы() Экспорт
ИмяComОбъекта = «»;
Инфо = Новый СистемнаяИнформация;
Если СтрНайти(Инфо.ВерсияПриложения, «8.3») > 0 Тогда
ИмяComОбъекта = «V83.COMConnector»;
ИначеЕсли СтрНайти(Инфо.ВерсияПриложения, «8.2») > 0 Тогда
ИмяComОбъекта = «V82.COMConnector»;
Иначе
ВызватьИсключение «Не удалось определить версию платформы»;
КонецЕсли;
COMConnector = Новый COMОбъект(ИмяComОбъекта);
Возврат COMConnector;
КонецФункции
lirt82
2 — 18.01.19 — 10:53
неужели создавать компоненту? и где на сервере или на клиентском компе…и потом не понятно на 8.3.9 обработка работала.
lirt82
3 — 18.01.19 — 10:57
или процедуру получения версии платформы убрать?
сразу писать
ComConnector = Новый COMОбъект(V83.COMConnector);
arsik
4 — 18.01.19 — 10:59
Ну уже посмотри в отладчике что у тебя в ComConnector перед вызовом с ошибкой
lirt82
5 — 18.01.19 — 14:05
как отлаживать в клиент-серверном варианте если база на sql?
CepeLLlka
6 — 18.01.19 — 14:10
(5)Включить отладку на сервере конечно..
А вообще чтобы понять где регистрировать компоненту нужно знать где она запускается.. если с клиента, то и регистрируй на клиенте, если с сервера, то регистрируй на сервере..
У меня была такая же ошибка пару дней назад.. Тоже бился несколько часов..
После нескольких ребутов, ручной регистрации компоненту по гайду в интернете и после нескольких обычных регистраций через regsvr32 заработало.. чего уж ей не хватало, не знаю..
sandal_r
7 — 18.01.19 — 14:16
(5)
на сервере 1С открываем службы
ищем службу «Агент сервера 1С:Предприятия…»
Открываем свойства этой службы, копируем строку «Исполняемый файл.
Открываем редактор реестра (Win+R, regedit, OK), и в поиске вставляем ранее скопированную строку.
Во всех найденных местах добавляем «-debug»
N.B.!
Это редактор реестра. Аккуратно там. Если не знаешь что делать, лучше спроси у того кто знает.
sandal_r
8 — 18.01.19 — 14:18
+(7)
потом перезапустить сервер
но вообще включенная отладка на продуктивном сервере — потеря в производительности до 10-15%
лучше на тестовом все отлаживать, а на прод уже готовое выкладывать
lirt82
9 — 18.01.19 — 14:22
КЭШ ПОЧИСТИЛ и все обработка заработала))))))))))))))
CepeLLlka
10 — 18.01.19 — 14:34
(9)Точно, могло помочь
lirt82
11 — 18.01.19 — 14:42
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
После обновления информационной базы 1С, установки новой версии Платформы, доработки конфигурации 1C можно получить ошибку:
- Метод объекта не обнаружен.
В статье вы познакомитесь с новым инструментом разработчиков Синтаксис помощник и научитесь использовать его при работе с ошибками программного кода 1С.
БухЭксперт8 подготовил 3 примера формирования ошибки Метод объекта не обнаружен в 1С 8.3. Изучив их, вы узнаете причины появления ошибки и получите рекомендации для ее исправления с использованием встроенной справки 1С.
Содержание
- Причины ошибки в 1C Метод объекта не обнаружен
- Метод объекта не обнаружен (Счет покупателю — Подбор)
- Метод объекта не обнаружен (Печатная форма)
- Метод объекта не обнаружен (connect) в 1С 8.3
Причины ошибки в 1C Метод объекта не обнаружен
Причина появления ошибки Метод объекта не обнаружен, как правило, заключается в обращении к несуществующему методу работы с объектом конфигурации.
Объектами в 1С являются данные конфигурации 1С. В специальной литературе такие объекты еще называют Метаданными 1С. В состав объектов конфигурации входят:
- справочники;
- документы;
- регистры сведений;
- регистры накоплений;
- табличные документы;
- и т. д.
Каждый из объектов обладает определенными им разработчиками наборами Свойств и Методами. Посмотреть эту информацию позволяет специальный инструмент разработчиков — Синтаксис помощник. Инструмент встроен в справку Конфигурации 1С. Вызов Синтаксис помощника происходит:
Синтаксис-помощник содержит подробное описание заданных свойств и методов объектов конфигурации. Добавить свои свойства и методы пользователь не может. Изменить — тоже. Задача программиста, дорабатывающего 1С — использовать очень точно методы, что даны в описании. Если в программном коде допускается ошибка в использовании метода объекта, пользователь получает ошибку Метод объекта не обнаружен.
Рассмотрим возникновение ошибки на примерах. Для исправления будем обращаться к справке Синтаксис-помощника.
Метод объекта не обнаружен (Счет покупателю — Подбор)
После программной доработки операции Подбор в документе Счет покупателю появляется ошибка Метод объекта не обнаружен:
Согласно сообщению в окне ошибки, метод Копировать() не обнаружен в списке методов объекта 1С. Для уточнения вида объекта, который использует этот метод, перейдем в Конфигуратор:
- место доработки — процедура ПодборТовары;
- строка ошибки — ТЗ = ЭтотОбъект.Товары.Копировать().
Из программного кода видно, что программист создает таблицу значений ТЗ, используя метод Копировать(). Откроем список методов объекта Таблица значений:
- кнопка Синтаксис-помощник — Содержание;
- объект Универсальные коллекции значений — Таблица значений — Методы.
Согласно Синтаксис-помощнику для объекта Таблица значений нет метода Копировать(). Правильный метод — Скопировать(). После того как метод будет исправлен на правильный, подбор товара в документе Счет покупателю станет выполняться без ошибки.
Метод объекта не обнаружен (Печатная форма)
После программного изменения печатной формы Приложение к договору в документе Счет покупателю появляется ошибка Метод объекта не обнаружен:
Согласно сообщению в окне ошибки, метод ПолучитьРазмерОбластиДанных() не обнаружен в списке методов объекта 1С. Для уточнения вида объекта, который использует этот метод, перейдем в Конфигуратор:
- место доработки — функция ПечатьПриложениякДоговору;
- строка ошибки — ТабличныйДокумент.ПолучитьРазмерОбластиДанных().
В программном коде используется метод Табличного документа ПолучитьРазмерОбластиДанных(). Уточним используемые методы табличного документа через Синтаксис-помощник.
Согласно справке Синтаксис-помощника, нет метода ПолучитьРазмерОбластиДанных(). Для получения размера области данных по горизонтали используется метод ПолучитьРазмерОбластиДанныхПоГоризонтали().
После исправления программного кода печатная форма формируется без ошибки.
Метод объекта не обнаружен (connect) в 1С 8.3
В обработке внешнего подключения к информационной базе Управление Торговлей при попытке соединения появляется ошибка Метод объекта не обнаружен в 1С:
Для исправления ошибки откроем обработку в Конфигураторе базы:
- место возникновения ошибки — процедура ERRORНаСервере;
- строка ошибки — connection = cntr.Connector(“File=””c:InfoBasesTrade””;Usr=””Director””;”)
Для объекта COM-соединений определим в Синтаксис помощнике правильный метод новым способом через вкладку Поиск. Этот вариант часто используют в работе программисты и те пользователи, кто уже знаком с программным языком 1С. По первым буквам набранной в строке поиска команды программа отбирает объекты, использующие данный метод.
Согласно справке Синтаксис-помощника, нет метода Connector. Команду соединения с информационной базой Управление Торговлей нужно исправить на Connect.
После исправления команды соединение с базой Управление Торговлей по заданным параметрам выполнится без ошибки.
В качестве небольшого бонуса наши подписчики могут скачать внешнюю обработку с демонстрацией неправильного и правильного кода
Скачать внешнюю обработку с демонстрацией неправильного и правильного кода
См. также:
- Ошибка. Поле объекта не обнаружено
- Ошибка. Поле объекта недоступно для записи
- Ошибка. Переменная не определена
- Ошибка. Недостаточно фактических параметров
- Ошибка. Слишком много фактических параметров
- Поле объектов недоступно для записи
Если Вы еще не подписаны:
Активировать демо-доступ бесплатно →
или
Оформить подписку на Рубрикатор →
После оформления подписки вам станут доступны все материалы Бухэксперт8, записи поддерживающих эфиров и вы сможете задавать любые вопросы по программе 1С.
Подписывайтесь на наши YouTube и Telegram чтобы не пропустить
важные изменения 1С и законодательства
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
На чтение 4 мин. Просмотров 759 Опубликовано 15.12.2019
При синхронизации 1С ЗУП 3.0 — БП 3.0 при проверке подключения выскакивает ошибка :
Не удалось подключиться к другой программе: -2147221164(0x80040154): Класс не зарегистрирован.
В чем может быть дело? В каком направлении рыть??
- 5
- 4
- 3
- 2
- 1
(0 голосов, в среднем: 0 из 5)
Поддержите нас, расскажите друзьям!
СПРОСИТЕ в комментариях!
Это проблема связана с соединением другой базы данных по COM объекту.
Очень вероятно что не хватает прав.
Думаю, тут скорее дело в том, что на COM-компонент не зарегистрирован в системе.
Нужно запустить командную строку под именем администратора, затем выполнить regsvr32 [ПутьККомпонентуCOM]. Компонент чаще всего находится в папке с платформой в папке bin (выглядит это приблизительно вот так: «C:Program Files (x86)1cv88.3.6.2449in»). И называется comcntr32.dll.
Спасибо большое, помогло!
Огромное спасибо! Помогло. Вы супер!
Илья, добрый день!
А для 32-х и 64-х платформ 1С различаются процедуры?
Спасибо, тоже помогло!
В командной строке ( CMD в поиске) в моем случае вводил: regsvr32 «C:Program Files (x86)1cv88.3.12.1529incomcntr.dll»
Все время забываю об этой длл. СПАСИБО, что напоминаете.
Для 64-х платформы:
C:WindowsSysWOW64RegSvr32.exe «C:Program Files1cv88.3.15.1656incomcntr.dll»
При использовании данного сайта, вы подтверждаете свое согласие на использование файлов cookie в соответствии с настоящим уведомлением в отношении данного типа файлов. Если вы не согласны с тем, чтобы мы использовали данный тип файлов, то вы должны соответствующим образом установить настройки вашего браузера или не использовать сайт.
Отправляя любую форму на сайте, вы соглашаетесь с политикой конфиденциальности данного сайта.
Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V83.COMConnector.1): Версия компоненты ‘comcntr’ отличается от версии корневого модуля ‘core83’
Часто бывает, что при настроенной синхронизации после обновления платформы появляется ошибка «Произошла исключительная ситуация (V83.COMConnector.1): Версия компоненты ‘comcntr’ отличается от версии корневого модуля ‘core83’». Так происходит потому, что автоматически не зарегистрировалась компонента comcntr.dll из-за проблем с правами пользователя на компьютере.
Решить данную проблему можно двумя способами.
Переустановить платформу под правами Администратора или под пользователем, у которого есть такие права.
Если не получилось как в способе №1, то можно вручную зарегистрировать самому эту компоненту.
Перед этим нам необходимо изменить Параметры контроль учетной записи.
Для Windows 7 нам необходимо зайти в Пуск затем в Панель управления.
Для Windows 10 нам необходимо в левом нижнем углу панели задач в строке поиска набрать Панель управления и перейти по открывшейся ссылке.
В правом верхнем углу Панели управления выбрать Просмотр-Мелкие значки и затем в списке перейти в Учетные записи пользователей.
Там выбрать Изменить параметры контроля учетных записей.
Затем поставить ползунок в самом нижнем положении.
И перезапустить компьютер.
После перезагрузки необходимо:
Для Windows 7 надо перейти в Пуск, затем в строке поиска ввести cmd.exe,нам покажет что найдена Командная строка и, щелкнув по ней правой клавишей мыши, выбрать «Запуск от имени администратора».
Для Windows 10 нам необходимо в левом нижнем углу панели задач в строке поиска набрать Командная панель или cmd.exe и, щелкнув по ней правой клавишей мыши, выбрать «Запуск от имени администратора».
У нас откроется Командная строка, где нам необходимо ввести команду:
1.Для платформы x86
Regsvr32 «C:Program Files (х86)1cv8номер версии вашей платформыincomcntr.dll» (regsvr32пробел»C:Program Files (х86)1cv8номер версии вашей платформыincomcntr.dll»).
2.Для платформы х64
Regsvr32 «C:Program Files1cv8номер версии вашей платформыincomcntr.dll» (regsvr32пробел»C:Program Files1cv8номер версии вашей платформыincomcntr.dll»).
Затем нажать клавишу Enter.
Если все сделали правильно, то увидите вот такое окно.
После этого необходимо перезагрузить компьютер. Как включится, пробуйте снова сделать синхронизацию.
Добрый день, коллеги! Назрел такой насущный вопрос:
Есть сервер 1С, его обновили до версии 1С.Предприятия 8.3.12.1685. И есть терминальный сервер, с которого работают с базами, размещенными на сервере 1С. Оба сервера под управлением Windows Server 2012 R2.
На сервере 1С размещена база Бух 3.0 и Зуп 3.1. Между ними на предыдущей платформе, 8.3.11.2954 была настроена синхронизация. На 8.3.11.2954 синхронизация работала нормально, но для обновления Бух до последней конфигурации были вынуждены перейти на 8.3.12.1685(предвосхищая возможный вопрос — нет, тестового сервера нет). После перехода выяснилось, что синхронизация не работает. При попытке соединения(например, в окне проверки настроек) получаю сообщение:
Опубликовано в Блогерские заметки
7 ноября
Всем Доброго времени суток!
Многие из нас сталкиваются в своей деятельности с программными продуктами Компании 1С. Более того, некоторым из нас иногда приходится даже иногда обслуживать продукты 1С. Иногда в этом «чудесном» процессе обслуживания возникают различные казусы. Сегодня мы поговорим об одном из них.
А именно, тема данного материала: Как исправить ошибку, возникающую в 1С — Не удалось подключиться к другой программе: Метод объекта не обнаружен (Connect).
Если Вам посчастливилось увидеть такую же ошибку, как на этом скриншоте, читайте далее, как её исправить 😉
[yandex_ban1]
Немного вводной теории:
1С:Предприятие 8.x предоставляет разные интересные возможности для организации обмена данными с другими программными системами. Наряду с механизмом OLE Automation также было введено понятие COM-соединения, которое позволяет обеспечить надежный и более быстрый доступа к данным 1С:Предприятия 8.0 из внешних приложений, поддерживающих данную технологию.
Для организации доступа к данным 1С:Предприятия 8.0 через COM-соединение создается COM-объект с идентификатором V8.COMConnector , с помощью которого и производится установка соединения. Затем производится обращение к методу Connect ранее созданного объекта V8.COMConnector. Метод Connect возвращает ссылку на объект COM -соединения с информационной базой 1С:Предприятия 8.0. И через полученный объект COM-соединения производится обращение к допустимым методам, свойствам и объектам информационной базы, с которой установлено соединение.
Теперь, зная откуда растут ноги, переходим к практике. Допустим (при обновлении и ли другой какой-то операции) Вы получили ошибку вида:
Чтобы исправить ошибку, возникающую в 1С — метод объекта не обнаружен (connect), нужно сделать следующее:
В операционных системах Windows последних версий заходим в «Службы компонентов». Данная функциональность вызывается следующей последовательностью: Панель управления — Администрирование — Службы компонентов.
Выбираем: Компьютеры – Мой компьютер – Приложения COM+ — Создать приложение – Создать новое приложение – вводим имя «V82COMConnector» (переключатель «Серверное приложение») – Указанный пользователь (Администратор)
В появившейся ветке V82COMConnector – выбираем подветку Компоненты – создание нового компонента – Установка новых компонентов — <каталог 1С>bincomcntr.dll
Нажимаем правой кнопкой по ветке V82COMConnector – Свойства – Безопасность – снимаем галку «Принудительная проверка доступа для приложений» — ставим галку «Применить политику программных ограничений» — Уровень ограничений «Неограниченный»:
Также в профилях пользователей C:UsersНашПользовательAppDataRoaming1C1CEStart.cfg изменяем параметр UseHWLicenses=0 на UseHWLicenses=1
После всех этих изменений можно (для чистоты эксперимента) перезагрузить комп и наслаждаться дальнейшей работой в 1С, но уже без данной ошибки (!)
[yandex_ban2]
P.S. Небольшой бонус в конце: 1С обновление от имени администратора
Довольно часто какой-то Ваш удалённый клиент — бухгалтер и т.д. — не может произвести самостоятельно обновление программных продуктов 1С, ему требуются права администратора, а правой кнопкой нажимать на ярлыке (и выбирать «Запуск от имени администратора») он не хочет или «боится». Поэтому он постоянно напрягает нашего брата АйТишника.
Давайте же нажмём за него правой кнопкой, но сделаем это один раз и навсегда забудем о данной теме!
Итак, делаем разовую настройку — нажимаем правой кнопкой на ярлыке запуска 1С, выбираем «Свойства», жмём «Изменить параметры для всех пользователей» и устанавливаем галку «Запускать эту программу от имени администратора». Затем пару раз кликаем Ок, и забываем про «боязливого» клиента 😉
Надеюсь, Вы смогли найти здесь немного полезностей для себя. Пишите в комментах о Ваших «хитростях» — будем совместно приносить просветительскую пользу.
До связи и всего хорошего! 😉
При попытке подключения к информационной базе произошла ошибка: Метод объекта не обнаружен (Connect)
Описание ошибки:
Терминальный сервер. У пользователя 1С при попытке инициировать прямое подключение к одной базе из другой с помощью com-соединения возникает ошибка: «При попытке подключения к информационной базе произошла ошибка: Метод объекта не обнаружен (Connect)» Релиз платформы 1С: Предприятие 8.3.16.1063
Найденные решения:
Стоит отметить, что ошибка, связанная с com-компонентой, отвечающей за com-соединение между базами плафтормы 1С: Предприятие 8, не похожа по тексту на самую распространенную ошибку Ошибка при вызове конструктора (COMObject) COMConnector = Новый COMObject(ИмяCOMСоединителя()); // «V82.COMConnector» по причине: -2147221164(0x80040154): Класс не зарегистрирован
Так же стоит отметить, что данная проблема возникла у одного пользователя удаленного рабочего стола. Хотя, к примеру, у двух других пользователей удаленного рабочего стола то же com-соединение работало безотказно.
В таком случае можно было бы прибегнуть к рекомендациям, изложенным, в идентичной по проблематике публикации на ресурсе igorman.ru, но уже было «на своем месте» приложение COM+ «V82COMConnector».
Так же не помогла ценная в последнее время рекомендация, связанная с очисткой кэша базы из обсуждения на форуме mista.ru . Т.к. на удивление в последнее время на практике возникает просто много странных ошибок, которые устраняются очисткой кэша базы — самым простым способом — удалить и снова добавить базу в список баз.
Но вернемся к тому факту, который был отмечен в самом начале, о том, что у других пользователей того же терминального сервера соединение работало без проблем. Сравнение прав пользователей показало, что у пользователя, у которого com-соединение выдавало ошибку «Метод объекта не обнаружен (Connect)», более низкий уровень прав. Поэтому не будет линим проверить и при необходимости добавить прав пользователю в настройках безопасности «1CV83 Application» в «Службе компонентов» в ветке «Настройка DCOM»
Оцените, помогло ли Вам предоставленное описание решения ошибки?
© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.
30-04-2020
Журавлев А.С.
(Сайт azhur-c.ru)
Исправление следующей ошибки 1С 8.3 (может возникать при синхронизации, выгрузке-загрузке различных данных с удаленным подключением и т.п., как правило после обновления платформы):
«При попытке подключения к информационной базе произошла ошибка:
Ошибка при вызове конструктора (COMОбъект): Недопустимая строка с указанием класса»
Решение: в реестре Windows необходимо зарегистрировать компоненту comcntr.dll
Сначала пробуем простые варианты.
Первый вариант: пробуем удалить и заново установить платформу 1С, войдя в систему с полными правами (предварительно перезагрузив компьютер).
Проверяем. Если не помогло —
Второй вариант:
Открываем Проводник (Мой компьютер), в адресной строке пишем %windir% и нажимаем Enter,
открывается командное окно с путем: C:Windows,
Далее в зависимости от разрядности вашей версии Windows (32 или 64 разряда) входим в соответствующую директорию,
находим среди файлов cmd.exe и запускаем его от имени Администратора (клик правой клавишей — запустить от имени Администратора).
В появившемся окне также в зависимости от разрядности Windows вставляем (можно отсюда через копировать-вставить) следующую строку:
для Windows 7×32
в %windir%System32RegSvr32.exe «С:Program Files (x86)1cv88.3.11.3034bincomcntr.dll»
для Windows 7×64
в %windir%SysWoW64RegSvr32.exe «С:Program Files (x86)1cv88.3.11.3034bincomcntr.dll»
Важно! Здесь вместо подстроки «С:Program Files (x86)1cv88.3.11.3034» укажите путь к Вашему каталогу 1С Предприятие.
Если и это не помогло —
Третий вариант, регистрируем компонент в реестре вручную:
Открываем: Панель управления — Администрирование — Службы компонентов – Компьютеры – Мой компьютер
Выбираем: Приложения COM+ — Дополнительные действия — Приложения — Создать приложение.
Вводим имя «V83COMConnector» , ставим опцию «Серверное приложение», и Указанный пользователь выбираем «Администратор», либо «Текущий пользователь».
В появившейся ветке V83COMConnector выбираем Компоненты – Создание нового компонента – Установка новых компонентов.
Выбираем файл — входим в Ваш каталог 1С, далее bincomcntr.dll, и выбираем Готово.
Правой кнопкой мыши нажимаем по ветке V83COMConnector, далее переходим на Свойства – Безопасность.
Снимаем опцию «Принудительная проверка доступа для приложений», выставляем опцию «Применить политику программных ограничений» и выбираем уровень «Неограниченный».
После обновления платформы 1С на версию 8.3.11.2867 и конфигурации Розница 2 на версию 2.2.7.23 нарушилась работа ТСД и появилась ошибка — #Ошибка выполнения операции — #Ошибка при подключении: «МодульОбычногоПриложения(90)»: Метод объекта не обнаружен (Connect) (1С: версия приложения = «8.3.11.2867», режим работы основной базы = «файловый», режим работы базы драйвера= «файловый»)
Ответа в базе знаний найти не удалось.
Ошибка из логов конфигурации:
0; 24; 09.12.2017 17:55:38.794 ERROR
ADDITION TEXT: InvokeMethodAction.InvokeMethod
MESSAGE: Серверу не удалось обработать запрос. —> Ошибка при подключении: «МодульОбычногоПриложения(90)»: Метод объекта не обнаружен (Connect) (1С: версия приложения = «8.3.11.2867», режим работы основной базы = «файловый», режим работы базы драйвера= «файловый») STACK TOP: at System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke (System.IAsyncResult asyncResult) [0x00048] in <a56b5e68cf104ffe9b4e972326e290d3>:0
at Cleverence.Warehouse.Compact.DataStorage.Invoke (System.String methodName, System.Object[] parameters, System.Int32 timeout) [0x00116] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
at Cleverence.Warehouse.Compact.DataStorage.InvokeRemoteMethod (System.String methodPath, System.String invokeArgs, System.String deviceInfoXml) [0x00000] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
at (wrapper remoting-invoke-with-check) Cleverence.Warehouse.Compact.DataStorage:InvokeRemoteMethod (string,string,string)
at Cleverence.Warehouse.Compact.InvokeMethodAction.InvokeMethod () [0x001d3] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
TYPE: System.Web.Services.Protocols.SoapException
CORE INFO: 1С Драйвер ТСД Wi-Fi ПРОФ.Document=new_dbb3f5a3-df94-491b-89fa-82a932066e27(Просмотр номенклатуры).Action=ПолучитьСписокТоваров
SOURCE: System.Web.Services
TARGETSITE: EndInvoke
[STACK TRACE]
at System.Web.Services.Protocols.SoapHttpClientProtocol.EndInvoke (System.IAsyncResult asyncResult) [0x00048] in <a56b5e68cf104ffe9b4e972326e290d3>:0
at Cleverence.Warehouse.Compact.DataStorage.Invoke (System.String methodName, System.Object[] parameters, System.Int32 timeout) [0x00116] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
at Cleverence.Warehouse.Compact.DataStorage.InvokeRemoteMethod (System.String methodPath, System.String invokeArgs, System.String deviceInfoXml) [0x00000] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
at (wrapper remoting-invoke-with-check) Cleverence.Warehouse.Compact.DataStorage:InvokeRemoteMethod (string,string,string)
at Cleverence.Warehouse.Compact.InvokeMethodAction.InvokeMethod () [0x001d3] in <cf398f45858d4d3b9b2d20ef034fdf89>:0
[STACK TRACE]
CODE: http://schemas.xmlsoap.org/soap/envelope/:Server
DETAIL: System.Xml.XmlElement
DATA: System.Collections.ListDictionaryInternal
HRESULT: -2146233087
Подскажите как исправить.
Метод объекта не обнаружен в 1С 8.3
После обновлений, доработок и других подобных изменений конфигурации пользователи могут столкнуться с ошибкой Метод объекта не обнаружен. В качестве метода выступают процедуры и функции, выполняющие некоторые действия с объектом. За каждым типом метаданных закреплены свои методы. Сообщение Метод объекта не обнаружен программа выдает в случаях, когда не находит во встроенном языке метод с таким именем или одноименную процедуру/функции в модулях объекта.
Примеры появления и исправления ошибки рассмотрены нами на конфигурации 1С:Бухгалтерия 8.3.
Причины возникновения ошибки в 1С 8.3
Пользователь получает предупреждение в виде всплывающего окна с текстом «Метод объекта не обнаружен ([Имя_метода])», если:
- метод не принадлежит к типу метаданных;
- опечатка в имени метода;
- у процедуры или функции, вызываемой в качестве метода объекта, не указанно ключевое слово Экспорт.
Для решения проблемы следует разобраться в структуре объектов конфигурации и их наборе методов.
Объекты и методы
Объекты или метаданные — основные составляющие конфигурации, куда сохраняются данные информационной базы. Состав метаданных закреплен на уровне платформы и не может дополняться программистом.
В список стандартных объектов 1С входят:
- константы;
- справочники;
- документы;
- отчеты;
- регистры сведений;
- и т. д.
Состав метаданных не ограничен объектами, перечисленными в окне дерева конфигурации: их в несколько раз больше. К тому же один объект может иметь несколько типов: например, ДокументОбъект, ДокументСсылка, ДокументВыборка и т. д. У каждого типа есть свой набор методов, которые позволяют выполнить определенную последовательность действий с отдельным экземпляром объекта.
Методы делятся на два вида:
- встроенные в платформу;
- написанные программистом в модулях объектов.
Встроенные методы объектов описаны в Синтакс-Помощнике: например, записать документ позволит метод Записать(). Имена методов созвучны с глаголом действия, которое будет произведено с метаданными.
Процедуры и функции, описанные в модулях объектов с ключевым словом Экспорт, дополняют типовые методы своих объектов и могут вызываться из любых программных модулей, где используются эти метаданные.
Исправление ошибки
Сообщение «Метод объекта не обнаружен» может возникнуть, например, при нажатии кнопки в документе.
Для детального анализа ошибки запустите конфигурацию в режиме отладки из конфигуратора Отладка — Начать отладку и повторите те же действия, чтобы вызвать повторное появление ошибки на экране. Кнопка Подробно раскроет окно с указанием строчки программного кода, где возникает сбой.
Для перехода в конфигуратор нажмите Конфигуратор.
В режиме конфигурирования курсор автоматически установится в месте появления ошибки, а информация из окна с подробным описанием сбоя в 1С отразится в служебном окне Конфигуратора.
Решение вопроса с ошибкой «Метод объекта не обнаружен» в 1С 8.3 будет зависеть от вида метода: созданный вручную или типовой.
Встроенные в платформу методы
Стандартные методы перечислены в Синтакс-Помощнике на ветках соответствующих объектов. Откройте Ситнакс-Помощник через меню конфигуратора Справка или по одноименной кнопке на панели инструментов. Для быстрого поиска на вкладке Индекс введите часть имени типа объекта, а для перехода к его описанию нажмите кнопку Найти текущий элемент в дереве.
Программа перейдет на вкладку Содержание и выделит искомый объект. Раскройте ветвь с методами и попытайтесь отыскать похожий по наименованию. Если такой нашелся, замените на него метод в строке кода с ошибкой.
Запустите 1С в режиме отладки и проверьте работу конфигурации в месте возникновения ошибки. Если окно со сбоем больше не выходит, обратите внимание на корректность обработки данных программой. Исправляйте имя метода в коде на типовое, только если видите явную опечатку в наименовании и не нашли одноименной процедуры/функции в моделях объекта.
Методы, добавленные вручную
Программисты могут добавлять экспортные процедуры и функции (со словом Экспорт) в модулях объектов, например, вкладке Прочее в окне редактирования объекта конфигурации.
Перед поиском метода узнают тип объекта, от которого запускается выполнение. Возможны варианты:
- для типов ДокументОбъект, СправочникОбъект и т. д. методы прописывают в Модуле объекта;
- типы ДокументМенеджер, ПеречислениеМенеджери т. д. — Модуль менеджера;
- типы РегистрСведенийНаборЗаписей и т. д. — Модуль набора записей (у регистров);
- тип КонстантаМенеджерЗначения — Модуль менеджера значения (у констант);
- и др.
Чтобы определить тип объекта, воспользуйтесь одним из способов:
1. Разберите в окне ошибки строку кода, где идет обращение к методу:
- Документ.СчетНаОплатуПоставщика.Форма.ФормаДокумента — метод выполняется в модуле формы документа;
- Документ — объект, от которого запускается метод;
- Добавить() — имя метода. Характерная черта — наличие круглых скобок в конце, в них перечисляются параметры, если они необходимы для выполнения операций;
- ПодборТовараСервер() — имя процедуры/функции, где возникает ошибка.
В данном примере Документ является переменной, содержащей объект с типом ДокументОбъект, получаемый встроенным методом ПолучитьОбъект().
2. Если конфигурация допускает вносить изменения, выведите тип объекта в окне сообщений в пользовательском режиме с помощью встроенных функций Сообщить() и ТипЗнч():
- впишите в процедуру строку кода с функцией, указав в скобках обращение к объекту без имени метода;
- запустите 1С в режиме отладки и повторите действия, вызывающие сбой;
- проигнорируйте окно с ошибкой, нажав ОК. В нижней части рабочей области программы появится сообщение с типом объекта.
3. Через команду контекстного меню Вычислить выражение в Конфигураторе
- в строчке, где возникает сбой, поставьте точку останова для принудительной остановки выполнения программного кода, имеет вид красного круга на полях с левой стороны;
- запустите программу в режиме отладки;
- повторите действия, при которых возникала ошибка;
- работа программы остановится, откроется окно конфигуратора;
- выделите часть кода, где идет обращение к объекту, без метода;
- правой кнопкой вызовите контекстное меню, выберите команду Вычислить выражение;
- в открывшемся окне в колонке Тип будет указан тип объекта.
Переменная Документ тип ДокументОбъект.СчетНаОплатуПостащика, поэтому запускаемые методы программа ищет среди экспортных процедур/функций в модуле объекта документа СчетНаОплатуПоставщику.
Для поиска метода:
- откройте модуль объекта/менеджера/набора записей;
- найдите одноименную процедуру или функцию, для быстрого перехода к нужной части текста модуля воспользуйтесь окном поиска, набрав в нем часть имени метода;
- проверьте наличие ключевого слова Экспорт. При его отсутствии программа не сможет передать процедуру/функцию в другой модуль. Соответственно, она не будет обнаружена, что приведет к появлению ошибки «Метод объекта не обнаружен»;
- имя процедуры/функции должно совпадать с вызываемым методом: если имеются явные орфографические ошибки или опечатки, исправьте их;
- если наименование процедуры/функции полностью совпадает с методом, и ключевое слово Экспорт указано, возможно, причина — в неверном типе объекта.
Если тип объект задан неверно, то программа будет производить поиск экспортных процедур/функции вне тех модулях и пользователь получит ошибку «Метод объекта не обнаружен». Для решения проблемы потребуется переписать программный код, пользователю стоит обратиться к программисту.
Если ни один из вариантов исправления ошибки не дал результата, попробуйте закомментировать строку кода, где происходит сбой, добавив в начале строки два правых слеша.
Эти действия приведут к отключению строки кода с методом для выполнения программой. Возможно, это устранит появление ошибки, но может исказить или повредить данные в базе из-за нарушения алгоритма их обработки, т. к. из него исключена последовательность действий, описанная в методе. Поэтому вносить самостоятельные правки в программный код нужно с осторожностью.
Метод объекта не обнаружен Connect 1С 8.3
Ошибку «Метод объекта не обнаружен (Connect)» 1С может показать при попытке обновить конфигурацию, синхронизации или загрузке/выгрузке данных из другой программы, базы.
Connect — наименование встроенного метода, принадлежит COM-объектам, которые 1С создает на основании объектов базы данных для их передачи или получения из других источников.
Поскольку метод типовой, следует проверить в конфигураторе корректность написания его имени в коде программы.
Ошибка «Метод объекта не обнаружен (Сonnect)» в 1С 8.3 не всегда связана с конфигурацией, причина может заключаться в операционной системе. Перед использованием метода Connect программа 1С должна создать COM-объект с помощью специальных компонентов, которые не всегда есть в системе компьютера. Проблему решают через регистрацию dll компонентов обмена, процедуру выполняют на сервере:
- в папке C:Windows найдите и запустите от имени администратора файл cmd.exe;
- в зависимости от вида операционной системы выполните команду:
- для x32: %windir%System32RegSvr32.exe “С:[путь до каталога 1С]bincomcntr.dll”;
- для x64: %windir%SysWoW64RegSvr32.exe “С:[путь до каталога 1С] bincomcntr.dll”;
- перезагрузите компьютер.
Стандартная утилита RegSvr32 автоматически зарегистрирует файл dll с компонентами обмена в реестре операционной системы, что устранит сбой в 1С, связанный с отсутствием метода connect. В Windows есть инструменты для ручного внесения компонент в реестр через пункт Администрирование на Панели управления, но эту задачу лучше поручить системному администратору компьютеров.
Запасным вариантом для решения вопроса с отсутствующим методом Connect остается чистка кэш-памяти 1С.
«Метод объекта не обнаружен» в 1С — ошибка серьезная, говорящая об отсутствии в программе алгоритмов, необходимых для выполнения действий пользователя. Если 1С сообщает о невозможности найти поле, элемент, реквизит или объект — такие проблемы сотрудник может решить самостоятельно. Но при недоступности методов необходимы знания о типах объектов, умения разбираться в программном коде, поэтому, когда ни один из способов не помог устранить сбой, следует обращаться к специалисту 1С.
Заказать консультацию
По этой или иной ошибке Вы можете обратиться к нашим специалистам, мы Вам поможем решить Вашу проблему.
lirt82
18.01.19 — 10:45
Вчера на сервере где крутиться база и клиентских компах поменяли платформу была 8.3.9, 32 бита, стала 8.3.12 так же 32 бита. Самописная обработка перестала работать выдает ошибку на строке
Попытка
Возврат ComConnector.Connect(ПараметрыПодключенияИБ);
Метод объекта не обнаружен.(Connect)
Я на сервере зарегил компоненту comcntrl.dll успешно, затем на компе у пользака тоже успешно, далее перезагрузил комп пользователя но ошибка все равно осталась. Где копать? При чем заметил, регистрировать dll что на сервере что на компе у пользователя можно до бесконечности и всегда успешно:) т.е. больше одного раза — это нормально? на сервере и на клиентских компах винда 64 битная.
lirt82
1 — 18.01.19 — 10:49
&НаКлиенте
Процедура Импорт(Команда)
ИмпортНаСервере();
КонецПроцедуры
&НаСервере
Процедура ИмпортНаСервере()
Соединение = ПолучитьПодключениеКБД();
**************
КонецПроцедуры
Функция ПолучитьПодключениеКБД()
БазаДанных = Строка(Путь);
Юзер = Строка(П);
ПарольЮзеря = Строка(ППароль);
ComConnector = ПолучитьCOMОбъектПоВерсииПлатформы();
ПараметрыПодключенияИБ = «File=’» + СокрЛП(БазаДанных) + «‘; usr=’» + СокрЛП(Юзер) + «‘; pwd=’» + СокрЛП(ПарольЮзеря) + «‘;»;
Попытка
Возврат ComConnector.Connect(ПараметрыПодключенияИБ);
Исключение
Сообщить(ОписаниеОшибки());
Возврат Неопределено;
КонецПопытки;
КонецФункции
Функция ПолучитьCOMОбъектПоВерсииПлатформы() Экспорт
ИмяComОбъекта = «»;
Инфо = Новый СистемнаяИнформация;
Если СтрНайти(Инфо.ВерсияПриложения, «8.3») > 0 Тогда
ИмяComОбъекта = «V83.COMConnector»;
ИначеЕсли СтрНайти(Инфо.ВерсияПриложения, «8.2») > 0 Тогда
ИмяComОбъекта = «V82.COMConnector»;
Иначе
ВызватьИсключение «Не удалось определить версию платформы»;
КонецЕсли;
COMConnector = Новый COMОбъект(ИмяComОбъекта);
Возврат COMConnector;
КонецФункции
lirt82
2 — 18.01.19 — 10:53
неужели создавать компоненту? и где на сервере или на клиентском компе…и потом не понятно на 8.3.9 обработка работала.
lirt82
3 — 18.01.19 — 10:57
или процедуру получения версии платформы убрать?
сразу писать
ComConnector = Новый COMОбъект(V83.COMConnector);
arsik
4 — 18.01.19 — 10:59
Ну уже посмотри в отладчике что у тебя в ComConnector перед вызовом с ошибкой
lirt82
5 — 18.01.19 — 14:05
как отлаживать в клиент-серверном варианте если база на sql?
CepeLLlka
6 — 18.01.19 — 14:10
(5)Включить отладку на сервере конечно..
А вообще чтобы понять где регистрировать компоненту нужно знать где она запускается.. если с клиента, то и регистрируй на клиенте, если с сервера, то регистрируй на сервере..
У меня была такая же ошибка пару дней назад.. Тоже бился несколько часов..
После нескольких ребутов, ручной регистрации компоненту по гайду в интернете и после нескольких обычных регистраций через regsvr32 заработало.. чего уж ей не хватало, не знаю..
sandal_r
7 — 18.01.19 — 14:16
(5)
на сервере 1С открываем службы
ищем службу «Агент сервера 1С:Предприятия…»
Открываем свойства этой службы, копируем строку «Исполняемый файл.
Открываем редактор реестра (Win+R, regedit, OK), и в поиске вставляем ранее скопированную строку.
Во всех найденных местах добавляем «-debug»
N.B.!
Это редактор реестра. Аккуратно там. Если не знаешь что делать, лучше спроси у того кто знает.
sandal_r
8 — 18.01.19 — 14:18
+(7)
потом перезапустить сервер
но вообще включенная отладка на продуктивном сервере — потеря в производительности до 10-15%
лучше на тестовом все отлаживать, а на прод уже готовое выкладывать
lirt82
9 — 18.01.19 — 14:22
КЭШ ПОЧИСТИЛ и все обработка заработала))))))))))))))
CepeLLlka
10 — 18.01.19 — 14:34
(9)Точно, могло помочь
lirt82
11 — 18.01.19 — 14:42
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
После обновления информационной базы 1С, установки новой версии Платформы, доработки конфигурации 1C можно получить ошибку:
- Метод объекта не обнаружен.
В статье вы познакомитесь с новым инструментом разработчиков Синтаксис помощник и научитесь использовать его при работе с ошибками программного кода 1С.
БухЭксперт8 подготовил 3 примера формирования ошибки Метод объекта не обнаружен в 1С 8.3. Изучив их, вы узнаете причины появления ошибки и получите рекомендации для ее исправления с использованием встроенной справки 1С.
Содержание
- Причины ошибки в 1C Метод объекта не обнаружен
- Метод объекта не обнаружен (Счет покупателю — Подбор)
- Метод объекта не обнаружен (Печатная форма)
- Метод объекта не обнаружен (connect) в 1С 8.3
Причины ошибки в 1C Метод объекта не обнаружен
Причина появления ошибки Метод объекта не обнаружен, как правило, заключается в обращении к несуществующему методу работы с объектом конфигурации.
Объектами в 1С являются данные конфигурации 1С. В специальной литературе такие объекты еще называют Метаданными 1С. В состав объектов конфигурации входят:
- справочники;
- документы;
- регистры сведений;
- регистры накоплений;
- табличные документы;
- и т. д.
Каждый из объектов обладает определенными им разработчиками наборами Свойств и Методами. Посмотреть эту информацию позволяет специальный инструмент разработчиков — Синтаксис помощник. Инструмент встроен в справку Конфигурации 1С. Вызов Синтаксис помощника происходит:
Синтаксис-помощник содержит подробное описание заданных свойств и методов объектов конфигурации. Добавить свои свойства и методы пользователь не может. Изменить — тоже. Задача программиста, дорабатывающего 1С — использовать очень точно методы, что даны в описании. Если в программном коде допускается ошибка в использовании метода объекта, пользователь получает ошибку Метод объекта не обнаружен.
Рассмотрим возникновение ошибки на примерах. Для исправления будем обращаться к справке Синтаксис-помощника.
Метод объекта не обнаружен (Счет покупателю — Подбор)
После программной доработки операции Подбор в документе Счет покупателю появляется ошибка Метод объекта не обнаружен:
Согласно сообщению в окне ошибки, метод Копировать() не обнаружен в списке методов объекта 1С. Для уточнения вида объекта, который использует этот метод, перейдем в Конфигуратор:
- место доработки — процедура ПодборТовары;
- строка ошибки — ТЗ = ЭтотОбъект.Товары.Копировать().
Из программного кода видно, что программист создает таблицу значений ТЗ, используя метод Копировать(). Откроем список методов объекта Таблица значений:
- кнопка Синтаксис-помощник — Содержание;
- объект Универсальные коллекции значений — Таблица значений — Методы.
Согласно Синтаксис-помощнику для объекта Таблица значений нет метода Копировать(). Правильный метод — Скопировать(). После того как метод будет исправлен на правильный, подбор товара в документе Счет покупателю станет выполняться без ошибки.
Метод объекта не обнаружен (Печатная форма)
После программного изменения печатной формы Приложение к договору в документе Счет покупателю появляется ошибка Метод объекта не обнаружен:
Согласно сообщению в окне ошибки, метод ПолучитьРазмерОбластиДанных() не обнаружен в списке методов объекта 1С. Для уточнения вида объекта, который использует этот метод, перейдем в Конфигуратор:
- место доработки — функция ПечатьПриложениякДоговору;
- строка ошибки — ТабличныйДокумент.ПолучитьРазмерОбластиДанных().
В программном коде используется метод Табличного документа ПолучитьРазмерОбластиДанных(). Уточним используемые методы табличного документа через Синтаксис-помощник.
Согласно справке Синтаксис-помощника, нет метода ПолучитьРазмерОбластиДанных(). Для получения размера области данных по горизонтали используется метод ПолучитьРазмерОбластиДанныхПоГоризонтали().
После исправления программного кода печатная форма формируется без ошибки.
Метод объекта не обнаружен (connect) в 1С 8.3
В обработке внешнего подключения к информационной базе Управление Торговлей при попытке соединения появляется ошибка Метод объекта не обнаружен в 1С:
Для исправления ошибки откроем обработку в Конфигураторе базы:
- место возникновения ошибки — процедура ERRORНаСервере;
- строка ошибки — connection = cntr.Connector(“File=””c:InfoBasesTrade””;Usr=””Director””;”)
Для объекта COM-соединений определим в Синтаксис помощнике правильный метод новым способом через вкладку Поиск. Этот вариант часто используют в работе программисты и те пользователи, кто уже знаком с программным языком 1С. По первым буквам набранной в строке поиска команды программа отбирает объекты, использующие данный метод.
Согласно справке Синтаксис-помощника, нет метода Connector. Команду соединения с информационной базой Управление Торговлей нужно исправить на Connect.
После исправления команды соединение с базой Управление Торговлей по заданным параметрам выполнится без ошибки.
В качестве небольшого бонуса наши подписчики могут скачать внешнюю обработку с демонстрацией неправильного и правильного кода
Скачать внешнюю обработку с демонстрацией неправильного и правильного кода
См. также:
- Ошибка. Поле объекта не обнаружено
- Ошибка. Поле объекта недоступно для записи
- Ошибка. Переменная не определена
- Ошибка. Недостаточно фактических параметров
- Ошибка. Слишком много фактических параметров
- Поле объектов недоступно для записи
Если Вы еще не подписаны:
Активировать демо-доступ бесплатно →
или
Оформить подписку на Рубрикатор →
После оформления подписки вам станут доступны все материалы Бухэксперт8, записи поддерживающих эфиров и вы сможете задавать любые вопросы по программе 1С.
Подписывайтесь на наши YouTube и Telegram чтобы не пропустить
важные изменения 1С и законодательства
Помогла статья?
Получите еще секретный бонус и полный доступ к справочной системе БухЭксперт8 на 14 дней бесплатно
На чтение 4 мин. Просмотров 759 Опубликовано 15.12.2019
При синхронизации 1С ЗУП 3.0 — БП 3.0 при проверке подключения выскакивает ошибка :
Не удалось подключиться к другой программе: -2147221164(0x80040154): Класс не зарегистрирован.
В чем может быть дело? В каком направлении рыть??
- 5
- 4
- 3
- 2
- 1
(0 голосов, в среднем: 0 из 5)
Поддержите нас, расскажите друзьям!
СПРОСИТЕ в комментариях!
Это проблема связана с соединением другой базы данных по COM объекту.
Очень вероятно что не хватает прав.
Думаю, тут скорее дело в том, что на COM-компонент не зарегистрирован в системе.
Нужно запустить командную строку под именем администратора, затем выполнить regsvr32 [ПутьККомпонентуCOM]. Компонент чаще всего находится в папке с платформой в папке bin (выглядит это приблизительно вот так: «C:Program Files (x86)1cv88.3.6.2449in»). И называется comcntr32.dll.
Спасибо большое, помогло!
Огромное спасибо! Помогло. Вы супер!
Илья, добрый день!
А для 32-х и 64-х платформ 1С различаются процедуры?
Спасибо, тоже помогло!
В командной строке ( CMD в поиске) в моем случае вводил: regsvr32 «C:Program Files (x86)1cv88.3.12.1529incomcntr.dll»
Все время забываю об этой длл. СПАСИБО, что напоминаете.
Для 64-х платформы:
C:WindowsSysWOW64RegSvr32.exe «C:Program Files1cv88.3.15.1656incomcntr.dll»
При использовании данного сайта, вы подтверждаете свое согласие на использование файлов cookie в соответствии с настоящим уведомлением в отношении данного типа файлов. Если вы не согласны с тем, чтобы мы использовали данный тип файлов, то вы должны соответствующим образом установить настройки вашего браузера или не использовать сайт.
Отправляя любую форму на сайте, вы соглашаетесь с политикой конфиденциальности данного сайта.
Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V83.COMConnector.1): Версия компоненты ‘comcntr’ отличается от версии корневого модуля ‘core83’
Часто бывает, что при настроенной синхронизации после обновления платформы появляется ошибка «Произошла исключительная ситуация (V83.COMConnector.1): Версия компоненты ‘comcntr’ отличается от версии корневого модуля ‘core83’». Так происходит потому, что автоматически не зарегистрировалась компонента comcntr.dll из-за проблем с правами пользователя на компьютере.
Решить данную проблему можно двумя способами.
Переустановить платформу под правами Администратора или под пользователем, у которого есть такие права.
Если не получилось как в способе №1, то можно вручную зарегистрировать самому эту компоненту.
Перед этим нам необходимо изменить Параметры контроль учетной записи.
Для Windows 7 нам необходимо зайти в Пуск затем в Панель управления.
Для Windows 10 нам необходимо в левом нижнем углу панели задач в строке поиска набрать Панель управления и перейти по открывшейся ссылке.
В правом верхнем углу Панели управления выбрать Просмотр-Мелкие значки и затем в списке перейти в Учетные записи пользователей.
Там выбрать Изменить параметры контроля учетных записей.
Затем поставить ползунок в самом нижнем положении.
И перезапустить компьютер.
После перезагрузки необходимо:
Для Windows 7 надо перейти в Пуск, затем в строке поиска ввести cmd.exe,нам покажет что найдена Командная строка и, щелкнув по ней правой клавишей мыши, выбрать «Запуск от имени администратора».
Для Windows 10 нам необходимо в левом нижнем углу панели задач в строке поиска набрать Командная панель или cmd.exe и, щелкнув по ней правой клавишей мыши, выбрать «Запуск от имени администратора».
У нас откроется Командная строка, где нам необходимо ввести команду:
1.Для платформы x86
Regsvr32 «C:Program Files (х86)1cv8номер версии вашей платформыincomcntr.dll» (regsvr32пробел»C:Program Files (х86)1cv8номер версии вашей платформыincomcntr.dll»).
2.Для платформы х64
Regsvr32 «C:Program Files1cv8номер версии вашей платформыincomcntr.dll» (regsvr32пробел»C:Program Files1cv8номер версии вашей платформыincomcntr.dll»).
Затем нажать клавишу Enter.
Если все сделали правильно, то увидите вот такое окно.
После этого необходимо перезагрузить компьютер. Как включится, пробуйте снова сделать синхронизацию.
Добрый день, коллеги! Назрел такой насущный вопрос:
Есть сервер 1С, его обновили до версии 1С.Предприятия 8.3.12.1685. И есть терминальный сервер, с которого работают с базами, размещенными на сервере 1С. Оба сервера под управлением Windows Server 2012 R2.
На сервере 1С размещена база Бух 3.0 и Зуп 3.1. Между ними на предыдущей платформе, 8.3.11.2954 была настроена синхронизация. На 8.3.11.2954 синхронизация работала нормально, но для обновления Бух до последней конфигурации были вынуждены перейти на 8.3.12.1685(предвосхищая возможный вопрос — нет, тестового сервера нет). После перехода выяснилось, что синхронизация не работает. При попытке соединения(например, в окне проверки настроек) получаю сообщение:
Mindeo CS2290 BT. Обновление прошивки сканера
Mindeo CS2290BT. Подключение к ПК по Блютус
Mindeo CS2290 BT. Сопряжение с базой
Mindeo CS2290 RF. Сопряжение с базой
Mindeo CS2290. Настройка автоматического переключения режима сканирования при установке/снятии на подставку
Mindeo CS2290. Настройка работы в Пакетном (Batch) режиме
Mindeo. Cброс на заводские настройки
Mindeo MD6600. Обновление прошивки сканера
Mindeo MD6600. Подключение в Эвотор Frontol6 Мой склад МТС / Атол91- 92Ф Litebox Контур МАРКЕТ
Mindeo MP719. Включение режима непрерывного сканирования
Mindeo MP725. Обновление прошивки сканера
Mindeo MP86008608. Обновление прошивки сканера
Mindeo. Базовая проверка сканера
Mindeo. Включение передачи скрытых символов
Mindeo. Запрос технической поддержки
Mindeo. Идентификации версии прошивки
Mindeo. Идентификация модели и серийного номера сканера
Mindeo. Переключение режимов работы USB-HID и USB-VCOM
Mindeo. Подключение сканера в платформе 1С в режиме Эмуляции COM порта
Mindeo. Подключение сканеров Mindeo в платформе 1С в режиме Эмуляции клавиатуры
Ошибка в модуле обычного приложения в распр. узле, как запустить программу?!? |
Я |
Соратник
06.02.13 — 10:16
v8.2.17.153
конфигурация специфичная от фирмы Рарус
в центре изменили один из справочников, потом вернули изменения обратно, но «непраивльные» изменения уже ушли в периферии. При запуске в режиме предприятия, чтоб провести обмены и принять уже «правильные» изменения, неправильные вываливают в ошибку при запуске Модуля обычного приложения и не дают запусить 1С в режиме предприятия (по хорошему разработчики этот кусок должны были взять в попытка/исключение, но не сделали этого). Конфигуратор заблокирован от изменений из-за РБД.
В 8-ке я пока не гуру, поэтому нужен совет. Можно ли как-то запустить минуя сбойный кусок модуля или каким-то образом запустить обработку до обработки модуля обычного приложения: или чтоб прогнать обмен или чтоб отключить от распределенки
Спасибо.
Wobland
1 — 06.02.13 — 10:16
отключаешь узел от центра, грузишь в него свежий cf, включаешь центр обратно
Соратник
2 — 06.02.13 — 10:17
// или каким-то образом запустить обработку до обработки модуля обычного приложения
имеется в виду запустить внешнюю обработку
Wobland
3 — 06.02.13 — 10:17
Процедура ОтключитьГлавныйУзелНажатие(Кнопка)
Если ПланыОбмена.ГлавныйУзел() <> Неопределено Тогда
СохранитьЗначение(«РеанимацияПодчиненногоУзла_ГлавныйУзел»,ПланыОбмена.ГлавныйУзел());
ПланыОбмена.УстановитьГлавныйУзел(Неопределено);
КонецЕсли;
Предупреждение(«Главный узел отключен»);
КонецПроцедуры
Процедура ПодключитьГлавныйУзелНажатие(Элемент)
Если ПланыОбмена.ГлавныйУзел() <> Неопределено Тогда
Если Вопрос(«Главный узел уже установлен как » + ПланыОбмена.ГлавныйУзел() + Символы.ПС + «Установить главным узлом другой?», РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет Тогда
Возврат;
КонецЕсли;
Иначе
пГлавныйУзел = ВосстановитьЗначение(«РеанимацияПодчиненногоУзла_ГлавныйУзел»);
КонецЕсли;
Если пГлавныйУзел = Неопределено Тогда
пГлавныйУзел = ПланыОбмена[Метаданные.ПланыОбмена.ПоМагазину.Имя].ПолучитьФормуВыбора().ОткрытьМодально();
Если пГлавныйУзел = Неопределено Тогда
Возврат;
КонецЕсли;
КонецЕсли;
ПланыОбмена.УстановитьГлавныйУзел(пГлавныйУзел.Ссылка);
Предупреждение(«Главный узел установлен как » + пГлавныйУзел);
КонецПроцедуры
DrShad
4 — 06.02.13 — 10:18
(1) +1
(0) тестировать никто не отменял перед отправкой
Соратник
5 — 06.02.13 — 10:18
(1) как отключить от центра если не пускает в режиме предприятия
kosts
6 — 06.02.13 — 10:18
(5) Есть ключи запуска 1С.
Соратник
7 — 06.02.13 — 10:18
(4) отправка не касалась конфигурации… это данные… элемент справочника
Соратник
8 — 06.02.13 — 10:19
(6) Можно подробнее, пожалуйста
Wobland
9 — 06.02.13 — 10:20
(8) ResetMasterNode вроде. хелп всё расскажет
DrShad
10 — 06.02.13 — 10:20
(7) что!?
ХочуСказать
11 — 06.02.13 — 10:21
(8) через ком подключись
DrShad
12 — 06.02.13 — 10:21
ошибку в студию!
Соратник
13 — 06.02.13 — 10:22
(10) Изменили элемент справочника, этот справочник обрабатывается при запуске в Модуле обычного приложения, так как не все реквизиты были заполнены происходит вылет по ошибке….
{МодульОбычногоПриложения(532)}: Ошибка при вызове метода контекста (Вставить)
глКэшОбработокРеквизитовДокументов.Вставить(СтрЗаменить(Стр.Объект +?(Стр.Объект<>»»,».»,»»)+ Стр.Наименование,».»,»_»),Стр.Ссылка.ПолучитьОбъект().ПолучитьВнешнююОбработку());
по причине:
Задано неправильное имя атрибута структуры
ХочуСказать
14 — 06.02.13 — 10:24
(13) мля.. см (11) и перестань лохматить бабушку
kosts
15 — 06.02.13 — 10:26
(11) Ни к чему этот ком.
Отсоединить РИБ через ключ запуска, залить cf, присоединить риб…
DrShad
16 — 06.02.13 — 10:35
(13) что-то не припомню чтоб в именах ключей использовал «.» или «,»
Соратник
17 — 06.02.13 — 10:38
(16) ну тут вопрос к Рарусу
DrShad
18 — 06.02.13 — 10:40
(17) ну почему тогда вопрос из сабжа не был задан Рарусу?
Соратник
19 — 06.02.13 — 11:14
(18) задан параллельно, скорость реакции разная
Решил проблему:
1) сделал резервную копию БД
2) Отключил от РБД через ResetMasterNode
3) Закоментарил сбойный кусок
4) Запустил в режиме предприятия поправил косячный реквизит элемента
6) Загрузил измененную конфигурацию выгруженную из центра
5) Восстановил привязку к РБД в предприятии
Огромное спасибо всем принявшим участие :))))
Здравствуйте.
В данном посту рассмотрим модуль приложения, его предназначение и место компиляции.
Модуль приложения 1С предназначен в основном для того чтобы поймать момент запуска приложения и момент завершения работы.
Здесь же находятся обработчики, которые позволяют перехватить внешнее событие от оборудования.
Подробно рассказано о модулях 1с их предназначений.
В платформе 8.2 существует два модуля приложения:
• модуль управляемого приложения
• модуль обычного приложения
Модуль управляемого приложения
Модуль управляемого приложения можно вызвать из палитры свойств корневого узла конфигурации или из контекстного меню, вызванного на корневом узле конфигурации.
События модуля управляемого приложения срабатывают при запуске Тонкого клиента, Веб-клиента и Толстого клиента управляемого приложения.
В модуле управляемого приложения отслеживается интерактивный запуск системы.
Модуль управляемого приложения содержит:
• раздел объявление переменных
• раздел описания процедур и функций
• раздел основной программы
Процедуры, функции и переменные управляемого модуля могут быть описаны как экспортные (доступные вне данного модуля). Ещё в данном модуле могут содержаться специальные обработчики событий, которые возникают при некоторых обстоятельствах.
Рассмотрим список обработчиков, который можно вызвать, нажав горячие клавиши 1С (Ctrl+Alt+P).
ПередНачаломРаботыСистемы — действие ещё не произошло (происходит запуск 1С Предприятия 8.2 но само приложение ещё не появилось на экране). Если параметр “Отказ” выставить в значение “Истина” то приложение попросту не запустится. ПриНачалеРаботыСистемы — действие уже совершилось (параметра “отказ” нет). ПередЗавершениемРаботыСистемы — приложение ещё никуда не исчезло (есть параметр “отказ”).
ПриЗавершенииРаботыСистемы — интерактивное окно уже закрылось.
Загляните в синтакс-помощник и почитайте подробней о событиях управляемого и обычного приложения.
Модуля приложения всегда целиком компилируется на стороне клиента. Т.е. из него можем обратиться к серверным процедурам и функциям общих модулей и не сможем обратится к таким объектам конфигурации как например документы, справочники.
При старте системы происходит компилирование модуля управляемого приложения и чем больше в нем объявлено экспортных процедур и функций, тем дольше будет продолжаться запуск системы.
Модуль обычного приложения
Модуль обычного приложения можно увидеть там же где и модуль управляемого приложения, но если он не виден тогда необходимо в параметрах конфигуратора на вкладке “Общие” опции “Редактирование конфигурации для режимов запуска” в положение “Управляемое приложение и обычное приложение”.
Как это сделать смотри в статье: Запуск обычного приложения в УТ 11.
События модуля обычного приложения срабатывают при запуске толстого клиента обычного приложения.
Все что было сказано для модуля управляемого приложения справедливо и для модуля обычного приложения.
События Перед… и При….
Отличие процедур ПередНачаломРаботыСистемы(Отказ) и ПриНачалеРаботыСистемы()
ПередНачаломРаботыСистемы(Отказ) — действие еще не свершилось и мы можем отказаться от его выполнения.
ПриНачалеРаботыСистемы() — действие уже свершилось, и отказаться от запуска приложения или выхода из него мы не можем.
Вот и все, спасибо за внимание с вами был 1С Программист.
Пожалуйста, оставляйте комментарии, мне важно ваше мнение.
Постовой: Оформление медицинских справок за 10 минут. Чтоб оформить справку в ГАЙ надо потратить пару дней, но есть вариант справка на права купить. Возможно и доставка справки также прилагается копия лицензий
P.S. А мне нравится Jamala (Джамала) — You’re Made of Love
Ошибка в модуле обычного приложения в распр. узле, как запустить программу?!? |
Я |
06.02.13 — 10:16
v8.2.17.153
конфигурация специфичная от фирмы Рарус
в центре изменили один из справочников, потом вернули изменения обратно, но «непраивльные» изменения уже ушли в периферии. При запуске в режиме предприятия, чтоб провести обмены и принять уже «правильные» изменения, неправильные вываливают в ошибку при запуске Модуля обычного приложения и не дают запусить 1С в режиме предприятия (по хорошему разработчики этот кусок должны были взять в попытка/исключение, но не сделали этого). Конфигуратор заблокирован от изменений из-за РБД.
В 8-ке я пока не гуру, поэтому нужен совет. Можно ли как-то запустить минуя сбойный кусок модуля или каким-то образом запустить обработку до обработки модуля обычного приложения: или чтоб прогнать обмен или чтоб отключить от распределенки
Спасибо.
1 — 06.02.13 — 10:16
отключаешь узел от центра, грузишь в него свежий cf, включаешь центр обратно
2 — 06.02.13 — 10:17
// или каким-то образом запустить обработку до обработки модуля обычного приложения
имеется в виду запустить внешнюю обработку
3 — 06.02.13 — 10:17
Процедура ОтключитьГлавныйУзелНажатие(Кнопка)
Если ПланыОбмена.ГлавныйУзел() <> Неопределено Тогда
СохранитьЗначение(«РеанимацияПодчиненногоУзла_ГлавныйУзел»,ПланыОбмена.ГлавныйУзел());
ПланыОбмена.УстановитьГлавныйУзел(Неопределено);
КонецЕсли;
Предупреждение(«Главный узел отключен»);
КонецПроцедуры
Процедура ПодключитьГлавныйУзелНажатие(Элемент)
Если ПланыОбмена.ГлавныйУзел() <> Неопределено Тогда
Если Вопрос(«Главный узел уже установлен как » + ПланыОбмена.ГлавныйУзел() + Символы.ПС + «Установить главным узлом другой?», РежимДиалогаВопрос.ДаНет) = КодВозвратаДиалога.Нет Тогда
Возврат;
КонецЕсли;
Иначе
пГлавныйУзел = ВосстановитьЗначение(«РеанимацияПодчиненногоУзла_ГлавныйУзел»);
КонецЕсли;
Если пГлавныйУзел = Неопределено Тогда
пГлавныйУзел = ПланыОбмена[Метаданные.ПланыОбмена.ПоМагазину.Имя].ПолучитьФормуВыбора().ОткрытьМодально();
Если пГлавныйУзел = Неопределено Тогда
Возврат;
КонецЕсли;
КонецЕсли;
ПланыОбмена.УстановитьГлавныйУзел(пГлавныйУзел.Ссылка);
Предупреждение(«Главный узел установлен как » + пГлавныйУзел);
КонецПроцедуры
4 — 06.02.13 — 10:18
(1) +1
(0) тестировать никто не отменял перед отправкой
5 — 06.02.13 — 10:18
(1) как отключить от центра если не пускает в режиме предприятия
6 — 06.02.13 — 10:18
(5) Есть ключи запуска 1С.
7 — 06.02.13 — 10:18
(4) отправка не касалась конфигурации… это данные… элемент справочника
8 — 06.02.13 — 10:19
(6) Можно подробнее, пожалуйста
9 — 06.02.13 — 10:20
(8) ResetMasterNode вроде. хелп всё расскажет
10 — 06.02.13 — 10:20
(7) что!?
11 — 06.02.13 — 10:21
(8) через ком подключись
12 — 06.02.13 — 10:21
ошибку в студию!
13 — 06.02.13 — 10:22
(10) Изменили элемент справочника, этот справочник обрабатывается при запуске в Модуле обычного приложения, так как не все реквизиты были заполнены происходит вылет по ошибке….
{МодульОбычногоПриложения(532)}: Ошибка при вызове метода контекста (Вставить)
глКэшОбработокРеквизитовДокументов.Вставить(СтрЗаменить(Стр.Объект +?(Стр.Объект<>»»,».»,»»)+ Стр.Наименование,».»,»_»),Стр.Ссылка.ПолучитьОбъект().ПолучитьВнешнююОбработку());
по причине:
Задано неправильное имя атрибута структуры
14 — 06.02.13 — 10:24
(13) мля.. см (11) и перестань лохматить бабушку
15 — 06.02.13 — 10:26
(11) Ни к чему этот ком.
Отсоединить РИБ через ключ запуска, залить cf, присоединить риб…
16 — 06.02.13 — 10:35
(13) что-то не припомню чтоб в именах ключей использовал «.» или «,»
17 — 06.02.13 — 10:38
(16) ну тут вопрос к Рарусу
18 — 06.02.13 — 10:40
(17) ну почему тогда вопрос из сабжа не был задан Рарусу?
Соратник
19 — 06.02.13 — 11:14
(18) задан параллельно, скорость реакции разная
Решил проблему:
1) сделал резервную копию БД
2) Отключил от РБД через ResetMasterNode
3) Закоментарил сбойный кусок
4) Запустил в режиме предприятия поправил косячный реквизит элемента
6) Загрузил измененную конфигурацию выгруженную из центра
5) Восстановил привязку к РБД в предприятии
Огромное спасибо всем принявшим участие :))))
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and
privacy statement. We’ll occasionally send you account related emails.
Already on GitHub?
Sign in
to your account
Open
7OH opened this issue
Mar 15, 2023
· 4 comments
Open
Модуль обычного приложения
#910
7OH opened this issue
Mar 15, 2023
· 4 comments
Comments
Описание проблемы
Указанный модуль доступен только через исходники.
Порой необходимо поправить и там.
Описание решения проблемы
Это не обычная форма, которая не поддерживается изначально.
Это же МОДУЛЬ, такой же как и остальные 3.
Добавьте редактирование оного во вкладки.
Дополнительная информация
No response
EDT официально не поддерживает не только обычные формы, но и в целом разработку для режима обычного приложения, об этом прямо написано в документации в разделе ограничений.
А модуль вполне себе открывается из перспективы Файлы, проблем с редактированием нет.
Вполне себе в модуле объекта пишется под обычное приложение — это же КОД.
Почему такая принципиальная позиция с всего одним модулем ?
Там ведь тоже просто код.
тут поддержка этого модуля вроде есть
Тоже не понимаю это искусственное ограничение. Например, флаг «Клиент (обычное приложение)» поддержали, а модуль обычного приложения — нет.
Ошибка при вызове метода контекста (Connect): Произошла исключительная ситуация (V83.COMConnector.1): Версия компоненты ‘comcntr’ отличается от версии корневого модуля ‘core83’
Часто бывает, что при настроенной синхронизации после обновления платформы появляется ошибка «Произошла исключительная ситуация (V83.COMConnector.1): Версия компоненты ‘comcntr’ отличается от версии корневого модуля ‘core83’». Так происходит потому, что автоматически не зарегистрировалась компонента comcntr.dll из-за проблем с правами пользователя на компьютере.
Решить данную проблему можно двумя способами.
Способ №1.
Переустановить платформу под правами Администратора или под пользователем, у которого есть такие права.
Способ №2.
Если не получилось как в способе №1, то можно вручную зарегистрировать самому эту компоненту.
Перед этим нам необходимо изменить Параметры контроль учетной записи.
Для Windows 7 нам необходимо зайти в Пуск затем в Панель управления.
Для Windows 10 нам необходимо в левом нижнем углу панели задач в строке поиска набрать Панель управления и перейти по открывшейся ссылке.
В правом верхнем углу Панели управления выбрать Просмотр-Мелкие значки и затем в списке перейти в Учетные записи пользователей.
Там выбрать Изменить параметры контроля учетных записей.
Затем поставить ползунок в самом нижнем положении.
И перезапустить компьютер.
После перезагрузки необходимо:
Для Windows 7 надо перейти в Пуск, затем в строке поиска ввести cmd.exe,нам покажет что найдена Командная строка и, щелкнув по ней правой клавишей мыши, выбрать «Запуск от имени администратора».
Для Windows 10 нам необходимо в левом нижнем углу панели задач в строке поиска набрать Командная панель или cmd.exe и, щелкнув по ней правой клавишей мыши, выбрать «Запуск от имени администратора».
У нас откроется Командная строка, где нам необходимо ввести команду:
1.Для платформы x86
Regsvr32 «C:Program Files (х86)1cv8номер версии вашей платформыbincomcntr.dll» (regsvr32пробел»C:Program Files (х86)1cv8номер версии вашей платформыbincomcntr.dll»).
2.Для платформы х64
Regsvr32 «C:Program Files1cv8номер версии вашей платформыbincomcntr.dll» (regsvr32пробел»C:Program Files1cv8номер версии вашей платформыbincomcntr.dll»).
Затем нажать клавишу Enter.
Если все сделали правильно, то увидите вот такое окно.
После этого необходимо перезагрузить компьютер. Как включится, пробуйте снова сделать синхронизацию.