PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
11710 00/06/12 14:26:37 RE(10):PB6.5: ユーザオブジェクトのコピーを別名で - グローバル関数の思想 By MIYAHARA
11705 00/06/12 13:26:03 RE(9):PB6.5: ユーザオブジェクトのコピーを別名で - グローバル関数の思想 By てとらぽっと
11704 00/06/12 13:20:42 RE(8):PB6.5: ユーザオブジェクトのコピーを別名で - グローバル関数の思想 By てとらぽっと
11690 00/06/09 18:56:35 RE(7):PB6.5: ユーザオブジェクトのコピーを別名で - グローバル関数の思想 By MIYAHARA
11666 00/06/09 11:57:16 RE(6):PB6.5: ユーザオブジェクトのコピーを別名で - グローバル関数の思想 By てとらぽっと
11661 00/06/09 11:03:07 RE(5):PB6.5: ユーザオブジェクトのコピーを別名でつけるスクリプト By M.M
11659 00/06/09 10:33:04 RE(4):PB6.5: ユーザオブジェクトのコピーを別名でつけるスクリプト By MIYAHARA
11657 00/06/09 09:58:10 RE(3):PB6.5: ユーザオブジェクトのコピーを別名でつけるスクリプト By MIYAHARA
11645 00/06/08 15:05:01 RE(2):PB6.5: ユーザオブジェクトのコピーを別名でつけるスクリプト By てとらぽっと
11644 00/06/08 14:41:39 RE(1):PB6.5: ユーザオブジェクトのコピーを別名でつけるスクリプト By こてちゅ
11643 00/06/08 14:14:10 PB6.5: ユーザオブジェクトのコピーを別名でつけるスクリプト By MIYAHARA

カテゴリ:ユーザオブジェクト
日付:2000年06月09日 11:57 発信者:てとらぽっと
題名:RE(6):PB6.5: ユーザオブジェクトのコピーを別名で - グローバル関数の思想

MIYAHARAさん、こんにちは。
すでに投稿されているM.Mさんと似た意見です。

>つまりuo_search()では検索処理をした後、
>件数もしくはエラーフラグを返すだけのコンパクトな関数にしておいて、
>中間関数では、その返り値によってメッセージを整形したり
>エラー時の処理等を書くように方針だててまして、
>あのような回りくどい記述になってしまいました。

>めんどくさがらず、他とは別個にエラー処理を書けばすむことなのですが、
>呼び出し部分はなんとなく統一させたかったのと、
>メンテの時に複数箇所の変更は大変だな?と思ったわけです。

>今考えるとgf_search()はウィンドウ関数の方が
>良かったのかな?とも思うのですが、

>>グローバル関数 gf_search() で
>>uo_Aの関数を呼ぶ(これがuo_Bのケースもあるんですよね?)ために、
>>uo_Aへの参照をどうされているのでしょう?
>>gf_search() の引数に【UserObject】型で渡されてたりしませんか?

>え?っと、w_main.uo_object.uf_search() で呼び出しています。

おそらく方法論の問題であって、
どれが正しいということはないとお断りした上で、
わたしの考えですので参考までに。


グローバル関数に特定のウィンドウを記述してしまうと、
特定のウィンドウに依存してしまうので
もはやグローバルの性格が失われてしまっています。

ひとつは、ご自分でも指摘なさっているように、
ウィンドウ関数としておく方がすっきりします。

あるいは、グローバル関数としておくなら、
参照したいオブジェクトなどを引数にしておきます。
グローバル関数の中でではんく、
グローバル関数を呼び出す側でどのウィンドウの…という
記述ができ、グローバル関数は汎用的になります。

gf_search(w_main.uo_object)


で、少しややこしくしているのは、
uo_objectの型が1つでないというところで
引数の型をどのように定義するかということですけど…。
ごちゃごちゃ余計な入れ知恵しないほうがよいでしょうか。(^^;;;
(UserObject型としてしまうのは好ましくないと思っています。)


付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

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

Server SoftWare

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

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