みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
AM500は2700では有りませんでした汗2900ですね。
やりたい結果が表示されましたので解決としたいとおもいます。
チポ様mic様ありがとうございました
チポ様
ありがとうございます
試してみたいと思います
mic様
今少し試させて頂いていますが、
例えば、平日の出勤時刻が5〜22の間で
退勤時刻が27時時を回る場合は27時以降退勤時刻までの時間は 労働1に入るのですが
例 平日
出勤時刻:21:00
退勤時刻:29:00
「1」:21:00〜22:00 労働1
「2」:22:00〜27:00 労働2
「3」:27:00〜29:00 労働1
となりますが、恐らく
_区分1で「1」の計算
_区分2で「2」の計算をしているのだと思うのですが(私が書いた条件の上段が区分1下段が区分2の解釈です)
現状では「3」の処理が無い状態ですので、_区分1 _区分2を下記のようしたのですが合っているでしょうか?
_区分1:Let([
#t1 = If(出勤時刻<Time(5;0;0);Time(5;0;0);出勤時刻); //出勤時刻が5:00より後か前の判断
#t2 = If(退勤時刻>Time(22;0;0);Time(22;0;0);退勤時刻);//退勤時刻が22:00より後か前の判断
#t3 = If(退勤時刻>Time(27;0;0);退勤時刻-Time(27;0;0);"")
];
#t2 - #t1 +#t3
)
_区分2:Let([
#t1 = If(出勤時刻<Time(5;0;0);Time(5;0;0)-出勤時刻;0);
#t2 = If(退勤時刻>Time(22;0;0);退勤時刻-Time(22;0;0);0);
#t3 = If(退勤時刻>Time(27;0;0);退勤時刻-Time(27;0;0);0)
];
#t2 + #t1 -#t3
)
宜しくお願い致します。
mic様
ありがとうございます。
こちらも少し試してみたいと思います
チポ様
5時から22時に開始して翌日5時をすぎた場合は一つ前に戻ります
開始 平日1700 から 終了翌日700
労働1 700
労働2 700
となります
文字がおかしくなりました(汗)
開始時間の時の曜日が起点となりますので
土曜から日曜は土曜扱い
日曜から月曜なら日曜扱いとなります
よろしくお願いします
チポ様
曜日は開始時間の時の曜日を起点と考えていますので
土曜から日曜はどこ扱いです
日曜から月曜にまたいだときは日曜扱いです
よろしくお願いします
ファイルメーカー16で勤怠管理をしようとしていますがどうしてもわからないので教えて下さい。
条件
平日 5:00〜22:00 の間の8時間は労働1 8時間を超えた場合 労働2
平日 22:00〜翌日5:00 の間は労働2
日曜 5:00〜22:00 の間の8時間は労働2 8時間を超えた場合 労働3
日曜 22:00〜翌日5:00 の間は労働3
24時間を超えての勤務は無し
作成しているフィールド
日付:日付型
出勤時刻:時刻型
退勤時刻:時刻型
労働1:計算式
労働2:計算式
労働3:計算式
求めたい事
出勤時間から退勤時間までの労働時間を上の条件に合わせて
労働1・労働2・労働3で計算させたい。
例:
日付 11/2
出勤 15:00
退勤 23:00
欲しい結果
11/2は平日なので
日付 11/2
労働1 7:00
労働2 1:00
IF分を使って色々とこねくり回してみましたが上手くいかず、
フィールドの追加なども含め、こうすればうまくいくというのをご教授頂ければと思います。
宜しくお願い致します。
Pages: 1
[ Generated in 0.004 seconds, 6 queries executed - Memory usage: 532.06 KiB (Peak: 536.98 KiB) ]