前回の記事(下記ご参照)で書いた通り、AppSheetにGoogle Apps Script(GAS)との連携機能が追加されました。
ここ数日、この機能を試してみたので今回は感想などをまとめてみようと思います。
どこまでをGASで処理するか?
GASは非常に強力な機能です。
スプレッドシートはもちろん、ドキュメントやスライド、GmailやTranslate等々、様々なGoogleサービスの処理を自動化できます。
このGASとの連携によってAppSheetで出来ることは一気に広がるわけですが、反面、どこまでをGASで処理するのか、GASのコードをどう管理していくのか、そういった管理・運用面での課題は出てくるでしょう。
AppSheetがノーコード(ローコード)プラットフォームである点を踏まえると、個人的には、GASでゴリゴリに実装するのではなく、コードは短く、行う処理は最小限にとどめた方がアプリの管理はしやすいだろうと思います。
関数からの戻り値はサポートしてほしい
ヘルプセンターにある通り、本記事執筆時点(2022年3月)ではGAS関数からの戻り値はサポートしていません。
- Apps Script executions are subject to standard Google Workspace quotas and limitations as stated in Quotas for Google Services.
- Apps Script tasks will be available for users in the AppSheet Core plan and above. See AppSheet pricing plans.
- Return values from the function are not yet supported.
https://help.appsheet.com/en/articles/6035282-call-apps-script-from-an-automation より
下記のように、行番号を引数として渡してGAS側でデータソースであるスプレッドシートを変更することも一応できますが、スマートではありませんので、ここはAppSheet側でGASからの戻り値を受け取って任意のフィールドに入れ込むなりしたいところです。
GASとAppSheetの連携、データをGASに渡して翻訳するアプリのテスト。
現時点では関数からの戻り値はサポートしていないのでGAS側で元データを変更する形で実装。戻り値がサポートされると用途がかなり広がりそうです。 #GoogleAppsScript #GAS #AppSheet https://t.co/0QJDOUXy3Z pic.twitter.com/ckdA6lcVW8— きぬあさ (@kinuasa) March 19, 2022
アクションボタンでスクリプトを実行したい
詳細画面に設置したアクションボタンからGASを呼び出すタスクを実行したかったのですが、実行可能なアクションのリストにはそれらしい項目を見つけられませんでした。
致し方ないので、下記では非表示列をインクリメントして値の更新をトリガーにタスクを実行したのですが(「Sending Email from an Action Button」参考)、ボタンから直接スクリプトを呼び出せると、よりスマートに処理できるだろうと思います。
AppSheetとGoogle Apps Script連携の一例としてアプリでボタンタップ(クリック)してGASで見積書PDFを作成するサンプルを作成。ボタンをトリガーにして直接タスクをキックできるともっとスマートに処理できると思うのだけれども…🤔 #GoogleAppsScript #GAS #AppSheet https://t.co/0QJDOVfHi7 pic.twitter.com/6BFtdAhlaw
— きぬあさ (@kinuasa) March 20, 2022
以上、AppSheetとGASの連携機能をちょこっと触った感想などをまとめてみました。
上記はあくまでもAppSheet初心者である私の感想ですので、もしかしたら「こうすればちゃんと処理できるよ」、といった内容かもしれません。
ただ、GASとの連携が非常に強力でAppSheetの処理の幅を広げることは間違いないと思いますので、要注目の機能だと言えるでしょう。
この記事へのコメントはありません。