PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
6827 | 99/06/16 16:44:06 | RE(4):PB5.0.03: 納得はいかないが解決。 By M.M |
6823 | 99/06/16 15:54:03 | RE(3):PB5.0.03: 納得はいかないが解決。 By 格の進 |
6804 | 99/06/16 11:50:58 | RE(2):PB5.0.03: 追加情報 By M.M |
6790 | 99/06/15 20:50:46 | RE(1):PB5.0.03: 追加情報 By 格の進 |
6784 | 99/06/15 15:29:36 | PB5.0.03: 動的にSQLを変更したDWをreset(),Retrieve()するとハングアップする。 By 格の進 |
カテゴリ:データウィンドウ
日付:1999年06月16日 15:54 発信者:格の進
題名:RE(3):PB5.0.03: 納得はいかないが解決。
M.Mさん、こんにちは。
>データウィンドウのバッファを構造体にコピーしているわけですね。
>しかし!実際には構造体にデータが複写されているわけでなく、単に
>構造体のポインタが複写されただけ(のハズ)です。
>ですので、Retrieve関数とかReset関数を使ってデータウィンドウのバッファを
>クリアしてしまうと、構造体の中身も壊れてしまい、後は野となれ山となれと
>いう状態になってしまうと思われます。
中略
>対策としては、構造体にデータウィンドウのバッファを移すのではなく、
>データストアオブジェクトを定義して、そこにRowsCopy関数あたりを使って
>データの退避を行えば良いかと思います。(未検証ですが...)
構造体のかわりにデータストアを使用する事で解決しました。
しかし、疑問が残ります。
Retrieve関数とかReset関数を使用する前に、構造体にNULLをセットしてみましたが、
やはりハングアップしました。NULLをセットした段階でポインタの複写も変更されて
構造体とデータウィンドウには関連がなくなると思うのですが、違いますか?
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS Oracle SQL*Net 2.3
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 7.3
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.