出産前後の痔にはご注意!

初心者です。お手間とらせます。ファイルメーカーで期間の検索を行ないたいと思います。日付...日付でこの間の検索が行なえることは知っています。実際に運用する場合、私より初心者の方が、使用します。期間の初日と期間の末日を入力すれば、内部的に、記号「...」を使用しないで、検索を行なえるようにしたいと思います。どなたかお力をお貸しください。よろしくお願いいたします。

A 回答 (2件)

検索をスクリプトにすれば出来ます。

ただし、検索時にスクリプトを実行させるボタンを押す
必要があります。

・「期間初日」と「期間末日」という日付グローバルフィールドを新たに作ります。

・スクリプトで検索モードにして、現在のファイルの日付フィールド(検索フィールド)を
 フィールド設定ステップで「期間初日」& “...”& 「期間末日」にして検索実行ステップ。
または
・「期間初日」<-「日付」 and 「日付」<=「期間末日」の自己リレーションを作って
 関連レコードのみ表示ステップです。
    • good
    • 1
この回答へのお礼

ご返答ありがとうございます。私の知識不足でわからないところもありますが、一度やってみます。

お礼日時:2006/07/01 07:11

とりあえず、「初日」と「末日」のフィールドを作っておきましょ


う。もちろん日付形式です。「日付」フィールドにぶち込んで検索
したいことにします。

計算結果を挿入 [選択, 「日付」, 「DateToText(初日)&"..."&DateToText(末日)」]
消去 [「初日」]
消去 [「末日」]
検索実行[]

消去のステップを忘れると、該当0になっちゃいます。私がそんな簡
単なことでたっぷり2時間悩んだのは、職場には秘密。
    • good
    • 0
この回答へのお礼

早速のご回答ありがとうございます。でも、回答して頂いた内容を私なりに確認してみないとわからない知識レベルなので、また重ねてお伺いするかもしれません。その時は、よろしくお願いいたします。

お礼日時:2006/06/30 10:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

関連するカテゴリからQ&Aを探す

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

QFileMakerで、フィールドの値が空欄だった時に0を返す計算式

ファイルメーカーで、フィールドの値が空欄だった場合に
数値の0を返し、"空欄ではなかった時はそのままの値を返す"
計算式を教えてください。

IsEmptyを使ってみたのですがうまく行きませんでした。

FileMaker Pro7を使っています。
よろしくお願いします。

Aベストアンサー

結果=Case(IsEmpty(そのフィールド);0;そのフィールド)

Qファイルメーカー 一ヵ月後の日付をだすには?

入力日、タイプ:日付に2005/8/5と手動でいれたら、
有効期限(タイプ:日付)に自動で2005/9/5というように、入力日から一ヵ月後の日付を出すにはどのような計算式をいれたらよいのでしょうか?

