Неизвестный модуль 1 ошибка при вызове метода контекста прочитатьxml

При использовании обработки с диска ИТС (ВыгрузкаЗагрузкаДанныхXML), выходит сообщение об ошибке, в момент ЗАГРУЗКИ:

{ВнешняяОбработка.ВыгрузкаЗагрузкаДанныхXML.МодульОбъекта(147)}: Ошибка при вызове метода контекста (ПрочитатьXML)

            ЗаписанноеЗначение = ПрочитатьXML(ЧтениеXML);

по причине:

Ошибка преобразования данных XML: [file://C:/TANYA_New/88888888888888/поступление_2.xml][82,4]

Из копии Бухгалтерии1, перегружаем в рабочую Бухгалтерию2 документ «ПоступлениеТоваров и Услуг» (в нем всего одна позиция) и при загрузке (этой же обработкой, выдает ошибку выше.

Платформа 8.2.19.80.

Выгружаем из версии Бухгалтерии 2.0.54.13

Загружаем в версию Бухгалтерии 2.0.53.8

)

3 / 3 / 2

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

Сообщений: 216

1

26.08.2016, 13:50. Показов 3404. Ответов 5


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

Подскажите , как исправить ошибку

Событие: Получение.
Объект XDTO: Документ.ПоступлениеИРеализация, №00УП-0145698 от 21.07.2015 14:48:25.

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(1446)}: Ошибка при вызове метода контекста (ПрочитатьXML)
ФабрикаXDTO.Тип(КомпонентыОбмена.ФайлОбмена.URIПространстваИмен, КомпонентыОбмена.ФайлОбмена.ЛокальноеИмя));
по причине:
Ошибка преобразования данных XDTO:
Чтение объекта типа: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.0}КлючевыеСвойстваСтатьяРасходов — [50555,11]
Проверка дополнительного свойства:
форма: Текст
имя:



0



Модератор

Эксперт 1С

3724 / 2918 / 575

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

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

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

29.08.2016, 02:14

2

juristbrn, 1. обновить конфигурации, 2. обновить правила



0



3 / 3 / 2

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

Сообщений: 216

29.08.2016, 06:43

 [ТС]

3

Dethmontt, ошибка появилась после обновление конфигурацуии БП до последнего релиза

Ругается все на Чтение объекта типа: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.0}КлючевыеСвойстваСтатьяРасходов

