PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
14029 00/12/04 22:45:01 RE(5):PB6.5: 1レコード複数カラムの検索方法:2 By Lucky
13987 00/11/27 21:20:41 RE(4):PB6.5: 1レコード複数カラムの検索方法:2 By ryochan
13986 00/11/27 21:20:03 RE(3):PB6.5: 1レコード複数カラムの検索方法:1 By ryochan
13983 00/11/27 10:06:19 RE(2):PB6.5: 1レコード複数カラムの検索方法 By t.y
13980 00/11/25 17:04:47 RE(1):PB6.5: 1レコード複数カラムの検索方法 By M.M
13978 00/11/25 14:30:04 PB6.5: 1レコード複数カラムの検索方法 By Lucky

カテゴリ:PowerBuilderの開発環境
日付:2000年11月25日 17:04 発信者:M.M
題名:RE(1):PB6.5: 1レコード複数カラムの検索方法

Luckyさん、こんにちは。
同じく休日出勤のM.Mです。(午後出社ですけど...)

>as_Keyword   ←検索対象文字
>   :
>String  ls_ColumnS[] 
>dw_target.Event uf_get_ColumnS( ls_ColumnS)   // 全カラム名を取得する。 
>For ll_i = dw_target.Getrow() to dw_target.RowCount() 
>  For ll_j = 1 to UpperBound( ls_columns ] ) 
>   if dw_target.inv_base.of_getitem( ll_i , ls_Columns[ ll_j ] ) = as_keyword Then 
>    Messagebox(\"Find\" , \"該当文字が見つかりました。\")
>    Return 1 
>   end if 
>  Next 
>Next 
>return 0 
>と、こんな、感じで作ったんですが、かなり【遅い】です!

ループの中では、できるだけ命令や関数を省いた方がいいですよ。
こんな感じで記述するとどうでしょうか。(未実験君)


????????????????????????????????????????
string as_Keyword, ls_ColumnS[]
long rowMax, colMax, currentRow, ll_i

dw_target.Event uf_get_ColumnS( ls_ColumnS ) // 全カラム名を取得する。
rowMax = dw_target.RowCount()
currentRow= dw_target.Getrow()

For ll_i = currentRow to rowMax
colMax = UpperBound( ls_columnS[] )
For ll_j = 1 to colMax
if dw_target.inv_base.of_getitem( ll_i , ls_Columns[ ll_j ] ) = as_keyword Then
Messagebox(\"Find\" , \"該当文字が見つかりました。\")
Return 1
end if
Next
Next
????????????????????????????????????????



付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows98
DBMS Oracle SQL*Net 8
Browser (記載なし)

Server SoftWare

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

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