PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
12231 00/07/13 18:49:31 RE(6):PB6.5: dwオブジェクト上で同じデータを参照したカラムを別々のプロパティー設定ができない By MIYAHARA
12204 00/07/12 17:37:21 RE(5):PB6.5: dwオブジェクト上で同じデータを参照したカラムを別々のプロパティー設定ができない By M.M
12203 00/07/12 17:09:14 RE(4):PB6.5: dwオブジェクト上で同じデータを参照したカラムを別々のプロパティー設定ができない By てとらぽっと
12201 00/07/12 16:22:52 RE(3):PB6.5: dwオブジェクト上で同じデータを参照したカラムを別々のプロパティー設定ができない By MIYAHARA
12200 00/07/12 16:21:09 RE(2):PB6.5: dwオブジェクト上で同じデータを参照したカラムを別々のプロパティー設定ができない By MIYAHARA
12172 00/07/11 12:37:03 RE(1):PB6.5: dwオブジェクト上で同じデータを参照したカラムを別々のプロパティー設定ができない By リエッチ
12167 00/07/11 10:03:01 PB6.5: dwオブジェクト上で同じデータを参照したカラムを別々のプロパティー設定ができない By MIYAHARA

カテゴリ:PowerBuilderの不具合?
日付:2000年07月12日 17:09 発信者:てとらぽっと
題名:RE(4):PB6.5: dwオブジェクト上で同じデータを参照したカラムを別々のプロパティー設定ができない

MIYAHARAさん、こんにちは。

「仕様です」
と言っただけでは納得できない勢いのようですので、
もう少し【Inside PowerBuilder】な話をします。

>たしかに一つのカラムに対して別々の編集様式を指定するのは一般的な使用方ではないとは思いますが、
>オブジェクト単位で見た場合に、テキストやグループボックスなど
>他のオブジェクトでは当たり前のようにできていたことが、
>カラムオブジェクトに限りできないというが不自然に感じるのです。
(略)
>凹凸表示などの設定値はそれぞれのオブジェクトで独立して持っているようですが、
>編集様式のテキスト文字列の設定などはカラムの設定値として持っているようです。
>このためオブジェクト毎の設定値を持つことができないのだと思います。


テキストや図形や計算フィールドは、
完全に独立したオブジェクトですから
好き放題やっていいと言えます。


コントロールとしてのカラムは、
あくまでDBからSELECTしたカラムに関連付けられているわけですから
「同一のDBカラムに対して整合性の取れない可能性のあるプロパティを許さない」
という意図があるのでしょう。

(極端に言うと、入力条件則で
 一つは「col_A > 1」, 他方は「col_A < 1」などとしてはどうしようもありません。
 それ以前に、同じDBのカラムなのですから入力条件則が異なることは考えられませんが。)

そういったプロパティは、同一のDBカラムを持つカラム間で共通に設定されるように、
DBカラムに対してプロパティを持つべきという考えは納得できると思います。


そこにコード表までが含まれるということに疑問を持たれるのかもしれません。


では、同一のDBカラムをもった複数のカラムで、コード表示を替える(または素で表示する)ことが
出来ないかと言うと、【DDDW】を使えば良いので困ることはありません。
DDDWはコントロールとしてのカラム毎にプロパティを持ちます。
むしろコード表をあちこちのDWに分散するより、DDDWにしたほうが賢明かと思います。

データベースに持つまでもないコード表は、
【外部ソース】あたりをデータソースにして、
【保持データ】で初期値を与えたDDDWを作っておきます。

これで少しは納得できますでしょうか?(笑)

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows95
DBMS Sybase SQL Anywhere Client
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Sybase SQL Anywhere Standalone
WebServer (記載なし)

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