Имя: Пароль:
1C
 
Соответствие с ТЗ в качестве значения не передается на Клиента УФ - почему?
0 Живой Ископаемый
 
23.10.15
12:10
1. Ничего не выйдет 100% (1)
2. Есть способ, сейчас расскажу 0% (0)
Всего мнений: 1

Есть необходимость иметь на клиенте, в УФ кэш.

можно было бы хранить вообще в ТЗ, которая кстати с сервера на клиент передается (о чем написано в СП), но на клиенте не работает метод НайтиСтроки(при чем в СП написано вообще, что он на клиенте не работает, но в отладчике я убеждаюсь, что он все-таки работает, но возвращает всегда пустой массив), поэтому сама ТЗ в качестве кэша меня не удовлетворяет.
Пытаюсь заюзать в качестве кэша соответсвие. В качестве Ключа - ссылочный тип (справочник), в качестве значения - маленькая тз из одной-трех строк. На сервере все это заполняется, как только пытаюсь передать на клиента, получаю ошибку:

Ошибка отображения типов:
Отсутсвует отображение для типа ' {http://v8.1c.ru/8.1/data/core}ValueTable'



При нажатии на кнопку "ПОДРОБНО...". получаю такое:



{Справочник.Контрагенты.Форма.ФормаСписка.Форма(1902)}: Ошибка при вызове метода контекста (ЗаполнитьКэшКонтИнфы)
        КэшКонтактнойИнфыКЛ = ЗаполнитьКэшКонтИнфы();
по причине:
Ошибка передачи данных между клиентом и сервером. Значение недопустимого типа.
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: ret    Форма: Элемент    Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: pair    Форма: Элемент    Тип: {http://v8.1c.ru/8.1/data/core}KeyAndValue
по причине:
Ошибка преобразования данных XDTO:
НачалоСвойства: Value    Форма: Элемент    Тип: {http://www.w3.org/2001/XMLSchema}anyType
по причине:
Ошибка отображения типов:
Отсутствует отображение для типа' {http://v8.1c.ru/8.1/data/core}ValueTable'

Если в качестве значения в соответветсвие я помещаю например строку. то на клиента все норм. передается...


Есть идеи, как мне справиться со всем этим?

8.2.19.130, если это важно, на другой релиз возможности перейти нет. :(
1 Timon1405
 
23.10.15
12:15
передавать массив массивов?
2 Рэйв
 
23.10.15
12:16
Массив структур.
3 Рэйв
 
23.10.15
12:17
Функция РазложитьТЗ(ТЗ) Экспорт
    мТЗ=Новый Массив;
    
    Для каждого Стр Из ТЗ Цикл
        струкСтрока=Новый Структура;
        Для каждого Кол Из ТЗ.Колонки Цикл
            СтрукСтрока.Вставить(Кол.Имя,Стр[Кол.Имя]);
        КонецЦикла;    
        мТЗ.Добавить(струкСтрока);
    КонецЦикла;
    
    Возврат мТЗ
    
КонецФункции
4 Рэйв
 
23.10.15
12:17
Обходится на клиенте так же как ТЗ
5 Живой Ископаемый
 
23.10.15
12:19
2(3) мДа? Интересно, сейчас попробую, спасибо
6 ks_83
 
23.10.15
12:23
ТЗ на клиент не передается. Ее можно в загрузить ДанныеФормыКоллекция.

Ничего не выйдет
7 Живой Ископаемый
 
23.10.15
12:32
да, точно, если сама ТЗ, то она меняет свой тип на ДанныеФормаКоллекция, и это конечно объясняет почему она не меняет, когда является значением соответствия.
Ладно, пробую с массивом структур