2013-07-26 28 views
0

我正在Crystal 2011中工作。我從Sage CRM數據庫(不確定它是否爲SQL)從一個表中提取數據。 的分組和排序應該如下:來自Crystal Reports 2011中Sage CRM數據的圖表

  1. 按日期(每月的多個日期,想按月份和只顯示過去12個月)
  2. 按發票類型,有三種出的7我使用

到目前爲止,我已經創建了兩個公式:

  • 選擇一個月的過去12個月,並改變年份和月份。

NumberVar monthValue := (month({table.CreatedDate})); 
if(DateDiff("m", {table.CreatedDate}, CurrentDate) < 13) then 
    cstr(year({table.CreatedDate}),0,"") + "-" + cstr(Monthname(month({table.createdDate}))) 
    else 
     "no" 

的沒有被選擇專家用來去除任何記錄是超過12月齡

  • 第二個公式,選擇發票類型和這一個是罰款

我的問題是日期沒有正確分組,而不是有以下名單

  • 2012年七月

    Inovices€3423
    支付€323

  • 2012年九月

    Inovices€3423
    付款€3234

  • 2012 - 10月

    支付€3423

    ,而不是我得到

  • 2012 - 8月

    Inovices€3423
    付款€323

  • 2012 - 12月

    Inovices€3423
    付款€3234

  • 2012 - 11月

    支付€3423

  • 2012 - 8月

    Inovices€3423
    支付€323

我意識到,日期排序這樣,因爲它按字母順序排列,但如何按年份和月份排序和分組並顯示y圖表中的耳朵月?

chart of accounts

正如你可以從圖中看到,日期是不是爲了和沒有正確分組。

我已重新啓動此報告很多次。我到目前爲止,然後它打破。

回答

0

好的,這是一個非常長的問題,但在閱讀No Stress Tech Guide AGAIN的第11章後,我更好地理解了報告如何處理數據並對其進行處理。 該報告現在分組爲月份,並排序爲僅顯示過去12個月的記錄。

那我做了什麼?

  1. 首先,我創建了一個空白報表
  2. 建立圖表,並使用高級選項卡,選擇數據
  3. 上的變化(創建日期,發票類型)和值顯示(總價值)
  4. 按下創建日期上的訂單按鈕並設置此部分將每月印刷
  5. 選擇專家並將創建日期forumla設置爲DateDiff(「m」,{table.CreatedDate},CurrentDate)< 13)(因此沒有外部公式需要
  6. 使用Select Expert只顯示我想要的發票類型

到目前爲止,這麼好,只需要稍微調整一下,現在這裏就是最終產品的樣子。 enter image description here