Ошибка в типовой обработке "Универсальный обмен данными в формате XML"

29.08.23

База данных - Обновление 1С

Исправление ошибки в типовой обработке "Универсальный обмен данными в формате XML".

Скачать исходный код

Наименование Файл Версия Размер
Ошибка в типовой обработке "Универсальный обмен данными в формате XML":
.cfe 26,33Kb
27
.cfe 26,33Kb 27 Скачать бесплатно

При обновлении на актуальный релиз типовой конфигурации "Зарплата и управление персоналом (3.1.27.51)" от 16.08.2023 была обнаружена ошибка в обработке  "Универсальный обмен данными в формате XML"

"errors": 
["{Обработка.УниверсальныйОбменДаннымиXML.Форма.УправляемаяФорма.Форма(1539)}: Ошибка при вызове конструктора (ДвоичныеДанные)",

"Файл не обнаружен 'C:\Users\USR1CV8\AppData\Local\Temp\v8_3F23_19e.xml'"]

Ошибка возникала при попытке загрузить данные через прямое подключение к базе. В саму новую обработку внесено много изменений, в частности переделана логика функции ВыполнитьВыгрузкуНаСервере(). Рассмотрим подробнее конструкцию, которая вызывает ошибку. Это код из обновленной обработки:

АдресФайлаДанных = "";
АдресФайлаДанных = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ОбъектДляСервера.ИмяФайлаОбмена), УникальныйИдентификатор);
УдалитьФайлы(ОбъектДляСервера.ИмяФайлаОбмена);
УдалитьФайлы(ОбъектДляСервера.ИмяФайлаПравилОбмена);
			
ОбъектДляСервера.Параметры.Очистить();
ЗначениеВРеквизитФормы(ОбъектДляСервера, "Объект");

А таким он был до изменений:

Если ЭтоКлиент И Не ПрямаяВыгрузка Тогда		
    АдресФайлаДанных = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(Объект.ИмяФайлаОбмена), УникальныйИдентификатор);
    УдалитьФайлы(Объект.ИмяФайлаОбмена);		
Иначе		
    АдресФайлаДанных = "";		
КонецЕсли;
	
Если ЭтоКлиент Тогда		
    УдалитьФайлы(ОбъектДляСервера.ИмяФайлаПравилОбмена);		
КонецЕсли;

Как видно в старой обработке установлены проверки по двум реквизитам:

1) ЭтоКлиент - Реквизит формы, Булевое значение, определяется дерективой компилятора веб-клиент это или нет. В обновленной форме этот реквизит вообще убрали.

2) ПрямаяВыгрузка - Так же реквизит формы. Показывает какой тип выгрузки мы используем, через файл обмена (Значение - "0") или через прямое подключение (Значение - "1").

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

Мой пример кода с исправлениями:

Если ПрямаяВыгрузка Тогда
    АдресФайлаДанных = "";
Иначе  
    АдресФайлаДанных = "";
    АдресФайлаДанных = ПоместитьВоВременноеХранилище(Новый ДвоичныеДанные(ОбъектДляСервера.ИмяФайлаОбмена), УникальныйИдентификатор);
    УдалитьФайлы(ОбъектДляСервера.ИмяФайлаОбмена);
    УдалитьФайлы(ОбъектДляСервера.ИмяФайлаПравилОбмена);
			
    ОбъектДляСервера.Параметры.Очистить();
    ЗначениеВРеквизитФормы(ОбъектДляСервера, "Объект");
КонецЕсли;

Надеюсь, кому-то поможет.

См. также

Обновление для КА 1.1, ЗУП 2.5, БУХ 2.0: НДС, ЕФС-1, Расчет страховых взносов, Мобилизация, Статистика, Электронные трудовые книжки, 2-НДФЛ, Регламентированная отчетность, Кадровый учет, Прослеживаемость импортных товаров

Зарплата Регламентированный учет и отчетность Кадровый учет Обновление 1С Платформа 1С v8.3 Сложные периодические расчеты 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Зарплата и Управление Персоналом 2.5 Бухгалтерский учет Налоговый учет Управленческий учет Акцизы ЕНВД ЕСН Земельный налог ИП, ПБОЮЛ, КФХ Налог на имущество Налог на прибыль НДС НДФЛ ФОМС, ЕФС Транспортный налог УСН ПСН (патентная система налогообложения) Платные (руб)

Обновления для конфигураций: КА 1.1; ЗУП 2.5; БУХ 2.0; КА 1.1 Комплексная автоматизация торговли алкогольной продукцией; КА 1.1 Комплексный учет сельскохозяйственного предприятия

19900 руб.

01.04.2020    141582    668    352    

233

Автоматическое подтверждение легальности обновления базы или как обновить 100 типовых баз 1С за 5 часов

DevOps и автоматизация разработки Обновление 1С Платформа 1С v8.3 Конфигурации 1cv8 1С:Бухгалтерия 3.0 1С:Зарплата и Управление Персоналом 3.x Абонемент ($m)

Расширение для конфигураций 1С для автоматического подтверждения легальности обновления и выполнения обработчиков обновления при пакетном автоматическом обновлении большого числа баз 1С. А также сам модуль обработки по автоматическому обновлению баз.

2 стартмани

08.05.2019    24546    56    VPanin56    26    

28

Инструмент для обновления расширения конфигурации

Обновление 1С Платформа 1С v8.3 Конфигурации 1cv8 Россия Абонемент ($m)

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

1 стартмани

02.05.2024    1027    2    chkurs    3    

6

Ссылочная константа содержит недопустимый ссылочный номер таблицы

Обновление 1С Платформа 1С v8.3 1С:Управление нашей фирмой 3.0 Россия Бесплатно (free)

На связи Сергей Скирдин, технический директор ИТ-интегратора «Белый код». Сегодня расскажу, как решить одну из проблем, с которой можно столкнуться при обновлении конфигурации 1С.

19.03.2024    1104    sergey.skirdin    4    

16

Скрипт для обновления базы с расширением из хранилища

Обновление 1С Платформа 1С v8.3 Бесплатно (free)

Небольшая оптимизация рабочего времени через скрипт обновления базы 1С с расширением из хранилища конфигураций.

22.01.2024    1326    ke.92@mail.ru    3    

25

Многопоточное обновление 1С: Управление холдингом

Обновление 1С 8.3.14 1С:Управление холдингом Абонемент ($m)

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

1 стартмани

10.01.2024    3351    saver77    18    

25

Не обновляется типовая конфигурация 1С через конфигуратор

Обновление 1С Платформа 1С v8.3 Россия Бесплатно (free)

Столкнулся с проблемой. Нужно было поднять до текущего релиза Розницу 2.3. Обновлял по старинке, через конфигуратор (база клиент-серверная). Указывал логин и пароль, ждал скачивания обновления и обновлял. Но после накатывания 5 релизов следующий устанавливаться не хотел, а точнее конфигуратор гордо говорил, что обновлений больше нет. Решение нашел здесь на форуме и хочу зафиксировать. Чтобы самому не забыть и передать опыт начинающим.

29.11.2023    1608    shestopalovpro    4    

7
Оставьте свое сообщение