![]() |
![]() |
![]() |
|
v8: Знатокам СКД. Расшифровка-3 (сиквел) | ☑ | ||
---|---|---|---|---|
0
SYS-eva
26.09.13
✎
15:29
|
В продолжении темы v8: Знатокам СКД. Расшифровка-2 (сиквел)
Постановка задачи следующая: Строится отчет "Динамика цен за период" через набор данных "Объект". Таблица содержит поля Номенклатура, Период, Цена - ресурс. Отчет группируется через таблицу где строки это Номенклатура а колонки это Период, на пересечении ресурс- Цена. В качестве расшифровки ресурса нужно открывать пользователю документ который собственно эту цену установил, в алгоритме расшифровки значение цены знать необходимо. У меня возникла проблема следующего характера: Если в схеме для поля "Цена" явно не указывать ТипЗначения - то расшифровка работает без проблем. ПолеРасшифровки = ДанныеРасшифровки.Элементы[157].ПолучитьПоля()[0]; ЗначениеРасшифровки = ПолеРасшифровки.Значение; Но при этом тогда не получится накладывать отборы по "Цене" т.к. в качестве правого значение можно выбирать только поля компоновки. Если же для "Цены" указать явно тип Число , то тогда ЗначениеРасшифровки возвращает Null. За вариант предложенный в предыдущем посте fisher-у огромный респект но увы он мне не подходит т.к алгоритм расшифровки еще должен учитывать значения полей группировок для конкретной ячейки. Да, все прекрасно работает но только в этом случае в расшифровке будет лежать именно значение самого поля т.е. число а не ЭлементРасшифровкиКомпоновкиДанныхПоля через которое получаем значение полей родителей, как его получить и тем более передать это значение при выводе макета поля я ума не приложу. Вобщем я выкрутился через дублирования поля "Цена" в наборе данных. Для "Дубля" указал заголовок Цена, явно указал тип и в качестве ограничения Поля оставил только "условие", для Поля цены на оборот тип не указал но запретил выбирать в условиях. Но по мне это как-то кривовато, может всетаки есть более кашерный способ, а бразы? |
|||
1
PiVa123
26.09.13
✎
15:33
|
Для поля ресурса, можно просто указать свой макет с указанием на нем расшифровки, тогда для ресурса расшифровка будет работать без проблем.
Соответственно узнать родителей, там и укажет и номенклатуру и период. |
|||
2
SYS-eva
26.09.13
✎
15:44
|
PiVa123 бро - и что мне указать в этом макете в качестве значения расшифровки? Само поле? - я же уже выше написал что в этом случае будет просто значение а не ЭлементРасшифровкиКомпоновкиДанныхПоля - или ты значешь как туда воткнуть именно ЭлементРасшифровкиКомпоновкиДанныхПоля?
|
|||
3
PiVa123
26.09.13
✎
15:50
|
(2) Да, как ни странно, само поле, только указать в расшифровке, типа, "ЦенаРасшифровка", а в появившемся поле расшифровки поля, указать поле и его же в значении
|
|||
4
SYS-eva
26.09.13
✎
15:58
|
(3)БРО от всей души спасибо, реально не знал что так можно))
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |