PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
14977 | 01/04/07 12:55:49 | RE(5):PB5.0.02: データウィンドウのRetrieveを中断するには(自己レス) By Chicchi |
14936 | 01/04/03 22:11:30 | RE(4):PB5.0.02: データウィンドウのRetrieveを中断するには(自己レス) By Taka |
14893 | 01/03/29 16:41:31 | RE(3):PB5.0.02: データウィンドウのRetrieveを中断するには(自己レス) By Chicchi |
14889 | 01/03/29 13:59:19 | RE(2):PB5.0.02: データウィンドウのRetrieveを中断するには By Chicchi |
14859 | 01/03/28 00:36:08 | RE(1):PB5.0.02: データウィンドウのRetrieveを中断するには By M.M |
14857 | 01/03/27 18:23:15 | PB5.0.02: データウィンドウのRetrieveを中断するには By Chicchi |
カテゴリ:PowerBuilderの開発環境
日付:2001年03月29日 16:41 発信者:Chicchi
題名:RE(3):PB5.0.02: データウィンドウのRetrieveを中断するには(自己レス)
RetrieveRowイベントでYield関数を用いてフラグを監視する
場合、ある程度のアイドル状態を作り出さないと認識されない
ようで、前回のスクリプト例のようにフラグを立てた後、すぐ
にレスポンスウィンドウをオープンしてしまうとRetrieveが中
断されないみたいです。で、以下のようにしたら正しく動作し
ましたのでご報告致します。
// RetrieveStartイベントのスクリプト
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ib_cancel = FALSE // Retrieve中断フラグの初期化
ib_retrieve_end = FALSE // Retrieve完了フラグの初期化
// RetrieveRowイベントのスクリプト
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Yield( )
IF ib_cancel THEN
RETURN 1
END IF
// RetrieveEndイベントのスクリプト
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ib_retrieve_end = TRUE // Retrieve完了フラグを立てる
// 行をダブルクリックされ、
IF ib_w_clicked THEN
// それがRetrieve完了前だった場合、
IF ib_cancel THEN
// レスポンスウィンドウをオープンする
Trigger Event ue_open_response( )
END IF
END IF
// DoubleClickedイベントのスクリプト
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
IF Row < 1 THEN
RETURN
END IF
ib_w_clicked = TRUE // \"ダブルクリックされた\"フラグをたてる
// Retrieveが完了している場合、
IF ib_retrieve_end THEN
// レスポンスウィンドウをオープンする
Trigger Event ue_open_response( )
// まだ完了していなければ、
ELSE
// Retrieveを中断し、RetrieveEndからue_open_responseをトリガ
ib_cancel = TRUE
END IF
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows98
DBMS Oracle SQL*Net 2.3
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 7.3
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.