メインコンテンツまでスキップ

システム通知HTMLメール送信

Accel-Mart Quickのシステム通知用のアドレスからHTMLメールを送信するタスクです。
Accel-Mart Quickユーザ以外に対するメール送信には利用できません。

HTML通知テキストメール送信

注記

HTMLメールとは、HTML言語で作成されたメールのことです。テキストメールと異なり、文字の書体、大きさや色を指定したり、本文中に写真や画像を配置したりすることが可能です。

タスク固有設定

項目名形式説明
送信失敗時にエラーとするチェックボックス無効:メール送信に失敗した場合でもエラー終了とせず、処理を継続します。
有効:メール送信に失敗した時点で処理をエラー終了します。
初期値は無効です。

入力値

入力値の構造

im_sendTextMail <object>
├─ attachmentFiles <object[]>
│ ├─ attachmentFile <binary>
│ └─ fileName <string>
├─ bccUserCds <string[]>
├─ ccUserCds <string[]>
├─ html <string>
├─ htmlImages <object[]>
│ ├─ contentId <string>
│ ├─ fileName <string>
│ └─ imageFile <binary>
├─ subject <string> *
├─ text <string> *
└─ toUserCds <string[]>

入力値の詳細

項目名説明備考
attachmentFiles添付ファイル情報配列object[]メールに添付するファイルの情報を配列で指定します。
bccUserCdsBCCユーザコード配列string[]BCCに設定するユーザのユーザコードを配列で指定します。
ccUserCdsCCユーザコード配列string[]CCに設定するユーザのユーザコードを配列で指定します。
htmlHTMLメール本文string送信するHTMLメールの本文を指定します。
htmlImages画像ファイル情報配列object[]挿入する画像ファイルの情報を配列で指定します。
subject件名string送信するメールの件名を指定します。
textテキストメール本文stringHTMLメールに対応していないクライアント向けに送信する、テキストメールの本文を指定します。
toUserCdsTOユーザコード配列string[]宛先(TO)に設定するユーザのユーザコードを配列で指定します。
ヒント

html、および、textの少なくとも一方を指定してください。
ただし、htmlに指定するHTML内で画像(htmlImages)を使用する場合は、htmltextの両方を指定する必要があります。詳細はサンプルを参照してください。
なお、どちらも指定した場合は、htmlの内容が優先されます。

備考

toUserCdsccUserCdsbccUserCdsで指定されたユーザのプロファイル「メールアドレス1」に設定されているメールアドレスにメールを送信します。

  • 「メールアドレス1」が設定されていない場合は、「メールアドレス2」に送信します。
  • 「メールアドレス1」・「メールアドレス2」いずれも設定されていない場合、当該ユーザにはメールが送信されません。

ユーザのプロファイルにメールアドレスを設定する方法は、「ユーザの一括登録・更新」を参照してください。

attachmentFiles

項目名説明備考
attachmentFile添付ファイルの内容binary添付ファイルデータを指定します。
fileName添付ファイル名string添付ファイルの名前を指定します。

htmlImages

項目名説明備考
contentId画像ファイルのコンテンツIDstring画像ファイルのコンテンツIDを指定します。
画像をメールに挿入する際、画像を指定するために使用します。
fileName画像ファイル名string画像ファイルの名前を指定します。
imageFile画像ファイルの内容binary画像ファイルデータを指定します。

出力値

出力値として利用可能な値はありません。

類似タスクとの使い分け

  • 汎用タスク > システム通知テキストメール送信
    • テキスト形式でメールを作成したい場合に利用します。
    • 文字の装飾や画像の挿入等が必要ない場合に利用します。
  • 汎用タスク > HTMLメール送信
    • Accel-Mart Quickのユーザ以外に対してメールを送信したい場合に利用します。
    • メールの送信元を指定したい場合に利用します。メールサーバ設定を行っている場合のみ使用可能です。

サンプル

入力で指定されたユーザにHTML形式でメールを送信する業務ロジックを作成します。
メールの本文は、テンプレートに入力で指定された値に埋め込んで作成します。

