Crystal Reports - включить нулевые значения во все группы отчетов - PullRequest
0 голосов
/ 01 июля 2010

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

Например, если предположить, что вся база данных компаний - это CompanyA, CompanyB, CompanyC иCompanyD и данные о посещениях выглядят следующим образом (созданы с использованием внешнего объединения, чтобы все компании были включены)

Название компании Дата посещения
Компания A 10/05/10
Компания A 12/05/10
Компания A 18/06/10
Компания B 05/05/10
Компания C NULL
Компания D 21/04/10
Компания D 14/05/10
Компания D 02/ 06/10

Я хотел бы увидеть отчет

Месяц - апрель
CompanyA - NULL
CompanyB - NULL
CompanyC - NULL
CompanyD - 21/04/10

Месяц - май
CompanyA - 10/05/10
CompanyA - 12/05/10
CompanyB - 05/05/10
CompanyC - NULL
CompanyD - 14/05/10

Месяц - июнь
CompanyA - 18/06/10
CompanyB - NULL
CompanyC - NULL
CompanyD - 02/06/10

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

1 Ответ

0 голосов
/ 01 июля 2010

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

Ваша таблица индексов будет выглядеть так:

Месяц Компания
2010-01 Компания A
2010-01 Компания B
2010-01 Компания C
2010-01 Компания D
2010-02 Компания A
2010-02 Компания B
2010-02 Компания C
2010-02 Компания D
2010-03 Компания A
...

Редактировать
Поскольку это правильное объединение, вы будете видеть все 4 компании каждый месяц, независимо от того, есть ли у них данные. Кроме того, поскольку вы жестко программируете месяцы для таблицы, вам придется периодически обновлять свою индексную таблицу, но благодаря чудесам копирования, вставки и возврата назад вам придется делать это только каждые несколько столетий.

...