以下のセクションで説明するように、Apps Script 自動化タスクの戻り値を構成し、使用します。
- Apps Script タスクの戻り値とは
- AppSheet で Apps Script 戻り値を構成する
- 自動化で Apps Script 戻り値を使用する
- レスポンスからネストされたフィールドを使用する
- Apps Script と AppSheet の型マッピング
- 型の制限
- 自動化の制限
- 戻り値のデバッグに関するヒント
Apps Script タスクの戻り値とは
Apps Script タスクを使用すると、Google Apps Script 関数の戻り値を AppSheet 自動化機能内の別のステップに渡すことができます。この記事では、戻り値を構成する方法と参照する方法を説明します。
使用例
- Webhook 呼び出しの戻り値を Google スプレッドシートに書き戻す
- Apps Script 関数の出力に基づいてテーブルの行の更新や新しい行の追加を行う
- Apps Script 関数の結果に基づいて条件フローを記述する
AppSheet で Apps Script 戻り値を構成する
AppSheet で Apps Script の戻り値を構成するには、Apps Script 関数からの期待される戻り値と、戻り値を変換する AppSheet の型を指定する必要があります。
Apps Script での操作
-
AppSheet で呼び出す Apps Script 関数に
return文を追加します。これはあらゆる AppS Script の型を返す可能性があり、型の制限に注意事項がリストアップされています。たとえば、この関数はブール値を返します。
AppSheet での操作
- 自動化機能から Apps Script を呼び出すの説明に従い、Apps Script タスクを構成します。
- 戻り値を構成するために、[Return Value] をオンに切り替えます。
- Apps Script 関数の戻り値の型をクリックします。
- プルダウンから変換先の AppSheet の型を選択します。
自動化で Apps Script 戻り値を使用する
プロセス中の次のステップの中の式で戻り値を参照するには、次の構文を使用して出力を参照できます。
[StepName].[Output]: 文字列、ブール値、数値、配列、日付に対して-
[StepName].[Key]: 返されたオブジェクトのキーがKeyであるオブジェクトに対して
StepName は実行中の自動化のコンテキストにおいて、すべてのステップ名と列名に対して一意である必要があります。たとえば、このプロセスには CreateFile というステップ名があり、データ アクション ステップで行の値の設定に使用されます。
これで完了です。この戻り値の Sheet への書き戻し、既存の行の変更、戻り値を使用した条件付き自動化の実行が可能です。
レスポンスからネストされたフィールドを使用する
AppSheet は、レスポンス内の任意のレベルでネストされたオブジェクトをサポートします。ネストされたフィールドを使用するには、.(ドット)セパレータを使用します。
たとえば、Apps Script 関数の戻り値が以下のように定義されていたとします。
function myFunction() {
return {
a: {
b: "Simple Example Text",
},
c: "More text",
};
}
ネストされたフィールドを以下の構文を使用して参照できます。
[StepName].[a.b] // "Simple Example Text" を返します
Apps Script と AppSheet の型マッピング
次の表は、Apps Script の型と、それから変換できる同等の AppSheet の型を大まかに示しています。
|
Apps Script の型 |
例 |
AppSheet の型 |
|
String |
|
Text、Url、Address など |
|
Boolean |
|
Yes/No |
|
Number |
|
Number、Decimal、Price など |
|
Object |
|
それぞれの型の列の Table Ref |
|
Array |
|
List または EnumList |
|
Date |
|
Date、Time、または DateTime |
型の制限
Apps Script と AppSheet の型体系の違いにより、次の表に記載した高度な型はサポートされません。
|
型 |
例 |
説明 |
|
複数の型の Array |
|
AppSheet の型体系では、リストは同じ型で構成されていることが期待されます。 |
自動化の制限
戻り値を他のタスクに直接渡すことは、現在はできません。同じプロセスのコンテキスト内のステップ(アクションや条件実行)にのみ渡すことができます。
戻り値のデバッグに関するヒント
型変換に失敗した場合も、実行は失敗することはなく、エラー メッセージが Automation Monitor に報告されます。たとえば、Failed Apps Script type translation: Type 'Number' failed to translate to 'Yes/No' は、Apps Script から数値が返されたのに対し、タスクは Yes/No 型を期待するように構成されていたということを意味します。