Ошибка преобразования данных XDTO: settingsVariant, anyType

1. etmarket 890 01.04.21 18:12 Сейчас в теме
Здравствуйте. Коллеги программисты, помогите разобраться с ошибкой.
В управляемой форме внешней обработки при попытке загрузить из файла структуру настроек в реквизит формы произвольного типа выпадает ошибка:

Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data-composition-system/schema}settingsVariant Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
{ВнешняяОбработка.МояОбработка.Форма.Форма.Форма(769)}: Если Не ОткрытьНаСервере(ВрПутьКФайлу,ОписаниеОшибки,ИмяТекущегоПользователя) Тогда Возврат Ложь; КонецЕсли;
{ВнешняяОбработка.МояОбработка.Форма.Форма.Форма(786)}: Если Не ОткрытьНаКлиенте(ПутьКФайлу,ОписаниеОшибки) Тогда

по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: v Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: Value Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data-composition-system/schema}settingsVariant Форма: Элемент Тип: {http://www.w3.org/2001/XMLSchema}anyType
Показать


Точное место ошибки - выход в клиент из сервера в процедуре ПриОткрытии->Инициализировать (стрелка на скрине кода).
Загружаю в реквизит структуру настроек, которая включает типы данных: Структура, Строка, СписокЗначений, НастройкиКомпоновкиДанных, СхемаКомпоновкиДанных.
Скрин в режиме отладки из кода модуля объекта, где происходит инициализация реквизита "СтруктураЗначенийПараметровНастройки" тоже приложил.
Заранее спасибо большое за ответ!

UPD:
Можно ли хранить в объекте на тонком клиенте тип данных СхемаКомпоновкиДанных?

P.S. Ответ нашел.
В управляемой форме источник доступных настроек для схемы компоновки данных на клиенте работать не может. Поэтому в управляемой форме нужно создавать источник доступных настроек для адреса схемы компоновки данных.
https://its.1c.ru/db/metod8dev#content:3480:hdoc

Пример решения проблемы на сайте: https://infostart.ru/1c/articles/703526/
Всем спасибо! Вопрос закрыт.
Прикрепленные файлы:
dvsidelnikov; +1 Ответить
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
5. erazh 01.04.21 21:49 Сейчас в теме
(1) Так ясно написано:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.

В процедуру ("ОткрытьНаСервере") приходят не те типы, которые для нее прописаны. Самое простое это посмотреть типы в отладчике перед вызовом этой процедуры. "ОписаниеОшибки" - явно текстовое, с двумя другими - не ясно, т.к. не виден код "ПолучитьИмяТекущегоПользователяНаСервере" и "ПолучитьНастройкуНаСервере".
Но скорее всего проблема в "ПолучитьНастройкуНаСервере" - она явно возвращает не текстовую строку.
etmarket; +1 Ответить
6. etmarket 890 02.04.21 00:15 Сейчас в теме
(5) "ПолучитьИмяТекущегоПользователяНаСервере" и "ПолучитьНастройкуНаСервере" работают без ошибок.
Корень проблемы в записи считанной из файла СтруктурыЗначений в реквизит формы "СтруктураЗначенийПараметровНастройки". Я выяснил простым комментированием инициализации этого реквизита при чтении файла.

А также всё прекрасно работает если отключить Десериализацию значения параметра типа "СхемаКомпоновки". То есть именно это поле в СтруктуреЗначений не возвращается корректно на клиент.
Прикрепленные файлы:
7. erazh 02.04.21 09:33 Сейчас в теме
(6) Я не знаю, что Вы там включаете/выключаете, но где на клиенте имеется тип "СхемаКомпоновкиДанных"? Ткните пальцем! Я вот не вижу такого.
Прикрепленные файлы:
8. etmarket 890 02.04.21 09:51 Сейчас в теме
(7) поэтому я и обновил пост:
P.S. Ответ нашел.
В управляемой форме источник доступных настроек для схемы компоновки данных на клиенте работать не может. Поэтому в управляемой форме нужно создавать источник доступных настроек для адреса схемы компоновки данных.
https://its.1c.ru/db/metod8dev#content:3480:hdoc

Пример решения проблемы на сайте: https://infostart.ru/1c/articles/703526/
Всем спасибо! Вопрос закрыт.
9. dvsidelnikov 48 02.04.21 10:17 Сейчас в теме
(1)
управляемой форме нужно создавать источник доступных настроек для адреса схемы к


Храни Бог людей, которые найдя решение своей проблемы не забывают поделится этим решением с сообществом.
2. dvsidelnikov 48 01.04.21 20:17 Сейчас в теме
А какая версия платформы? Сталкивался с ситуацией когда одна и та же схема на платформе 8.3.12 вызывает ошибку а на версии 8.3.17 открывается вот выдержка из письма в поддержку 1С:

При попытке открыть макет в конфигураторе (8.3.12.1924) вылетает ошибка:

Ошибка загрузки документа.
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: dataSet Форма: Элемент Тип: {http://v8.1c.ru/8.1/data-composition-system/schema}DataSet
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: {http://v8.1c.ru/8.1/data-composition-system/schema}useQueryGroupIfPossible Форма: Элемент Тип: {

Внимание! Внешняя ссылка - http__://www__.w3.org/2001/XMLSchema}anyType -> http__://www__.w3.org/2001/XMLSchema}anyType


Если использовать платформу 8.3.17.1851, то макет спокойно открывается и в пользовательском режиме при расчёте компенсации ошибок не возникает.
Показать
etmarket; +1 Ответить
3. etmarket 890 01.04.21 20:30 Сейчас в теме
4. dvsidelnikov 48 01.04.21 21:00 Сейчас в теме
(3)
8.3.17.1549
июль 2020 ... мне кажется есть смысл попробовать платформу посвежей.
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот