Crystal Reports - отображать Mtd Ytd Lytd на семью - PullRequest
1 голос
/ 15 февраля 2012

В моем отчете 3 семейства (сгруппированы по семействам). Мне нужно отобразить mtd, ytd, lytd по семействам AS:

household--mtd--ytd--lytd
family1     20   500 4000 
family2     300  70 6000 
family3     60  8880 977400 

Единственное поле даты называется paiddate (datetime.)

Если я использую IF statement datedif("yyyy",-1,currentdate() then...., я получаю нули для определенных семей из-за группировки.Я думаю, что мне может понадобиться формула выбора группы или новая группа для mtd, ytd и lytd?

1 Ответ

1 голос
/ 16 февраля 2012

Создайте эти поля формулы и добавьте их в раздел «Детали».Группируйте и суммируйте по желанию.

//{@MonthToDate}
If {table.paiddate} IN MonthToDate Then
  {table.revenue}
Else
  0

//{@YearToDate}
If {table.paiddate} IN YearToDate Then
  {table.revenue}
Else
  0

//{@OtherPeriodToDate}

//no clue what LYTD means; demonstrate a custom-range instead; substitute actual logic for Date(YYYY,MM,DD)
If {table.paiddate} IN Date(YYYY,MM,DD) TO Date(YYYY,MM,DD) Then
  {table.revenue}
Else
  0
...