Имя: Пароль:
1C
1С v8
Проблема совместимости XDTO 8.3 и 8.1
0 Rom_Kat
 
11.07.20
21:34
В 8.3 поднял Web-сервис и под него xdto-пакет. Веб-сервис принимать должен структуру на основе xdto-пакета. Сделал Источником пустышку на 8.3 и подтянул wsdl в WSCсылку.

Собрал тестовый XDTO и отправил в WEbсервис. Webсервис принял как родное и сделал все нужные дела ну и ответил, что все отлично.

Но рабочая база от куда должны поступать данные живет в 8.1. И вот. WSссылку также запилил. Код для теста закинул аналогичный, но при выполнении метода ОбъектXDTO.Проверить() получаю ошибку.

{Форма.Форма(149)}: Ошибка при вызове метода контекста (Проверить): Ошибка проверки данных XDTO:
Структура объекта не соответствует типу: {http://www.itslabs/mdtl-add_acceptance/}ДокПриёмка
Проверка свойства 'Грузоотправитель':
    форма: Элемент
    имя: {http://www.itslabs/mdtl-add_acceptance/}Грузоотправитель
    тип: {http://www.itslabs/mdtl-add_acceptance/}ОрганизацииМДЛП
Не установлено значение одного из следующих свойств: Организация
    ПакетДокПриёмка.Проверить();


А ведь в 8.3 все прокатывало.

И что делать как править? Понизить совместимость до 8.1 не предлагать.
1 palsergeich
 
12.07.20
03:03
(0) как xdto переносил?
Если импортом файла - то печаль беда, при импорте херятся некоторые свойства.
Нормально схема переносится только через сравнение : объединение.
Просмотри свойства поля, на которое ругается в обоих конфигах, и устрани отличия
2 Rom_Kat
 
12.07.20
03:22
(1)не переносил. WsСсылку использую
3 Rom_Kat
 
12.07.20
03:27
(1) сравнить объединить 8.3 с 8.1 не получится
но свойства одинаковые. В 8.1 Пакет проверяется кнопкой нормально, а вот сформированный объект на этом пакете ошибку выдаёт
4 Rom_Kat
 
13.07.20
23:33
В общем проблема не решилась. Обошёл формирование из объектаXDTO строки xml и передачей в вебсервис этой строки. В общем малой кровью обошлось.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.