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

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

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

You are not logged in.

Announcement

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


#1 2018-10-22 17:39:07

kazu10
Member

等号管理の考え方について

よろしくお願いします
環境はwin10 fm13です

表題の内容ですが、ifとcase関数しか使い方を理解していない自分が悪いのですが自分で全然組み立てられなかったので教えていただけたらと思っています。

テーブル                     
フィールド 役職 等 号 評価 新等 新号
      一般 3 10 +2  3  10
      一般 2 8  +3  3  1
      係長 5 6  -1  5  5
      係長 4 1  -2  4  1

役職と等と号は現在のものが入っています。
評価を入力すると新等と新号が表示できるようにしたいのですが

条件がたくさんあって困っています。

1.等号は1から10まで
2.評価が上がって10号まで行ったら等が一つ上がる
3.一般だと3等10号までしか上がれない
4.係長はマイナス評価でも4等1号以下には下がらない
5。役職は他にも課長、部長、次長、専務
という条件で作りたいのですが
私にはすべて+1なら作れたのですができませんでした

恐れ入りますが教えていただけると助かります
よろしくお願いします

Offline

#2 2018-10-22 18:10:28

Shin
Member

Re: 等号管理の考え方について

等号 という数字フィールドを作っておきます。(開始 1等1号 は 0)
等と号は計算フィールドにして、それぞれ
Div ( 等号 ; 10 ) + 1
Mod ( 等号 ; 10 ) + 1
にしておきます。
評価が上がれば、等号を +1 すればいいです。
さらに、役職に依っての制限は、例えば一般でしたら、Min ( 29 ; 等号 ) にしておくと、最大 3等10号 になります。係長は、さらに、Max ( 30 ; 等号 ) をしておくと、4等1号 以上になります。
下限・上限があるでしょうから、Min ( 上限 ; Max ( 下限 ; 等号 ) ) にします。、
https://www.dropbox.com/s/vb702fsp083nk … 7.zip?dl=0

Last edited by Shin (2018-10-23 09:35:55)

Offline

#3 2018-10-22 21:49:10

Hiro
Member

Re: 等号管理の考え方について

●「新等」計算フィールドの式:
Let(
[
   #num=等フィールド*10+(号フィールド-1)+評価フィールド;
   #num=
      Case(
         役職フィールド="一般"; Min(39; #num);
         役職フィールド="係長"; Max(40; #num);
         #num
      )
];
   Div(#num;10)
)


●「新号」計算フィールドの式:
Let(
[
   #num=等フィールド*10+(号フィールド-1)+評価フィールド;
   #num=
      Case(
         役職フィールド="一般"; Min(39; #num);
         役職フィールド="係長"; Max(40; #num);
         #num
      )
];
   Mod(#num;10)+1
)

Last edited by Hiro (2018-10-22 22:03:38)

Offline

#4 2018-10-23 19:29:10

kazu10
Member

Re: 等号管理の考え方について

Shin様
hiro様

返信いただきありがとうございます
おかげで目的のもの達成出来ました

ちゃんと勉強します。
ありがとうございます

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: 552.16 KiB (Peak: 579.1 KiB) ]