Обработка для "реанимации" файлов обмена

Опубликовал Roman (drx211) в раздел Администрирование - Распределенная БД (УРИБ, УРБД)

Обработка замены недопустимых символов в файлах XML. Позволяет заменить или удалить недопустимые для XML символы, в частности - приводящие к появлению ошибки "Фатальная ошибка", при попытке загрузки подобного файла при помощи КД.

Обработка замены недопустимых символов в файлах XML. Позволяет заменить или удалить недопустимые для XML символы, в частности - приводящие к появлению ошибки "Фатальная ошибка", при попытке загрузки подобного файла при помощи КД.

Исправляет ошибки вида:

Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML(1143)}: Ошибка при вызове метода контекста (Прочитать): Ошибка разбора XML: - [3339,4482745]
Фатальная ошибка: 
Invalid character (Unicode: 0x5) SystemId: file://C:.....ConvData.xml

и подобных.

Для возможности работы с большими файлами использован метод последовательного доступа к данным. Использована выборка по 200 символов. Можно поэксперементировать - чтобы найти оптимальное значение, такие тесты не проводились. При тестировании, обработки на стандартном фале, сформированном КД(выгрузка 20 000 контрагентов из базы 7.7) - время обработки файла 7.5 сек.

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

Скачать файлы

Наименование Файл Версия Размер
Замена недопустимых символов
.epf 7,97Kb
21.06.11
219
.epf 7,97Kb 219 Скачать

См. также

Добавить вознаграждение
Комментарии
1. Сергей Начина (serg_gres) 126 23.06.11 17:55 Сейчас в теме
В экспорте вроде есть штатная функция удаления недопустимых символов. Она некорректно отрабатывает?
2. Roman (drx211) 28 25.06.11 23:05 Сейчас в теме
serg_gres пишет:

В экспорте вроде есть штатная функция удаления недопустимых символов. Она некорректно отрабатывает?

Да, есть. Отрабатывает вроде-бы корректно. Но на вопрос вы ответили сами - в ЭКСПОРТЕ. Т.е. - штатная функция не допускает попадания недопустимых символов в XML выгрузку. Но что делать если XML файл приходит к вам из 7.7, MS DAX или др. системы? Обработка предназначена для исправления именно уже существующего файла, т.е. то, что при формировании выгрузки можно проверить и скорректировать помещаемую строку - очевидно.
3. Maria Goncharova (maria-goncharova@mail.ru) 21.09.11 14:54 Сейчас в теме
4. Нина (нинас) 03.04.12 09:38 Сейчас в теме
5. Алексей (alexcne) 158 15.12.12 10:21 Сейчас в теме
Обработка - супер!!! Спасла мне двое суток времени. Есть небольшой косячок с копированием ОЧЕНЬ большого XML-файла, слегка "допилил напильником" под себя.
6. Сергей Начина (serg_gres) 126 05.02.13 15:39 Сейчас в теме
drx211, сегодня очень помогла обработка, именно из выгрузки 7.7.
Хотел плюс поставить, оказалось, что еще 1,5 года назад поставил :).
7. Igor Pastukhov (ipast) 21.06.13 12:16 Сейчас в теме