Содержание:
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]
Удивлению не было предела. Казалось бы столько раз выполнял подобную процедуру. Но такое в первый раз. Оценив шансы на то, что в интернете быстрее найду решение проблемы, чем в документации, оказался прав. На форуме сайта infostart была найдена подсказка о том, что спешка меня подвела.
Таким образом, оценив версию релиза предоставленной базы с версией папки шабонов, изкоторой был выбран файл обработки для формирования описания структуры метаданных конфигурации, стало ясно, что проблема в том, что обработка (точнее релиз, с которым она была предоставлена) не соответствует релизу базы.
Соответственно, установка обновления 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С:
Иногда ошибка преобразования данных XML возникает по достаточно простой причине, например, из-за того, что в передаваемом документе присутствуют недопустимые символы, а второстепенный узел просто не может их прочитать. Так ли это? Можно проверить на отправляющем узле, если открыть проверку «ВыгрузкаЗагрузкаДанныхXML.epf». Если причина в этом, тогда вы получите соответствующее сообщение. Если сообщения нет, тогда можно искать другие причины и устранять их.
Технические неполадки в файловой системе. Ошибка появляется, потому что XML-файл не может быть прочитан. Такая проблема может быть связана с неправильным именем передаваемого файла, то есть узел-получатель не может прочитать имя передаваемого файла. Чтобы устранить эту причину, нужно на узле-отправителе поменять имя у передаваемого файла и отправить его еще раз. Если ошибка преобразования данных XML была из-за имени, тогда после переименования она устранится.
Не соответствуют метаданные между узлом—отправителем и узлом—получателем. Важно помнить, что безошибочная передача данных XML между узлами возможна лишь в том случае, если оба узла используют идентичную конфигурацию. Поэтому нужно исследовать правила обмена данными в обоих узлах на их соответствие. Если найдены какие-то различия, тогда устраните их и попробуйте еще раз передать XML-файл.
Заключение
Ошибка преобразования данных XML возникает в 1С нечасто, но в то же время это самый распространенный вид ошибки. Причин возникновения может быть несколько, и о них мы сегодня написали. Все ли причины возникновения ошибки мы перечислили? Нет, не все, но это самые распространенные, которые наиболее часто встречаются на практике.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 |
<?xml version="1.0" encoding="UTF-8"?> <report> <eeprom version="ENHANCED PBB/ЂB cor/dens v10.12" datetime=""></eeprom> <sn>015.15.01.002</sn> <file path="internalanalog.tar" type="tar"> <point> <x>-11,0000000</x> <y>1,6000000</y> </point> <point> <x>-0,0500000</x> <y>0,0000000</y> </point> </file> <file path="externaldensity.cor" type="cor"> <surface> <a0>94,5305710</a0> <a1>-0,0142365</a1> <a2>-0,0043975</a2> <a11>-0,0000980</a11> <a22>0,0001461</a22> <a12>-0,0000220</a12> <p>1,0000000</p> </surface> <surface> <a0>-266,8311768</a0> <a1>-3,8060381</a1> <a2>1,8994861</a2> <a11>0,0000000</a11> <a22>0,0000000</a22> <a12>0,0000000</a12> <p>3,0000000</p> </surface> <surface> <a0>0,0000000</a0> <a1>0,0000000</a1> <a2>0,0000000</a2> <a11>-0,0004314</a11> <a22>0,0000001</a22> <a12>0,0000000</a12> <p>6,0000000</p> </surface> <surface> <a0>-13,4954958</a0> <a1>0,0428321</a1> <a2>-0,0312684</a2> <a11>0,0000000</a11> <a22>0,0000000</a22> <a12>0,0000000</a12> <p>7,0000000</p> </surface> <surface> <a0>1000,0000000</a0> <a1>0,0000000</a1> <a2>100,0000000</a2> <a11>0,1000000</a11> <a22>10,0000000</a22> <a12>0,1000000</a12> <p>5,0000000</p> </surface> </file> <file path="internalpressure.tar" type="tar"> <point> <x>2360,0000000</x> <y>0,0000000</y> </point> <point> <x>3532,0000000</x> <y>58,4000015</y> </point> <point> <x>4547,0000000</x> <y>103,8000031</y> </point> <point> <x>5764,0000000</x> <y>158,6999969</y> </point> <point> <x>6877,0000000</x> <y>209,0000000</y> </point> <point> <x>7900,0000000</x> <y>255,1999969</y> </point> <point> <x>8982,0000000</x> <y>304,0000000</y> </point> <point> <x>10074,0000000</x> <y>352,7999878</y> </point> <point> <x>11149,0000000</x> <y>400,8999939</y> </point> </file> <file path="externaldensity.tar" type="tar"> <point> <x>0,8943808</x> <y>0,0000000</y> </point> <point> <x>1,0004297</x> <y>1,0000000</y> </point> <point> <x>1,0124259</x> <y>1,1160001</y> </point> <point> <x>1,0233793</x> <y>1,2240000</y> </point> <point> <x>1,0292079</x> <y>1,2840000</y> </point> <point> <x>1,0409085</x> <y>1,4030000</y> </point> <point> <x>1,0498325</x> <y>1,4930000</y> </point> <point> <x>1,0583036</x> <y>1,5800000</y> </point> <point> <x>1,0686287</x> <y>1,6900001</y> </point> <point> <x>1,0780404</x> <y>1,7860010</y> </point> <point> <x>1,0865008</x> <y>1,8940001</y> </point> <point> <x>1,0918074</x> <y>1,9540000</y> </point> </file> <file path="externalcoriol.tar" type="tar"> <point> <x>0,0000000</x> <y>0,0000000</y> </point> <point> <x>1,0423599</x> <y>8,8731651</y> </point> </file> <file path="externalrotate.tar" type="tar"> <point> <x>0,2771824</x> <y>0,0000000</y> </point> <point> <x>51,5987129</x> <y>-0,8832195</y> </point> <point> <x>102,9263687</x> <y>-2,8315117</y> </point> <point> <x>161,3097382</x> <y>-4,0044746</y> </point> <point> <x>203,9690857</x> <y>-3,2529044</y> </point> <point> <x>250,3599396</x> <y>-4,8435221</y> </point> <point> <x>302,4907227</x> <y>-6,9018602</y> </point> <point> <x>351,8223267</x> <y>-5,4620886</y> </point> <point> <x>396,1837158</x> <y>-6,5484858</y> </point> </file> <file path="internalrgr.tar" type="tar"> <point> <x>1,0000000</x> <y>0,0000000</y> </point> <point> <x>1,1160051</x> <y>-7,7440825</y> </point> <point> <x>1,2240053</x> <y>-4,7421026</y> </point> <point> <x>1,2839999</x> <y>-1,4837382</y> </point> <point> <x>1,4029999</x> <y>0,6799557</y> </point> <point> <x>1,4930004</x> <y>3,0734160</y> </point> <point> <x>1,5800005</x> <y>4,8079190</y> </point> <point> <x>1,6899979</x> <y>6,9035168</y> </point> <point> <x>1,7860079</x> <y>7,7395725</y> </point> <point> <x>1,8939825</x> <y>9,9293804</y> </point> <point> <x>1,9540000</x> <y>8,4871855</y> </point> </file> <file path="internalCorKRoP.tar" type="tar"> <point> <x>0,0000000</x> <y>1,0000000</y> </point> <point> <x>1,0000000</x> <y>1,0000000</y> </point> </file> </report> |
Итак, проблема решена. Оставляю сведения тем, кому это, возможно, пригодится.
Если план обмена новый (т.е. вы его создали в конфигураторе), то тогда, чтоб заработало, необходимо соблюсти следующие условия:
1. Одинаковое название плана обмена в конфигурациях и источнике, и приемнике.
2. Чтоб не использовался механизм РИБ, на стороне приемника должны быть загружены правила в нужный план обмена. Если обмен односторонний, то правила надо сделать пустыми, т.е. в конвертации убираем выгрузку всех объектов.
3. Необходимо, чтоб у пользователя, под которым делается обмен, были необходимые права доступа к папке, куда будут копироваться временные файлы при загрузке и выгрузке ответа. По умолчанию это виндовая папка C:WindowsTemp.
В моем случае, я никак не смог получить доступа к этой папке у админов (виртуализация серверов, доступ по RDP в ЦОД и т.д.). Поэтому, я в коде подменил папку для временных файлов.
Содержание:
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.
Специалист компании «Кодерлайн»
Айдар Фархутдинов