Событие: Получение.
Объект XDTO: УдалениеОбъекта, .

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(1446)}: Ошибка при вызове метода контекста (ПрочитатьXML)
ФабрикаXDTO.Тип(КомпонентыОбмена.ФайлОбмена.URIПространстваИмен, КомпонентыОбмена.ФайлОбмена.ЛокальноеИмя));
по причине:
Ошибка преобразования данных XDTO:
Чтение объекта типа: {http://v8.1c.ru/edi/edi_stnd/EnterpriseData/1.0}КлючевыеСвойстваСтатьяРасходов — [26328,5]
Проверка дополнительного свойства:
форма: Текст
имя:



0



Модератор

Эксперт 1С

3724 / 2918 / 575

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

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

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

29.08.2016, 12:02

4

Значит правила нужно обновить



0



3 / 3 / 2

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

Сообщений: 216

30.08.2016, 06:20

 [ТС]

5

Dethmontt, вроде от той избавился, но теперь появилась такая

{ОбщийМодуль.ОбменДаннымиXDTOСервер.Модуль(1513)}: Значение не является значением объектного типа (Значение) ПолученныеДанныеСсылка = СсылкаОбъектаПоУИДОбъектаXDTO(ДанныеXDTO.Ссылка.Значение,



0



Эксперт 1С

476 / 413 / 93

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

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

30.08.2016, 17:36

6

juristbrn, да их там полно будет. Структура метаданных конфигурации поменялась, соответственно и правила нужно обновлять!



0



description

2.4.4.40

Ошибка при вызове метода контекста (ПрочитатьXML): Ошибка разбораXML

Ошибка при вызове метода контекста (ПрочитатьXML): Ошибка разбораXML

Если при обмене возникает ошибка такого вида (чаще всего, это случается со статистикой запросов по артикулам), то нужно выполнить обмен с дополнительным экранированием служебных символов XML.

Настройка доступна в справочнике «Настройки обмена →Служебные параметры →»Удалять некорректные символы:
— эту настройку нужно включить, если при обмене не удается прочитать файл обмена
— затем выключить, после того, как обмен пройдет без ошибок (включенная настройка замедляет чтение файлов обмена).

{% hint style=»info» %}
Самым правильным будет остановить регламентное задание текущего обмена, включить флаг «Удалять некорректные символы» и через контекстное меню сделать полный обмен проблемной таблицей (в 99% случаев это таблица «Статистика поиска по строке»).
{% endhint %}

Грабли метода ПрочитатьXML() объекта ФабрикаXDTO

Что таит в себе окно редактирования XDTO-пакета

Фабрика XDTO — это библиотека типов, которая описывает определенные структуры XML. В языке программирования платформы 1С имеется объект ФабрикаXDTO, который содержит все пакеты XDTO, имеющиеся в конфигурации, а также предопределенные пакеты (например, пакет типов XML схемы). У данного объекта метод ПрочитатьXML(), позволяет читать элементы данных XDTO указанного типа из объекта чтения XML:


ФайлXML = Новый ЧтениеXML;
ФайлXML.УстановитьСтроку(СтрокаXML);

Пока ФайлXML.Прочитать() Цикл

Если ФайлXML.ЛокальноеИмя = "Message" И ФайлXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ФайлXML);
КонецЕсли;

КонецЦикла;

ФайлXML.Закрыть();

Первый параметр метода является обязательным, в который передается объект чтения XML. Второй параметр метода необязательный, в который передается тип элемента данных XDTO. Если тип не указан, то будет сделана попытка определить тип данных по текущему состоянию объекта ЧтениеXML.

Допустим, создадим тип в пакете XDTO  с пространством имен http://lk.1cps.ru, который будет описывать некую структуру XML:

1. Тип «Документы»

Кусок структуры XML:
...
<Документы>
<РасчетФБ>
<Культура>12122</Культура>
<ПосевнаяПлощадь>23</ПосевнаяПлощадь>
<СтавкаСубсидий>12</СтавкаСубсидий>
<Сумма>276</Сумма>
</РасчетФБ>
<РасчетФБ>
<Культура>232323</Культура>
<ПосевнаяПлощадь>34</ПосевнаяПлощадь>
<СтавкаСубсидий>12</СтавкаСубсидий>
<Сумма>408</Сумма>
</РасчетФБ>
</Документы>
...

Прочитаем эту структуру:

Пока ФайлXML.Прочитать() Цикл
Если ФайлXML.ЛокальноеИмя = "Документы" И ФайлXML.ТипУзла = ТипУзлаXML.НачалоЭлемента Тогда
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ФайлXML, ФабрикаXDTO.Тип("http://lk.1cps.ru", "ДокументыТип"));
Прервать;
КонецЕсли;
КонецЦикла;

Приведенный код будет завершать ошибкой чтения XML, примерно такой:

