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

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

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

You are not logged in.

Announcement

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


#1 2022-03-21 00:22:59

nekomatagi25
Member

レイアウト画面から変数の代入(入力)方法について

領収書のテーブルがあり、これには作成日として作成時に”YYYY/MM/DD"の形式で自動でデータを書き込んでくれています。フィールド名は「作成日」です。

何年 何月と二つの数字を入力してその月のデータを抜き出したいと思います(月次集計)。例 「2022」と[03] などを入力し、作成日フィールドで文字関数で合成して"2022/03"の条件で検索することを考えています。
画面上のレイアウトから、例えばグローバル変数(?)に数字を代入することはできるのでしょうか?例えば$$Year とか$$Monthというグローバル変数を作っておいて、画面上からこの変数に数値を入力するということです。
マージ変数は表示はできるのですが、入力はできませんよね(?)。領収書テーブルで作成年と作成月の2つのフィールドを追加して、作成時にそれぞれ自動で年.月を作成しておいて、これで検索してもよいのですが、
このために2つのフィールドを増やすのもどうかとも思います。 どなたかお教えください。よろしくお願いいたします。単純なことのようで、つまづいています。

Offline

#2 2022-03-21 08:12:38

himadanee
Guest

Re: レイアウト画面から変数の代入(入力)方法について

色々やり方はありますが、この場合は単純に検索モードで一時停止して、ユーザは作成日フィールドに「2022/3」と入れるようにするのが簡単でしょう。(日付なので03の必要はない)

他の1つは、検索モードで一時停止すれば、任意の既存のフィールドを検索条件の入力に流用できます。スクリプトでその値を取得して実際に検索したいフィールドに移動します。
もう1つは、普通にグローバルフィールドを2個作っておきます。グローバルフィールドはどのテーブルでも構わないので、専用のテーブルを作る人もいるようです。

最近のバージョンでは、対象をフィールドだけでなく変数を指定できるステップが増えたのですが、「カスタムダイアログを表示」では変数は使えないようです...

#3 2022-03-21 08:22:14

himadanee
Guest

Re: レイアウト画面から変数の代入(入力)方法について

ちなみに検索対象が日付なので検索条件に入力する形式は「2022-3」のように区切り文字が違ってもいいし、今年であれば「3」と入れるだけで検索実行時に2022/03/*に自動変換検索されますね。

#4 2022-03-21 10:43:14

Shin
Member

Re: レイアウト画面から変数の代入(入力)方法について

カスタムダイアログでも、変数への入力はできますよ。そこで、年と月を入力させ、YYYY/MM の変数を設定して検索させるのが一番単純かも。
もう一つは、適当な年月を設定したグローバルフィールドを作っておいて、マージで表示させておきます。それを加減するボタンを作っておいて、検索させる、という方法もありでしょう。ユーザーには、クリックだけですので、一番楽です。

年と月は、年月 として1個のフィールドで管理するほうが、色々と楽です。オススメは、Year ( 作成日 ) * 12 + Month ( 作成日 ) - 1 です。年跨ぎを考慮しないで増減ができますので、楽ですよ。

Offline

#5 2022-03-21 11:19:55

nekomatagi25
Member

Re: レイアウト画面から変数の代入(入力)方法について

himadaneeさん、Shinさん 早速のアドバイスありがとうございます。今まで変数に直接入力することがネックとなっていました。
参考にさせていただきます。重ねて感謝申しあげます。

Offline

#6 2022-03-21 11:40:02

himadanee
Guest

Re: レイアウト画面から変数の代入(入力)方法について

ああ、カスタムダイアログも変数が使えるようになったんですね。
「入力フィールドを表示」を選択してからフィールドか変数を指定するようになってました。
ヘルプの「入力フィールド」という文を見て、これは変数使えないままなのかと思ってしまった。

#7 2022-03-21 17:12:52

nekomatagi25
Member

Re: レイアウト画面から変数の代入(入力)方法について

そんな変数の使い方ができるのなら、ファイルメーカーのバージョンを最新にします。決心ができました。ありがとう。

Offline

#8 2022-03-22 09:06:13

チポ
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.005 seconds, 9 queries executed - Memory usage: 567.86 KiB (Peak: 588.57 KiB) ]