PB動態建立DW(包括外部資料來源)

2021-06-20 19:19:14 字數 1936 閱讀 3765

pb提供了關於如何動態建立datawindow的相關函式

transaction.syntaxfromsql ( sqlselect, presentation, err )

dwcontrol.create ( string syntax ) 

例子1:動態建立有sql的dw

說明:這個比較常用的方法,首先利用sql得到dw的語法,然後用語法來建立dw

這過程跟建立視覺化的dw,然後儲存在pbl,在將這個儲存的名字賦值給dw作為dataobject是同樣的道理

string ls_sql = ""

string ls_syntax = ""

string ls_err = ""

// 初始化, sql以oracle為例

// ls_sql = "select fields from table"

ls_sql = "select 『』 as sid, '' as sname from dual"

// 建立syntax, 用ls_sql建立乙個grid型別的dw

sqlca.syntaxfromsql(ls_sql, "style(type=grid)", ls_err)

if len(ls_err) > 0 then

messagebox('error', 『create dw syntax failed! ~r~n』 + ls_err)

return -1

end if

// 建立dw

ls_err = 『』

dw_1.create(ls_syntax, ls_err)

if len(ls_err) > 0 then

messagebox('error', 『create dw failed! ~r~n』 + ls_err)

return -1

end if

// 建立成功

messagebox('success', 'create dynamic dw with sql successful!')

例子2:動態建立外部資料來源的dw(沒有sql)

說明:外部資料來源的dw沒有sql,但跟有sql的dw相同的部分就是dw語法的table部分。

而建立dw的時候,利用syntax來建立就好了,sql建立syntax就可以省略。

對於例如區域、顯示、html、update等等屬性, pb都有預設的設定。

所以無需用過份詳細的syntax來建立dw,那部分將由pb幫助完成,我們只需要有table部分就可以了。

string ls_syntax = ""

string ls_err = ""

// 由sql建立syntax部分省略

// 初始化syntax, release 9;表示pb9.0的例子

ls_syntax = "release 9;~r~n" +&

"table(" +&

" column=(type=number name=handle dbname=~"handle~" )~r~n" +&

" column=(type=char(255) name=sdata dbname=~"sdata~" )~r~n" +&

" column=(type=char(255) name=slabel dbname=~"slabel~" )~r~n" +&

")"

// 建立dw

ls_err = 『』

dw_1.create(ls_syntax, ls_err)

if len(ls_err) > 0 then

messagebox('error', 『create dw failed! ~r~n』 + ls_err)

return -1

end if

// 建立成功

messagebox('success', 'create dynamic dw without sql successful!')

JBOSS動態建立資料來源

前段時間讓研究如何動態建立資料來源,關於這個我們討論出有兩種方案,一種是將資料來源放到persistence.xml檔案中,然後在persistence.xml中動態新增節點,中根據不同的unitname建立不同的entitymanager。一種是資料來源放到jboss裡,通過jboss的api動態...

動態建立ODBC ACCESS資料來源

unit linkdbaccess inte ce uses windows,messages,sysutils,variants,classes,graphics,controls,forms,dialogs,stdctrls,registry,extctrls type tlinkdb info...

動態建立資料來源問題

動態建立資料來源問題 delphi windows sdk api 下面 是動態建立odbc資料來源 請問要把下面 加在那個地方才不會出錯,我加在工程檔案裡也出錯,加在單元檔案裡也出錯,function getwinsyspath string var buf array 0.255 of char...