2010-07-17 44 views
1

我可能會很愚蠢地問這個問題。但我真的不知道該怎麼做。 我的老闆想要得到一份水晶報告,他想要2種格式。 這意味着他希望頁面1上的摘要頁面具有另一格式的頁面2上的一種格式和詳細信息頁面。 所以我一直在想兩種方法。 第一種方法是在1個水晶報告中獲得2種格式。我從來沒有做過,我無法在網上找到它。 第二種方法是做2個水晶報告並將它們合併。我不知道如何做到這一點。 那麼有人可以幫忙嗎?可能b我的兩種方式都可能是錯誤的。 有什麼建議嗎?1個水晶報告中的2種格式

+0

威廉嗨, 你能給我們更多的一些細節 - 例如,他要在一個頁面上什麼樣的總結:剛總計或小計的羣體? – 2010-07-19 09:54:08

+0

嗨..其實我想到了使用子報表的解決方案。並在新頁面上啓動子報表。隱藏子報表的頁碼和邊框,看起來就像是主報表的延續。只是一個問題,當我點擊子報表時,它會出現在新標籤上。如果我可以禁用,我完成了。無論如何要做到這一點? tkz btw .. – william 2010-07-20 07:27:20

+0

我原本打算建議將總計放在報表頭中,如果它可以用來滿足您的要求,比插入子報表簡單得多。但是,現在您已經努力構建子報表...... – 2010-07-20 10:13:09

回答

0

好的。我是那個問問題的人。我知道現在該做什麼。爲了別人的喜好(我這樣的初學者),我分享了我的經驗。
Crystal報告不允許您在1份報告中使用2種格式。
Cyrstal報告不允許您同時導出2個不同的報告(不是子報告)。
所以..我會這樣做。
首先,如果我想要得到2個不同的報告,例如第一頁上的摘要頁面和第二頁上的詳細信息頁面,我將使用子報表。但是當你點擊它時,子報表會將你重定向到那個報表。
我想要那個。
因此,我將覆蓋與沒有背景的文本對象的子報表。
但我無法調整該文本對象的高度。
我會用這個
IEnumerator ie = mycrystalreport.Section1.ReportObjects.GetEnumerator();

 ie.Reset(); 

     while (ie.MoveNext()) 

      if (ie.Current != null && ie.Current.GetType().ToString().Equals("CrystalDecisions.CrystalReports.Engine.TextObject")) 

      { 

       CrystalDecisions.CrystalReports.Engine.TextObject to = (CrystalDecisions.CrystalReports.Engine.TextObject)ie.Current; 

       if (to.Name == "my_text_object ") 

        to.Height = "the number you want. might need to calculate"; 



      } 

好運

2

我能想到的(根據紀要要求的複雜性)的方法是:

  1. 包含在報告標題中值總和,與第一次報告組的開始分頁符。
  2. 在報告標題部分中包含一個包含摘要詳細信息的交叉表。
  3. 在報告標題部分插入一個子報告。