参考書に載っていた
Date(Month(入力日)+ 1 ; Day(入力日); Year(入力日)という式を使うと
2005/08/01 と打ち込むと、2005/9/9 とでてしまいます。
2005/12/30の場合は、2006/1/1と出ます。
どうしたら、よいか教えてください。

Aベストアンサー

---------------------------------------------------
If ( Month ( Date ( Month ( 入力日 ) + 1 ; Day ( 入力日 ) ; Year ( 入力日 ) ) ) > Month ( Date ( Month ( 入力日 ) + 1 ; 1 ; Year ( 入力日 ) ) )
;
Date ( Month ( 入力日 ) + 1 + 1 ; 0 ; Year ( 入力日 ) )
;
If(Day ( Date ( Month ( 入力日 ) ; Day ( 入力日 ) + 1 ; Year ( 入力日 ) ) ) = 1
;
Date ( Month ( 入力日 )+1+1 ; 0 ; Year ( 入力日 ) )
;
Date ( Month ( 入力日 ) + 1 ; Day ( 入力日 ) ; Year ( 入力日 ) ))
)
------------------------------------------------------
フィールドタイプは「計算」で結果は「日付」です。

私が過去に他の方の回答に使用した式です。コピペで使えます。
検証は適当ですのでご自分でどうぞ。

---------------------------------------------------
If ( Month ( Date ( Month ( 入力日 ) + 1 ; Day ( 入力日 ) ; Year ( 入力日 ) ) ) > Month ( Date ( Month ( 入力日 ) + 1 ; 1 ; Year ( 入力日 ) ) )
;
Date ( Month ( 入力日 ) + 1 + 1 ; 0 ; Year ( 入力日 ) )
;
If(Day ( Date ( Month ( 入力日 ) ; Day ( 入力日 ) + 1 ; Year ( 入力日 ) ) ) = 1
;
Date ( Month ( 入力日 )+1+1 ; 0 ; Year ( 入力日 ) )
;
Date ( Month ( 入力日 ) + 1 ; Day ( 入力日 ) ; Year ( 入力日 ) ))
)
------...続きを読む

QFilemakerで検索フォームを作りたい

Filemaker 11 Pro Advanced で、以下の様な機能を持つフォームを作成したいと思っております。

1.フォームがあり、そこに検索ボックスがある。
2.そこの検索ボックスで検索すると、データベースA上から該当するレコードを検索し、同フォーム上にリスト表示
3.そのあと、その検索結果のレコードをダブルクリックとかなんとかすると、そのレコードのいくつかの情報が、フォームに自動入力される。(このフォームに入力すると、データベースBに書き込まれるものとします)
4.さらに、入力者が追加情報をフォームに書き込んで終了。

Filemaker初心者なもので、1番から3番をどうやって実装するのかどうかがわかりません。
お手数ですがご教授お願いいたします。

また、Filemakerの入門レファレンスのWebや書籍があればそちらも教えていただければ幸いです。

Aベストアンサー

放置されていましたので、簡単に
1、2は基本的な機能です。レイアウトモードにし、検索したいフィールドを含むレイアウトを作成します。そのとき「レコードを表示」の選択をAにしておきます。データベースAを対象にするという意味です。
次に検索モードにし、該当するフィールドに入力すると、該当するレコードが表示されます。「リスト表示」を選ぶと該当するレコードがリスト表示されます。
3は、スクリプトを作って、ボタンに割り付けておけば可能です。

参考書として「FileMaker Pro大全」を使っています。古いです。
最近では少し新しい「FileMaker Pro大全 ver.7~9 edition」が出ているようです。網羅的に書かれた分厚い本です。
それ以降出版された本はチェックしてませんので、本屋さんででも確認ください。
FileMakerはバージョンが上がってもほとんど機能は変わりませんので、少し古いバージョンの本でも十分使えます。

Qファイルメーカで検索窓の作成

ファイルメーカpro11でレイアウト画面内に自分で検索窓を作りたいのですがうまく行きません。
テキストの入力欄があってそこに品番を入力し検索ボタンをおすと検索結果が表示されるというシンプルなモノですが、グローバルフィールドをつくったりいろいろためしましたがだめでした。
初心者な質問で申し訳ありませんがよろしくお願いします。

Aベストアンサー

簡単なのは
元レイアウトに「検索モード」というボタンを作ってレイアウト切り替え(レイアウト2へ)
にしておく。
新規レイアウトでレイアウト2を作り、検索条件入力用のグローバルフィールドを置き
その横に「検索実行」ボタンを配置。
検索実行ボタン用のスクリプトを作る。
 ・切り取り グローバルフィルド
 ・レイアウト切り替え 元レイアウト
 ・検索モードに切り替え 一時停止しない
 ・貼り付け 検索するフィールドに
 ・検索実行 条件を記憶しない

検索レイアウトに移動する部分を新規ウインドウにしてウインドウサイズ変更などを
加えると、よりそれらしくなります。
検索実行スクリプトは検索しても該当するレコードが無かった場合等のためのエラー
処理も考えて下さい。

Qファイルメーカーでの集計

毎日部署ごとにで作業日報をとっており、その時間をつけています。

各項目の小計時間が、全体の合計になるようにフィールド設定しています。
現在毎日の合計時間はでているのですが、毎月の合計がでていません。

現レイアウトを複製し、合計時間をSUM関数でやってみたところ、検索した期間での合計にはならず全体の合計のままになっています。

例えば、4月分の合計(4月1日~30日)の合計をだずにはどのようにすればいいでしょうか。

Aベストアンサー

簡単なのはリレーション集計です。
別テーブルからの場合、元テーブルの日付から年月を取り出します。例201204とか。
別テーブルに部署とこの年月フィールドを作り、元テーブルとリレーション。
別テーブルにSum(元テーブル::時間)の計算フィールドを作って、部署と年月を入力
すると出ます。もちろん別でブルでは無く元テーブルの自己リレーションでも可能。

QFileMakerのcase関数の作り方

合計20個の条件(条件1~条件20)を詰め込んだ「case関数」を書いてみたところ、正常に結果を返してきてくれたのは最初の2つ(条件1、条件2)だけで、条件3以降は全て条件2の結果を返してきます。なぜでしょうか??
数十個に及ぶcase関数は、そもそも無理なのでしょうか? 記号の入れ方のコツをご指南ください。

Aベストアンサー

Case文の書き方が間違ってますね。
2行目以降も、計算式の内容が必要です。

あと、計算式は見やすいように以下のような表記にした方がいいですよ。
Case(
希望到着年月="2014年8";"August, 2014";
希望到着年月="2014年9";"September, 2014";
希望到着年月="2014年10";"October, 2014";
あとは同様に~~
)

Qファイルメーカで、こういう検索条件

MacOS10.3 / FileMaker4.0

初歩的な質問なのですが、検索条件で、何も入っていないデータだけを
検索したいときはどうすればよいでしょうか?
ちなみに、データが空以外のものだけを検索する場合は「>0」ですよね。

それと、ご存知であれば、ファイルメーカ関係のよいサイトがあればお教えください。

Aベストアンサー

空以外のデータ検索する場合は
1、任意の1文字を検索する場合は「@」
2、0個以上の任意文字列を検索する場合は「*」
です。
したがって空のデータと任意の文字の複数条件検索は上記と「=」を組み合わせればOKです。
空データが検索できない理由はファイルの中身やリレーションの構成などを見ないとよく分かりませんが、因みに当該データがリレーション又はルックアップデータならそのファイルデータが入った状態でコピーし、リレーションを削除して検索を試してみられてはどうでしょうか。

Qファイルメーカ 検索実行せずに該当するレコード数を知りたい

FM7です。

条件に合致したレコード数を知るために、現在は検索実行をした後に
Get(対象レコード数)
として求めていますが、検索実行をせずに知ることは出来ますか?

テーブルA
顧客-----地区名-----担当者
テーブルB
担当者---顧客数(計算 If テーブルAの担当者 = テーブルBの担当者 then 担当する顧客の数)

のような感じになると、ありがたいのですが。

Aベストアンサー

テーブルAとBを担当者でリレーションしてあってAは1レコードに顧
客一人と思っていいでしょうか。

ウチは5.5ですが、リレーション名が「担当」として
count(担当::顧客)
で出来てますよ。7でも同じだと思います。

Qフィールドの中のテキストを分割したい(ファイルメーカー)

よく分からないタイトルですみませんm(_ _)m

先日もこちらでファイルメーカの事を質問したばかりで大変恐縮なのですがどうかお助け下さい。
現在ファイルメーカー5.5 macで作った住所録があるのですが、これの修正を頼まれたのです。
修正内容は現在、「氏名フィールド」というものがあるのですが、これを「氏フィールド」と「名フィールド」に分けたいと言う事なのです。

「氏名フィールド」の氏と名の間に全角スペースが入っておりますのでこれをキーワードに計算式を作れば何とかなると思うのですがそれが???なのです。

一つの「氏名フィールド」から氏と名の間にスペースが入っているものを新たに「氏フィールド」と「名フィールド」分ける。また、スペースの入っていないものは「氏フィールド」に分ける方法をどうか教えてください。よろしくお願いします。

Aベストアンサー

◆フィールド「氏」の計算
1.全角スペースの位置を出す
Position(氏名," ",1,1)
2.「氏名」からその位置の1文字前まで抽出する

フィールド「氏」=
Left(氏名,Position(氏名," ",1,1) - 1)

◆フィールド「名」の計算
1.「氏名」から『フィールド「氏」と全角スペース』を
  取り除く(ヌルに置換する)

フィールド「名」=
Substitute(氏名,Left(氏名,Position(氏名," ",1,1) - 1) & " ","")

Qファイルメーカー複数フィールドのコピー&ペースト

ファイルメーカPro8で複数のフィールド項目をコピーし別のテーブルを新規作成し、ひとつのテキストフィールドにペーストするスクリプト方法を教えてください。1つなら可能何ですが、・・・。

Aベストアンサー

ファイルメーカPro6までしか、使っていませんが、
スクリプトで、フィールド設定を使用しては、如何ですか?
まずは、フィールド定義で、一時作業用のグローバルフィールドをテキストタイプで新規に作成しておきます。
次に、スクリプトで、フィールド設定を使用します。
フィールド設定の指定フィールドを先ほど作った、グローバルフィールドにする。
(内容)指定としては、計算式で、コピペしたい複数のフィールドを & で繋げた物を指定します。

その次のステップとして、新規レコード作成

更に、もう一度、フィールド設定を使用します。
フィールド設定の指定フィールドをペーストしたいテキストフィールドにする。
(内容)指定としては、グローバルフィールド を指定する。

これでいけます。


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング