|
УФ. ХранилищеЗначений. Проблема с записью |
☑ |
0
Krolik Bezobraznik
28.12.18
✎
11:10
|
Добрый день,
есть управляемая форма элемента справочника. У справочника есть ТЧ, а у ТЧ реквизиты один из которых имеет тип ХранилищеЗначение.
На Сервере заполняю несколько реквизитов, в том числе и реквизит с хранилищем, в него пишу массив.
Для этого использую алгоритм
МетаданныеТаблицы = Метаданные.ВнешниеИсточникиДанных.<ИмяИсточникаДанных>.Таблицы[ИмяSQLТаблицы];
КоллекцияРеквизитов = МетаданныеТаблицы.Поля;
ЭлементОбъект = ДанныеФормыВЗначение(Объект, Тип("СправочникОбъект.<ИмяСправочника>"));
ТЧШапка = ЭлементОбъект.Шапка;
ТЧШапка.Очистить();
КоллекцияРеквизитов = МетаданныеТаблицы.Поля;
Для каждого ЭлементКоллекции ИЗ КоллекцияРеквизитов Цикл
нСтрока = ТЧШапка.Добавить();
ЗаполнитьЗначенияСвойств(нСтрока, ЭлементКоллекции);
Если ЭлементКоллекции.РазрешитьNull Тогда
нСтрока.ИсточникЗаполнения = Перечисления.WMS_ИсточникЗаполненияПоляДокумента.НеЗаполнять;
КонецЕсли;
Если ЗначениеЗаполнено(ИмяКлюча) Тогда
нСтрока.ПолеКлюча = ИмяКлюча = ЭлементКоллекции.Имя;
нСтрока.ИсточникЗаполнения = Перечисления.WMS_ИсточникЗаполненияПоляДокумента.НеЗаполнять;
КонецЕсли;
ВремХранилище = Новый ХранилищеЗначения(ЭлементКоллекции.Тип.Типы(), Новый СжатиеДанных(9));
нСтрока.Типы = ВремХранилище;
КонецЦикла;
ЗначениеВДанныеФормы(ЭлементОбъект, Объект);
Отладчиком проверял. при заполнении строки данные в реквизит попадают. 100%
Затем при попытке получить из строки из хранилища массив 1С возвращает НЕОПРЕДЕЛЕНО.
Подозреваю что связано это с тем что реквизит с типом Хранилище значений не отображается на форме и потому при помещении значения в данные формы он не заполняется.
Как быть? Есть мысли?
|
|
1
palsergeich
28.12.18
✎
11:13
|
(0) Это очно не изза того что элемент не отображается.
|
|
2
palsergeich
28.12.18
✎
11:16
|
Есть подозрение что это изза того что при распоковке Типы хранят в себе ссылку на МетаданныеТаблицы
А их нет.
|
|
3
palsergeich
28.12.18
✎
11:18
|
Точнее ммылку на конкретный экземпляр МетаданныеТаблицы
|
|
4
Krolik Bezobraznik
28.12.18
✎
11:21
|
(2) Типы() возвращает массив, который я пишу в реквизит ТЧ.
|
|
5
palsergeich
28.12.18
✎
11:30
|
(4) Проблема не с типом Массив.
А с содержимым элементов массива
|
|
6
palsergeich
28.12.18
✎
11:31
|
Ради теста - запихни в массив простые строки и проверь.
Должно работать корректно и при распаковке - данные будут.
|
|