當前位置:首頁 » 存儲配置 » finereport存儲過程

finereport存儲過程

發布時間: 2022-05-06 06:46:50

『壹』 顯示的欄位值根據輸入的條件變化而變化sql,存儲過程,finereport

可以用動態SQL
也可以寫類似的條件
AND (P_TYPE IS NULL OR P.TYPEID = P_TYPE)
AND (P_HOUSEID IS NULL OR P.HOUSEID = P_HOUSEID)

『貳』 使用FineReport開發報表時怎麼調用非當前用戶下的oracle存儲過程

這個報錯是因為你切換了資料庫端用戶,所以它找不到SCOTT這個用戶名。你只要把SCOTT加上就能正常調用資料庫了。當然,你還要保證當前的資料庫端用戶需要對SCOTT用戶下的存儲過程有訪問許可權。

『叄』 求助,FineReport點「查詢」按鈕之前調用Oracle過程

調用Oracle過程一共有兩種情況,分別是不帶輸出參數的和帶參數的,具體內容可以參照如Chinafine之類的論壇或者博客,在這里就簡單地說一下這兩種情況的代碼內容:

  1. 不帶輸出參數情況(過程名稱為pro1,參數個數1個,數據類型為整形數據 )

import java.sql. *
;
public class ProcereNoArgs
{
public static void main(Stringargs[]) throws Exception
{
//
載入Oracle驅動
DriverManager.registerDriver( new oracle.jdbc.driver.OracleDriver());
//
獲得Oracle資料庫連接
Connectionconn =
DriverManager.getConnection( " jdbc:oracle:thin:@MyDbComputerNameOrIP:1521:ORCL", sUsr, sPwd
" );

// 創建存儲過程的對象

CallableStatementc = conn.divpareCall( " {callpro1(?)} " );

// 給Oracle存儲過程的參數設置值,將第一個參數的值設置成188
c.setInt( 1 , 188 );

// 執行Oracle存儲過程
c.execute();
conn.close();
}
}

2.帶輸出參數的情況(過程名稱為pro2,參數個數2個,數據類型為整形數據,返回值為整形類型)

importjava.sql.*;
publicclassProcereWithArgs
{
publicstaticvoidmain(Stringargs[])throwsException
{
//載入Oracle驅動
DriverManager.registerDriver(neworacle.jdbc.driver.OracleDriver());
//獲得Oracle資料庫連接
Connectionconn = DriverManager.getConnection("jdbc:oracle:thin:@MyDbComputerNameOrIP:1521:ORCL", sUsr, sPwd ");

//創建Oracle存儲過程的對象,調用存儲過程
CallableStatementc=conn.divpareCall("{callpro2(?,?)}");

//給Oracle存儲過程的參數設置值,將第一個參數的值設置成188
c.setInt(1,188);
//注冊存儲過程的第二個參數
c.registerOutParameter(2,java.sql.Types.INTEGER);
//執行Oracle存儲過程
c.execute();
//得到存儲過程的輸出參數值並列印出來
System.out.println (c.getInt(2));
conn.close();
}
}

希望能夠幫到題主~

『肆』 潤乾報表怎麼建一個存儲過程的報表

潤乾報表新建存儲過程比較麻煩,具體如下:

新建空白報表
1)「配置」 --「數據源」設置數據源
2)「配置」---「參數」 增加兩個參數對應存儲過程的輸入參數,
參數名分別是 in_deptid和in_age
2)「配置」--「數據集」--「增加」--數據集類型選「存儲過程」 ,打開了存儲過程數據集窗口
3) 定義tab填入:{call mypackage.EMP_TJ(?,?,?)};
參數tab中增加3個參數:第一個參數---參數表達式值in_deptid,其餘默認
第二個參數---參數表達式值in_age,其餘默認
第三個參數---參數表達式值@@result,結果類型為游標,參數模式為輸出參數,其餘默認;
這樣就得到了數據集,假定這里數據集名是ds1,其有兩列分別是in_deptid和in_age。
4)在報表單元格中就可以像使用SQL取數據集一樣使用存儲過程的數據集了。


現在很多朋友都用帆軟finereport了,比潤乾好用很多。新建存儲過程,更連普通的數據連接一樣,建議你試試。

『伍』 帆軟怎麼調用資料庫里的存儲過程

存儲過程,就是直接將存儲過程作為數據集,不需要在資料庫查詢處去調用存儲過程。FineReport支持全部資料庫的存儲過程作為數據集並且定義方法都相同。
1、點擊模板>模板數據集或者直接在數據集面板中,點擊「+」
2、在資料庫查詢窗口中輸入:
SET
NOCOUNT
ON
EXEC
dbo.jason
'${產品品號}'
其中
SET
NOCOUNT
ON
為固定格式,EXEC
dbo.jason(存儲過程名稱)'${產品品號}'
(產數子段),如果存儲過程中帶出多個欄位的話,可以帶出多個參數。
3、預覽數據
4、報表欄位設計
5、報表預覽
若存儲過程中返回的是多個結果集,在此也是支持同時返回多個結果集的。

