過去の桐井戸端BBS (桐ver.8)
13808 項目属性の表引きで検索項目を絞り込みに出来ませんか? YATA 2001/11/02-09:09
表の、項目属性で「表引き」のタブがありますが、
あれの「検索値」を「絞込み」にすることは無理なのでしょうか?
今、取り組んでいるのは、伝票発行システムなのですが内容はいたってシンプルです

注文台帳.TBL・・・[業者名][仕入れ商品名][業者担当者][仕入れ単価]・・・
業者コード.TBL・・・[業者コード][業者名][業者担当名]・・・・
仕入商品台帳.TBL・・・[業者コード][商品名][商品単価]・・・・

注文台帳.TBLがメインで入力となり[業者名]は「項目属性」の「表引き」で
業者コード.TBLの[業者コード]を検索項目として呼び出し「値項目」の[業者名]を入力します。

ここまでは問題ないのですが、[商品名]のところで「仕入商品台帳.TBL」をもとに
[業者コード]を検索項目として値項目を[商品名]登録しておくと
当然の事ながら、検索項目が、その業者名のレコードをフォーカスしているのですが
他のデータ(業者名のデータも)出てきます。

この時点で何とかある[業者コード]で絞り込んだ「入力補助画面」?
を出すことは出来ないでしょうか。
現状は「仕入商品台帳.TBL」の件数が多くないので良いのですが、
これが膨らみたくさんの業者と商品が出てきては選び出すのが大変です。
解決方法があれば教えてくださいますようお願いいたします。


13814 Re:項目属性→表引きで検索項目を絞り込みに出来ませんか? ONnoji 2001/11/02-11:45
記事番号13808へのコメント
YATAさん、こんにちは。

>表の、項目属性で「表引き」のタブがありますが、あれの「検索値」を「絞込み」
>にすることは無理なのでしょうか?。今、取り組んでいるのは、伝票発行システム
>なのですが内容はいたってシンプルです

桐v8でフォームを使用されるなら…という条件が付きますが、
以下の過去ログが役に立つかもしれません。
一度ご覧になると参考になるかもしれません。

http://www.fuku3.com/~habata/kbbs/kakov8/11535.htm

私も参加したツリーですが、昔のことなので詳しいことは忘却しました(^^ゞ

13817 Re:項目属性→表引きで検索項目を絞り込みに出来ませんか? アックン 2001/11/02-16:17
記事番号13808へのコメント
YATAさん、こんにちは。
長文のため分割してアップします。
気合い入れて読むと疲れるので、ほどほどにしておいてください。(^^;

こういうときには表を使うよりも、一覧表フォームでイベントを使うといいですよ。
これを機会にぜひトライしてほしいと思うので、ちょっと詳しく書きます。

と、その前にちょっと項目名を確認させてください。
質問では"注文台帳.TBL"に[業者コード]が見あたりませんが、実際にはありますか。
もしないときは、下記イベント記述中の 業者コード を 業者名 に置き換えてください。

もしうまくいかないときは、各表引きの設定を具体的に書き写して質問してくださると、
正確にお答えできると思います。

作成手順:
まず最初に、"注文台帳.tbl"の表定義画面で、
[仕入れ商品名]の項目属性パネルの表引き(タブ)の「編集表を使用する」にチェックマークを入れます。
表を保存終了します。

つぎに一覧表フォームを作成します。
(文章だけではわかりにくいと思うので、マニュアルも読んでください。)

1)フォームの<新規作成>から一覧表を選びます。
2)フォームの名を注文台帳とします。
3)編集対象表に注文台帳.tblを指定します。
4)使用する項目は、一応すべての項目を選びます。(後で削除できます。)
5)グループ項目は、日付などを選ぶか、なしでもいいです。
6)完成したフォームを定義画面で開きます。

7)メニューバーのオブジェクトの属性(属性画面が出ます。)
 この画面が消えないように、左上の方にあるピンク色の押しピンをクリックして留めます。)

8)「オブジェクトの属性」画面の「イベント」(タブ)→「イベントファイル名」
 任意のファイル名にします。(ファイルは後ほど自動作成します。)

9)メニューバーの書式→オブジェクトのリスト(リスト画面が出ます。)

(続く)
13818 Re:項目属性→表引きで検索項目を絞り込みに出来ませんか? アックン 2001/11/02-16:18
記事番号13808へのコメント
(続き)

10)まず t業者コード
 「オブジェクトのリスト」画面の、「フォーム明細部」にある t業者コード をクリッ クして選択します。
 選択するのはラベル(a業者コード)ではなく、テキスト(t業者コード)です。
 フォームの業者コード(テキストボックス)をクリックしても選択できます。

11)「オブジェクトの属性」画面の「イベント」(タブ)→
 「イベント」の「ソース値更新」をダブルクリック。
(この操作でチェックマークがついて、イベント定義画面(kev)が開きます。kevファイルが自動作成されたわけです。
その画面には次のような行が自動的に出来ています。)

手続き定義開始 t業者コード::ソース値更新()

手続き定義終了

この上と下の2行は変更しないでください。
中の行をつぎのように書きます。
(中5行だけブラウザから桐にコピーしてください。)

手続き定義開始 t業者コード::ソース値更新()
 &str = [業者コード]
 if( &str )
   編集表  "仕入商品台帳"
   絞り込み [業者コード]=&str
 end
手続き定義終了


12)今度は同様にして、t仕入れ商品名 を設定します。
 フォームの定義ウィンドウをクリックするか、メニューバーの「ウィンドウ」で選んでアクティブにします。
  t仕入れ商品名 を選択し、「イベント」の「フォーカス喪失」をダブルクリックします。
(再びイベント定義ファイル(kev)のウィンドウになります。)

13)下記のように書きます。(中4行をコピーしてください。)

手続き定義開始 t仕入れ商品名::フォーカス喪失(文字列 &取得オブジェクト名)
 if( &str )
   編集表 "仕入商品台帳"
   絞り込み解除 *
 end
手続き定義終了

14)イベント定義画面の左上方、左から二つ目のアイコン「ファイル編集」をクリックします。
これで全体行が表示されます。
上の方はこうなっています。
名札 メイン



15)次のように名2行を書き加えます。
名札 メイン
  変数 文字列 { &str }
  表 "仕入商品台帳"


16)全体はこのようになります。
名札 メイン
  変数 文字列 { &str }
  表 "仕入商品台帳"


手続き定義開始 t業者コード::ソース値更新()
 &str = [業者コード]
 if( &str )
   編集表  "仕入商品台帳"
   絞り込み [業者コード]=&str
 end
手続き定義終了

手続き定義開始 t仕入れ商品名::フォーカス喪失(文字列 &取得オブジェクト名)
 if( &str )
   編集表 "仕入商品台帳"
   絞り込み解除 *
 end
手続き定義終了

17)こうなっていたら、ひとまず出来上がりです。
フォーム定義ウィンドウをアクティブにして、いったん保存終了します。
イベント定義ファイル(kev)も一緒に保存終了します。

18)フォームを実行してテストします。

アックン(=^・^=)
13839 Re:項目属性→表引きで検索項目を絞り込みに出来ませんか? YATA 2001/11/03-21:50
記事番号13818へのコメント
アックンさん毎度有難うございます。
早速、試したところ私の欲しかった入力環境を手に入れることが出来ました。
イベントというのを始めて使用しましたが、その便利さにびっくりしています・・・

戻る