隨筆 - 225  文章 - 98  trackbacks - 0
          <2015年5月>
          262728293012
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          隨筆分類

          相冊

          報表工具廠商們

          搜索

          •  

          最新評論

          閱讀排行榜

          統計圖表FineReport之SQL函數

          有的時候希望某個單元格能夠直接獲取到數據庫中的某個值,而不是先要定義一個數據集后,再去取數據。這時就可以用函數Sql()公式,下面講解下其用法。
          1. 公式解釋
          SQL(connectionName,sql,columnIndex,rowIndex):返回的數據是從connectionName數據庫中獲取的sql語句的表中的第columnIndex列第rowIndex行所對應的元素。
          connectionName:數據庫名,字符串形式,需要用引號如"FRDemo";
          sql:SQL語句,字符串形式;
          columnIndex:列序號,整型;
          rowIndex:行序號,整型。
          備注:行序號可以不寫,這樣返回值為數據列。
          2. 以我們提供的數據源FRDemo為例
          2.1 示例(就一般的只獲取某個字段內容)
          從表 STSCORE中,我們可看到第3行第3列的值為Alex,如下:
          現在若要直接在報表的單元格中顯示數據值:Alex,而不通過先定義一個數據集后,再去取數據的方式,這里就可以使用sql()公式,此時只需在單元格中輸入:=sql("FRDemo","SELECT * FROM STSCORE",3,3)即可,預覽就可看到Alex值。
          2.2 示例(帶有參數時公式的使用)
          帶有參數形式的時候,直接在報表的單元格中獲取數據值,寫法如下:
          =sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = 'Class1' ",3)
          顯示效果(班級為Class1的第3列所有值),如下:
          若需要顯示某個具體值,如:顯示 Jonny 的效果(即班級為Class1的第3列第4行的值),寫法如下:
          =sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = 'Class1' ",3,4)
          若參數值為變量如為報表參數或者是某個單元格,則寫法如下:
          =sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = '"+$class+"' ",3,4)
          =sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = '"+A1+"' ",3,4)
          如果傳遞的參數是獲取當前單元格的值,即用$$$作為參數時,字符串類型同樣需要拼接單引號,如下:
          =sql("FRDemo","SELECT * FROM STSCORE where CLASSNO = '"+$$$+"' ",3,4)
          注:如果參數或者單元格值有多個,那么sql函數的寫法如下:
          =sql("FRDemo","SELECT * FROM STSCORE where CLASSNO in ('"+$class+"') ",3,4)
          并且class參數返回值的分隔符需為',',具體請查看下拉復選框參數聯動。


          了解Java報表工具就從這里開始
          posted on 2015-05-11 17:17 season 閱讀(331) 評論(0)  編輯  收藏 所屬分類: Java報表—技術知識Java報表—問題解析
          主站蜘蛛池模板: 万盛区| 锡林浩特市| 南郑县| 浦江县| 公主岭市| 安泽县| 嵩明县| 浦北县| 汉寿县| 张家川| 克什克腾旗| 三门峡市| 屏山县| 克拉玛依市| 文登市| 淅川县| 波密县| 平江县| 许昌市| 凤台县| 西城区| 开远市| 安溪县| 大城县| 伽师县| 章丘市| 巢湖市| 银川市| 安化县| 西藏| 济宁市| 昌黎县| 团风县| 天祝| 德化县| 远安县| 安岳县| 轮台县| 泊头市| 乌拉特后旗| 民县|