PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
9157 99/11/10 20:11:30 RE(12):一覧情報をいかに速く取ってくるか By kin
9144 99/11/10 12:00:52 RE(11):一覧情報をいかに速く取ってくるか By てとらぽっと
9139 99/11/10 11:06:55 RE(10):ShareDataについて By まこと
9137 99/11/10 09:34:12 RE(9):ShareDataについて By kin
9136 99/11/10 09:27:51 RE(8):ShareDataについて By こてちゅ
9134 99/11/10 09:05:27 RE(7):ShareDataについて By まこと
9129 99/11/09 17:54:55 RE(6):データ更新を行った場合の一覧表のリアルタイム更新について By kin
9128 99/11/09 17:45:47 RE(5):データ更新を行った場合の一覧表のリアルタイム更新について By Taka
9124 99/11/09 14:01:16 RE(4):データ更新を行った場合の一覧表のリアルタイム更新について By てとらぽっと
9121 99/11/09 13:28:07 RE(3):データ更新を行った場合の一覧表のリアルタイム更新について By Taka
9120 99/11/09 13:21:36 RE(2):データ更新を行った場合の一覧表のリアルタイム更新について By てとらぽっと
9119 99/11/09 13:10:34 RE(1):データ更新を行った場合の一覧表のリアルタイム更新について By てとらぽっと
9115 99/11/09 11:41:16 データ更新を行った場合の一覧表のリアルタイム更新について By kin

カテゴリ:その他
日付:1999年11月09日 13:28 発信者:Taka
題名:RE(3):データ更新を行った場合の一覧表のリアルタイム更新について

kinさん、こんにちは。

一覧/詳細画面の動きって、インターフェイス設計で重要な部分を占めていますよね。
ここの作り方しだいでは使い勝手に大きく影響を受けてしまうのに、じっくり考えないで作られた
システムをよく見かけます。(^^;

私のとこでは、一覧/詳細ともにMDIシートにしています。
レスポンスウィンドウは、あくまでも「実行指示」レベルの用途にとどめています。
でないと、詳細画面を開いているあいだは他の操作が何もできなくなるので、後々必ずクレームが
くるものです。開発途中でレスポンスを非レスポンスに修正していくのは、非常に困難を極めるので
細心の注意が必要です。

んで、詳細画面の更新結果を一覧にどう反映するかですが...

【ケース1:詳細画面で開けるのは、一覧に表示されているレコードのみ】
この場合でしたら、一覧全体をRetrieveするのではなく、ReselectRowという関数が使えます。
一覧画面の更新特性では、主キーのみWHERE句モードにしておきます。
もちろん、主キーが変わることはない事が前提です。
詳細がレスポンスなら難しくないですが、両方がシートの場合には、リフレッシュする行番号を
Findする必要があります。

【ケース2:一覧にないレコードが詳細で新規登録される】
このケースが考えられるのでしたら、全体でRetrieveするのが手っ取り早いと思います。
パフォーマンスについては、テーブル設計や絞り込む条件を工夫するなどして対処できると
思います。(よほど件数が多くなければ)
また、詳細側で更新直後に、一覧へRowsCopyするという手もあります。
Shareするよりは管理が楽だと思います。
まちがっても、InsertRow&SetItem方式だけはやめましょう。スクリプトの無駄です。

他に良い方法がありましたら、私も知りたいです。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

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

Server SoftWare

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

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