Содержание:
1. XML – расширяемый язык разметки
2. Устранение Ошибки разбора XML в 1С
3. «Обход» Ошибки разбора XML в 1С
1. XML – расширяемый язык разметки
В данной статье речь пойдёт о причинах возникновения фатальной ошибки «Ошибка разбора XML» и способах устранения данной неполадки. Также будет дана инструкция не по устранению, но «обходу» ошибки, то есть действиям на опережение.
XML (с английского – extensible markup language – расширяемый язык разметки) – это язык разметки, который рекомендует Консорциум Всемирной паутины. Обычно язык разметки XML служит для описания документации, соответствующего типа, а также описывает действия соответствующих процессоров. Расширяемый язык разметки имеет довольно простой синтаксис, поэтому используется по всему миру, чтобы создавать и обрабатывать документацию программным способом. Он создавался именно для использования в Интернете. XML назвали именно расширяемым языком разметки, так как в нём нет фиксации разметки, которая содержится внутри документа, а именно: программист может создавать любую разметку, а ограничения будут встречаться лишь в синтаксисе.
2. Устранение Ошибки разбора XML в 1С
«Ошибка разбора XML» возникает исключительно в тонком клиенте 1С. Также стоит отметить, что «Ошибка разбора XML» также довольна схожа с ошибкой по формату потока, которая возникает в толстом клиенте. Обычно в 1С «Ошибка разбора XML» возникает по причине наличия кэша метаданных. И если очистить кэш, то ошибка будет устранена. Выглядит окно с ошибкой, а также окно с комментариями от технической поддержки следующим образом:
Рис. 1 Окно Ошибки разбора XML в 1С
XML данные читаются по потокам, так что в каждый из моментов времени объект «сосредоточен» в некотором узле XML. Из-за этого также может возникать фатальная ошибка «Ошибка разбора XML». Для того чтобы её устранить, можно вызвать функцию «ИсключениеЧтенияXml», как показано на скриншоте примера ниже:
Рис. 2 Вызов функции ИсключениеЧтенияXML для устранения Ошибки разбора XML в 1С
3. «Обход» Ошибки разбора XML в 1С
Данные два способа (очистка кэша метаданных и функция «ИсключениеЧтенияXml») – не все возможные варианты устранения ошибки разбора XML. Далее рассмотрим нестандартный подход, который позволит избежать ошибки еще до её возникновения.
Для наглядности будем работать в конфигурации 1С:Бухгалтерия предприятия, одной из наиболее распространенных программ фирмы 1С. У многих людей, которые пользуются программой 1С:Отчётность появляются неполадки при попытках открыть данные/файлы от налоговой. Чтобы открыть такой файл повторяем следующие действия:
· Переходим по пути: «Настройки 1С:Отчётности → Журнал обмена с контролирующими органами», как показано на скриншоте ниже:
Рис. 3 Настройка 1С Отчетности
· Далее кликаем на «Запросы» и выделяем ту выписку, которую не было возможности открыть из-за ошибки, как продемонстрировано на скриншоте ниже:
Рис. 4 Выбор выписки с Ошибкой разбора XML в 1С
· Обращаем внимание на стадию отправки, которая располагается внизу этого сообщения, и кликаем два раза на зелёный круг:
Рис. 5 Стадия отправки документа с Ошибкой разбора XML в 1С
· Появляется транспортное сообщение, в нём кликаем на «Выгрузить» и выбираем папку, куда необходимо провести выгрузку, после чего сохраняем данный файл. Пробуем открыть его, при помощи любого из графических редакторов, который может поддерживать формат PDF, как показано на скриншоте ниже:
Рис. 6 Результат обхода Ошибки разбора XML в 1С
· Всё успешно открылось, а ошибка даже не успела возникнуть.
Специалист компании «Кодерлайн»
Айдар Фархутдинов
07.05.2019
Способ «обхода» ошибки, «Разбора XML- [1,1]» в 1с Отчетности. На примере конфигурации «Бухгалтерия предприятия» (ред. 3.0)
На данной момент, у пользователей 1с Отчетности, возникают проблемы, при открытие файлов из налоговой. Для того чтобы открыть файл нужно сделать следующее:
Рис.1-Ошибка
1.Для того чтобы, «обойти» данную ошибку, заходим:
Настройки 1c Отчетности – Журнал обмена с контролирующими органами
Рис. 2- Отчетность
2.После того, как «зашли» во вкладку « Журнал обмена с контролирующими органами», нажимаем : Запросы — выделяем справку или выписку которая не открывается (это делается одним нажатием левой кнопкой мыши)
Рис. 3- Журнал обмена
3.Находим внизу, стадию отправки, данного транспортного сообщения и нажимаем на предпоследний зеленый кружок, двойным щелчком «мыши».
Рис. 4 -Стадия отправки
4. Выходит транспортное сообщение, в котором нажимаем, «выгрузить», после чего выбираете папку, куда хотите выгрузить — сохраняете файл и открываете его через любой графический редактор, который сможет открыть pdf формат.
Рис. 5 -Выгрузка
Автор статьи
Сафаров Ильдар. Специалист Линии консультаций
Возврат к списку
28.03.19 — 14:50
Помогите идеями.
Конфа на базе УТ 10.3, релиза 10.3.51.1
Платформа 8.2.18.109
На разных раб. местах 2 кассы ШтрихЛайт 01Ф.
Последние двайвера Штриха, последняя обработка ККТ с передачей данных 2.30
Все давно работает без изменений, после последнено обновления на 10.3.51.1 пару дней все отлично работало, как всегда
Вдруг, сегодня выясняется, что ТОЛЬКО НА ТЕХ рабочих местах, куда подключены КАССЫ
— при попытке в базе отрыть список кассовых смен
— при попытке зайти в любой документ Кассовая смена
— при обращении к параметрам ККМ в настройках торг.об.
вылезает окно, которое просто неотловить в отладчике
——————————
Ошибка разбора XML: -[1,215]
Фатальная ошибка:
Operation and ending tag mismatch: isChrome line 0 and leftMargin
Завершить работу
——————————
Коннект с кассой есть, т.к. можно сделать X-отчет без гашения.
Остальное кончается ошибкой, т.к. упирается в открытие кассовых смен и вылет по ошибке.
На других компьютерах, где кассы не подключались, все открывается, никаких ошибок, вот только кассы не подключены.
В списке кассовых смен видно, что на одной кассе вчера смена была закрыта, на другом открыта и осталась незакрытой.
Закрыть ее без работы с кассой на других раб.местах, естественно невозможно.
С помощью групповой обработки посмотрел список всех кассовых смен с 17-го, никаких проблем в реквизитах не обнаружил.
Касса, сама по себе живая и печатает из 1с x-отчет.
4 — 28.03.19 — 16:22
(0) проверьте работу на этой обработке http://catalog.mista.ru/public/590993/?ref=1050 , для тестирования она бесплатна.
Если чек распечатается, то проблема в конфигурации и типовой обработке ,если не распечатает, то проблема в оборудовании.
Vstur
5 — 28.03.19 — 18:33
проблема….не в том, и не в другом.
на этих двух местах удалил базы из списка, заново прописал, и все заработало.
значит….кэш….но именно на двух машинах с кассами
|
barracuda1991 1 / 1 / 1 Регистрация: 30.07.2015 Сообщений: 121 |
||||
|
1 |
||||
|
1C 8.x 30.11.2018, 10:14. Показов 14152. Ответов 4 Метки нет (Все метки)
Добрый день. Помогите пожалуйста: при попытке прочитать XML выпадает ошибка {Обработка.ЗагрузкаXML.Форма.Форма.Форма(12)}: Ошибка при вызове метода контекста (ПрочитатьXML) При этом сам файл, если открыть в браузере, выглядит без структуры (во вложении файл «Проблемный XML»). Кусок кода 1С:
Миниатюры
__________________
0 |
|
1 / 1 / 1 Регистрация: 30.07.2015 Сообщений: 121 |
|
|
30.11.2018, 12:02 [ТС] |
2 |
|
Проблема оказалась в немецком умлауте. Только как мне их исправить перед чтением XML? Или это пользователю нужно менять кодировку вручную? Миниатюры
0 |
|
1785 / 1209 / 438 Регистрация: 16.01.2015 Сообщений: 5,322 |
|
|
30.11.2018, 14:26 |
3 |
|
Решениеbarracuda1991, Не спец. Но вообще странно. Тег Description — описание. По идеи xml должно быть по барабану что там внутри. Что касается самой проблемы. Пусть либо в описании используют диграфы вместо умляут (дойч язык позволяет такую замену) Либо колдуйте заменой строки или рег выражениями над файлом заменяя такие буквы
1 |
|
barracuda1991 1 / 1 / 1 Регистрация: 30.07.2015 Сообщений: 121 |
||||
|
30.11.2018, 18:56 [ТС] |
4 |
|||
|
Спасибо, заменил этот умлаут путем СтрЗаменить, но при последующем чтении файла XML все русские буквы превратились в кракозябры, может не ту кодировку ставлю?
Миниатюры
0 |
|
1785 / 1209 / 438 Регистрация: 16.01.2015 Сообщений: 5,322 |
|
|
30.11.2018, 19:07 |
5 |
|
Конечно не та кодировка. Вообще в исходном файле вначале вроде должна указываться родная кодировка
0 |
Сообщение было отмечено barracuda1991 как решение