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

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

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

You are not logged in.

Announcement

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


#1 2023-01-24 14:59:23

kkkk
Guest

5年経過の無期転換ルールでメールを送信したい

こちらのQ&Aを拝見し、以下の方法で勤続年数を○年○ヵ月の形で表示しています。

Let (
YM = Year ( Get ( 日付 ) ) * 12 + Month ( Get ( 日付 ) )
- Year ( 入社日 ) * 12 - Month ( 入社日 )
;Div ( YM ; 12 ) & "年" & Mod ( YM ; 12 ) & "ヶ月" )


5年目を超えても無期雇用転換されていない方がいる場合、その方に自動でメールを送信したいと考えています。
自動スクリプト実行を毎週か毎月で行う予定です。

メールを送信スクリプトから送信はできそうなのですが、5年を超える場合の条件付けがうまくいかず困っています。
また、なんどもメールを送らないようにもしたいのですが、スクリプト実行されるたびにメールが送信されてしまいます。

条件付けについてご教授いただけると幸いです。

#2 2023-01-24 15:56:30

チポ
Member

Re: 5年経過の無期転換ルールでメールを送信したい

書かれた式の
YMが勤続月数ですから、
これが60で5年ですね。

メールを送信したレコードに送信済みとわかるフィールドを作り、
それで判定すれば複数回の送信を防げるでしょう。

Offline

#3 2023-01-25 16:57:44

kkkk
Guest

Re: 5年経過の無期転換ルールでメールを送信したい

ありがとうございます。
IFで≧60に設定してメール送信してみたのですが、60以下のところもメールが送信されてしまっており困っています。
また、メール送信フラグとして1が入力されるフィールドも作成しましたが、最初の1レコードにしか記録されません。

≧60且つメール送信フラグが””の時、では設定できないのでしょうか?

#4 2023-01-25 17:12:23

チポ
Member

Re: 5年経過の無期転換ルールでメールを送信したい

書かれた計算式のフィールドの判定ではダメですよ。

> Year ( Get ( 日付 ) ) * 12 + Month ( Get ( 日付 ) )
- Year ( 入社日 ) * 12 - Month ( 入社日 )

この計算式が勤続月数になります。


> メール送信フラグとして1が入力されるフィールドも作成しましたが、
> 最初の1レコードにしか記録されません

理解できませんが、、
メール送信スクリプトの中でこのフィールドへ入力するのですよ。

ああ、複数のレコードにメール送信ですか?
ならば、送信するレコードを対象レコードとして、
全置換で入力ですね。

タイムスタンプにすれば、送信日時が記録されますね。

Offline

#5 2023-01-26 11:05:41

kkkk
Guest

Re: 5年経過の無期転換ルールでメールを送信したい

> Year ( Get ( 日付 ) ) * 12 + Month ( Get ( 日付 ) )
- Year ( 入社日 ) * 12 - Month ( 入社日 )
>この計算式が勤続月数になります。

こちらの式で別のフィールドを作成し月数で対応しておりました。
IF(勤続月数判定>60 and メール送信フラグ="")
ということではないのでしょうか?

> メール送信フラグとして1が入力されるフィールドも作成しましたが、
> 最初の1レコードにしか記録されません
理解できませんが、、
メール送信スクリプトの中でこのフィールドへ入力するのですよ。

該当する人全員にメールを送信し、送信したら次回は全員できなくしたいのですが、
送信フラグがフィールドへ入力は全員にされず、選択されていた1人だけに記録されます。

>複数のレコードにメール送信ですか?
ならば、送信するレコードを対象レコードとして、
全置換で入力ですね。
>タイムスタンプにすれば、送信日時が記録されますね。

ありがとうございます。試してみます!
タイムスタンプの方がわかりやすいですね。

#6 2023-01-26 11:41:30

チポ
Member

Re: 5年経過の無期転換ルールでメールを送信したい

> IF(勤続月数判定>60 and メール送信フラグ="")
これで正しいでしょう。

> 勤続月数判定
これは、計算フィールドですよね、
その計算結果を数字にしていますか?

Offline

#7 2023-02-10 10:53:14

kkkk
Guest

Re: 5年経過の無期転換ルールでメールを送信したい

返信が遅くなり申し訳ありません。

チポ wrote:

> IF(勤続月数判定>60 and メール送信フラグ="")
これで正しいでしょう。
この式を検索/置換にいれたのですが、
送信フラグがあって60を超えていなくても関係なく
全員にメールされてしまいました。
また、送信フラグがついたのは1番上のレコードのみです。

検索/置換を実行 [勤続年数計算  >  60 and メール送信::メール送信フラグ = ""]

> 勤続月数判定
これは、計算フィールドですよね、
その計算結果を数字にしていますか?

はい、数字になっています。

#8 2023-02-10 11:54:59

チポ
Member

Re: 5年経過の無期転換ルールでメールを送信したい

スクリプト自体が全く分かりませんが、、

取り合えず、
> 勤続月数判定>60 and メール送信フラグ=""
この計算フィールドを作って、
正しい結果が得られるか見てみたらいかがでしょう。

Offline

#9 2023-02-11 14:00:30

himadanee
Guest

Re: 5年経過の無期転換ルールでメールを送信したい

>この式を検索/置換にいれたのですが、
「検索/置換」は編集メニューにあるワープロ的な検索処理なので、通常は使いません。
検索条件として入力したとすると、計算せずにそのままで条件になるのでは。
「レコードの検索」か、検索モードにして「フィールド設定」です。

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: 561.7 KiB (Peak: 581.23 KiB) ]