みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
FMP15 Windows
カレンダーを作成しています。
休日テーブルを作成して、年間の日曜日を含む休日を登録してカレンダー表示するときに
休日テーブルに存在している日を赤に表示させたくて処理しています。
1.カレンダーテーブル(カレンダー)
開始日 :日付
日付一覧 :計算 繰り返し[42] 開始を起点にした42配列
休日 :計算 繰り返し[42] Lookup(休日::年月日;"-")
2.休日テーブル(休日)
休日 :日付 年間の休日を登録しているテーブル
としているのですが
カレンダーの最初の日しか反応しません。
繰り返しフィールドと非繰り返しフィールドのリレーションはできないのでしょうか?
Offline
これは多分 リレーションの組み方を書かないと
レスができないかもしれません。
その繰り返しにには どんなデータがあって リレーションキーにしてるんでしょ?
そういったことを書かれると
いろんな方法のレスがつくんではないかって思います。
Offline
こんな感じです
<カレンダーテーブル> 日付一覧=休日 リレーション
開始日 日付一覧
2017/03/01 2017/02/26
2017/02/27
2017/02/28
:
2017/04/08
<休日テーブル>
休日
2017/03/04
2017/03/05
2017/03/11
2017/03/12
:
Offline
休日テーブル側に、繰り返し42の計算フィールド を作り、= 休日[1] という計算式を定義しておきます。
カレンダー側からはこのフィールドを参照すると良いです。
カレンダー側から Lookup() 関数ではなく、単にルックアップするだけならば、今の構造のままでも良いです。ただし、ルックアップの設定で既存データを上書きし、ルックアップ先が無い場合には null を上書きする設定が必要です。
Offline
休日テーブル側に、繰り返し42の計算フィールド を作り、= 休日[1] という計算式を定義しておきます。
カレンダー側からはこのフィールドを参照すると良いです。カレンダー側から Lookup() 関数ではなく、単にルックアップするだけならば、今の構造のままでも良いです。ただし、ルックアップの設定で既存データを上書きし、ルックアップ先が無い場合には null を上書きする設定が必要です。
Shinさん、ありがとうございます。できました(^^)
凄い技ですね。
Offline
繰り返しフィールドを使わない事をお勧めします。
かなりトリッキーな動きをしますので、作った人(FileMaker その物を設計した人)の思考を理解するまでは(理解したとしても.....)動きが予想出来ないかも。
ルックアップした時と、Lookup() を使った時の動きが違うのも、かなり苦しいです。
Last edited by Shin (2017-03-16 10:21:17)
Offline
Shinさん、いろいろありがとうございます。
Offline
Pages: 1
[ Generated in 0.010 seconds, 8 queries executed - Memory usage: 513.5 KiB (Peak: 518.04 KiB) ]