『陸』 水晶報表可以連接oracle的存儲過程嗎

水晶報表可以連接oracle的存儲過程,但是不是隨便寫一個在資料庫中可以運行的存儲過程就可以的。具體的步驟的話我不是特別清楚,現在很少用到水晶報表了,一般情況下用的都是finereport,這樣的話就和題主稍微說下我現在用的工具的方法吧,應該是差不多的。

1、創建包

由於需要但會查詢出來的數據集,需要在PL/SQL中創建一個package,這個包裡面定義一個ref cursor類型,用於記錄sql語句查詢出來的結果集。如下圖:

具體代碼如下:

create or replace procere paging

(tableName in varchar2 ,--表名

pageSizes in number,--每頁顯示記錄數

pageNow in number,--當前頁

rowNums out number,--總記錄數

pageNum out number,--總頁數

paging_cursor out pagingPackage.paging_cursor) is

--定義部分

--定義sql語句,字元串

v_sql varchar2(1000);

--定義兩個整數,用於表示每頁的開始和結束記錄數

v_begin number:=(pageNow-1)*pageSizes+1;

v_end number:=pageNow*pageSizes;

begin

--執行部分

v_sql:='select * from (select t1.*,rownum rn from (select * from '||tableName||') t1 where rownum<='||v_end||') where rn>='||v_begin;

--把游標和sql語句關聯

open paging_cursor for v_sql;

--計算rowNums和pageNum

--組織一個sql語句

v_sql:='select count(*) from '||tableName;

--執行該sql語句,並賦給rowNums

execute immediate v_sql into rowNums;

--計算pageNum

if mod(rowNums,pageSizes)=0 then

pageNum := rowNums/pageSizes;

else

pageNum := rowNums/pageSizes+1;

end if;

end;

『柒』 求助,FineReport 如何調用存儲過程參數

以oracle為例,建一個模板數據集。

1、點擊模板>模板數據集,點擊「+」,如下圖:

『捌』 iReport 能執行存儲過程嗎

樓主一直使用的是finereport報表軟體,沒有使用過ireport,但存儲功能的執行是一個基本功能,兩者之間應該沒有太大的差別,以下的步驟題主可以參考下:存儲過程,就是直接將存儲過程作為數據集,不需要在資料庫查詢處去調用存儲過程。第一步:定義數據集,點擊模板>模板數據集或者直接在數據集面板中,點擊加號鍵。切換到oracle資料庫所在的數據連接,雙擊所需要添加的存儲過程。注意:由於其是模板數據集處,因此該存儲過程會存在模板數據集中,如果是在伺服器數據集處定義的,則就會顯示在伺服器數據集所在的tab中。若存儲過程中返回的是多個結果集,在此也是支持同時返回多個結果集;點擊預覽可以看到多個結果集,數據集可以同時查看多個結果集。
以上就是報表軟體通用的存儲過程的執行步驟,題主有機會可以嘗試使用下finereport報表軟體,個人覺得這款軟體真心不錯,對於復雜報表的處理尤其優化簡潔~

『玖』 vb中的數據報表要顯示資料庫中的存儲過程中的信息,但是只顯示了一條是什麼原因

vb的數據報表沒使用過,但是樓主可以去試試一些主流的java報表工具,我記得Finereport就是支持直接讀取存儲過程出報表的,沒事的話,可以試一下

『拾』 fastreport的dataset是存儲過程怎麼設計

我用的一直是FineReport,不過我覺得在存儲過程上應該是類似的。下面是以oracle為例的,但原理是相同的。此外,fastreport應該有自己的demo的,你可以去找找。


點擊模板>模板數據集或者直接在數據集面板中,點擊如下圖:

註:多個結果集只執行一次儲存過程

熱點內容
chrome緩存頁面 發布:2024-09-23 03:28:35 瀏覽:979
安卓n81能裝什麼軟體 發布:2024-09-23 03:26:17 瀏覽:624
未轉變者伺服器ip是什麼 發布:2024-09-23 03:24:43 瀏覽:196
安卓手機如何打開桌面與快捷方式 發布:2024-09-23 02:36:01 瀏覽:497
linux查找find 發布:2024-09-23 02:36:00 瀏覽:440
linuxgcc編譯命令行 發布:2024-09-23 02:35:59 瀏覽:520
什麼是java鎖 發布:2024-09-23 02:22:29 瀏覽:383
手游伺服器搭建教程失敗 發布:2024-09-23 02:00:21 瀏覽:687
短暫的訪問 發布:2024-09-23 01:29:08 瀏覽:830
安卓手機怎麼設置4位數 發布:2024-09-23 01:24:58 瀏覽:550