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

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

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

You are not logged in.

Announcement

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


#1 2015-05-25 11:46:25

まんじろ
Guest

カスタム関数で?

FMS11:Macmini server (OSX 10.6)
FMP11:Windows7pro(adv1台あり)

HiroさんのToDoカレンダのサンプルを参考にさせて頂きながら
1日~月末までの勤務表のシステムを作成しようとしております。
フィールドは、
作成年月(タイプ:日付)※レイアウト上の表示は年月まで
日付一覧(タイプ:計算、[42])※計算式=Let([$start=Date(Month(作成年月[1]);1;Year(作成年月[1]));
                                  $date=$start + Get(計算式繰り返し位置番号) - DayOfWeek($start)];$date)
勤務日(タイプ:計算[31])※計算式=Date ( Month ( 作成年月[1] ) ; Get ( 計算式繰り返し位置番号 ) ; Year(作成年月[1]))
Shift(タイプ:テキスト[31])
※土曜は、祝日のある週は半日勤務となるため、日付一覧フィールドを使用して判別しています。

この段階で、まず土日と祝日は勤務日の日付に色付けを行う条件付き書式で
祝日の判断をするため、カスタム関数:holidayJ(日付一覧)、
条件付き書式:holidayJ(Self) ≠ ""と設定しましたが、
他のフィールドへ入力する際に、例えばShiftフィールドを選択すると
勤務日の数字が1から順に一瞬消えて再び表示される(波打つような)状態に
なってしまいます。

カスタム関数を削除すると、この現象は出なくなりました。
カスタム関数は動きが悪くなる要因となるものなのでしょうか?(※今回初めて使用しました)
それとも設定の仕方が悪いのでしょうか?
また、この現象の改善策があれば教えて頂きたいです。

なお、来月11→14にバージョンアップを予定していますが、
14にすると改善したりするものなのでしょうか?

よろしくお願いします。

#2 2015-05-25 17:19:03

calcer
Guest

Re: カスタム関数で?

作成年月がグル―バル?

#3 2015-05-25 20:41:33

Hiro
Member

Re: カスタム関数で?

そのカスタム関数が重いので、軽い方法を模索する。
例えば、土日はDayOfWeek関数で識別できるので、それ以外の祝日・自社規定休日だけを
別テーブルに事前に保存しておき、Lookup関数で照合識別する、とか?
年間の祝日数は20日に満たないので、年に一度、手入力しても大した手間になりません。

Last edited by Hiro (2015-05-25 20:58:04)

Offline

#4 2015-05-26 08:55:27

まんじろ
Guest

Re: カスタム関数で?

calcerさん
仰るとおり作成年月フィールドはグローバルでした。

Hiroさん
やはりholidayJ関数が原因なんですね。
Hiroさんの仰る方法(別に祝日テーブルを作成、Lookup照合)に
変更したいと思います。
カスタム関数には重い軽いがあるんですね。
勉強になりました。

お二方ともありがとうございました。

#5 2015-05-26 09:30:48

calcer
Guest

Re: カスタム関数で?

関数が重いのも一因ですが、作成年月フィールドはグローバルということは、他の計算フィールドが非保存になってますよね。

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

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.004 seconds, 9 queries executed - Memory usage: 516.53 KiB (Peak: 524.44 KiB) ]