みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
WIN FMP12を使用しております。
ポータルフィルタを使用してポータルにデータを表示する際に
新しいデータから30件のみ表示する方法とデータの作成日が本日より45日以内のデータのみを表示する方法を教えていただけないでしょうか?
宜しくお願いいたします。
ポータルに表示しているテーブル(明細)側で、今のリレーションの照合フィールドで
自己リレーションして、その関連テーブル側(明細 2)を日付の降順でソート設定すると
フィルタの式は 明細::日付 ≥ GetNthRecord ( 明細 2::日付 ; 30 )
45日以内はこれができてからということで。
45日以内は、同じような式でいいでしょうが。
30レコードの場合は、その式ではまずいのでは。30レコード目と同じ作成日のレコードが50レコードくらいあったら駄目ですね。
別に作成タイムスタンプを持たせて同じような式を評価するか、シリアル番号を持たせるか、でしょう。
Offline
>同じ作成日のレコードが50レコードくらいあったら駄目ですね。
全く考えてなかったですぅぅぅ
ポータルフィルタではないのですが、
ExecuteSQL関数を使ってリレーションで抽出する
サンプルを作ってみました。
Offline
ポータルフィルタを使用してポータルにデータを表示する際に
1.新しいデータから30件のみ表示する方法と
2.データの作成日が本日より45日以内のデータのみを表示する方法
1.フィルタ式: Let([#vl=List(ポータル::日付);#vl=RightValues(#vl;30)]; FilterValues(#vl; ポータル::日付)<>"")
2.フィルタ式: Get(日付)-45≤ポータル::日付
Offline
Pages: 1
[ Generated in 0.023 seconds, 7 queries executed - Memory usage: 508.96 KiB (Peak: 514.8 KiB) ]