PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
7572 99/08/11 18:01:04 RE(5):スクリプトでDWをコントロールする開発のアドバイス(2) By ma-sa
7560 99/08/11 10:14:33 RE(4):スクリプトでDWをコントロールする開発のアドバイス(2) By てとらぽっと
7559 99/08/11 10:11:40 RE(3):スクリプトでDWをコントロールする開発のアドバイス(1) By てとらぽっと
7558 99/08/11 09:19:16 RE(2):PB5.0.04: dddwのデータカラム値から別dddwを表示する方法について By ma-sa
7556 99/08/10 20:42:33 RE(1):PB5.0.04: dddwのデータカラム値から別dddwを表示する方法について By peanuts
7554 99/08/10 20:14:25 PB5.0.04: dddwのデータカラム値から別dddwを表示する方法について By ma-sa

カテゴリ:データウィンドウ
日付:1999年08月11日 10:11 発信者:てとらぽっと
題名:RE(3):スクリプトでDWをコントロールする開発のアドバイス(1)

みなさんさん、こんにちは。
余談です(ふりーとーくに出せば良いのですが、こちらのほうが読んでいる方が多そうなので)。

「(スクリプトでDWを制御しないで)DWペインタだけで開発できないか?」
というご質問を耳にしますが、こう思われる理由って何でしょうか?
こちらが思い付くのは、

1.ロジックが分散してしまう
2.ペインタでのプレビューが使えない

といったところですが。ほかにも理由があるのでしょうか?


オブジェクト指向がどうのという説明は省きますが、
PBに不慣れな方にアドバイスさせていただきます。

ウィンドウにDWを貼って、そのウィンドウやDWコントロールに直接スクリプトを
書いてしまうと、DWがそのGUI(ウィンドウ)と切り離しにくくなってしまいます。
ほかのGUIで使うときにあちこちスクリプトを書く必要も出て、ロジックの分散を
招いてしまいます。
こういうDWを作るときは、DWクラスを継承したユーザーオブジェクト u_dwXXX を作り、
その u_dwXXX に必要なスクリプトを書きます。
(新規作成ユーザーオブジェクトの、標準ビジュアルオブジェクトを選びます。)

たとえばあるカラムの内容が変わったらDDDWのリストをがらっと変えてしまう処理を、
ItemChangedなどの適切なイベントに書きます。

u_dwXXX に仕事をさせるいくつかのオブジェクト関数(Public)なども用意します。
必要と思われる、複雑な検索パラメータを与えられたら動的にSELECT文を生成して検索する
uf_Retrieve()関数や、複雑な更新処理が書かれた uf_Update()関数などです。

ウィンドウペインタでは、DWコントロールの変わりに u_dwXXXユーザーオブジェクトを
貼ります。もとがDWクラスを継承していますから、DWと同じように扱えます。
が、先に用意したuf_Retrieve()関数をコールするだけで、必要な処理はすべて行われるので
ロジックの分散が発生しません。

下手に長い説明ですが、お役に立てれば…。


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows95
DBMS その他
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS その他
WebServer (記載なし)

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