Нахождение разницы между столбцами в группе столбцов - PullRequest
0 голосов
/ 03 февраля 2019

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

Я искал сети для решений, но ничего, что до сих пор не работало.Я чувствую, что должно быть простое решение для этого, учитывая, что это то, что может быть сделано в запросе SQL без каких-либо усилий.Большинство решений предполагают, что у меня есть два отдельных поля, но это динамические поля с группой столбцов.

Dataset Row Samples
Type      Section  Cateogry Phase            Task             Total
Budget    Building Kitchen  Pre-Construction Cabinet Hardware $100 
Projected Building Kitchen  Pre-Construction Cabinet Hardware $220 

Report sample


           COL GROUP        This is the column i want
           Budget Projected Variance
+Buidling  $100   $220      -$120
+Kitchen  
+Pre-Con

РЕДАКТИРОВАТЬ: я пробовал нижеприведенное решение без успеха и уже посетил все ссылки, указанные во втором ответе.Может быть, мне чего-то не хватает, но в итоге я просто делал все в запросе SQL и не использовал группы столбцов.Это на 100% самое простое решение.Я очень удивлен, что нет простого способа ссылаться на отдельные столбцы в группе столбцов.Ниже может работать на других, но я просто не мог заставить их работать на меня.Не уверен почему.

Ответы [ 2 ]

0 голосов
/ 04 февраля 2019

Вы можете добавить дополнительный столбец внутри группы «Тип» (при условии, что это имя вашей группы столбцов).Установите Видимость столбца , чтобы скрыть столбец с помощью выражения, подобного

= IsNothing(Previous(Field!Type.Value, “Type”)

. Рассчитайте значения для этого столбца как

= Previous(Sum(Fields!Total.Value), “Type”) – Sum(Fields!Total.Value)

. Это должно вычислить разницу междузначения предыдущего типа и текущего типа, и показывают только этот столбец для типа «Проекция» (когда равен предыдущего типа).

0 голосов
/ 03 февраля 2019

В матрице вы можете использовать промежуточные итоги группы, чтобы достичь этого, вам нужно только перезаписать операцию SUM выражением, которое вычитает из значений.Существует множество ссылок, в которых упоминается, как сделать то или иное, что может вам помочь:

...