過去の桐井戸端BBS (桐ver.9) |
21570 | 入力支援を使って選んだ文字列で検索するフォームを作成したい | 桐初心者 | 2003/07/24-16:51 |
こんにちわ、桐初心者です。 入力支援を使ってその駅に停まる新幹線を検索する検索するフォームを作成しているのですが、うまくいきません。 どういうことかというと、以下の通りです。 <東海道・山陽新幹線到着駅.tbl> オートナンバー | 到着駅 | のぞみ停車 | ひかり停車 | こだま停車 1 東京 ○ ○ ○ 2 新横浜 ○ ○ ○ 3 小田原 × ○ ○ 4 熱海 × ○ ○ 5 三島 × ○ ○ 6 新富士 × × ○ 中略・・・ 33 小倉 ○ ○ ○ 34 博多 ○ ○ ○ (オートナンバーは到着駅が50音順にならないように設定) この表を元に、下のフォームを作ります。 <新幹線検索.wfm> 駅名から停車する新幹線を検索 −−−−−−−−−−−−−−−−−−−−−− 駅名検索 | 東京 ▼ | のぞみ ○ | ひかり ○ 検索開始 | こだま ○ | が停車します。 というフォームです。 駅名検索の下にある、入力支援付きテキストボックス(上では東京 ▼です。)から表にある駅名を選ぶ、 「検索開始」を押してのぞみ・ひかり・こだまの結果を表示させたいのですが、どのようにしたらよいのでしょうか? | |||
21572 | Re:入力支援のことで | うにん | 2003/07/24-19:48 |
記事番号21570へのコメント ><新幹線検索.wfm> > 駅名から停車する新幹線を検索 > −−−−−−−−−−−−−−−−−−−−−− > 駅名検索 | > 東京 ▼ | のぞみ ○ > | ひかり ○ > 検索開始 | こだま ○ > | が停車します。 検索開始を押さなくても、右側の検索結果の部分は #表引き(&駅名,=,"東海道・山陽新幹線到着駅.tbl",[到着駅],[のぞみ停車]) などで表示すれば済むと思うのですが。 | |||
21603 | Re:これって入力支援かなぁ? | 悲しげ | 2003/07/27-19:39 |
記事番号21570へのコメント どもっ、桐初心者さん、 お望みのことを、「入力支援ボタン」を使って実現する方法は判りません。 が、普通の「コマンドボタン」でなら簡単に実現できると思います。 例えばこの表自体の一覧表(伝票)フォームを作成し、 そのヘッダ部に検索文字列入力用のテキストを設け、ソースを「&STR」とする。 別にコマンドボタン「検索開始」を設けて、 機能名 同パラ 表示 確定する フォーカス移動 t到着駅 検索_比較式 _&STR このようにして、検索用テキストに値を入れてからコマンドボタンを押せば、 当該駅の行にジャンプするので、一目瞭然かと思うのですが。 さらに云えば「新富士」で 「のぞみ× ひかり× こだま○が停車します」(a) または 「こだまが停車します」 (b) と表示させるよりも 6 新富士 × × ○ のままで見せる方が、より見やすいような気がしないでもありません。(^^;) もっとも、(a)のように見せたいのなら、簡単な方法としては別項目を設けて、その項目計算式に "のぞみ"+[のぞみ] +" ひかり"+[ひかり] +" こだま"+[こだま]+"が停車します" とするか、あるいは(b)ならば #部分列(#条件選択([のぞみ]="○","、のぞみ")+#条件選択([ひかり]="○","、ひかり")+#条件選択([こだま]="○","、こだま"),2)+"が停車します" と設定しておいて、この別項目のみを表字させるとか。 検索文字列入力用フォームを、どうしてもデータ表と別にしたいのなら話は別ですが、 既に長くなりすぎたので、今宵はこの辺で。 | |||
21604 | Re:これって入力支援かなぁ? | うにん | 2003/07/27-20:59 |
記事番号21603へのコメント なるほど。 いわれてみれば、そもそも入力支援(表引き)で駅名を件の表から選択するには 件の表とは別の表がフォームの対象表になっていないと不可能ですから、何か変ですね。 入力支援を単なるドロップダウンリストにしてもいいですが、表にあるデータをわざわざ別にリストにするのもあほみたいですし。 #余談ですが、ファイルメーカーだと任意の表の項目値を単一化してドロップダウンに #してくれる機能があります。 ちなみに私の#表引き()を使った例は、駅名のテキストソースを変数にすれば キーを指定して1つのレコードからだけデータを表示するフォームなので対象表は不要では ないかと思ったのですが、対象表がないと#表引き()も使えないのでした。 (確か前にも話題になりましたね。関数では自表は不要なはずなんですが、値条件の表引きと処 理が共有されてるんでしょうかね。。。) >#部分列( >#条件選択([のぞみ]="○","、のぞみ") >+#条件選択([ひかり]="○","、ひかり") >+#条件選択([こだま]="○","、こだま") >,2)+"が停車します" >と設定しておいて、この別項目のみを表字させるとか。 これ、わかりやすそうですね。 | |||
21678 | Re:これって入力支援かなぁ? | 桐初心者 | 2003/07/31-10:39 |
記事番号21604へのコメント 返事が遅くなりましたが、悲しげさん、うにんさんありがとうございます。 早速やってみることにします。 | |||
21704 | Re:これって入力支援かなぁ? | 桐初心者 | 2003/08/01-11:29 |
記事番号21604へのコメント うにんさん >なるほど。 >いわれてみれば、そもそも入力支援(表引き)で駅名を件の表から選択するには >件の表とは別の表がフォームの対象表になっていないと不可能ですから、何か変ですね。 >入力支援を単なるドロップダウンリストにしてもいいですが、表にあるデータをわざわざ >別にリストにするのもあほみたいですし。 > >#余談ですが、ファイルメーカーだと任意の表の項目値を単一化してドロップダウンに >#してくれる機能があります。 > >ちなみに私の#表引き()を使った例は、駅名のテキストソースを変数にすれば >キーを指定して1つのレコードからだけデータを表示するフォームなので対象表は不要では >ないかと思ったのですが、対象表がないと#表引き()も使えないのでした。 >(確か前にも話題になりましたね。関数では自表は不要なはずなんですが、値条件の表引きと処 >理が共有されてるんでしょうかね。。。) > >>#部分列( >>#条件選択([のぞみ]="○","、のぞみ") >>+#条件選択([ひかり]="○","、ひかり") >>+#条件選択([こだま]="○","、こだま") >>,2)+"が停車します" >>と設定しておいて、この別項目のみを表字させるとか。 > >これ、わかりやすそうですね。 > ありがとうございました。 おかげで完成しました。 |