過去の桐井戸端BBS (桐ver.9) |
21391 | メイン&サブフォームでメインフォームで入力されたらサブフォームが表示されるようにしたい | としちゃん | 2003/07/12-23:04 |
としちゃんといいます。 何時も参考にさせていただいてます。 質問です。 一覧表フォームでメイン&サブフォームを作っています。 メインフォームの明細行のテキスト項目に入力されたデータを入力後、 変数に代入してある項目に移動すると、サブフォームを表示し 変数に代入したデータを絞り込んで、表示させるイベントを作りましたがうまく動作しません。 よろしくお願いします。 ------------------------------------------------------------------ 変数宣言 固有,文字列{&s入荷,&指図番号,&品番,&色番} 手続き定義開始 フォーム::フォーム開始(長整数 &表番号) 表 &s入荷2,表番号=2 並べ替え {[品C]辞書順} 手続き定義終了 手続き定義開始 指図番号::入力後(参照 文字列 &編集文字列,長整数 &モード,参照 長整数 &入力継続) &指図番号=[指図番号] 手続き定義終了 手続き定義開始 品番::入力後(参照 文字列 &編集文字列,長整数 &モード,参照 長整数 &入力継続) &品番=[品番] 手続き定義終了 手続き定義開始 色番::入力後(参照 文字列 &編集文字列,長整数 &モード,参照 長整数 &入力継続) &色番=[色番] 手続き定義終了 手続き定義開始 ランク::入力後(参照 文字列 &編集文字列,長整数 &モード,参照 長整数 &入力継続) 編集表 2 絞り込み [指図番号]{=&指図番号} 絞り込み [品番]{=&品番} 絞り込み [色番]{=&色番} オブジェクト操作 @サブフォーム_62.画面表示 = "1" 手続き定義終了 手続き定義開始 反M::入力後(参照 文字列 &編集文字列,長整数 &モード,参照 長整数 &入力継続) 編集表 2 絞り込み解除 オブジェクト操作 @サブフォーム_62.画面表示 = "0" 手続き定義終了 以上のイベントです。 お願いいたします。 | |||
21393 | Re:メイン&サブフォーム | 悲しげ | 2003/07/13-12:55 |
記事番号21391へのコメント どもっ、としちゃんさん 文意が取れない点が幾つかあります。 >一覧表フォームでメイン&サブフォームを作っています。 一覧表フォームはメインフォームなのかサブフォームなのか、あるいはメインもサブも一覧表フォームなのか? >入力後、変数に代入してある項目に移動すると、 「変数に代入してある項目」とは、「項目名を変数で取得しているところの項目」と云うことなのか、 あるいは「テキスト項目に入力されたデータを変数に代入し、その上で別なある項目」と云うことなのか? メインフォームとサブフォームのそれぞれの編集対象表は何なのか? 併せて、挙げられたkevの記述は、メインフォームのものなのか、サブのものなのか?(原則としては別kevのはず?) >手続き定義開始 フォーム::フォーム開始(長整数 &表番号) > 表 &s入荷2,表番号=2 > 並べ替え {[品C]辞書順} この表と両フォームの関係は? それと、イベントでは一般的には表を開く際に表番号を記述しません。 なぜなら、別途オープン済の表の番号が2である可能性もあるからです。 その代わり例えば下記のように記述します。 手続き定義開始 ランク::入力後(参照 文字列 &編集文・・・・ 編集表 &s入荷2 *余談ながら次のような書き方でも通るはず?(未確認) 絞り込み [指図番号]{[指図番号]=&指図番号,[品番]=&品番,[色番]=&色番} あと、気がかりなのは、このように表を別途オープンしてしまった場合、 これをいずれは閉じなければなりません。(サブ?)フォームの編集対象表であれば、 表の開閉はフォームの開閉に委ねられますから、その方が簡単確実です。 ※書かれてはいませんが、もしサブフォームの編集対象表を動的に変更したいと云うことであれば、過去ログに何本かあります。 それと、本件に関係あるのか無いのか判りませんが、 私はこのような処理(つまり別フォームを扱う)を「入力後」イベント(つまり入力途中の最後の画面)でやることはありません。 私なら、やるとしたら入力が全て完了した後である「ソース値更新」イベントあたりを使うと思います。 それと私なら、普段はサブフォームたるそのフォームを隠しておくくらいなら、 サブフォームにはしないで別途「フォーム呼び出し」コマンド(またはボタンからなら「モーダルフォーム」)を使うでしょうね。(^^;) |