0815-POWER BUILDER-動態DATAWINDOW

假設情況:

使用者希望可以依據選擇的項目,查詢不同的資料內容
EX:
選項目1時,查詢客戶基本資料
選項目2時,查詢商品基本資料
選項目3時,查詢商品銷售資料

解決方案1-將每個項目的DATAWINDOW都產生出來,利用程式判別決定要查詢哪一個DATAWINDOW。

解決方案2-使用動態DATAWINDOW
所謂動態DATAWINDOW是指利用SQL語法,來產生DATAWINDOW的內容,使用語法如下:

Integer li_customerid
String ls_sql,ls_dw_style,ls_syntax,ls_error

li_customerid = trim(sle_1.text)

//項目1時,查詢客戶基本資料
ls_sql ='select name,address,phone from customer '

ls_dw_style = 'style(type=from)'
ls_syntax = sqlca.syntaxfromsql(ls_sql,ls_dw_style,ls_error)

IF ls_syntax ='' THEN
   MESSAGEBOX('注意','SQL語法錯誤')
   RETURN
ELSE
   dw_1.create(ls_syntax,ls_error)
   dw_1.settransobject(sqlca)
END IF

注意1:
SYNTAXFROMSQL的格式請參考POWER BUILDER官網,網址如下:
http://infocenter.sybase.com/archive/index.jsp?topic=/com.sybase.help.pb_10.5.psref/html/psref/CCJCHAJI.htm
注意2:
DATAWINDOW的STYLE部分,指的就是新增DATAWINDOW時選擇的DATAWINDOW類型,總共有下列這些:
  • (Default) Tabular
  • Grid
  • Form (for freeform)
  • Graph
  • Group
  • Label


留言

熱門文章