過去の桐井戸端BBS (桐ver.8)
8232 多重化でフォーム間のデータをやりとりする定石は? みすず 2000/10/24-09:46
多重化して他のフォームを呼び出すときなど、処理対象行を呼び出したときと同一のレコードに位置づけしたりしています。
戻るときもレコードが移動したら元のフォームのレコードも移動させています。
ですが、共通、固有、局所などの各変数にいったん格納して、呼び出し先でその変数を参照しようとしても上手くいきません。
勘違いかもしれませんが、フォーム間では変数のやりとりが出来ないのでしょうか?
仕方がないので今はクリップボードにいったん格納して、呼び出し先で取り出しています。
8235 Re:多重化でフォーム間のデータをやりとりする定石は? bonito 2000/10/24-11:47
記事番号8232へのコメント
みすずさん

偶然でしょうが、K3の桐の掲示板にも似たような(似てないかも)変数の持込みについて書き込み(最新!?)がありましたよ (^^;

局所変数はそのWFMとそのWFMにつれそうKEV内だけで有効です。
固有変数は有効かどうか、その状態によりますね(固有の…ってか)

同じ名前の変数を別の種別で重複して宣言していませんよね。
桐のHELPから引用

>各種別で同じ名前の変数を宣言した場合、次の順番で検索され、
>最初に見つかった変数の値が参照されます。
>自動
>局所
>固有
>共通

前にも書いたけど、局所変数ってちょっと危険人物 (^^;

8236 Re:多重化でフォーム間のデータをやりとりする定石は? みすず 2000/10/24-11:54
記事番号8235へのコメント
>局所変数はそのWFMとそのWFMにつれそうKEV内だけで有効です。
>固有変数は有効かどうか、その状態によりますね(固有の…ってか)

重複宣言はしていません。
イベントファイルはフォーム毎になっているため、分かれています。
もしかしてそのためでしょうか?
だとしても共通なら引き渡せるはずなんですが、なぜでしょう?

8248 Re:多重化でフォーム間のデータをやりとりする定石は? 佐田 守弘 2000/10/24-23:41
記事番号8236へのコメント
みすずさん
まず共通変数ですが、共通変数であれば桐が起動している間有効であり、値も保持できますから、
複数のフォーム間で変数を使った値の引き渡しが可能です。

固有変数も、ドキュメントウィンドウが開いている間は有効です。
多重化した場合、少なくともどちら化の表が開き続けているはずですから、固有変数であっても、
双方のフォーム間で固有変数を参照できるはずです。

局所変数の場合には、そのフォームと関連するイベントだけで有効なので、他のフォームとの間の値の引き渡しはできません。

質問では、共通変数と固有変数で値の引き渡しができないとの事ですが、
もしそうであれば、何か書かれていないところに問題が潜んでいる可能性があります。
それが何であるかは、質問内容からは把握できません。
チェックする方法として、それぞれのフォームで変数管理機能を呼出し、変数値をチェックしてみてはいかがでしょうか。

佐田守弘(KS-00119)
8253 Re:多重化でフォーム間のデータをやりとりする定石は? みすず 2000/10/25-13:27
記事番号8248へのコメント
ありがとうございます。
はやり固有変数を渡せません。私のやり方がどこかおかしいようですね。調べてみます。
問題なく変数でのやりとりが出来たとして・・
やはりフォーム間のデータのやりとりは変数を使うしかないのでしょうか?
共通変数は出来る限り使いたくないので、いまはクリップボードで渡していますが、
関数のように、引数・戻り値のような方法では他のフォームを呼び出すことができないのでしょうか?

戻る