過去の桐井戸端BBS (桐ver.8)
12307 サブフォームで表指定をするには? 桐坊主 2001/07/15-10:55
いつもお世話になります。
今回はサブフォームの指定についておたずねいたします

データーの入力に、入力.wfm と 白紙.tblを利用しています。
入力.wfmの中に、画面制約上、サブフォームを組み込んでいます。
(サブフォームの内容は、単純に項目数が多いだけで、白紙.tblの後方の項目を切り替えで表示できるだけです)

データ入力後、年月を利用して保存を行ってます(例:0107.tbl等)

メニューから、この「入力.wfm」を利用して、0107.tblの表を利用したいのですが、
フォーム本体は、0107.tblを表示しているようですが、
サブフォームは、あいかわらず白紙.tblを表示しています

このような状態で、サブフォームも0107.tblを表示できないでしょうか

よろしくお願いいたします。

12321 Re:サブフォームの表指定をお願いいたします 尾形 2001/07/15-17:39
記事番号12307へのコメント
桐坊主さん、こんにちは。

http://www.fuku3.com/~habata/kbbs/kakov8/06127.htm
↑これが参考になります

12324 Re:サブフォームの表指定をお願いいたします 桐坊主 2001/07/15-22:41
記事番号12321へのコメント
尾形さんありがとうございます

>http://www.fuku3.com/~habata/kbbs/kakov8/06127.htm
>↑これが参考になります

何度も読み直しましたがまだ理解できません

お手数をおかけいたしますが具体的にお教えいただけないでしょうか

メニューに配置するボタンは、

○新規入力ボタン
機能「開く」パラメーター「白紙入力.wfm」
これはうまく行きました。

○過去実績参照ボタンは
機能「手続き実行」パラメーター「年月入力」みたいな物を作成して、
その値を表名として利用したいと考えてます

これを作成してみたいのです。

ボタン以外にイベントとかまだたくさん課題は残ってますが
とりあえず入り口だけでもお願いいたします。




12333 Re:サブフォームの表指定をお願いいたします 尾形 2001/07/16-12:13
記事番号12324へのコメント
どうも、桐坊主さん
いまいち全体像がつかみきれませんが

>データ入力後、年月を利用して保存を行ってます(例:0107.tbl等)
この入力の時も過去の実績を表示したいという事ですか

>メニューから、この「入力.wfm」を利用して、0107.tblの表を
>利用したいのですが、フォーム本体は、0107.tblを表示している
>ようですが、サブフォームは、あいかわらず白紙.tblを表示しています
入力.wfmはどのようにして開いているのでしょうか
ここの「0107」の指定はどの段階でしているのでしょうか

>http://www.fuku3.com/~habata/kbbs/kakov8/06127.htm
↑この方法はフォームを開く以前に対象表を変えるもの
なので、今回は向かないかもしれないですね。
フォームから、同じフォームを多重化して開いて
前のを閉じればいいかもしれませんが。

●サブフォームの対照表はワーク表にする
サブフォームの編集対象表は"白紙.tbl"になっていると思いますが、
これを"WORK表示.TBL"といった一時ファイルに設定して、
必要なデータをこの表に書き出すといった具合なんか、
DOS桐っぽい感じがしますが

●過去実績は別フォームで表示する
表示だけでいいのであれば、メインサブにしなくても
別フォームで別ウインドウでやってもいいとお思いますが
"入力.WFM"は左上付近に出して、実績フォームは表示
右下に出すとか。
変数を引き渡して、フォームを開くだけで希望のデータを
表示できるようにしておくと、色々と他のフォームからも再利用しやすいです

あんまり参考にならないですね


12334 Re:サブフォームの表指定をお願いいたします 今村 誠 2001/07/16-13:21
記事番号12324へのコメント
桐坊主さんこんにちは、私も一つの表でメイン&サブフォームをしています。
私の場合メインもサブも同じイベントファイルを使用しています。
編集対象表の切り替えは、イベントのメイン部にないと切り替えできないと思います。
引用を若干変えていますがご勘弁を

>>http://www.fuku3.com/~habata/kbbs/kakov8/06127.htm
>>↑これが参考になります

>お手数をおかけいたしますが具体的にお教えいただけないでしょうか
>
>メニューに配置するボタンは、
>
>○新規入力ボタン
> 機能     パラメーター
1 手続き実行 ”年月日入力”
2 「開く」  「白紙入力.wfm」

>作成して、その値を表名として利用したいと考えてます

以下のような記述を手続き定義開始 年月日入力()で作成します。
代入 &FileName==#連結(#一括パス名,”0107.TBL”)

次にサブフォームイベントファイルのメイン部において以下の記述をすれば切り替えできると思いますが。

名札 メイン

オブジェクト操作 @フォーム.編集対象表 = &FileName



試してみてください。「@フォーム」は半角です。
12336 Re:サブフォームの表指定をお願いいたします 悲しげ 2001/07/16-14:17
記事番号12334へのコメント
今村さんwrote

>私の場合メインもサブも同じイベントファイルを使用しています。

この点については、この会議室でも何度か話題になりましたが、
結論としては、メインフォーム用とサブフォーム用とでイベントファイルは
基本的に別々にした方がよいと云うことですので、念のため。
12342 Re:サブフォームの表指定をお願いいたします 桐坊主 2001/07/16-21:29
記事番号12333へのコメント
>いまいち全体像がつかみきれませんが
>
>>データ入力後、年月を利用して保存を行ってます(例:0107.tbl等)
>この入力の時も過去の実績を表示したいという事ですか

尾形さん・今村さん・悲しげさん。そしてこのBBSをご利用のみなさま
本当にありがたく思います。
こうして、日常の疑問にお答えをいただけるなんて、桐を使用してて
よかったな〜とつくづく感じてます。

もう少し症状を追加させていただきます。
メニューフォームはまだ一部しか作成していません
(と、いうよりまだ作れません)


尾形さんの>
>入力.wfmはどのようにして開いているのでしょうか
>ここの「0107」の指定はどの段階でしているのでしょうか

実はフォーム(メニュー)は、最終的な目標です
入力.wfmは、メニューのコマンドボタンから、開いてます。
(ここまではできました)
そして表0107.tblは、現在はメニューはいったん終了し、
会話処理から表0107.を開き、ファンクションキf1を3回押しフォーム選択から
入力.wfmを選んでいます。

そのとき、フォームの本体は、0107の内容を表示してますが、その中の
サブフォームは元の白紙を表示しているようです。

将来も、会話処理で、行こうとは思ってませんが、メニュー.wfmのボタンの設定がわからない状態です。


まず会話処理ができなくてイベントとかできないと思いましたので質問をさせていただきました。
将来は、メニューボタンからすべて実行していきたいと思います。

お手数をおかけいたしておりますが、よろしくお願いいたします。

12360 Re:サブフォームの表指定をお願いいたします 尾形 2001/07/17-22:12
記事番号12342へのコメント
NO12334で今村さんが書かれている方法
をやられてはいかがでしょうか?

それができれば、後は定数(0107.TBL)で指定
している所を上手くアレンジするだけですので。

そこはまた聞いてください

戻る