みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。
1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)
You are not logged in.
Pages: 1
お世話になっております。FMP18 MacOS10.14 使用です。
かなり基本的な質問で恐縮ですが、お願いいたします。
数十から百くらいの顧客に、同一文面の案内メールを送りたいです。メルマガのようなものです。数が少ないので外部サービスを使わずにFMで処理しようと考えています。
想定しているのは、「一斉案内」というテーブルに、「件名」「本文」「宛先」のフィールドを設け、スクリプトで送るという単純なものです。
宛先は、顧客マスタから特定の条件で絞り込んだ、複数のメールアドレスです。
このような構成で、これまで、1つの宛先に1通のメールを送信することは、長年行ってきました。
今回、複数の宛先に同時にメール送信したいのですが、「メールを送信」スクリプトステップの「複数のメールアドレス(対象レコード内の各レコードに1つ)」にチェックを入れるのだと思います。
そうすると、宛先の数だけレコードを作成しないといけないのだと思いますが、この理解で正しいでしょうか?
また、上記構成で、宛先の数だけレコードを作成し、それぞれにメールアドレスを入力する方法について、アドバイスいただけないでしょうか。
なお、全宛先をToに入れたり、全員にBccで送信する方法は、考えていません。
どうぞよろしくお願いいたします。
Offline
「顧客マスタから特定の条件で絞り込んだ」ものが「宛先の数だけレコードを作成」になってるのでは?
himadaneeさん、ありがとうございます。
そうですね、その部分を軽く考えていました。
例えば「都道府県」というフィールドを用いて照合して、「宛先」フィールドは顧客マスタからルックアップすればよいと考えていましたが、これだと一番最初の行の値しか入りませんね。。
スクリプトを使って、顧客数だけレコードを作成して、メールアドレスをインポートなどする必要があるでしょうか?
宛先のメールアドレス一覧は簡単に用意できるので、それぞれに1通ずつメールを送れればよいのですが。。
Offline
複数の電子メール (対象レコード内の各レコードに 1 つ)
で、
対象レコード全てをあて先に一つのメールを送れます。
ですから、
顧客マスタでメールを送ればいいんですよ。
Offline
すでに回答が付いているように、
1)顧客マスタを検索して対象レコードをしぼりこむ
2)「メールを送信」スクリプトステップでメールを送信する(タイトルや本文は変数や関連フィールドから取得)
で顧客マスタから同時にN件のメールを送れます。
ただ、SMTPサーバーを使って送信する場合は注意が必要です。
複数の電子メール (対象レコード内の各レコードに 1 つ)を選択すると、途中でエラーが発生した時に残りの顧客へのメール送信をしないまま処理が止まります。
参照:メールを送信(ヘルプ)
つまり、例えば50件中10件目の顧客へのメールがエラーになると、11件目以降のメールが送信されません。
顧客のメールアドレスが廃止されていたり、何らかの理由でエラーになることはしばしば発生すると思います。
なので、1ステップで1度に送信するのではなく、例えば以下のように顧客マスタの対象レコード数分ループして、
1件1件送る方法も検討されては、と思います。
この場合、「メールを送信」のオプションは、「現在のレコードからのデータを使用する1つの電子メール」を指定します。
エラー処理 [ オン ]
レコード/検索条件/ページへ移動[ 最初の ]
Loop
メールを送信 [ SMTPサーバー経由で送信 ; ダイアログなし ; 宛先: 顧客マスタ::メールアドレス ; トピック: メール::タイトル ; メッセージ: メール::本文 ]
If [ Get ( 最終エラー )≠0 ]
フィールド設定 [ 宛先::送信エラー; "失敗" ]
Else
フィールド設定 [ 宛先::送信エラー; "成功" ]
End If
レコード/検索条件/ページへ移動[ 次の; 最後まできたら終了 ]
End Loop
Last edited by koeda (2020-05-10 15:54:39)
Offline
Pages: 1
[ Generated in 0.005 seconds, 9 queries executed - Memory usage: 513.58 KiB (Peak: 518.48 KiB) ]