ここで紹介するサンプルは、以下よりダウンロードできます。

注記

ダウンロードしたサンプルは、「管理 → ローコード開発 → アプリケーション一覧」左上のメニューからインポートしてご利用ください。

注意

サンプルの業務ロジックを実行すると、入力で指定されたユーザに実際にメールが送信されます。

概要

以下のような業務ロジックを作成します。
また、事前準備として、メール本文に挿入する画像をストレージに配置します。

作成する業務ロジック

以下のタスクを使用します。

以下のユーザ定義タスクを使用します。

  • テンプレート定義「メール本文作成」
  • テンプレート定義「HTMLメール本文作成」

事前準備

メール本文に挿入する画像をストレージに配置します。

注記

ストレージへの画像の配置は、「Accel-Mart Quick システム管理者」ロールを持つユーザで実施してください。
実施できない場合は、HTMLメールに画像を挿入しないようにしてください。その場合は、作成手順を以下のように変更します。

  • 定数contentIdfileNamefilePathを設定しない
  • テンプレート定義「HTMLメール本文作成」からimgタグを削除する
  • 「パブリックストレージ取得」、「ストレージファイル読み込み(バイナリ)」タスクを配置しない
  • 「HTMLメール本文作成」のマッピング設定でコンテンツIDのマッピングを行わない
  • 「システム通知HTMLメール送信」タスクのマッピング設定でhtmlImages配下の入力値に対してマッピングを行わない
  1. 「管理 → ローコード開発 → ファイル操作」から、「ファイル操作」画面を開きます。

  2. 「amq」フォルダを選択し、「ディレクトリ作成」をクリックします。

    ディレクトリの作成

  3. ディレクトリ名に「test_html」と入力し、「作成」をクリックします。

    ディレクトリ名の入力

  4. 三角形のアイコンをクリックして、「amq」フォルダを展開します。

    「ファイル操作」

  5. 先ほど作成した「test_html」フォルダを選択し、「ファイル追加」をクリックします。 ファイル追加

  6. メールに挿入する画像を選択し、アップロードします。このチュートリアルでは、「complete.png」という画像を追加します。

    注記

    以降の手順では、「complete.png」というファイル名を前提としています。異なるファイル名の画像を使用した場合は、「complete.png」を使用した画像のファイル名に読み替えてください。

作成手順

  1. 業務ロジックの入力を以下の通り設定します。

    キー名説明
    toUserCdstring宛先に指定するユーザのユーザコードです。
    toUserNamestring宛先に指定するユーザの名前です。
    ccUserCdsstring[]CCに指定するユーザのユーザコード配列です。
    idstringメールの本文に表示する項目(商品ID)です。
    namestringメールの本文に表示する項目(商品名)です。
    入力(JSON形式)
    {
    "toUserCd": "",
    "toUserName": "",
    "ccUserCds": [
    ""
    ],
    "id": "",
    "name": ""
    }
  2. 定数を以下の通り設定します。

    定数ID定数値説明
    contentIdcomplete挿入する画像のコンテンツIDとして使用する文字列です。
    fileNamecomplete.png挿入する画像のファイル名です。
    filePathtest_html/complete.png挿入する画像ファイルのファイルパス(ストレージ上の保存場所)です。
    subject【お知らせ】商品を登録しましたメールの件名に設定する文字列です。
  3. テキストメールの本文用のテンプレートを作成します。「ユーザ定義追加」から「テンプレート定義新規作成」を選択して、テンプレート定義「メール本文作成(ID:create_mail_body)」を作成します。

    テキストメールの設定

    このサンプルでは、HTMLメールに対応していないクライアントも想定して、テキストメール用の本文も設定しています。
    テキストメール用の設定を行わない場合は、テンプレート定義を作成せず、システム通知HTMLメール送信の入力値textに空文字を設定してください。
    空文字を設定する場合は、定数値を空欄にした定数をマッピングします。

  4. 入力値で宛先ユーザ名(toUserName)、商品ID(id)、商品名(name)を受け取り、テンプレートの所定の位置に埋め込むようにします。
    テンプレートは以下のようにします。

    <#setting url_escaping_charset="UTF-8">
    ${toUserName}様

    以下の商品が登録されました。
    商品ID:${id}
    商品名:${name}
    備考

    テンプレート定義の詳細は「初期サンプルから見るユーザ定義(テンプレート)の詳細」を参照してください。

  5. 同様に、HTMLメールの本文用のテンプレートを作成します。テンプレート定義「HTMLメール本文作成(ID:create_mail_html)」を作成します。

  6. 入力値で宛先ユーザ名(toUserName)、商品ID(id)、商品名(name)、コンテンツID(contentId)を受け取り、テンプレートの所定の位置に埋め込むようにします。
    テンプレートは以下のようにします。

    <#setting url_escaping_charset="UTF-8">
    <b>${toUserName}様</b><br/>
    <br/>
    <u>以下の商品が登録されました。</u>
    <img src="cid:${contentId}"><br/>
    商品ID:<font color="red">${id}</font><br/>
    商品名:<font color="red">${name}</font>
  7. 概要」の画像の通りにタスクを配置します。

  8. 「パブリックストレージ取得」タスクのマッピング設定を行います。
    定数のfilePathを「パブリックストレージ取得」タスクの入力値にマッピングします。

  9. 「ストレージファイル読み込み(バイナリ)」タスクのマッピング設定を行います。
    im_publicStorage1の出力値を「ストレージファイル読み込み(バイナリ)」タスクの入力値にマッピングします。

    ヒント

    im_publicStorage1は、マッピング設定画面の「入力を追加」から追加できます。

  10. 「メール本文作成」タスクのマッピング設定を行います。
    宛先ユーザ名、商品ID、商品名を業務ロジックの入力から「メール本文作成」タスクの入力値にマッピングします。

  11. 「HTMLメール本文作成」タスクのマッピング設定を行います。

    • 宛先ユーザ名、商品ID、商品名を業務ロジックの入力から「HTMLメール本文作成」タスクの入力値にマッピングします。
    • 定数のcontentIdを「HTMLメール本文作成」タスクの入力値contentIdにマッピングします。
  12. 「システム通知HTMLメール送信」タスクのマッピング設定を以下のように行います。

    始点終点
    入力 - ccUserCds<string[]>im_sendSystemNoticeHtmlMail1 - ccUserCds<string[]>
    create_mail_html1 - output<string>im_sendSystemNoticeHtmlMail1 - html<string>
    定数 - contentId<string>im_sendSystemNoticeHtmlMail1 - htmlImages - contentId<string>
    定数 - fileName<string>im_sendSystemNoticeHtmlMail1 - htmlImages - fileName<string>
    im_readBinaryToStorage1<binary>im_sendSystemNoticeHtmlMail1 - htmlImages - imageFile<binary>
    定数 - subject<string>im_sendSystemNoticeHtmlMail1 - subject<string>
    create_mail_body1 - output<string>im_sendSystemNoticeHtmlMail1 - text<string>
    入力 - toUserCd<string>im_sendSystemNoticeHtmlMail1 - toUserCds<string[]>

    マッピング設定

    ヒント

    toUsersCdsは宛先に設定するユーザコードをstring型の配列で受け取りますが、宛先ユーザが1名のみの場合は、配列ではない文字列(string)もマッピングできます。
    その場合は、マッピングされたユーザコードのユーザ(1名)に対してメールが送信されます。ccUserCdsbccUserCdsについても同様です。

    ヒント

    create_mail_body1create_mail_html1im_readBinaryToStorage1は、マッピング設定画面の「入力を追加」から追加できます。

  13. これで業務ロジックの作成は完了です。業務ロジックをデバッグ実行すると、入力値で指定された宛先にメールが送信されます。

    HTMLメール

    備考

    デバッグ実行の詳細な手順は「業務ロジックをデバッグする」を参照してください。