帆軟報表學習筆記③——下拉框的簡單應用:輸入提示以及時間的選擇


    在一般的報表中,都會有數據查詢,為了有更好用戶體驗可以通過輸入一個字然后有提示,如下圖的樣式

    這種樣式說起來還是很好實現的,首先拉入一個下拉框到頂部的編輯區域,然后選擇下拉框控件,在帆軟的右邊有它的屬性名 選擇 數據字典 類型選擇公式,然后在利用sql()函數得到你想要的數組

    sql函數的在上面的注解是: SQL(connectionName,sql,columnIndex,rowIndex)返回通過sql語句從connectionName中獲得數據表的第columnIndex列第rowIndex行所對應的元素。 connectionName:數據庫庫的名字,字符串形式;sql:SQL語句,字符串形式;columnIndex:列序號,整形;rowIndex:行序號,整形。備注:行序號可以不寫,這樣返回值為數據列。示例:以我們提供的數據源HSQL為例SQL("HSQL","SELECT * FROM CUSTOMER",2,2)等於王先生。

    這個時候回到控件的編輯界面然后運行一下就可以了,原本筆者在寫sql語句的時候,本來認為是需要用到 like ‘%##%’ 關鍵字的,但是沒有添加,他也有自動匹配的功能,這個我覺得應該是這個控件本身自帶的功能,具體是不是還有待進一步研究。

    

    在下拉框中實現時間以月的方式供於選擇

    在帆軟報表中的有日期控件,初始化是這樣的,當然你可以選擇,右邊的屬性名欄下的有格式 改變格式也改變它顯示的格式 默認是 yyyy-MM-dd ,改成yyyyMM如下圖中間的的樣式,但是有的時候會有需求,讓你以下拉列表的方式來選擇某一個月,或者某一天某一年,這個時候用日期控件就很難實現了(我搗鼓了半天沒發現有好的辦法用日期控件來實現這種需求,如果有的話,請教教我 :) ),最后我退而求下拉框控件。

    因為一般的需求是從今天或者當月到某一時間供於選擇,當時想把一個個值都輸入進去也不現實啊,假如到明天或者下個月了不就不行了,所以我想應該動態的獲取,這個時候我想到了從數據庫中獲取這些數據,利用西面的語句可以實現:

           SELECT to_char(ADD_MONTHS(trunc(sysdate),1-rownum),'yyyyMM') as monthlist FROM DUAL CONNECT BY rownum<= 13

這樣一來也可以通過to_char來改變想要的顯示格式,也可以實時的獲取到當前的時間。有了這條語句了下面操作就容易多了。方法類似上門的 提示,我利用sql()語句可以把 上面語句獲取的值存放到下拉框的控件中之后就可以供於選擇了

 

    這樣一來,這兩個小需求就實現了:筆者認為主要還是數據庫的知識,奈何筆者非常菜 ,淚奔啊~~~ 還需努力!!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM