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

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

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

You are not logged in.

Announcement

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


#1 2016-11-26 05:41:51

Hide
Member

複数の日付をもつレコードの並び替え

OS:[MAC10.10] FileMaker Ver:[FMP15]

ファイルメーカー初心者です。

user1 予定1 2016/10/01  予定2 2016/11/01  予定3 2016/12/01
user2 予定1 2016/10/10  予定2 2016/10/20  予定3 2016/11/10
user3 予定1 2016/11/05  予定2 2016/11/15  予定3 2016/12/15

といった3つの予定日を持つレコードがあり、それらの予定日を「現在の日付」を基準に、
「完了」、「未完了」で分けて表示したいのですが、どのようなやり方が考えられますでしょうか。

例えば「現在の日付」が「2016/11/02」とすると以下のように表示したいです。

[完了]
2016/10/01 user1 予定1 
2016/10/10 user2 予定1
2016/10/20 user2 予定2
2016/11/01 user1 予定2

[未完了]
2016/11/05 user3 予定1
2016/11/10 user2 予定3
2016/11/15 user3 予定2
2016/12/01 user1 予定3
2016/12/15 user3 予定3

※当日の予定は「未完了」に含めるようにしたいです。

Last edited by Hide (2016-11-26 05:52:11)

Offline

#2 2016-11-26 08:32:59

シャチ
Member

Re: 複数の日付をもつレコードの並び替え

Hide wrote:

OS:[MAC10.10] FileMaker Ver:[FMP15]
user1 予定1 2016/10/01  予定2 2016/11/01  予定3 2016/12/01
user2 予定1 2016/10/10  予定2 2016/10/20  予定3 2016/11/10
user3 予定1 2016/11/05  予定2 2016/11/15  予定3 2016/12/15

この日付データの持ち方で処理が変わるのではないかと思います。
3つの日付データをリレーションで他のテーブルにもたせていれば
その別テーブル内で
ユーザーと日付の大小で検索することで解決できるますが
同じレコードの中に3つのデータをもたせていると
処理は面倒にならないかなぁ。。。

ということで
ますは、現時点でどのようにもたせているかをお書きになられるといいかと思います。

Offline

#3 2016-11-26 10:21:43

Hide
Member

Re: 複数の日付をもつレコードの並び替え

> ますは、現時点でどのようにもたせているかをお書きになられるといいかと思います。

返信ありがとうございます。
残念ながら、現状これらの日時に他のテーブルとのリレーションなどはもたせていません。
よろしくお願いします。

Offline

#4 2016-11-26 10:56:15

シャチ
Member

Re: 複数の日付をもつレコードの並び替え

Hide wrote:

>
残念ながら、現状これらの日時に他のテーブルとのリレーションなどはもたせていません。

こういうことではなく
現状のフィールドの構成を聞いているのですが・・
フィイルの設定状況がわかれば
アドバイスも受けやすくなるかと思います

Offline

#5 2016-11-26 11:41:06

tim
Guest

Re: 複数の日付をもつレコードの並び替え

日付フィールドが3つ作ってあるんでしょうか。
別のテーブルに完了という計算フィールドを作るとすると、こんなんでできるかも
ExecuteSQL("
SELECT \"日付1\", \"user\",'予定1'
FROM \テーブル名\"
WHERE \"日付1\"<?
UNION
SELECT \"日付2\", \"user\",'予定2'
FROM \テーブル名\"
WHERE \"日付2\"<?
UNION
SELECT \"日付3\", \"user\",'予定3'
FROM \テーブル名\"
WHERE \"日付3\"<?
ORDER BY 1
";"";"";Get(日付);Get(日付);Get(日付))

#6 2016-11-26 12:17:37

Shin
Member

Re: 複数の日付をもつレコードの並び替え

1レコードの中に、ユーザーID と、フィールドがいくつかあって、日付がいくつか入っている、という構成ですと、どうしようもないでしょうね。
1レコードの中に、ユーザーID と、日付が1個だけ入っている、というものでしたら、日付でソートして、条件付き書式で色分けするだけでも十分かもしれませんし、計算フィールドで完了、未完了を計算させ、それで集計しても良いかもしれません。

Offline

#7 2016-11-26 22:49:14

旅人
Member

Re: 複数の日付をもつレコードの並び替え

予定1〜予定3はポータルに入力するようにしたら
いろんな集計がとても楽になります。

Offline

#8 2016-11-27 06:15:08

Hide
Member

Re: 複数の日付をもつレコードの並び替え

timさん、ありがとうございます。
すみません、当方SQLの知識がないので、今回はパスさせてもらいます。今後、知識がついてきてわかるようになってきたらこの例を見返して勉強させてもらいます。
シャチさん、Shinさん、旅人さん、
いろいろとアドバイスありがとうございます。
皆様方の意見より、現状1レコードの中に複数の日付のフィールドがある状態で、当方がやりたいことは難しいのかなと感じました。
となると、既存のデータから、1つのレコードに、userIDと予定種類、日付を1つづつ持たせるようなテーブルを新たに造って対応しようかと思います。
みなさま、アドバイスありがとうございました。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.007 seconds, 12 queries executed - Memory usage: 516.95 KiB (Peak: 521.48 KiB) ]