みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
こちらのQ&Aを拝見し、以下の方法で勤続年数を○年○ヵ月の形で表示しています。
Let (
YM = Year ( Get ( 日付 ) ) * 12 + Month ( Get ( 日付 ) )
- Year ( 入社日 ) * 12 - Month ( 入社日 )
;Div ( YM ; 12 ) & "年" & Mod ( YM ; 12 ) & "ヶ月" )
5年目を超えても無期雇用転換されていない方がいる場合、その方に自動でメールを送信したいと考えています。
自動スクリプト実行を毎週か毎月で行う予定です。
メールを送信スクリプトから送信はできそうなのですが、5年を超える場合の条件付けがうまくいかず困っています。
また、なんどもメールを送らないようにもしたいのですが、スクリプト実行されるたびにメールが送信されてしまいます。
条件付けについてご教授いただけると幸いです。
書かれた式の
YMが勤続月数ですから、
これが60で5年ですね。
メールを送信したレコードに送信済みとわかるフィールドを作り、
それで判定すれば複数回の送信を防げるでしょう。
Offline
ありがとうございます。
IFで≧60に設定してメール送信してみたのですが、60以下のところもメールが送信されてしまっており困っています。
また、メール送信フラグとして1が入力されるフィールドも作成しましたが、最初の1レコードにしか記録されません。
≧60且つメール送信フラグが””の時、では設定できないのでしょうか?
書かれた計算式のフィールドの判定ではダメですよ。
> Year ( Get ( 日付 ) ) * 12 + Month ( Get ( 日付 ) )
- Year ( 入社日 ) * 12 - Month ( 入社日 )
この計算式が勤続月数になります。
> メール送信フラグとして1が入力されるフィールドも作成しましたが、
> 最初の1レコードにしか記録されません
理解できませんが、、
メール送信スクリプトの中でこのフィールドへ入力するのですよ。
ああ、複数のレコードにメール送信ですか?
ならば、送信するレコードを対象レコードとして、
全置換で入力ですね。
タイムスタンプにすれば、送信日時が記録されますね。
Offline
> Year ( Get ( 日付 ) ) * 12 + Month ( Get ( 日付 ) )
- Year ( 入社日 ) * 12 - Month ( 入社日 )
>この計算式が勤続月数になります。
こちらの式で別のフィールドを作成し月数で対応しておりました。
IF(勤続月数判定>60 and メール送信フラグ="")
ということではないのでしょうか?
> メール送信フラグとして1が入力されるフィールドも作成しましたが、
> 最初の1レコードにしか記録されません
理解できませんが、、
メール送信スクリプトの中でこのフィールドへ入力するのですよ。
該当する人全員にメールを送信し、送信したら次回は全員できなくしたいのですが、
送信フラグがフィールドへ入力は全員にされず、選択されていた1人だけに記録されます。
>複数のレコードにメール送信ですか?
ならば、送信するレコードを対象レコードとして、
全置換で入力ですね。
>タイムスタンプにすれば、送信日時が記録されますね。
ありがとうございます。試してみます!
タイムスタンプの方がわかりやすいですね。
> IF(勤続月数判定>60 and メール送信フラグ="")
これで正しいでしょう。
> 勤続月数判定
これは、計算フィールドですよね、
その計算結果を数字にしていますか?
Offline
返信が遅くなり申し訳ありません。
> IF(勤続月数判定>60 and メール送信フラグ="")
これで正しいでしょう。
この式を検索/置換にいれたのですが、
送信フラグがあって60を超えていなくても関係なく
全員にメールされてしまいました。
また、送信フラグがついたのは1番上のレコードのみです。検索/置換を実行 [勤続年数計算 > 60 and メール送信::メール送信フラグ = ""]
> 勤続月数判定
これは、計算フィールドですよね、
その計算結果を数字にしていますか?
はい、数字になっています。
スクリプト自体が全く分かりませんが、、
取り合えず、
> 勤続月数判定>60 and メール送信フラグ=""
この計算フィールドを作って、
正しい結果が得られるか見てみたらいかがでしょう。
Offline
>この式を検索/置換にいれたのですが、
「検索/置換」は編集メニューにあるワープロ的な検索処理なので、通常は使いません。
検索条件として入力したとすると、計算せずにそのままで条件になるのでは。
「レコードの検索」か、検索モードにして「フィールド設定」です。
Pages: 1
[ Generated in 0.006 seconds, 9 queries executed - Memory usage: 561.7 KiB (Peak: 581.23 KiB) ]