水晶报告 - 显示每个家庭的mtd ytd lytd

时间:2012-02-15 18:36:20

标签: sql visual-studio tsql crystal-reports

我的报告有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 个答案:

答案 0 :(得分:1)

创建这些公式字段并将其添加到“详细信息”部分。根据需要进行分组和总结。

//{@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