翻譯|行業(yè)資訊|編輯:胡濤|2024-03-27 10:05:34.140|閱讀 90 次
概述:在今天的文章中,我們將討論有關(guān)在 Stimulsoft 產(chǎn)品中創(chuàng)建主從報(bào)告的原則的重要變化。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Stimulsoft Ultimate (原Stimulsoft Reports.Ultimate)是用于創(chuàng)建報(bào)表和儀表板的通用工具集。該產(chǎn)品包括用于WinForms、ASP.NET、.NET Core、JavaScript、WPF、PHP、Java和其他環(huán)境的完整工具集。無(wú)需比較產(chǎn)品功能,Stimulsoft Ultimate包含了所有內(nèi)容!
Stimulsoft Reports.Ultimate不僅擁有強(qiáng)大的報(bào)表導(dǎo)出系統(tǒng),而且還支持多種報(bào)表導(dǎo)出格式,擁有簡(jiǎn)單且強(qiáng)大的報(bào)表引擎。Stimulsoft Reports.Ultimate基本原則是,用簡(jiǎn)單常規(guī)的方法創(chuàng)建報(bào)表,將不同的技術(shù)應(yīng)用于應(yīng)用程序。
主-詳細(xì)信息是一種報(bào)表類型,其中數(shù)據(jù)相互關(guān)聯(lián)并組織成多個(gè)級(jí)別:一個(gè)主帶數(shù)據(jù)記錄對(duì)應(yīng)于多個(gè)詳細(xì)數(shù)據(jù)帶記錄。換句話說(shuō),Master-Detail報(bào)表是一個(gè)有詳細(xì)信息的數(shù)據(jù),比如按類別展示數(shù)據(jù)的報(bào)表:
在上面的查看器中,我們看到一個(gè)標(biāo)準(zhǔn)示例:首先顯示有關(guān)每個(gè)產(chǎn)品類別的信息,然后顯示屬于該類別的產(chǎn)品列表。
我們的產(chǎn)品提供了兩種在主從報(bào)告中確定條帶相對(duì)位置的方法。
第一種方法是將 Detail 區(qū)域放置在 Master 區(qū)域之后:
第二種方法是將 Detail 區(qū)域放置在 Master 區(qū)域內(nèi);在這種情況下,我們將其稱為嵌套細(xì)節(jié)帶。
組件用作其他元素的容器。您可以將一個(gè)或多個(gè)元素放置在一個(gè)面板上。只有交叉帶可以直接放置在其他帶上;其他帶子只能放置在容器中。
上述兩種放置帶的方法的作用相同。選項(xiàng)的選擇僅取決于您希望獲得的報(bào)告的外觀。在實(shí)踐中,當(dāng)詳細(xì)信息部分的數(shù)據(jù)量較少時(shí),通常會(huì)選擇第二個(gè)選項(xiàng)。
文章開頭的報(bào)告樣本展示了所謂的“理想情況”,即所有類別都包含產(chǎn)品數(shù)據(jù)。然而,在實(shí)際數(shù)據(jù)中,某些類別可能不包含任何產(chǎn)品。因此,類別詳細(xì)信息中可能沒有任何內(nèi)容可顯示。
在實(shí)踐中,通常不需要顯示空類別。因此,默認(rèn)情況下,我們的引擎隱藏它們。但是,用戶可以選擇是否顯示空類別。他們可以使用主帶屬性“如果詳細(xì)信息為空則打印”來(lái)執(zhí)行此操作。如果該屬性的值設(shè)置為true,則主帶的所有記錄都將被打印,無(wú)論它們是否有詳細(xì)數(shù)據(jù)。
讓我們繼續(xù)本文的主題。從版本2023.2開始, PrintIfDetailEmpty屬性的邏輯已得到增強(qiáng)。以前,該屬性僅適用于位于主帶之后的詳細(xì)帶。現(xiàn)在,該屬性還對(duì)位于主帶內(nèi)的細(xì)節(jié)帶進(jìn)行操作。
筆記!以前,無(wú)論主區(qū)域的PrintIfDetailEmpty
屬性的值如何,在任何情況下都會(huì)顯示嵌套的詳細(xì)信息區(qū)域。因此,如果主帶的屬性已設(shè)置為 true,則不會(huì)發(fā)生任何變化;詳細(xì)信息帶將像以前一樣顯示。
從技術(shù)上講,嵌套帶區(qū)始終被視為細(xì)節(jié)帶區(qū),無(wú)論它們是否設(shè)置了 MasterComponent 屬性。但是,由于PrintIfDetailEmpty屬性之前對(duì)它們沒有影響,因此用戶沒有意識(shí)到這一點(diǎn)。
因此,此修改可能會(huì)影響某些具有嵌套帶區(qū)的報(bào)表,這些報(bào)表最初不是作為主從報(bào)表創(chuàng)建的。如果嵌套帶區(qū)沒有數(shù)據(jù),則主帶區(qū)也不會(huì)顯示。
如果您的報(bào)告中出現(xiàn)上述問(wèn)題,您可以通過(guò)以下方式之一解決:
StiOptions.Engine.CheckForEmptyNestedDetail=false
如果問(wèn)題影響大量報(bào)告,或者您沒有時(shí)間更改報(bào)告,則可以使用第二個(gè)選項(xiàng)。但是,它會(huì)影響所有報(bào)告。如果在報(bào)告中,您需要?jiǎng)h除主帶,并且它沒有詳細(xì)信息,您仍然需要使用第一個(gè)選項(xiàng),這將需要在每個(gè)報(bào)告中進(jìn)行更改。
另請(qǐng)注意,引入StiOptions的某些屬性只是為了確保與舊版本的向后兼容性。有一天,在下一次重大重構(gòu)期間,這些屬性可能會(huì)被標(biāo)記為“已過(guò)時(shí)”,并在幾年后被刪除。
想要了解Stimulsoft Reports 報(bào)價(jià)信息的朋友,歡迎咨詢。
加入官方社群 740060302,歡迎相互交流
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@ke049m.cn