PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
21785 05/03/08 09:46:32 RE(2):PB6.5: SetFilterでヘルプのキーワード検索の様な処理をしたい By たにやん
21784 05/03/07 21:21:19 RE(1):PB6.5: SetFilterでヘルプのキーワード検索の様な処理をしたい By ace
21779 05/03/07 11:39:00 PB6.5: SetFilterでヘルプのキーワード検索の様な処理をしたい By たにやん

カテゴリ:スクリプトの記述
日付:2005年03月07日 21:21 発信者:ace
題名:RE(1):PB6.5: SetFilterでヘルプのキーワード検索の様な処理をしたい

たにやんさん、こんばんは。
>IF Len(ls_tmp) > 0 Then
> dw_detail.SetFilter(\"meishok like \'%\" + ls_tmp + \"%\'\")
>ELSE
> dw_detail.SetFilter(\"\")
>END IF


これを

IF Len(ls_tmp) > 0 Then
dw_detail.SetFilter(\"POS(meishok,~\"\" + ls_tmp + \"~\") > 0 \")
ELSE
dw_detail.SetFilter(\"\")
END IF

とフィルターの条件にポジション関数を利用したらどうなりますか?
ちなみに~\" は \'でもいいのかもしれません。

ちなみに6.5ではTRIMWは使えたかどうか忘れましたが
>ls_tmp = data


String ls_tmp だとして
ls_tmp = TRIMW(data)
とした方がより間違いないと思います(検索ワードの前後にスペースを入れたい場合は別です)

>こんにちは。
>題名のとおり、ヘルプのキーワードのような検索をしたいと思っているのですが、
>うまくういきません。たとえば、半角の「a」と入力するとaが入っていないレコードも選択されてしまいます。
>半角の「A」と入力してもまた別のレコードが検索されてしまいます。
>どうも1文字だけ入力すると起こるようなのですが。。
>データウィンドウのeditchangedイベントにsetfilter関数を書き、処理をしようとしています。
>絞り込むデータウィンドウは最初に全件検索を行っています。
>どなたか良い方法ご存知の方いらっしゃいましたら、アドバイスお願いします。m(_ _)m

>ls_tmp = data

>//フィルターを初期化
>dw_detail.SetFilter(\"\")
>dw_detail.Filter()

>//入力された値でフィルターをかける
>IF Len(ls_tmp) > 0 Then
> dw_detail.SetFilter(\"meishok like \'%\" + ls_tmp + \"%\'\")
>ELSE
> dw_detail.SetFilter(\"\")
>END IF

>dw_detail.Filter()


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

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

Server SoftWare

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

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