動態隱藏行

2021-08-28 21:22:10 字數 1623 閱讀 9200

在業務系統中,我們經常會遇到這樣的需求: 有的資料在符合一定條件的情況下才能夠顯示出來,不符合條件的行並不需要。這個時候就可以利用隱藏行這個屬性來實現這個需求。如下圖所示:

在 e6 單元格我們做的是每個訂單 id 下面不同的產品名稱的訂單總金額的統計,但是我只想顯示訂單總金額大於 5000 的資料,這時候我們就可以通過對 e6 單元格的結果值做乙個判斷,選中第 5、6 兩行,在右側的隱藏行表示式寫:if(e6<5000,true,false) 如下圖:

這時候我們儲存發布報表可以看到,每個訂單的總金額都是大於 5000 的資料。

按照上面的設定,我們可以根據某個單元格的值動態隱藏不符合條件的資料,但是,如果我想第 2 行的「訂單明細」只有第一頁顯示,第 4 行和第 7 行每頁都顯示,最後的總合計行只有最後一頁顯示該如何設定呢?

想一下,如果想每頁顯示的話,需要將前面幾行都設定為報表頭,後面幾行都設定為報表尾,但是如果想有些資料只有第一頁或者是最後一頁顯示我們又該如何去設定呢?

有想法沒?有思路沒?不要著急,等我細細給您道來哈

步驟如下:

1、將前面四行的行屬性設定為報表頭,然後將最後兩行的行屬性設定為報表尾

(如下圖所示:)

2、然後選中前三行,在右側的【行屬性】裡面的【可視】表示式寫:

3、選中最後一行,同樣是要在【行屬性】裡面的【可視】寫 if 表示式:

4、儲存報表,發布就可以看到效果啦,如下圖所示:

小總結:

pno()      是顯示當前頁的頁碼。

pcount()   是取得總的頁數。

一定要注意是在【行屬性】裡面的【可視】表示式裡面寫哦,不要寫在單元格可視屬性裡面。在行屬性裡面的可視寫的話,不可視的情況下行是不會佔您紙張的位置的。如果您是在單元格的可視寫的話,他僅僅是內容看不到,位置還是佔著的。

還有,我們在隱藏行和可視表示式裡面都是通過頁碼或者是某個單元格的值來實現的隱藏行和是否可視的判斷,它也可以通過某個引數值來判斷是不是要隱藏某一行的資料, 表示式的寫法都是一樣的。

動態隱藏行

在業務系統中,我們經常會遇到這樣的需求 有的資料在符合一定條件的情況下才能夠顯示出來,不符合條件的行並不需要。這個時候就可以利用隱藏行這個屬性來實現這個需求。如下圖所示 在 e6 單元格我們做的是每個訂單 id 下面不同的產品名稱的訂單總金額的統計,但是我只想顯示訂單總金額大於 5000 的資料,這...

動態隱藏ALV的行和列

本例和行列例程轉換不同,內錶結構是固定的,僅僅是通過alv的fieldcat和filter來隱藏 顯示alv的行和列 列 form changefield loop at gt fieldcat into gs fieldcat gs fieldcat no out if gs fieldcat f...

QT QListWidget 刪除或者隱藏行

qlistwidgetitem item1,item2,item3 item1 ui listwidget takeitem 0 ui listwidget removeitemwidget item1 delete item1 item2 ui listwidget takeitem 0 ui l...