データウィンドウの SELECT 文の WHERE 句を動的に変更する

PowerBuilder Tips

方法

Describe 関数と Modify 関数を使用してデータウィンドウの SELECT 文の WHERE 句を動的に変更することができます。

Describe 関数を使用して SELECT 文を取得し、取得された SELECT 文に対して WHERE 句を追加して Modify 関数でデータウィンドウの修正を行います。

【例】WHERE 句を含まないデータウィンドウ オブジェクトに WHERE 句を動的に追加

string ls_sql_select, ls_sql_mod
string ls_sql_where = "WHERE col_1 > 10"  // 追加する WHERE 句
string ls_rtn

dw_1.SetTransObject(SQLCA)
// SELECT 文を取得する
ls_sql_select = dw_1.Describe("DataWindow.Table.Select")

// SQL 文を作成する
ls_sql_mod = "DataWindow.Table.Select='" + ls_sql_select + ls_sql_where + "'"

// SQL 文を変更する
ls_rtn = dw_1.Modify(ls_sql_mod)
IF ls_rtn = "" THEN
       dw_1.Retrieve( )
ELSE
       MessageBox("ステータス", "変更に失敗しました" + ls_rtn)
END IF

 

Tips情報

プロダクト :PowerBuilder

バージョン :2017R3

Tips 一覧を見る
PowerBuilder マイグレーション
PowerBuilder学習、動画で始めちゃう?