Ошибка при вызове метода контекста (ПрочитатьXML)
ОбъектXDTO = ФабрикаXDTO.ПрочитатьXML(ФайлXML, ФабрикаXDTO.Тип("http://lk.1cps.ru", "ДокументыТип"));
по причине:
Ошибка преобразования данных XDTO:
Чтение объекта типа: {http://lk.1cps.ru}ДокументыТип - [126,19]
Проверка дополнительного свойства:
форма: Элемент
имя: {http://lk.1cps.ru}Культура
по причине:
Ошибка проверки данных XDTO:
Структура объекта не соответствует типу: {http://lk.1cps.ru}ДокументыТип

ПРОШЛО 4 ЧАСА :(

Так как выше приведенный кусок структуры XML не относится к пространству имен http://lk.1cps.ru, то и метод ПрочитатьXML() выкидывал ошибку, несмотря на то, что тип правильно описывает структуру XML! Поэтому XML должен выглядеть так:
...
<Документы xmlns="http://lk.1cps.ru">
<РасчетФБ>
<Культура>12122</Культура>
<ПосевнаяПлощадь>23</ПосевнаяПлощадь>
<СтавкаСубсидий>12</СтавкаСубсидий>
<Сумма>276</Сумма>
</РасчетФБ>
<РасчетФБ>
<Культура>232323</Культура>
<ПосевнаяПлощадь>34</ПосевнаяПлощадь>
<СтавкаСубсидий>12</СтавкаСубсидий>
<Сумма>408</Сумма>
</РасчетФБ>
</Документы>
...

Вот такие пироги.

Содержание:

1.       Основные сведения про языки XML и HTML

2.       Возникновение ошибки преобразования данных

3.       Причины появления и решения ошибки преобразования 1С

Здравствуйте, коллеги! В данной статье будет рассмотрена ошибка преобразования данных XML: причины её возникновения и инструкция по ее устранению несколькими вариантами.  

1.    Основные сведения про языки XML и HTML

Для начала разберём, что такое XML. XML (еXtensible Markup Language) – это язык программирования, который необходим, чтобы хранить данные. В XML необходимо самим определять теги, так как изначально оны не определены. Особенность XML заключается в том, что это самоопределяемый язык. Языки XML и HTML довольно похожи. Единственное отличие между ними – назначение: HTML отображает данные и решает, в каком виде будет их отображение, когда XML только хранит и транспортирует данные. 

2.    Возникновение ошибки преобразования данных

Обычно ошибка преобразования данных возникает, когда вызывается метод из контекста (ПрочитатьXML) в следующем виде: ЗаписатьЗначение = Прочитать XML(Чтение XML).

Это происходит, когда настраивается обмен данными при помощи стандартной обработки. Это может быть обработка загрузки или выгрузки XML.

Выглядит ошибка преобразования в 1С следующим образом:

Рис. 1 Ошибка преобразования 1С 8.3  

3.    Причины появления и решения ошибки преобразования 1С

Ошибку преобразования XML следует воспринимать как одну из стандартных ошибок, когда происходит нарушение получения данных между периферийным узлом и центральным узлом.

Есть несколько возможных причин появления данной ошибки.

1. Когда структура с метаданными в конфигурации не соответствует. Если «действие» происходит в узле, который является главным. В данном случае конфигурация, скорее всего, различается. То есть, когда происходит внешняя обработка с загрузкой или выгрузкой XML, то конфигурации должны быть одинаковыми, иначе будет возникать ошибка преобразования. В случае, когда данные передаются по стандартным обменам в конфигурации, нужно проверить совпадения объекта метаданных в правилах по обмену.

2. Неполадки в системе файлов. Когда происходит обмен данными, может возникать ошибка преобразования данных XML, так как файл не может считаться. Чтобы устранить ошибку следует дать файлу иное наименование, за чем последует загрузка того же файла, но с иным наименованием.

Если же все вышеперечисленное правильно, в узле, который отправляет данные, необходимо запустить обработку «ВыгрузкаЗагрузкаДанныхXML.epf», которая находится в каталоге с шаблоном конфигураций, в составе конфигурации «Конвертация данных». Кликаем на «Недопустимые символы в плане обмена» и выбираем узел, который получает данные. В случае, если по окончанию проверки появятся ошибки, для окончательного устранения ошибки преобразования XML нужно будет решить те небольшие неполадки.

В данной статье была рассмотрена ошибка преобразования данных XML, которая возникает при стандартных обменах. Также было выведено две причины её возникновения и описано три возможных способа решения ошибки преобразования данных в 1С 8.3.

Специалист компании «Кодерлайн»

Айдар Фархутдинов

Обработка.ЗагрузкаСтруктурыМетаданных.МодульОбъекта(74)}: Ошибка при вызове метода контекста (ПрочитатьXML) ПрочитатьXML(ЧтениеXML);

Описание ошибки:
Ошибка при попытке загрузить описание структуры метаданных в базу конфигурации 1С: Конвертация данных 8, ред. 2.1. Версия платформы 1С: Предприятие 8.3.7.1845

Найденные решения:

Кажется, наверное, что вряд ли бы столкнулся с данной ошибкой, как оказалось не столь редкой. Мне была предоставлена база конфигурации 1С: Конвертация данных 8 ред. 2.0. В которой уже имелись правила обмена, которые нужно было доработать под требуемую задачу. Но для того, чтобы выполнить доработку, необходимо было обновить описание конфигураций посредством загрузки нового описания из файла-описания конфигурации базы-приемника и источника.

Как известо файл-описания конфигурации подготавливается с помощью поставляющегося с 1С: Конвертация данных 8 файла MD82Exp.epf. Традиционно выполнив создание файла-описания структуры конфигурации, перешел к процессу «загрузки метаданных структуры конфигурации» в базе конвертации. И неожиданно по истечении некоторого времени после, казалось бы, удачногостарта процесса загрузки получил ошибку: {Обработка.ЗагрузкаСтруктурыМетаданных.МодульОбъекта(74)}: Ошибка при вызове метода контекста (ПрочитатьXML)
            ПрочитатьXML(ЧтениеXML);
по причине:
Ошибка преобразования данных XML: [sfile://C:/Базы 1С/А__/______.xml][171,22]

1с 8 Обработка.ЗагрузкаСтруктурыМетаданных.МодульОбъекта(74)}: Ошибка при вызове метода контекста (ПрочитатьXML) ПрочитатьXML(ЧтениеXML);

1C 8 конвертация ошибка при загрузке описания конфигурации {Обработка.ЗагрузкаСтруктурыМетаданных.МодульОбъекта(74)}: Ошибка при вызове метода контекста (ПрочитатьXML)

Удивлению не было предела. Казалось бы столько раз выполнял подобную процедуру. Но такое в первый раз. Оценив шансы на то, что в интернете быстрее найду решение проблемы, чем в документации, оказался прав. На форуме сайта infostart была найдена подсказка о том, что спешка меня подвела.

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

1С 8 конвертация данных Ошибка разбора xml при загрузке описания структуры конфигурации, конфы

Соответственно, установка обновления 1С: Конвертация данных релиза 2.1.7.1 и использование файла MD82Exp.epf из папки шаблона релиза разрешило проблему. Ошибка больше не проявилась.

Оцените, помогло ли Вам предоставленное описание решения ошибки?




© www.azhur-c.ru 2014-2020. Все права защищены. Использование текстов и изображений с данной страницы без письменного разрешения владельца запрещено. При использовании материалов с данной страницы обязательно указание ссылки на данную страницу.

14-12-2016

Журавлев А.С.
(Сайт www.azhur-c.ru)

Ошибка преобразования данных XML при работе в 1С является стандартной и распространенной ошибкой. При возникновении этой ошибки блокируется дальнейшая работа с документами.

Напомним, что XML это язык программирования, чем-то похожий на HTML. Разница в том, что HTML регламентирует отображение элементов на странице, то есть браузер «считывает» HTML теги и показывает пользователям веб-страницу, согласно тегам. А XML ничего не регламентирует, он только сохраняет и транспортирует информацию. 

Ошибка преобразования данных XML обычно появляется тогда, когда нарушается последовательность при принятии периферийным узлом информации от центрального узла. Когда эта ошибка появляется на главном узле в момент передачи на второстепенный узел, тогда самое важное вначале устранить саму проблему, а не менять сразу настройки главного узла. Если это сделать (менять настройки), тогда присутствует риск возникновения такой же проблемы на второстепенном узле, поэтому важно для начала проанализировать и найти причину возникновения ошибки и устранить ее.

Ошибка преобразования данных XML в 1С: основные причины

Практика показывает, что есть несколько распространенных причин, почему ошибка преобразования данных появляется в 1С:

  1. Иногда ошибка преобразования данных XML возникает по достаточно простой причине, например, из-за того, что в передаваемом документе присутствуют недопустимые символы, а второстепенный узел просто не может их прочитать. Так ли это? Можно проверить на отправляющем узле, если открыть проверку «ВыгрузкаЗагрузкаДанныхXML.epf». Если причина в этом, тогда вы получите соответствующее сообщение. Если сообщения нет, тогда можно искать другие причины и устранять их.

  2. Технические неполадки в файловой системе. Ошибка появляется, потому что XML-файл не может быть прочитан. Такая проблема может быть связана с неправильным именем передаваемого файла, то есть узел-получатель не может прочитать имя передаваемого файла. Чтобы устранить эту причину, нужно на узле-отправителе поменять имя у передаваемого файла и отправить его еще раз. Если ошибка преобразования данных XML была из-за имени, тогда после переименования она устранится.

  3. Не соответствуют метаданные между узломотправителем и узломполучателем. Важно помнить, что безошибочная передача данных XML между узлами возможна лишь в том случае, если оба узла используют идентичную конфигурацию. Поэтому нужно исследовать правила обмена данными в обоих узлах на их соответствие. Если найдены какие-то различия, тогда устраните их и попробуйте еще раз передать XML-файл.

Заключение

Ошибка преобразования данных XML возникает в 1С нечасто, но в то же время это самый распространенный вид ошибки. Причин возникновения может быть несколько, и о них мы сегодня написали. Все ли причины возникновения ошибки мы перечислили? Нет, не все, но это самые распространенные, которые наиболее часто встречаются на практике.

Возможно, вам также будет интересно:

  • Неизвестный модуль 1 ошибка при вызове метода контекста получитьформу
  • Неизвестный модуль 1 ошибка при вызове метода контекста получить
  • Неизвестный модуль 1 ошибка при вызове метода контекста найтипореквизиту
  • Неизвестный модуль 1 ошибка при вызове метода контекста выполнить
  • Неизвестный модуль 1 ошибка при вызове метода контекста open

  • Понравилась статья? Поделить с друзьями:
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии