自動化によってメールを送信する

[Send an email] タスクを使用し、イベントに基づいて 1 人以上の受信者にメールを送信する自動 bot を構成します。

たとえば、従業員が新しい椅子を求めるリクエストを送信したら(イベントの発生)、リクエストを実施する前に、その従業員のマネージャーに承認を求めるメールを送信するように bot を構成できます。

Send email flow: Employee sends request, automation sends approval email, and manager approves request

bot からメールを送信するには、以下の各セクションで説明するように、メールの種類に基づいて [Send an email] タスクを追加および構成します。

タスク: 基本情報もご覧ください。

メールの種類

現在、次の 2 種類のメールを構成できます。

メールの種類 説明
埋め込みアプリビュー(動的メール) 埋め込みアプリビュー メールでは、サポートされているアプリビューをメール内に埋め込むことができるため、Gmail の受信者は、受信トレイのメール内から直接アプリとやり取りできます。埋め込みアプリビュー メールを構成するには、自動化によって埋め込みアプリビュー メールを送信するをご覧ください。
カスタム テンプレート カスタム テンプレート メールでは、テキスト、HTML、またはアプリデータの変数を使用してメールを構成できます。構成の詳細については、以下の説明をご覧ください。

[Send an email] タスクを追加して構成する

以下のステップを実行して、[Send an email] タスクを追加および構成します。

  1. bot にタスクを追加するの説明に沿って、bot に [Send an email] タスクを追加します。

  2. 以下の表で説明されている設定を使用して、[Send an email] タスクを構成します。

  3. 完了したら、次のいずれかを選択してアプリを保存します。

    • Save - アプリを保存します。
    • Save & verify data - アプリを保存し、外部依存関係に基づいてアプリが実行可能であるかどうかを確認します。
  4. メールをプレビューするには、[Preview email] をクリックします。
    デフォルトでは、テーブルの最初のレコードが表示されます。最新の変更内容をプレビューするには、アプリを保存する必要があります。

アプリを保存すると、他の bot でタスクを再利用できるようになります。

次の表で説明されている設定を使用して、[Send an email] タスクを構成します。

設定

説明

Linking [Linking] パネルを開き、[Linking] 設定を切り替えて、このコンポーネントの再利用を有効または無効にします。自動化コンポーネントを再利用するをご覧ください。

Expand the Linking panel and toggle the Linking setting to enable or disable component reuse

Task name

タスクの名前。アプリ内で一意である必要があります。

Email Type

メールの種類。[Custom template] をクリックします。

: 埋め込みアプリビュー メールを構成するには、自動化によって埋め込みアプリビュー メールを送信するをご覧ください。

Table name

イベント内で定義され、このタスクで使用されるテーブル。

選択したテーブルの構造を表示または編集するには、フィールドにカーソルを置いて Edit icon をクリックします。詳しくは、テーブル: 基礎をご覧ください。

: イベントとは異なるテーブルを使用するには、Call a process のステップを追加します。

To

メール受信者のリスト。デフォルトでは、アプリ所有者のメールアドレスが使用されます。

メールアドレスを入力するか、Expression Assistant を使用して式を入力します。メール受信者を追加するには、[Add] をクリックします。

詳しくは、メール受信者を追加するをご覧ください。

: 無料アカウントで AppSheet を使用する場合、メールはアプリ所有者のメールアドレスにのみ送信できます。

Email Subject

メールの件名。

テキスト、変数を指定します。次に例を示します。

  • ご注文いただきありがとうございます。
  • <<[CustomerName]>> 様、ご注文いただきありがとうございます。
  • <<[CustomerName]>> 様、ご注文いただきありがとうございます。ご注文は <<TODAY()>> に承りました。<<TODAY() + 7>> にお届けする予定です。

デフォルトでは、意味のあるメールの件名が提案されます。

Email Body

メールの本文。

メールの本文を定義するには、次のいずれかを行います。

  • テキスト、画像、変数で構成されたメールの本文を入力する。
  • 設定を空白のままにして、[Email Body Template] を指定する(以下の説明を参照)。
  • この設定と [Email Body Template] を空白のままにして、デフォルトのコンテンツを使用する。

: この設定よりも [Email Body Template] の設定のほうが優先されます(指定した場合)。

デフォルトでは、Hidden 型または Show 型の列を除き、メールの本文には追加または更新された行のデータ値が含まれます。

その他のメール パラメータ

[Advanced] 設定を開き、以下の説明のようにカスタマイズします。

設定

説明

CC

カーボンコピー(CC)として送信するメール受信者のリスト。

[Add] をクリックしてメールアドレスを追加するか、Expression Assistant を使用して式を追加します。さらにメール受信者を追加する場合は、この作業を繰り返します。詳細については、メール受信者を追加するをご覧ください。

BCC

ブラインド カーボンコピー(BCC)として送信するメール受信者のリスト。

[Add] をクリックしてメールアドレスを追加するか、Expression Assistant を使用して式を追加します。さらにメール受信者を追加する場合は、この作業を繰り返します。詳細については、メール受信者を追加するをご覧ください。

Reply To

メールに対する返信を受信するメールアドレス。

メールアドレスを入力するか、Expression Assistant を使用して式を入力します。詳細については、メール受信者を追加するをご覧ください。

デフォルトでは、noreply@appsheet.com になります。

Customize "From" name メールの From フィールドに表示されるメールアドレスをカスタマイズします。デフォルトでは、アプリケーション作成者が使用されます(appcreator@gmail.com など)。

PreHeader

受信トレイで表示したときに、件名に続けて表示されるメールのプレヘッダー概要テキスト。

テキスト、変数を指定します。次に例を示します。

  • ご注文いただいた商品
  • <<[LastName]>> <<[FirstName]>> 様からご注文いただいた商品
  • <<[LastName]>> <<[FirstName]>> 様から <<TODAY()>> にご注文いただいた商品

PreHeader が表示されないようにするには、スペース 1 文字を入力します。

デフォルトでは、次のようになります。

<<_UPDATEMODE>> to application '<<_APPNAME>>' table '<<_TABLENAME>>' by '<<_USEREMAIL>>' at <<_NOW>>

次に例を示します。
Update to application 'Workflow' by 'Julie Morgan' at 8/26/2021 6:12:28 PM

: アプリケーションで認証が必要とされない場合、<<USEREMAIL>> は省略されます。

組み込み変数もご覧ください。

Email Body Template

メール本文をきめ細やかに制御するために使用するテンプレート。bot でテンプレートを使用するおよび Email Body の説明(上記)をご覧ください。

添付ファイルの設定

[Attachment settings] 設定を開き、以下の説明のようにカスタマイズします。

設定

説明

Attachment Content Type

メール添付ファイルのコンテンツの種類。

有効なコンテンツの種類は、以下のとおりです。

  • CSV
  • HTML
  • ICS_Calendar
  • JSON
  • PDF
  • XLSX(Microsoft Excel 形式)
  • XML

デフォルトでは、メール添付ファイルとして最も多く使われている PDF になります。

Attachment Template

メール添付ファイルをきめ細やかに制御するために使用するテンプレート。詳細については、bot でテンプレートを使用するおよびメール添付ファイルをアーカイブするをご覧ください。

Attachment Name

添付ファイルの名前。

テキスト、変数を指定します。次に例を示します。

  • 添付ファイル
  • <<CustomerName>> 様の添付ファイル
  • <<_APPNAME>> から提供される <<CustomerName>> 様の <<TODAY()>> の添付ファイル

詳細については、メール添付ファイルをアーカイブするおよびアーカイブの添付ファイル名の構成をご覧ください。

Attachment Archive

添付ファイルのアーカイブの構成。

有効な値は次のとおりです。

  • AttachAndDoNotArchive - ファイルをアーカイブせずにメールに添付します。
  • AttachAndArchive - ファイルをアーカイブしてメールに添付します。
  • ArchiveAndDoNotAttach - ファイルをアーカイブしますが、メールには添付しません。このオプションは、添付ファイルが大きすぎてメールに添付できない場合に便利です。このような場合は、アーカイブされた添付ファイルの URL またはウェブリンクをメール本文に記載できます。

詳細については、メール添付ファイルをアーカイブするをご覧ください。

Attachment File Store

添付ファイルを保存するファイル システム。

[Default](デフォルト設定)に設定すると、添付ファイルは認証プロバイダのファイル システムにアーカイブされます。たとえば、認証プロバイダとして Google を使用している場合、添付ファイルは Google ドライブにアーカイブされます。認証プロバイダが Dropbox の場合、添付ファイルは Dropbox にアーカイブされます。

:

  • Smartsheet にはファイル システムがないため、認証プロバイダとして Smartsheet を使用している場合、添付ファイルは Google ドライブにアーカイブされます。Smartsheet を使用し、添付ファイルをアーカイブする場合は、複数のデータソースを使用するで説明されているように、データソースとして Google を含める必要があります。
  • Enterprise 料金プランをご利用のお客様は、クラウド オブジェクト ストアに添付ファイルをアーカイブできます。

詳細については、メール添付ファイルをアーカイブするをご覧ください。

Attachment Folder Path

添付ファイルが保存されるフォルダのパス(デフォルトのアプリケーション フォルダに対する相対パス)。

テキストとを指定します。次に例を示します。

  • MyAttachments/MyPurchaseOrders

  • <<CONCATENATE("MyAttachments/PurchaseOrdersByMonth_", YEAR(NOW()), "_", MONTH(NOW()))>>:

2 番目の例では、メール添付ファイルが月別に個別のフォルダに保存されます。例: MyAttachments/PurchaseOrdersByMonth_2019_02

デフォルトでは Attachments になります。

詳細については、メール添付ファイルをアーカイブするおよびアーカイブの添付フォルダ名の構成をご覧ください。

Disable Timestamp?

添付ファイル名にタイムスタンプを付加するかどうかを切り替えます。タイムスタンプを付加することで、ファイル名が一意になります。

タイムスタンプには、添付ファイルが作成された日付と時刻が含まれ、年、月、日、時、分、秒、ミリ秒を示す yyyyMMdd_HHmmss_fff という形式になります。次に例を示します。

MyAttachmentName20190207_133355_804.pdf

タイムスタンプを無効にする場合は、添付ファイル名がすべて一意であることを確認してください。一意でない場合は、添付ファイルが上書きされる可能性があります。たとえば、添付ファイルを Google ドライブにアーカイブする場合、タイムスタンプを無効にすると、最新の添付ファイルしか利用できなくなります。同じ名前を持つ古い添付ファイルは上書きされます。

デフォルトでは無効(タイムスタンプが付加される)になっています。

詳細については、メール添付ファイルをアーカイブするをご覧ください。

Attachment Page Orientation

添付ファイルのページの向き。有効な値は、[Portrait] と [Landscape] です。

: この設定は、[Attachment Content Type] を [PDF] に設定している場合のみ使用できます。

Attachment Page Size

ページサイズ。標準サイズを選択するか、[Custom] を選択して [Attachment Page Width] と [Attachment Page Height] をミリメートル単位で入力します。

: この設定は、[Attachment Content Type] を [PDF] に設定している場合のみ使用できます。

Use Custom Margins

添付ファイルに、カスタムのページ余白を指定するかどうかを切り替えます。

無効にすると、デフォルトの余白が使用されます。有効にした場合は、以下で説明するように、表示される追加設定を使用して余白をカスタマイズします。

: この設定は、[Attachment Content Type] を [PDF] に設定している場合のみ使用できます。

デフォルトでは無効にされています。

Other Attachments

図形描画、画像、署名、サムネイル、ファイルなど、その他の添付ファイル。

メールにその他の添付ファイルを追加するには、[Add] をクリックします。テキストまたはを指定します。添付ファイルをさらに追加する場合は、この手順を繰り返します。

詳細については、メールにその他の添付ファイルを追加するをご覧ください。

[Use Custom Margins] を有効にした場合は、以下で説明するように、表示される追加設定を使用して添付ファイルのページ余白をカスタマイズします。

設定

説明

デフォルト(該当する場合)

Attachment Page Margin Top

添付ファイルの上部余白(ポイント単位)。

0

Attachment Page Margin Right

添付ファイルの右側余白(ポイント単位)。

0

Attachment Page Margin Bottom

添付ファイルの下部余白(ポイント単位)。

0

Attachment Page Margin Left

添付ファイルの左側余白(ポイント単位)。

0

Advanced

[Advanced] 設定を開き、以下の説明のようにカスタマイズします。

設定

説明

Inputs

タスクを動的に構成する入力値を追加します。詳細については、タスクで動的に入力値を設定するをご覧ください。

  1. [Advanced] セクションを開きます。
  2. [Inputs] で [Add] をクリックします。
  3. [Name] フィールドに入力値の名前を記入します。
  4. [Type] プルダウンからデータタイプを選択します。
    入力では、一部のデータタイプのみがサポートされています。
  5. 初期値を追加する、または項目を編集するには:
    1.  をクリックして入力ダイアログを開きます。
    2. [Initial value] フィールドに値または式を追加します。
      初期値を指定しなかった場合、値を入力するよう求められます。初期値を指定した場合、値の入力を省略できます。
      [Initial value] フィールドでは、[_THIS] または [_INPUT] の使用はサポートされていません。
    3. 必要に応じて他のフィールドを編集します。
    4. [Done] をクリックします。
  6. その他の入力値の追加を繰り返します。

現在の手順から入力値にアクセスするには、次の式を使用します: [_INPUT].[入力の名前]

メール受信者を追加する

Audit History に OutgoingEmailAllowListViolations エラーが表示されている場合、所属するチームの管理者が送信メールの受信者リストに制限をかけているか、外部の宛先へのメール送信がポリシーによって禁止されています(AppSheet Core のセキュリティを設定するに説明があります)。この問題に対処するには、所属するチームの管理者に受信者リストの制限を調整してもらうか、Workspace 管理者に AppSheet Core のセキュリティ設定の無効化を依頼してください。

上記で説明されているようにメールを構成する場合に、[To]、[CC]、[BCC] にメール受信者を追加するガイドラインは以下のとおりです。

  • 特定のメールアドレスを入力するJohnHughes@gmail.com など)。
    メールアドレスにハイフンやプラスなどの特殊文字が含まれている場合は、メールアドレスを引用符で囲む必要があります。例: "John-L-Hughes@gmail.com"

  • 変更されるレコードのフィールドを使用する
    たとえば、新しい注文を受けたときに、注文を作成したお客様にメールを送信できます。このシナリオでは、お客様のメールアドレスが格納されているフィールドの名前を入力します。たとえば、注文レコードの CustomerEmail フィールドにお客様のメールアドレスが格納されている場合は、次の式を入力します: [CustomerEmail]

  • 変更されるレコードによって参照されるレコードのフィールドを使用する
    たとえば、新しい注文を受けたときに、注文を作成したお客様にメールを送信できます。各注文レコードには、お客様のメールアドレスを含む顧客レコードへの参照が含まれている場合があります。このシナリオでは、顧客レコードを参照する注文レコードのフィールド名に続けて、お客様のメールアドレスを含む顧客レコードのフィールド名を入力します。たとえば、顧客レコードを参照する注文レコードのフィールドが CustRef で、お客様のメールアドレスを含む顧客レコードのフィールド名が CustEmail の場合、次の式を入力してお客様のメールアドレスを指定します: [CustRef].[CustEmail]

  • 別のテーブルの列全体を使用する
    たとえば、新しい注文が追加されるたびに、別のテーブルで定義されているすべての人にメールを送信できます。このシナリオでは、テーブル名に続けて、メールアドレスが格納されているフィールドを入力します。たとえば、NameEmailAddress という 2 つの列を含む PeopleToInform というテーブルを作成した場合は、次の式を入力することで、新しい注文が追加されるたびに PeopleToInform テーブル内のすべての人にメールを送信できます: PeopleToInform[EmailAddress]

  • 別のテーブルの選択した行を使用する
    たとえば、新しい注文が追加されるたびに、営業部門のすべての人にメールを送信できます。このシナリオでは、テーブル名に続けてメールアドレスが格納されているフィールドを入力し、Department フィールドを Sales に設定します。たとえば、NameEmailAddressDepartment の 3 つの列を含む PeopleToInform というテーブルを作成した場合、次の式を入力することで、新しい注文が追加されるたびに PeopleToInform テーブル内の Sales 部門に属するすべての人にメールを送信できます: SELECT(PeopleToInform[EmailAddress], ([Department] = "Sales"), TRUE)

: アプリがテストモードの場合(つまり、デプロイ チェックを実施せずにアプリをデプロイした場合)、メッセージはアプリケーション作成者のみに送信されます。[To]、[CC]、[BCC] に含まれているメール受信者のリストを確認するには、メールが配信されたかどうかを確認するにはどうすればよいですかで説明されているように、Audit History を確認します。

自動化によるメール送信の例

ここでは、自動化によってメールを送信する例を紹介します。

行の特定の列の値が更新されたときにメールを送信する

行が更新され、特定の列の値が更新されたときにメールを送信するワークフロー ルールを作成できます。たとえば、ServiceRequests 行の Status 列が更新され、Active という値が設定されたときにメールを送信できます。

AND(
  ("Active" = [_THISROW_AFTER].[Status]),
  ([_THISROW_AFTER].[Status] <> [_THISROW_BEFORE].[Status])
)

この式では、[_THISROW_BEFORE][_THISROW_AFTER] が使われていることに注目してください。これらはシステムが提供する参照であり、それぞれ変更前と変更後の行の状態を参照します。これは、フィールドの値がある値から別の値に変更されたかどうかをチェックするのに非常に便利です。

[_THISROW_BEFORE][_THISROW_AFTER] は参照であるため、参照先の行の特定の列の値にアクセスするには、逆参照式を使用します。

親レコードとその子レコードをすべて追加してからメールを送信する

親レコードと 1 つ以上の子レコードを追加すると、AppSheet はまず親レコードを追加してから、各子レコードを追加します。そのため、すべての子レコードが追加されてから自動化イベントをトリガーするのが難しくなる場合があります。

以下の手法を使用することで、確実にすべての親レコードと子レコードが追加されてからイベントをトリガーできます。この手法では Form Saved イベントを使用してデータ変更アクションをトリガーします。これにより、子レコードが追加された後にのみイベントがトリガーされます。

次のことを行います。

  1. 子テーブルには、親テーブルに対する Ref フィールドが必要です。Ref フィールドの Is a part of? プロパティを有効にします。これにより、親レコードが追加されたときに子レコードを追加できるようになります。

  2. 親テーブルに Text フィールドを追加します。このフィールドを Status という名前にして、その Initial value プロパティを ""(空白)に設定します。Status 列は、データ変更イベントがトリガーするかどうかを制御します。

  3. Status 列の値を "Run" に設定する、親テーブルに対するデータ変更アクションを作成します。

  4. Status 列の値を ""(空白)に設定する、親テーブルに対する別のデータ変更アクションを作成します。

  5. 上記 2 つのデータ変更アクションを呼び出す、親テーブルに対する複合アクションを作成します。この複合アクションは、最初のデータ変更アクション(Status 列の値を "Run" に設定する)と、2 番目のデータ変更アクション(Status 列の値を空白に設定する)を呼び出します。これら 2 つのデータ変更アクションは、個別の更新としてサーバーに送信されます。最初の更新では自動化イベントがトリガーされますが、それ以降の更新による自動化イベントのトリガーは、2 番目の更新によって防がれます。

  6. [UX] > [Views] タブに移動します。[Show system views] をクリックします。親テーブルのフォームを選択します。[Behavior] を開きます。[Event Actions] を見つけ、その [Form Saved] プロパティを前のステップで作成した複合アクションに設定します。

  7. データ変更イベントを [Updates only] に設定します。また、Condition プロパティを次のように設定します: [Status] = "Run"

アプリ作成者が自動的にメールに添付ファイルを追加できないようにする

以下で説明するように、[Restrict Automation Email Attachments] ポリシーを使用して、アプリ作成者が自動的にメールに添付ファイルを追加できないようにします。詳しくは、ガバナンス ポリシーを定義するをご覧ください。

アプリ作成者が自動的にメールに添付ファイルを追加できないようにするには:

  1. [My account] > [Policies] を選択します。
  2. [+ Account Policy] または [+ Team Policy] をクリックして、アカウントまたはチームのポリシーを追加します。
  3. [Policy Template] プルダウンから、[Restrict Automation Email Attachments] を選択します。
  4. [Next] をクリックします。
  5. このポリシーは事前構成されています。任意のフィールド値を変更できます。各フィールドの説明については、事前定義ポリシーを追加するをご覧ください。 
    重要: [Condition] フィールドを変更する場合は、以下に示す機能を維持してください:
    AND(ISBLANK([AttachmentTemplate]), ISBLANK([OtherAttachmentList]))
  6. [Save] をクリックします。

この情報は役に立ちましたか?

改善できる点がありましたらお聞かせください。
検索
検索をクリア
検索を終了
Google アプリ
メインメニュー
15016211531914264519
true
ヘルプセンターを検索
false
true
true
true
false
false
false
false