[파워빌더] 오라클의 프로시져 호출하기...
/*───────────────────────────────────────*/
트렌젝션 오브젝트에 선언해서 사용하기..
프로시져오출하기...
subroutine SP_MNP(double AS_MONTH,string AS_CONG,ref Long rl_VAL) RPCFUNC ALIAS FOR "SP_MNP"
──────────────────────────
gtr_trans.sp_mnp('', '', ll_Ret )
if gtr_trans.sqlcode <> 0 then
messageBox("데이터베이스오류", "데이터베이스에 장애가 발생하였습니다!~r~r전산실로 연락해 주세요!~r~r" + gtr_trans.sqlerrtext, StopSign!)
rollback using gtr_trans;
close(w_stop)
return
else
commit using gtr_trans;
end if
/*───────────────────────────────────────*/
일반적으로 트렌젝션 오브젝트에 선언해서 사용하면 편리하지만 간혹 12.5에서 작동이 안되는 경우가 발생함
그럴때는 아래명령어로 사용...
DECLARE C_FEEBIE_SALE PROCEDURE FOR FEEBIE_SALE(:ls_str_code, :ls_recept_no ) ;
EXECUTE C_FEEBIE_SALE ;
if SQLCA.SQLCode < 0 then
MessageBox("EXECUTE C_FEEBIE_SALE : Error!",SQLCA.SQLErrText)
Return 1
else
FETCH C_FEEBIE_SALE INTO :ll_cash_amt, :ll_card_amt, :ll_gift_amt,
:ll_coupon_amt, :ll_etc_amt1, :ll_etc_amt2, :ll_apply_amt,
:ls_flsgs, :ls_message;
end if
CLOSE C_FEEBIE_SALE ;
트렌젝션 오브젝트에 선언해서 사용하기..
프로시져오출하기...
subroutine SP_MNP(double AS_MONTH,string AS_CONG,ref Long rl_VAL) RPCFUNC ALIAS FOR "SP_MNP"
──────────────────────────
gtr_trans.sp_mnp('', '', ll_Ret )
if gtr_trans.sqlcode <> 0 then
messageBox("데이터베이스오류", "데이터베이스에 장애가 발생하였습니다!~r~r전산실로 연락해 주세요!~r~r" + gtr_trans.sqlerrtext, StopSign!)
rollback using gtr_trans;
close(w_stop)
return
else
commit using gtr_trans;
end if
/*───────────────────────────────────────*/
일반적으로 트렌젝션 오브젝트에 선언해서 사용하면 편리하지만 간혹 12.5에서 작동이 안되는 경우가 발생함
그럴때는 아래명령어로 사용...
DECLARE C_FEEBIE_SALE PROCEDURE FOR FEEBIE_SALE(:ls_str_code, :ls_recept_no ) ;
EXECUTE C_FEEBIE_SALE ;
if SQLCA.SQLCode < 0 then
MessageBox("EXECUTE C_FEEBIE_SALE : Error!",SQLCA.SQLErrText)
Return 1
else
FETCH C_FEEBIE_SALE INTO :ll_cash_amt, :ll_card_amt, :ll_gift_amt,
:ll_coupon_amt, :ll_etc_amt1, :ll_etc_amt2, :ll_apply_amt,
:ls_flsgs, :ls_message;
end if
CLOSE C_FEEBIE_SALE ;