В продолжении темы
v8: Знатокам СКД. Расшифровка-2 (сиквел)
Постановка задачи следующая:
Строится отчет "Динамика цен за период" через набор данных "Объект".
Таблица содержит поля Номенклатура, Период, Цена - ресурс.
Отчет группируется через таблицу где строки это Номенклатура а колонки это Период, на пересечении ресурс- Цена. В качестве расшифровки ресурса нужно открывать пользователю документ который собственно эту цену установил, в алгоритме расшифровки значение цены знать необходимо.
У меня возникла проблема следующего характера:
Если в схеме для поля "Цена" явно не указывать ТипЗначения - то расшифровка работает без проблем.
ПолеРасшифровки = ДанныеРасшифровки.Элементы[157].ПолучитьПоля()[0];
ЗначениеРасшифровки = ПолеРасшифровки.Значение;
Но при этом тогда не получится накладывать отборы по "Цене" т.к. в качестве правого значение можно выбирать только поля компоновки.
Если же для "Цены" указать явно тип Число , то тогда ЗначениеРасшифровки возвращает Null.
За вариант предложенный в предыдущем посте fisher-у огромный респект но увы он мне не подходит т.к алгоритм расшифровки еще должен учитывать значения полей группировок для конкретной ячейки.
Да, все прекрасно работает но только в этом случае в расшифровке будет лежать именно значение самого поля т.е. число а не ЭлементРасшифровкиКомпоновкиДанныхПоля через которое получаем значение полей родителей, как его получить и тем более передать это значение при выводе макета поля я ума не приложу.
Вобщем я выкрутился через дублирования поля "Цена" в наборе данных. Для "Дубля" указал заголовок Цена, явно указал тип и в качестве ограничения Поля оставил только "условие", для Поля цены на оборот тип не указал но запретил выбирать в условиях.
Но по мне это как-то кривовато, может всетаки есть более кашерный способ, а бразы?