報(bào)告設(shè)計(jì)建議
本章將討論用于導(dǎo)出到其他數(shù)據(jù)格式的報(bào)告的特殊設(shè)計(jì)要求。
在創(chuàng)建報(bào)告時(shí),F(xiàn)astReport 允許使用大量方法來操作對(duì)象。這為快速開發(fā)任何報(bào)告和進(jìn)一步打印報(bào)告提供了優(yōu)勢(shì)。打印出來的文件看起來就像顯示出來的一樣。這也是使用 FastReport 報(bào)告生成器的主要目的。
這種開發(fā)自由度的缺點(diǎn)是將 FastReport 文檔導(dǎo)出為不同數(shù)據(jù)格式的復(fù)雜性,這些格式對(duì)信息展示有自己的限制和要求,有時(shí)相當(dāng)復(fù)雜。許多格式,如 HTML、XLS 或 RTF,使用表格數(shù)據(jù)顯示。在表格標(biāo)記時(shí),這些格式不允許單元格交叉或分層排列。
導(dǎo)出過濾器通常會(huì)考慮到這些要求。這是通過特殊算法實(shí)現(xiàn)的,該算法會(huì)考慮到對(duì)象的交叉,并以最佳方式放置它們。對(duì)象交叉時(shí),輸出表格中會(huì)出現(xiàn)新的列和行。這是使結(jié)果與原始報(bào)告達(dá)到最大相似度的必要條件。在報(bào)告設(shè)計(jì)中,大量的交叉對(duì)象會(huì)導(dǎo)致結(jié)果表中的列數(shù)和行數(shù)增加,從而影響文件的大小和復(fù)雜性。
導(dǎo)出的質(zhì)量在很大程度上取決于初始報(bào)表的設(shè)計(jì)是否得當(dāng)。讓我們看看下面的例子:
同一波段上的兩個(gè)物體一前一后略有交叉。報(bào)告形成時(shí)的記錄數(shù)為 150 條。導(dǎo)出為 RTF 格式時(shí)將創(chuàng)建 450 行(每個(gè)對(duì)象 150 行,交叉 150 行)。如果刪除交叉記錄,生成的表格中將只有 300 行。在大型報(bào)告和大量對(duì)象的情況下,這種差異將非常巨大。當(dāng)然,這也會(huì)影響輸出文件的大小。
在報(bào)表中創(chuàng)建表格時(shí),請(qǐng)注意相鄰單元格的邊界。重要的是單元格不能交叉和分層排列。導(dǎo)出過濾算法會(huì)截?cái)鄦卧瘢珜?dǎo)出結(jié)果可能不盡如人意(您看到的不完全是您想要的)。排列對(duì)象時(shí),要使它們?cè)诖怪焙退椒较蛏隙寂懦梢恍?。指南可以幫助?shí)現(xiàn)這一點(diǎn)。
網(wǎng)格對(duì)齊也有助于解決單元格重疊的問題。在設(shè)計(jì)器選項(xiàng)中啟用網(wǎng)格對(duì)齊。為了簡(jiǎn)化對(duì)齊方式,可以擴(kuò)展網(wǎng)格間距。網(wǎng)格間距和對(duì)齊方式的設(shè)置可以在 "View|Options... "菜單中找到:
對(duì)于文字框架,最好使用文字對(duì)象的邊框,而不是線條、矩形等單一圖形對(duì)象。盡量不要在透明文本對(duì)象下使用背景對(duì)象。
應(yīng)用這些簡(jiǎn)單的規(guī)則將幫助您創(chuàng)建一份報(bào)表,在導(dǎo)出為任何基于表格的格式后,它都將看起來非常完美。
如需下載fastreport最新試用版,請(qǐng)點(diǎn)產(chǎn)品名跳轉(zhuǎn)產(chǎn)品下載頁>>