Доработка 1С УПП для работы на Linux
Для доработки обработки миграции с УПП на ЗУП 3.1 я перенес срез УПП на рабочий компьютер под управлением Linux и сразу столкнулся с проблемами, т.к. разработчики УПП годами не решали проблемы совместимости, никак не вычищая использование COM-Объектов, например библиотек сеймейства MSXML. В частности, страдает обработка Универсальный Обмен Данными XML. Его-то я и буду сейчас лечить.
Ошибка при создании COM-объекта Msxml2.DOMDocument
Открываем модуль обработки Универсальный Обмен Данными XML, находим поиском функцию DOM_НовыйXMLДокумент(), вносим такие изменения:
Функция DOM_НовыйXMLДокумент() Экспорт
//Попытка
// XML = Новый COMОбъект("Msxml2.DOMDocument.4.0");
//Исключение
// Попытка
// XML = Новый COMОбъект("Msxml2.DOMDocument.3.0");
// Исключение
// ЗаписатьВПротоколВыполнения(4);
//
// УстановитьФлагОшибки(Истина);
// Возврат Неопределено;
// КонецПопытки;
//КонецПопытки;
XML = Новый DOMDocument;
Возврат XML;
КонецФункции // DOM_НовыйXMLДокумент()
Поиском в Интернете вы найдете много предположений что нужно переписывать много кода, используя ЗаписьXML. Как видите, на самом деле всё предельно просто. Аналогично, если требуется, можно исправить и в обработке Обмен Данными XML.
Кракозябры (ромбики) в протоколе ошибок выгрузки XML
В этом же модуле обработки произведите поиск и замену всех КодировкаТекста.ANSI на КодировкаТекста.UTF8