數(shù)據(jù)帶中的交叉表報(bào)表
Stimulsoft是白俄羅斯一家報(bào)表控件廠商,該商家一直專注于報(bào)表控件的研發(fā)與創(chuàng)新,是報(bào)表控件行業(yè)的領(lǐng)導(dǎo)者。Stimulsoft 經(jīng)過(guò)多年的努力,終于實(shí)現(xiàn)了更加簡(jiǎn)單的設(shè)計(jì)報(bào)表,數(shù)據(jù)驅(qū)動(dòng)更快的應(yīng)用程序,更加簡(jiǎn)便的應(yīng)用新的技術(shù),極大程度上的減少了開發(fā)人員的工作量,提高了工作的效率。
如果將 Cross-Tab 組件置于 DataBand 中,那么在設(shè)計(jì)報(bào)表時(shí),該組件將作為 DataBand 的一部分構(gòu)建。由于置于 DataBand 中的 Cross-Tab 組件是作為 DataBand 的一個(gè)元素設(shè)計(jì)的,因此在設(shè)計(jì)報(bào)表時(shí),該組件的打印次數(shù)將與 DataBand 的打印次數(shù)相同。請(qǐng)看一個(gè)在 DataBand 中使用 Cross-Tab 構(gòu)建報(bào)表的示例。在此示例中,Cross-Tab 將顯示 "主-詳細(xì) "報(bào)告中的詳細(xì)條目。執(zhí)行以下步驟,使用 DataBand 中的 Cross-Tab 創(chuàng)建報(bào)告:
1. 運(yùn)行設(shè)計(jì)器;
2. 連接數(shù)據(jù):
2.1. 創(chuàng)建新連接;
2.2. 創(chuàng)建新數(shù)據(jù);
3. 創(chuàng)建數(shù)據(jù)源之間的關(guān)系。如果未創(chuàng)建關(guān)系和/或未為明細(xì)數(shù)據(jù)源填寫關(guān)系屬性,則不會(huì)為每個(gè)主條目輸出所有明細(xì)條目;
4. 在報(bào)告模板的一個(gè)頁(yè)面上放置兩個(gè)數(shù)據(jù)帶;
5. 編輯 DataBand1 和 DataBand2:
5.1 垂直對(duì)齊數(shù)據(jù)帶;
5.2 更改所需屬性的值。例如,DataBand1 是主-明細(xì)報(bào)告中的主組件,如果您希望在任何情況下打印主條目,即使明細(xì)條目不可用,則將如果明細(xì)為空,則打印屬性設(shè)置為 true。對(duì)于作為主-明細(xì)報(bào)表中明細(xì)組件的 DataBand2,如果需要縮小該條帶,請(qǐng)將 CanShrink 屬性設(shè)置為 true;
5.3 更改 DataBand 的背景顏色;
5.4 如有必要,設(shè)置數(shù)據(jù)帶的邊框;
6. 為數(shù)據(jù)帶指定數(shù)據(jù)源,并分配主組件。在我們的示例中,主組件是上層 DataBand1,因此在下層 DataBand2 的數(shù)據(jù)設(shè)置對(duì)話框的主組件選項(xiàng)卡中指定 DataBand1 為主組件;
7. 填寫數(shù)據(jù)帶的數(shù)據(jù)關(guān)系屬性,即詳細(xì)組件,在我們的例子中就是數(shù)據(jù)帶 2:
8. 將文本組件與表達(dá)式放在一起。其中表達(dá)式是對(duì)數(shù)據(jù)字段的引用。例如:DataBand1 即主組件,將文本組件與 {Categories.CategoryName} 表達(dá)式放在一起;
9. 編輯 DataBand 中的文本和文本組件:
9.1. 將文本組件拖動(dòng)到 DataBand 中需要的位置;
9.2. 對(duì)齊文本組件中的文本
9.3. 更改所需的屬性值。例如,如果希望對(duì)文本進(jìn)行包邊,則將 "Word Wrap(文字包邊)"屬性設(shè)置為 true;
9.4. 根據(jù)需要設(shè)置文本組件的邊框
9.5. 更改邊框顏色
10. 將 Cross-Tab 組件放入 DataBand 中。在本例中,Cross-Tab 組件將位于 DataBand2 上,即報(bào)告的詳細(xì)組件。
11. 編輯交叉標(biāo)簽組件
11.1 更改 Cross-Tab 屬性的值。例如,如果希望縮小 Cross-Tab 組件,則將 Can Shrink 屬性設(shè)置為 true;
12. 例如,使用數(shù)據(jù)源指定 Cross-Tab 組件帶的數(shù)據(jù)源:
13. 調(diào)用交叉表設(shè)計(jì)器,例如選擇交叉表組件上下文菜單中的編輯...(設(shè)計(jì)...)。
- 數(shù)據(jù)源字段。該字段顯示所選數(shù)據(jù)源的數(shù)據(jù)列;
- 列字段。該字段顯示數(shù)據(jù)源的列列表,交叉表中的列將通過(guò)這些列形成;
- 行字段。該字段顯示數(shù)據(jù)源的列列表,交叉表中的行將由這些列組成;
- 摘要字段。該字段將顯示數(shù)據(jù)源的列列表,這些列是交叉表中形成摘要的條目;
- 屬性字段。該字段顯示交叉表所選元素的屬性;
- 交叉表單元格字段。該字段顯示交叉表的單元格;
- 描述字段。該字段顯示交叉表所選屬性的簡(jiǎn)短描述;
- 選擇樣式按鈕。單擊后,會(huì)出現(xiàn)交叉表的樣式下拉列表。
14.1. 將數(shù)據(jù)源字段中的數(shù)據(jù)列添加到交叉表的列字段中。將數(shù)據(jù)源字段中的數(shù)據(jù)列添加到交叉表的列字段中。例如,將數(shù)據(jù)的 CategoryID 數(shù)據(jù),添加到交叉表的 Columns 字段,然后該數(shù)據(jù)列中的一個(gè)條目將對(duì)應(yīng)渲染的交叉表中的一列;
14.2. 將數(shù)據(jù)源字段中的數(shù)據(jù)源數(shù)據(jù)列添加到交叉表的行字段中。例如,將 ProductName 數(shù)據(jù)列添加到交叉表的行字段中,則該數(shù)據(jù)列中的一個(gè)條目將對(duì)應(yīng)渲染的交叉表中的一行,該數(shù)據(jù)列中的條目數(shù)將等于交叉表中的行數(shù);
14.3. 將數(shù)據(jù)源字段中的數(shù)據(jù)列添加到交叉表的摘要字段中。例如,將 UnitInStock 數(shù)據(jù)列添加到交叉表的摘要字段,該數(shù)據(jù)列中的條目將是交叉表中的摘要條目;
15. 按 "OK "按鈕保存更改,并返回帶有交叉表的報(bào)告模板。
16. 渲染報(bào)告 單擊 "Preview "按鈕或通過(guò)選擇菜單項(xiàng) "Preview "調(diào)用查看器。下圖是交叉表報(bào)告的示例:
17. 返回報(bào)告模板;
18. 如有必要,編輯數(shù)據(jù)帶中的文本組件:
18.1. 更改文本組件的背景顏色;
18.2. 更改樣式、顏色和文本類型。
19. 編輯報(bào)告模板中的單元格
19.1. 更改字體設(shè)置:類型、樣式、大??;
19.2. 更改單元格的背景顏色
19.3. 如果希望對(duì)文本進(jìn)行包邊,請(qǐng)將 "Word Wrap(文字包邊)"屬性設(shè)置為 true;
19.4. 必要時(shí)設(shè)置邊框
19.5. 更改邊框顏色
19.6. 更改單元格等的背景顏色
20. 渲染報(bào)告 單擊 "Preview"按鈕或單擊 "Preview "菜單項(xiàng)調(diào)用查看器。下圖顯示了編輯報(bào)告模板單元格后的跨表報(bào)告示例:
添加樣式
1. 返回報(bào)告模板;
2. 調(diào)用樣式設(shè)計(jì)器;
單擊添加樣式按鈕開始創(chuàng)建樣式。從下拉列表中選擇 Cross-Tab。將新樣式稱為 Cross-Tab 樣式。要?jiǎng)?chuàng)建自定義樣式,必須更改顏色屬性,該屬性的值為配色方案。
創(chuàng)建樣式后,按關(guān)閉按鈕。在交叉表編輯器中的 "Select Style "按鈕的值列表中,將顯示自定義樣式。在我們的例子中,這就是交叉表的樣式。選擇該值;
3. 渲染報(bào)告。單擊預(yù)覽按鈕或選擇預(yù)覽菜單項(xiàng)調(diào)用查看器。現(xiàn)在你可以看到渲染報(bào)告的結(jié)果了: