oracle sqr 報表工具之procedure定義及呼叫示例

wisdomone1發表於2012-02-14
在public.lic檔案中編寫要呼叫的procedure程式碼
!獲取TCBS系統日期
Begin-Procedure Get-The-PostDate(:$Value)
    Move 'IN Get-The-PostDate' To $_Global-ProcName
  Let $Value = ''
Begin-Select On-Error=Global-Got-Fatal-SQL-Error
TO_DATE(BankOptionValue, 'YYYY-MM-DD')    &Value
 Let $Value = &Value
  From BankOption
 Where BankOptionCd = 'PDAT'
End-Select
End-Procedure


而在sqr報表展現程式碼DEP_ATMPFTD.sqr中可以呼叫上述的public.lic檔案中的過程procedure

#define addtlsetup
#include 'Rptstub.lib'
#include '{libpath}tkit_batchstartup.inc'
#include '{libpath}tkit_rptheader.inc'
#include '{libpath}tkit_queappl.inc'
#include '{libpath}public.lic'  !注意:就是透過此類程式碼在sqr中引用lic檔案定義的procedure
#include '{libpath}tkit_Sqrfunc.inc'

此處略去非相關程式碼

BEGIN-procedure NP($a)
do Get-The-PostDate($dt) !注:透過do呼叫了lic檔案的
move $dt to $dt 'YYYYMMDD'
do GET-APPL-NAME($appnam)
Do Get-Bank-Option('RPTT',$Len)
let $out=$Len||$dt||'\'||$a||'_'||$appnam|| '.LIS'
NEW-REPORT $out
use-procedure before-page = pheading
do selectRpt($a)
end-procedure

小結:

1,procedure定義的引數(procedure類似於java的方法,而此處引數就像方法的輸入輸出引數)
2,上述public.lic的Get-The-PostDate(:$Value)過程之引數為輸出引數,在sqr中引數以:字首,表示輸出引數




來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9240380/viewspace-716242/,如需轉載,請註明出處,否則將追究法律責任。

相關文章