Имя: Пароль:
1C
1С v8
ХранилищеЗначения не записывается в Реквизит справочника
,
0 ВаликТР
 
01.07.14
17:40
Ребята, подскажите, в чем може быть дело?
Есть обработка, которая перед закрытием оповещает форму элемента справочника с Параметр["Компоновщик"] - тип "КомпоновщикКомпоновкиДанных"

Процедура ОбработкаОповещения(ИмяСобытия, Параметр, Источник)
    Если ИмяСобытия = "ЗаполнитьОбъектСправочника" тогда
        пар = Параметр["Компоновщик"];
        Комп = Новый ХранилищеЗначения(пар);
        СправочникОбъект.Компоновщик = Комп;
    КонецЕсли;
КонецПроцедуры

В отладчике "пар" - верное значение, а вот Комп.получить() не присваивает и выдает "Неопределено". И записать в реквизит не могу.
Что можете посоветовать?
1 РенеДекарт
 
01.07.14
17:52
В 1с нет типа "ХранилищеЗначения".
Только и всего ))
2 РенеДекарт
 
01.07.14
17:53
ХЗ - само по себе и тип, и данные. И записывать надо в него, а не "его".
3 РенеДекарт
 
01.07.14
17:54
+ (1) точнее, оно не переопределяется неявно.
Реквизит сам должен быть "хранилищем", тогда запишется.
4 ВаликТР
 
01.07.14
17:55
(2) Вроде делал как в примере синтаксиса. Как же тогда будет выглядеть мой код?
5 mikecool
 
01.07.14
17:55
(3) реквизит мб и строкой )
6 ВаликТР
 
01.07.14
17:56
(3) Реквизит "Компоновщик" - тип ХранилищеЗначения...
7 РенеДекарт
 
01.07.14
17:56
(5) хранилище в него не впишешь )
8 mikecool
 
01.07.14
17:56
(7) а если сериализовать?
9 shuhard
 
01.07.14
17:57
(0)[ СправочникОбъект.Компоновщик = Комп;]
попытка засунуть ХранилищеЗначения в реквизит иного типа бессмысленно
10 H A D G E H O G s
 
01.07.14
17:57
(6) У тебя Параметр["Компоновщик"] скорее всего несериализуемое значение.
11 РенеДекарт
 
01.07.14
17:57
(8) это другой процесс )
сериализовать и форму можно - а впиши форму в реквизит "напрямую"?
12 H A D G E H O G s
 
01.07.14
17:57
(8) Это РенеДекарт, из семейства дятловых МишельЛагранжей. Бесполезно.
13 H A D G E H O G s
 
01.07.14
17:59
(0)
Что говорит

Сообщить(ТипЗнч(Параметр["Компоновщик"]));

?
14 ВаликТР
 
01.07.14
18:01
(13) Тип "Компоновщик настроек компоновки данных"
15 H A D G E H O G s
 
01.07.14
18:04
(14) КомпоновщикНастроекКомпоновкиДанных (DataCompositionSettingsComposer)
Свойства:

Настройки (Settings)
ПользовательскиеНастройки (UserSettings)
ФиксированныеНастройки (FixedSettings)

Методы:

Восстановить (Refresh)
ЗагрузитьНастройки (LoadSettings)
ЗагрузитьПользовательскиеНастройки (LoadUserSettings)
ЗагрузитьФиксированныеНастройки (LoadFixedSettings)
Инициализировать (Initialize)
ПолучитьНастройки (GetSettings)
РазвернутьАвтоПоля (ExpandAutoFields)

Конструкторы:

По умолчанию

Описание:

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

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
См. также:

ОтчетОбъект, свойство КомпоновщикНастроек
ВнешнийОтчет, свойство КомпоновщикНастроек



Не вижу текста "Сериализуется"
16 H A D G E H O G s
 
01.07.14
18:04
НастройкиКомпоновкиДанных (DataCompositionSettings)

Доступность:

Тонкий клиент, веб-клиент, сервер, толстый клиент, внешнее соединение.
Сериализуется. Данный объект может быть сериализован в/из XML. Может использоваться в реквизитах управляемой формы. Данный объект может быть сериализован в/из XDTO. Тип XDTO, соответствующий данному объекту, определяется в пространстве имен {http://v8.1c.ru/8.1/data-composition-system/settings}. Имя типа XDTO: Settings.
17 H A D G E H O G s
 
01.07.14
18:05
Сохраняй Настройки Компоновщика
18 Lexey_
 
01.07.14
18:13
как вариант:
Компоновщик = Параметр["Компоновщик"];
Структура = Новый Структура("Настройки, ПользовательскиеНастройки, ФиксированныеНастройки");
ЗаполнитьЗначенияСвойств(Структура, Компоновщик);
ХЗ = Новый ХранилищеЗначения(Структура);
19 ВаликТР
 
01.07.14
18:29
(18) Все три значения заполняет "неопределено"
20 ВаликТР
 
01.07.14
18:32
(17) Так сохраняется
СправочникОбъект.Компоновщик = Новый ХранилищеЗначения(Параметр["Компоновщик"].Настройки);

но теперь не записываются элементы "ДоступныеПоляВыбора" и пр.
Хотя в отладчике Параметр["Компоновщик"].Настройки.ДоступныеПоляВыбора - есть  Элементы