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

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

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

You are not logged in.

Announcement

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


#1 2018-12-18 15:34:11

akkunn
Member

計算式とリレーション

Win10 FM16です ほぼ初心者です

管理レイアウト
実施曜日(AとBとCの3種類選択があります)
位置  (1番から36番まであります)
氏名  (それぞれあります)

80レコード程あります
Aパターンで位置1番から36番まで
Bパターンで位置1番から36番まで

それぞれどのパターンでどこの場所か記載している

配置レイアウト
実施曜日(3種選択)
配置(繰り返しフィールドで36まで)あります

実施日でリレーションをしています

実施曜日を選択
1・2・3・4・5・・・・・・・・・・36 まで 横一列にテキストで場所を指定しています
この下に繰り返しFを36番まで置いく

例えば
実施曜日をAとした時
管理レイアウトからそれぞれの位置の番号に氏名が表示するようにしたいのですが
計算式を入れたらいいと私は思うのですがどうすればいいか
かわからなく投稿しました

お忙しいと思いますがよろしくお願い致します

Offline

#2 2018-12-18 17:24:23

チポ
Member

Re: 計算式とリレーション

管理レイアウトで
同パターンで同位置のレコードが複数ありますか?

また、位置の欠番はありますか?


いずれにせよ、
繰り返しフィールドでの表示は無理ではないかな。
できたとしても面倒そうですよ。。

Offline

#3 2018-12-18 17:39:49

Hiro
Member

Re: 計算式とリレーション

配置テーブルの繰り返し[36回]計算フィールドに求める式、

ExecuteSQL(
   "
      SELECT ""氏名""
      FROM ""管理テーブル""
      WHERE ""実施曜日""=? AND ""位置""=?
   "
   ; ""
   ; ""
   ; 実施曜日[1]
   ; Get(計算式繰り返し位置番号)
)

Offline

#4 2018-12-19 16:51:36

akkunn
Member

Re: 計算式とリレーション

返事ありがとうございます
同じパターンで同じ位置は存在しません
必ず1名しか入りません
36名×3=108名分の枠しかないです

位置の欠番はあります
そこの位置の人がいなくなれば欠番として空白になります

Offline

#5 2018-12-19 20:19:14

akkunn
Member

Re: 計算式とリレーション

ExecuteSQL(
   "
      SELECT ""氏名""
      FROM ""管理テーブル""
      WHERE ""実施曜日""=? AND ""位置""=?
   "
   ; ""
   ; ""
   ; 実施曜日[1]
   ; Get(計算式繰り返し位置番号)
)

これで完璧な答えなのですが
1個だけ修正したいのですが
1~36番としましたが
位置順でソートした際
番号が上手くソート出来なかった為
01・02・・・・36としたのですが
この場合修正できるのでしょうか?

Offline

#6 2018-12-19 21:06:13

Hiro
Member

Re: 計算式とリレーション

これで完璧な答えなのですが
1個だけ修正したいのですが
1~36番としましたが
位置順でソートした際
番号が上手くソート出来なかった為
01・02・・・・36としたのですが
この場合修正できるのでしょうか?

解消法は2つ考えられます。

式の方で修正補足する案(位置番号 01~36 は変えずに:文字データのまま)
ExecuteSQL(
   "
      SELECT ""氏名""
      FROM ""管理テーブル""
      WHERE ""実施曜日""=? AND ""位置""=?
   "
   ; ""
   ; ""
   ; 実施曜日[1]
   ; Get(計算式繰り返し位置番号)   Right("00"&Get(計算式繰り返し位置番号); 2)
)

フィールドの方で修正補足する案(位置番号 1~36 へ変えて:数値データ)
問題原因はテキスト順でソートしているからで、
位置フィールドを数値タイプに、かつ入力テキスト値も数値に変えて
数値順でソートすればOKです。

Offline

#7 2018-12-21 10:57:03

akkunn
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.006 seconds, 9 queries executed - Memory usage: 512.98 KiB (Peak: 517.52 KiB) ]