ファイル名に従ってメールの宛先を変更したい

OrangeLab. 運営チーム
作成日時: - 更新日時:
Avatar

以下のリンクより、当Tipsのサンプルスクリプトがダウンロード可能です。
是非ダウンロード頂き、ご活用ください。

ファイル名に従ってメールの宛先を変更したい

はじめに

こんにちは、メディアフォースの佐渡です。

突然ですが、日々の業務のうち、メール配信業務の負荷が高く、他の業務を圧迫してはいませんか?
メールという通信手段は企業にとって重要なコミュニケーションツールであり、大きな存在感を放っています。
しかし、配信業務の煩雑化による高負荷や、誤送信による情報漏えいなど、その課題は山積です。

たとえば、取引先へ商品をメールで注文する業務があるとします。
ひとつやふたつの取引先ならそれで問題ないかもしれませんが、数が増してくると負荷が高まり、ミスの懸念も増してしまいます。

では、そんなときにどうすれば良いか。
メールという手段を変えることができない場合は、やはり極力人による作業を減らし、自動化することが最適です。
システムにより自動化してしまえば、メール配信業務に充てていた時間を有効活用できますし、誤送信などのミスも極力減らすことができるためです。

では、どのように自動化するのか。
条件付きではありますが、HULFT Scriptを使用すれば、上記のような業務を自動化することが可能です。



この図のように、送信する注文書のファイル名に顧客IDのような一意の文字列を持っているとします。
その顧客IDを用いて、変換マスタファイルから宛先のメールアドレスを取得します。
取得したメールアドレスを宛先として、注文書ファイルを添付してメールを送信します。
ファイルを格納するディレクトリをファイルトリガーなどで監視すれば、そのディレクトリに注文書ファイルを配置するだけで、メール送信まで自動で行ってくれるのです。

先ほど条件付きと申し上げたのは、変換元となる顧客IDをHULFT Scriptが読み込めるソースから渡す必要があるということです。
ここでは前提として、ファイル名の頭4桁を顧客IDとしています。

では、実際にこの処理を作成する流れ、前提、手順について解説していきましょう。

流れ

HULFT Scriptで「ファイル名に従ってメールの宛先を変更する」スクリプトを作成します。

  1. プロジェクトおよびスクリプトを作成します。
  2. スクリプト変数を作成します。
  3. フォルダ内に格納されているファイルの一覧を取得する処理を作成します。
  4. ファイルの一覧を件数分繰り返す処理を作成します。
  5. フォルダ内に格納されているファイル名の頭4桁に従って、送信先のメールアドレスを取得する処理を作成します。
  6. ファイル属性がディレクトリだったら、繰り返しのはじめに戻る処理を作成します。
  7. 取得した送信先のメールアドレスを宛先とし、フォルダ内に格納されているファイルを添付して送信する処理を作成します。
  8. デバッグ実行を行い、メールが届いていることを確認します。

前提

処理を作成する前に以下の設定を行います。

(1) 「コントロールパネル」-「グローバルリソースの設定」より、メール送信サーバ接続設定を行います。
  ホスト名およびポート番号は、ご自身の環境に合った値を設定してください。
(2) 「コントロールパネル」-「アプリケーションログ出力先設定」より、スケジュールファイルのログ出力先設定を行います。
  ファイルパスは、任意の場所を設定してください。

作成手順

以下のようなスクリプトを作成します。




1. プロジェクトおよびスクリプトを作成します。
プロジェクト名:ファイル名によってメールの宛先変更
スクリプト名:スクリプト

2. スクリプト変数を作成します。
  当スクリプトでは、以下5つのスクリプト変数を使用します。

(1) スクリプト変数「対象フォルダ」を作成します。

(2) スクリプト変数「添付ファイルパス」を作成します。

(3) スクリプト変数「ファイル属性」を作成します。

(4) スクリプト変数「送信元メールアドレス」を作成します。

(5) スクリプト変数「送信先メールアドレス」を作成します。

3. フォルダ内に格納されているファイルの一覧を取得する処理を作成します。
(1) ツールパレットより、「ファイル」-「ファイル操作」-「ファイル名一覧取得」を配置し、以下のとおり設定します。

4. ファイルの一覧を件数分繰り返す処理を作成します。
(1) ツールパレットより、「基本」-「フロー」-「繰り返し(データ件数)」を配置し、以下のとおり設定します。

5. フォルダ内に格納されているファイル名の頭4桁に従って、送信先のメールアドレスを取得する処理を作成します。
(1) ツールパレットより、「基本」-「処理」-「変数代入」を配置します。

(2) ツールパレットより、「文字列」-「関数」-「左文字列」を配置し、以下のとおり設定します。

(3) ツールパレットより、「文字列」-「変換」-「CSVファイルによる置換」を配置し、以下のとおり設定します。

※CSVファイルの内容は以下のとおりです。

(4) ツールパレットより、「文字列」-「演算」-「連結」を配置し、以下のとおり設定します。

6. ファイル属性がディレクトリだったら、繰り返しの先頭に戻る処理を作成します。
(1) ツールパレットより、「基本」-「フロー」-「条件分岐」を配置し、以下のとおり設定します。

(2) ツールパレットより、「基本」-「フロー」-「continue」を配置します。

7. 取得した送信先のメールアドレスを宛先とし、フォルダ内に格納されているファイルを添付して送信する処理を作成します。
(1) ツールパレットより、「ネットワーク」-「メール」-「1通メール送信」を配置し、以下のとおり設定します。





(2) ツールパレットより、「基本」-「処理」-「ログ出力」を配置し、以下のとおり設定します。



8. デバッグ実行を行い、メールが届いていることを確認します。
(1) フローを接続し、デバッグ実行を行います。

(2) 実行ログを確認し、スクリプトが正常終了していることを確認します。

(3) 添付ファイル付きのメールが届いていることを確認します。

まとめ

いかがでしたでしょうか。
HULFT Scriptを使用すれば、メール業務など「当然、人手を介するもの」として諦めていた業務を自動化できるかもしれません。
是非、それぞれの業務に沿った使用方法を検討してみてください。
この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています

コメント