PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
579 99/03/15 16:57:07 RE(3):SELECT文のWHERE句の動的変更 By コジマット
578 99/03/12 15:32:12 RE(2):SELECT文のWHERE句の動的変更 By まこと
577 99/03/12 14:39:02 RE(1):SELECT文のWHERE句の動的変更 By M.M
576 99/03/12 13:38:53 SELECT文のWHERE句の変更方法 By かがみ

カテゴリ:その他
日付:1999年03月12日 14:39 発信者:M.M
題名:RE(1):SELECT文のWHERE句の動的変更

「かがみ」さん、こんにちは。

>データウィンドウのSELECT文のWHERE句を変更するには皆さんどうしますか?
>とりあえず、自分の知っている方法を二つあげます。
>まず、Modify関数で変更する方法。この方法はModify関数のヘルプにある通り
>編集したSELECT文をModify関数により再セットして、WHERE句を変更します。

>string rc, mod_string
>mod_string = \"DataWindow.Table.Select=\'\"&
> + original_select + where_clause+ \"\'\"
>rc = dw_emp. Modify(mod_string)
>IF rc = \"\" THEN
> dw_emp.Retrieve( )
>ELSE
> MessageBox(\"Status\", \"Modify Failed\" + rc)
>END IF

>もう一つの方法として、SetSQLPreview関数を使用する方法。これもModify関数
>と同様に編集したSELECT文を再セットして、WHERE句を変更します。

>dw_1. SetSQLPreview(original_select + \"WHERE emp_no >= \'100\'\")


>この二つの方法のうち、どちらを使用するべきでしょうか。また、他にも方法が
>あるのでしょうか。教えて下さい。

どちらでもOKですよ?。結局、データウィンドウオブジェクトのSQL文の定義を変更
しているという点では同じですので。
私は、SetSQLPreview関数の方が記述がシンプルで好きです。
Oracle接続時にModify関数を使用すると、ティルダ(~)を山のように記述する必要があります。

ちなみに、「PowerBuilderユーザーズガイド」でもこの話題は議論されています。
Retrieve関数のパラメータを任意に変更する方法とかも紹介されていますので、検索
してみて下さい。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS (記載なし)
DBMS (記載なし)
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS (記載なし)
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.