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

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

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

You are not logged in.

Announcement

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


#1 2023-04-06 17:13:06

中田
Member

抜けのある営業日のn営業日前の日付

いつもお世話になっております。

不定期で営業していて1営業日1レコードとします、5営業日前の日付はどのように求めれば良いでしょうか?
現状リレーションで日付>日付で自己リレーションを張り降順でソートし
GetValue ( List ( 日付 ) ; 5 )
で良いかなとも思うのですがレコードが多い場合など無駄な計算をさせている気がします。

良い方法ありましたらご教授宜しくお願い致します。
(GetNthRecordはレイアウトに依存させないため使いたくないです)


MacOS FM18

Offline

#2 2023-04-06 17:39:09

himadanee
Guest

Re: 抜けのある営業日のn営業日前の日付

GetNthRecordはリレーションに依存しますがレイアウトには依存しませんよ?

#3 2023-04-06 22:38:08

中田
Member

Re: 抜けのある営業日のn営業日前の日付

himadanee様、返信ありがとうございます。

申し訳ありません。
レイアウトに依存ではなくソート状態に依存でした。
値の更新をする際にソートを気にしたくないので。

宜しくお願い致します。

Offline

#4 2023-04-07 06:58:39

himadanee
Guest

Re: 抜けのある営業日のn営業日前の日付

関連レコードのソート状態はリレーションに定義されてるものなので、画面上のソート状態とは別です。
他の用途で現在のリレーションをソートしたくないなら、この取得専用のリレーションを別に定義すればいいです。

#5 2023-04-07 07:02:43

himadanee
Guest

Re: 抜けのある営業日のn営業日前の日付

とはいえ、大量レコードのソートに時間がかかるのは確かですから、日付>日付だけでなく1か月分に限定するとかした方が速くなるかも?

別のアイデアとしては、While関数で5件得るまで1日ずつレコードがあるかチェックする計算式にすれば、リレーションは不要です。

#6 2023-04-07 10:13:02

チポ
Member

Re: 抜けのある営業日のn営業日前の日付

> 1営業日1レコード
ですから、
50年前からでもレコード数18000程度ですよ。
そんなに気にするレベルではないでしょう。

あえて、なら、、
目的の日付のフィールドを入力値の自動化にすれば一番負荷が少ないのでは。

Offline

#7 2023-04-07 11:40:21

中田
Member

Re: 抜けのある営業日のn営業日前の日付

himadanee様、返信ありがとうございます。
仰るとおりリレーション先の参照はソート状態固定されているので問題ありませんでした。
(何となくでGetNthRecordを避けていて思慮不足でした)
ご教授ありがとうございます。

チポ様いつも教えて下さりありがとうございます。
確かに1万レコードもないのでスピードは気にならないのでGetValue とListで求めたいと思います。

ご教授ありがとうございました。

Offline

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.020 seconds, 9 queries executed - Memory usage: 511.63 KiB (Peak: 518.75 KiB) ]