過去の桐井戸端BBS (桐ver.8)
20147 複数フォームで最初のフォームで確定した伝票番号を明細入力フォームに自動的に入力するようにしたい さる 2003/04/25-19:30
最初に顧客情報や、値引率などを入力して、伝票番号を確定する表とフォームがあります。
次に別の表とフォームで、明細を入力します。
このフォームは、伝票番号でグループ化してあります。
そこで、明細入力フォームを開いたときに、最初のフォームで確定した伝票番号を、
明細入力フォームの伝票番号に自動的に入力したいのです。
フォームの切り替えは、コマンドボタンで行います。
伝票番号でリンクしたサブフォームを考えたのですが、
入力項目が多いため、画面上に入りきらずにやめました。
ちなみに桐はv8です。まだまだ桐初心者です。よろしくお願いします。
 
20152 Re:複数フォームの関連付け しぼうかん 2003/04/26-21:48
記事番号20147へのコメント

さるさん、こんばんは。

えーっと多分、後からもっといいアドバイスがいただけると思いますが、
ハズしてばかりの露払い役ということで、ひとつ。

伝票番号を入力するレコード1つに対してリンクしたい
明細行が何行か決まっているならば[伝票番号]の入力後に発生する
イベントで明細入力フォームに行追加とかをすれば出来るかもしれませんが
伝票番号を確定させたあるレコードとリンクさせる明細入力フォームの
入力行が何行になるかわからない状態では明細入力フォームを開いた時に
伝票番号を自動的に入力させるのは難しいような気がします。

そこでこれはやはりメイン&サブフォームで作る方が良いように思います。
サブフォームを非表示状態でメインフォームに貼り付けて、コマンドボタンの
手続き実行で

オブジェクト操作 @明細入力.画面表示 = 1

というコマンドを使ってサブフォームの表示制御を行えばどうでしょうか。

※メインフォームのオブジェクトに覆い被せる様にサブフォームを
 貼り付ける事により多い入力項目を配置する領域を確保出来る様な気がします。
 使った事がないコマンドなので断言は出来ませんが・・・
20156 メイン&サブフォームと表示切替え方式に1票 佐田 守弘 2003/04/27-11:02
記事番号20152へのコメント
さるさん
私もしぼうかんさんと同じ意見です。
基本的な考え方は、しぼうかんさんが書かれている通りですが、周辺について
少し補則なり確認をさせて頂きます。

●メインフォームでの入力項目
 >入力項目が多いため、画面上に入りきらずにやめました。
この点がちょっと気になります。

経験論ですが、「入力項目数が多い」と言われるケースで、巧く行かなかった
ケースが少なからずあります。
入力項目を多くする必要があったのではなく、システム設計が充分でなくて、
入力項目が増え、かつ、使い物にならないケースがあるものです。

詳細は分りませんが、売上伝票処理の様ですので、うまく作ればメインフォームの
表示項目は、それ程多くなるはずがないと思われるのですが。

●表のデータの持ち方
質問内容へのコメントではありませんが、根本がここにありそうに思えます。
以下の点から今作っておられるシステムをチェックしてみて下さい。
そのポイントは、データの持ち方です。顧客名の詳細を記載する顧客マスタ、
商品名の詳細を記載する商品マスタ、および必要に応じて商品のメーカーや
帳合などを記載するマスタファイルを作ってますでしょうか。
この様な基本データまでここの売上を入力する伝票マスタに記載しようとすると
質問の様な事が発生しますし、おそらく、将来的に巧く行かないと思います。

値引き率も、その都度決定すると言うより、顧客や取り引き条件ごとに決める
事が多いはずなので、顧客マスタないし商品マスタ、あるいはこれとは別の掛け率マスタの様なものに
持つのではないでしょうか。

このあたりは御商売の仕方によって変わる話ですので、御自身で設計する必要があります。

そう言った基本データを別のマスタファイルに持ち、それを伝票マスタと、
伝票明細のメイン&サブフォームのメイン部分に、必要最小限のデータだけを
表引きなどで表示する事により、スッキリして使いやすいシステムが作れるはずと考えます。

佐田守弘(KS-00119)
20168 Re:複数フォームの関連付け 尾形 2003/04/28-12:19
記事番号20147へのコメント
>次に別の表とフォームで、明細を入力します。
>このフォームは、伝票番号でグループ化してあります。

この明細入力用のフォームを、伝票番号でリンクした
メインサブフォームにしたらどうですか?

戻る