ссылка на поля отчета в Birt - PullRequest
0 голосов
/ 10 июня 2019

Мой отчет birt содержит три таблицы, с разными наборами данных / источниками SQL, конечно Во-первых, есть поле агрегирования (SUM), это вызов "total_materias_primas" Во втором есть еще один агрегат, который называется "total_aditivos" И, наконец, в третьем мне нужно агрегировать (SUM) по одному полю, а затем снова суммировать мои последние "total_materias_primas" и "total_aditivos" Я не знаю, как на «total_materias_primas» и «total_aditivos» можно ссылаться в третьей таблице / наборе данных

Спасибо

report["total_materias_primas"] /* no result */
record["total_materias_primas"] /* no result */
row["total_materias_primas"]    /* no result */

без кода

1 Ответ

0 голосов
/ 11 июня 2019

Итак, вы хотите вычислить итоговую сводку таблиц 1-3, верно?

Вы можете использовать такую ​​структуру:

Table 1 (DS 1)
  Header Row
  Detail Row
  Footer Row (all columns merged)
    Table 2 (DS 2)
      Header Row
      Detail Row
      Footer Row (all columns merged)
        Table 3 (DS 3)
          Header Row
          Detail Row
          Footer Row
            Cell
              Label "Total 1-3"
                Data "Total_1_3"

Скажем, ваш итог для таблицы 3 равенназывается "всего3".Добавьте привязку для таблицы 3 с именем «Total_1_3» с выражением

row["total3"] + row._outer["total_aditivos"] + row._outer._outer["total_materias_primas"].

В структуре вложенных таблиц / списков row._outer для доступа к строке внешнего набора данных.Обычно он используется в отчетах с основными данными.

В вашем случае это на самом деле не отчет с основными данными, но мы используем эту идею.

В другом решении без вложения таблиц будет использоватьсяпеременные отчета.Установите три переменные отчета в нижних колонтитулах таблицы 1 - 3, затем используйте их ниже.

...