みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
グローバルフィールドa,b,cとあり、
それぞれのフィールドに文字を入れてボタンを押すと
フィールドaの文字を $aという風にそれぞれ
$a,$b,$cと、変数にいれたのち、
違うテーブルのフィールドに対して検索実行をするのですが
全ての変数に文字が入っていれば検索結果を返してくれますが
どれか一つでも空白が有る場合、検索条件がありませんでした
と、帰ってきます。
調べたら、検索実行で、$aと、いれていても、変数の中身が空白だった場合
$aの中身が展開されず「$a」として検索されてしまい
検索結果がありませんとでてしまいます
空白があっても普通に検索させるにはどのようにすればいいのでしょうか?
よろしくおねがいします
>変数の中身が空白だった場合
>$aの中身が展開されず「$a」として検索されてしまい
どんな検索なのですか。
普通は空白の検索条件は無視されるので、そのようにはならないと思いますが。
Offline
返信ありがとうございます。
フィールドはグローバルでテキストです。
検索自体はスクリプトステップの
検索実行で、行っています。
検索実行画面で左側にフィールド 右側に変数を入れています
検索結果ご直ぐに、新しい検査実行ステップを入れて中身を確認したら
空白の変数が、変数のままだったので
一つのフィールドを検索するんですか?
それは、and , or ?
また、
> どれか一つでも空白が有る場合、検索条件がありませんでした
これと
> 検索結果がありませんとでてしまいます
これ値は異なるエラーですが、正確には?
Offline
ひょっとして、検索実行ステップで「検索条件を指定」していませんか?
これは検索条件を記憶させておくものです。
Offline
FM12以降なら
検索条件の指定に変数が使えますから、
指定・記憶出来ますよ。
Offline
グローバルフィールドの値で検索なので、変数使わない方がカンタンですよ。
検索モードに切り替え []
フィールド設定 [フィールドa; グローバルフィールドa]
フィールド設定 [フィールドb; グローバルフィールドb]
フィールド設定 [フィールドc; グローバルフィールドc]
検索実行 []
検索実行 [記憶する] で変数使えますが、変数「$a」が空欄の値が "$a" になるような事はありません。
どこかスクリプトの記述が間違っているのでしょう。
上記のようにご自身がどのようなスクリプトの記述をしているのか明記ずれば、問題が見つけやすくなります。
Last edited by qb_dp (2017-01-25 13:51:50)
Offline
変数が定義されてないときは変数が展開されないという、あほな仕様です。
変数が定義されてないときは変数が展開されないという、あほな仕様です。
あ~! ほんとですね。知りませんでした。
なので、以下↓間違いです。検証不足でした...。
検索実行 [記憶する] で変数使えますが、変数「$a」が空欄の値が "$a" になるような事はありません。
変数を設定 [$a; 値:""]
カスタムダイアログを表示[$a]
では、空欄なんですけどね.....。
Offline
確認しました
なんとアホなんでしょう・・・・・呆れた
回避方法は
記憶した検索実行ではなく
検索モードにして
各フィールドに各変数を書き込んで
記憶しない検索実行
ということですねぇ。
検証ファイルは
http://yahoo.jp/box/pzBc1t
にあります
Offline
空白の条件ならば、"*" を設定しておいたらいかがでしょう。
Offline
空白の条件ならば、"*" を設定しておいたらいかがでしょう。
実験して見たんですが
この条件だと
例えば AとCにデータがあってBが空欄のデータが存在するとき
Bに空欄の条件を入れると
Bが空欄のレコードは無視されてしまうことになりました。
Offline
Pages: 1
[ Generated in 0.005 seconds, 10 queries executed - Memory usage: 521.4 KiB (Peak: 526.3 KiB) ]