在powerbuilder 12.0中多次执行oracle程序

时间:2012-09-07 09:01:02

标签: oracle powerbuilder

我在oracle中编写了一个存储过程来检查天气,因为输入文件名存在于定义的路径中。它工作正常。当我在power-builder 12.0中调用此过程时,我测试了这样。我第一次输入错误的文件名,它工作正常。然后我输入了正确的文件名,它说程序已经执行。我怎样才能再次重新执行此过程。我在代码中声明程序的代码是

 DECLARE PROC_FILE_EXISTS PROCEDURE FOR 

HICSWIN_ORACLE.PACK_UPDATE_TSHML_HICSWIN20.PROC_CHECK_FILES_RELEVANCE  
(  
         FILE_NAME => :as_file_name  
)  ;


EXECUTE PROC_FILE_EXISTS;

IF SQLCA.SqlCode < 0 THEN
    MessageBox('eroor',SQLCA.SQLErrText)
    MessageBox('Connection failed','An error occured while connecting to database, please contact your administrartor')
    RETURN 0
end if

仅供参考我正在使用带有oracle 11g的Windows 7

2 个答案:

答案 0 :(得分:4)

您需要关闭过程调用(以类似于游标的方式使用:Declare / Open / Fetch / Close):

close PROC_FILE_EXISTS;

答案 1 :(得分:1)

从数据存储区调用它。使用存储过程源和字符串检索参数创建新的dw。 PB自动包含所有适当的游标语法。调用Oracle SP可能会更复杂 - 我相信你必须返回一个引用游标来从dw调用一个...