初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2017-02-01 16:43:40

検索
Guest

複雑な検索

FMPro、Go V12。
顧客No 日付 金額 種類 の4フィールドがあります。
検索のため、各4個のグローバルフィールドも作成し、ヘッダに置いています。
下記、検索スクリプトが作れず困っています。

グローバルフィールドに入力した値のみで
①全てが該当する場合。
②どれか一つでも該当する場合。

検索のためのグローバルフィールドは4個ありますが、何時も全フィールドに入力するとは限りません。
ご指導宜しくお願い致します。

#2 2017-02-01 16:57:56

Shin
Member

Re: 複雑な検索

少なくとも条件が1個は入っている事が前提で、
①全てが該当する場合。
検索モードへ
フィールド設定[顧客No ; g_顧客No]
フィールド設定[日付 ; g_日付]
フィールド設定[金額 ; g_金額]
フィールド設定[種類 ; g_種類]
検索実行

②どれか一つでも該当する場合。
検索モードへ
If ( not IsEmpty ( g_顧客No ) )
フィールド設定[顧客No ; g_顧客No]
新規検索条件
end If
If ( not IsEmpty ( g_日付 ) )
フィールド設定[日付 ; g_日付]
新規検索条件
end If
If ( not IsEmpty ( g_金額 ) )
フィールド設定[金額 ; g_金額]
新規検索条件
end If
If ( not IsEmpty ( g_種類 ) )
フィールド設定[種類 ; g_種類]
新規検索条件
end If
検索条件削除
検索実行

Offline

#3 2017-02-01 18:46:42

旅人
Member

Re: 複雑な検索

条件が空白でも無視されるので
If ( not IsEmpty ( g_種類 ) )分岐は要らないのではなかったかな?

Offline

#4 2017-02-01 22:14:46

Shin
Member

Re: 複雑な検索

or 検索では無視されましたっけ

Offline

#5 2017-02-02 12:11:04

検索
Guest

Re: 複雑な検索

Shin wrote:

少なくとも条件が1個は入っている事が前提で、
①全てが該当する場合。
検索モードへ
フィールド設定[顧客No ; g_顧客No]
フィールド設定[日付 ; g_日付]
フィールド設定[金額 ; g_金額]
フィールド設定[種類 ; g_種類]
検索実行

②どれか一つでも該当する場合。
検索モードへ
If ( not IsEmpty ( g_顧客No ) )
フィールド設定[顧客No ; g_顧客No]
新規検索条件
end If
If ( not IsEmpty ( g_日付 ) )
フィールド設定[日付 ; g_日付]
新規検索条件
end If
If ( not IsEmpty ( g_金額 ) )
フィールド設定[金額 ; g_金額]
新規検索条件
end If
If ( not IsEmpty ( g_種類 ) )
フィールド設定[種類 ; g_種類]
新規検索条件
end If
検索条件削除
検索実行

Shin様
有難うございます。
グローバルフィールドをフィールド設定に使う場合は変数にしてからと勘違いしていました。

②どれか一つでも該当する場合。
の検索ですが、種類はチェックボックスでAとBのどちらも選択する事があります。
どの様にすれば宜しいのでしょうか。

#6 2017-02-02 16:06:18

Shin
Member

Re: 複雑な検索

変数を設定($種類 ; g_種類)
loop
exit loop If ( IsEmpty ( $種類 ) )
  フィールド設定[種類 ; GetValue ( $種類 ; ValueCount ( $種類 ) )]
  新規検索条件
  変数を設定($種類 ; LeftValue ( $種類 ; ValueCount ( $種類 ) - 1 ))
end loop

Offline

#7 2017-02-06 09:11:09

検索
Guest

Re: 複雑な検索

Shin wrote:

変数を設定($種類 ; g_種類)
loop
exit loop If ( IsEmpty ( $種類 ) )
  フィールド設定[種類 ; GetValue ( $種類 ; ValueCount ( $種類 ) )]
  新規検索条件
  変数を設定($種類 ; LeftValue ( $種類 ; ValueCount ( $種類 ) - 1 ))
end loop

こちらのスクリプト入れ替えてテストができました。
Fmはこの様な事もできるのでしね。
有難うございました。

#8 2017-02-06 11:01:07

Shin
Member

Re: 複雑な検索

何を行っているのか、理解するように努めて下さいね。今後の応用が利きますので。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 7 queries executed - Memory usage: 512.98 KiB (Peak: 517.52 KiB) ]