当前位置: 代码迷 >> PB >> pb如何正确调用oracle存储过程
  详细解决方案

pb如何正确调用oracle存储过程

热度:84   发布时间:2016-04-29 05:33:57.0
pb怎么正确调用oracle存储过程?
oracle10g
create or replace procedure AutoNo
(
  p_BeforeStr  varchar2,
  p_AutoNmb  out varchar2,
  p_QType number
 )
Is
 begin
     p_AutoNmb := Rtrim(p_BeforeStr)||'-'|| to_char(sysdate,'yyyymmddhh24missSSSSS');
     p_AutoNmb := substr(p_AutoNmb,1,p_QType);
END AutoNo;
//测试正常;


pb12.5
两种方法调用:

第一种方法,sqlca.sqlcode -1
第二种方法,p_str取出的是乱码。具体实现如下;


subroutine autono(string P_BEFORESTR,ref string P_AUTONMB,decimal P_QTYPE) RPCFUNC ALIAS FOR "autono"
//以上为自动生成

按钮代码:
//uo_transcation_test.DBMS =profilestring("sqlca.ini","database","dbms"," ")// 执行到这句就报错,找不到object
//uo_transcation_test.LogPass =profilestring("sqlca.ini","database","LogPassword"," ")
//uo_transcation_test.LogId =profilestring("sqlca.ini","database","logid"," ")
//uo_transcation_test.AutoCommit = False
//uo_transcation_test.DBParm =profilestring("sqlca.ini","database","DBParm"," ")
//connect using uo_transcation_test;
//uo_transcation_test.autono(p_ys,p_str,p_ty)
改为
sqlca.autono(p_ys,p_str,p_ty)  //能返回,但乱码(如图)
两种方法各错在哪里?如何修改?
谢谢!
更多 0
------解决方案--------------------
不会,你可以试一下查查PB 的帮助。
  相关解决方案