本記事はノーコードアプリ開発について全く知らなかった管理人が独学で勉強し、ここ大事!と感じた部分を記事にまとめています。
本ブログでは新UI画面で内容をまとめています。
新旧画面への切り替えは、下図を参考に該当アイコンをクリックしてください(^^)
まずはじめに
- Deeplink関数とは何かを知りたい人
- アクションボタンで出来ることを増やしたい人
- 6種類のDeeplink関数の引数の渡し方が分かる
- アプリ内に高度な画面推移の機能を持たせる
appsheetに用意されているDeeplink・・
2024年5月現在、appsheetには6種類のDeeplink関数があります。
引数の渡し方に特徴がありとっつきにくくてワケが分からない!って方が多いと思いますが、使えるようになるとやりたかったことがすんなりと出来るようになることが多いです。
Deeplink関数は、UXやUIを高める非常に大事な関数です。
今回はそんなDeeplinkの引数の渡し方やTIPSをまとめました。
私なりの理解の仕方にはなりますが、これから勉強される方は参考にしてください(^^)
それでは勉強していきましょう!
Deeplink関数とは?
Deeplink関数は、appsheetに用意されているアプリ開発者のやりたいことを叶える魔法の関数と思ってください。
他の関数とは違って、返り値ではなく画面の遷移をする関数となります。
Deeplink関数が求めている引数がappsheet独特のものなので、知っていないと本当に分からないと思います(^^)
そんな読者の悩みを解決できるよう気合いを入れてまとめました!(使いこなせないのもあるけど!笑)
linktoapp()関数
linktoapp()関数は別のアプリに画面を遷移させる関数
app-name(アプリID)って何!?と私も調べまくったので以下を参考にしてください(^^)
appsheetのedit画面の上部URLを見てみると、appName=deeplink-5497651&appld・・となっています。
アプリIDはこの場合、deeplink-5497651となります。
例えば、別のアプリで下図のような設定でアクションボタンを作ります。
このアクションボタンを押すと、アプリIDが”deeplink-5497651″のアプリに画面を遷移することが可能です。
設定としてはこれだけです。
使い方も簡単なので、複数のアプリを開発してそれらを紐付けたい!って時に便利な関数ですね。
linktoapp()関数を使ったアプリの作成例です
自分がお気に入りで登録しているアプリやURLを1画面にまとめる方法です(^^)
【初心者におすすめ】appsheetで簡単に作成できるアプリ
linktoview()関数
linktoview()関数は別のViewに画面を遷移させる関数
View-nameって何!?という方は、以下を参考にしてください(^^)
画面遷移させたいViewを表示させてのち、Edit Viewをクリックする。
View nameにある名称を確認する。
この写真の場合だと、”map”がView-nameですね。
例えば、下図のような設定でアクションボタンを作ります。
設定としてはこれだけです。
ある特定のViewにアプリ利用者を画面遷移させたい時に便利ですね。
小技として知っておくと良いのが、Form ViewのSAVE時にアクションを1つセットすることが出来ます。
アクションを仕込みたいテーブル名の〇〇_Formを選択してから、Behavior→Event Actions→Form Savedに作成したアクションをセットすることが可能です。
linktoview()関数のアクションボタンを仕込んでおくことで、データを登録したあとのView画面をコントロールすることが可能となり、よりUIが高いアプリを作成することが可能になります。
このTIPSは特にDeeplink関数と相性のいい組み合わせなので、この機会にぜひ覚えておきましょう(^^)
linktorow()関数
linktorow()関数はlinktoview()関数から見ると、さらに対象レコード情報まで取得する関数
linktoview()関数は対象のViewに遷移でしたが、linktorow()関数は対象データまで指定することが可能(^^)
linktorow関数については、別記事に使えるネタをまとめていたのですが、appsheetに保存したデータの同期スピードが格段にスピーディーになったため、汎用性としては低いです・・
一応小ネタとしてご紹介します
データを保存したあとに即座に同期させる方法についてまとめています(^^)
【効果あり】データの保存と同期を同時にする方法
linktoform()関数
この関数はめちゃくちゃ使える関数です!必ずこの記事で使い方をマスターしてほしいです(^^)
入力されているデータを別のテーブルにコピーするように使えるので、AutomationのAdd onlyと組み合わせることで簡単に自動化が出来てしまいます(^^)
Automationによる自動化についてまとめています
ある特定のカラムが更新されたら発火する設定方法がわかります(^^)
【簡単設定!】[_thisrow_before]の使い方
条件を満たす対象リストを全て表示させる方法が学べます(^^)
【TIPS】Start 〜 End 構文の使い方
仕事のリマインドメールを送信する設定方法に使えます(^^)
【簡単設定!】Automationで期限が差し迫った案件をメールで知らせる方法
よりシンプルにまとめると、
linktoform(“編集したいテーブル_form”,“データを送りたいテーブルのカラム名”,[送りたい値],…)
- 第一引数は ” ” でくくったデータを送りたいView名に_formをつける
- 第二引数はデータを送りたいViewにあるカラム名を” ” でくくる
- 第三引数は第二引数のカラムに送りたい値を渡す
具体例を用いて検証をしてみます。
いま2つのテーブルがあるとします。1つ目のテーブル名はオリジナル、もう1つのテーブル名はコピー先 です。
それぞれのテーブルが持つカラム構成を以下の表にまとめました。
テーブル名 | オリジナル | コピー先 |
---|---|---|
ID(Key値) | オリジナルID | コピーID |
日付 | 日付 | 日付 |
登録者 | 登録者 | 登録者 |
内容 | 内容 | 内容 |
ここでオリジナルにある情報をコピー先に送りたいと思います。
作成したアクションボタンの内容は下図です。
オリジナルの情報をコピー先に送りたいので、アクションボタンはオリジナルに作ります。
Targetには以下の関数を入力しています。
linktoform(“コピー先_form”,”コピーID”,[オリジナルID],”日付”,[日付],”登録者”,[登録者])
値を送りたいのはコピー先なので、第一引数は”コピー先_form”です。
ちなみに、内容のカラムについては値を送らなかったので空白となっています(^^)
linktofilteredview()関数
この関数はスライステーブルの考え方と同じです。
まず関数の使い方を説明します。
イメージとしては、スライステーブルと近いです。
一例として、所属部署別の組織表を再現してみましょう。
上図のテーブルのような構成を用意します。
以下の手順を参考にViewやアクションボタンを作成していきましょう。
読み込んだテーブルViewをrefで作成します。
+アイコンから同じ部署に所属する代表者を取得するVCを作成します。
Show?のチェックをはずして、App formulaに以下の構文を入力します。
maxrow(“組織表”,”_RowNumber”,[組織]=[_thisrow].[組織])
先ほど作成したVCと等しいカラムのスライス条件を作ります。
赤矢印を参考にTargetに以下の関数を入力します。
LINKTOFILTEREDVIEW(“組織表ref“, [組織]=[_thisrow].[組織])
対象テーブルをスライステーブルとするViewを作成します。
Event Actionsに先ほど作成したアクションボタンをセットします。
この設定でどういった画面の遷移が発生するのか確認してみましょう(^^)
トップViewには組織表の代表部署名が表示され、クリックすることで所属しているメンバーが表示されます。
個人的には、デスクトップモードのGroup byを使ったほうがスマートなので、こちらをおすすめします。
デスクトップモードの仕様がこれからのベースになりそうです
最低限覚えておきたいデスクトップモードの仕様について学べます(^^)
【プレリリース!】Desktop modeの基本を学ぶ(^^)
linktoparentview()関数
linktoparentview()関数はDeeplink関数の中でも特殊で引数は必要ありません。
この関数で出来ることは前のページ(View)に戻るです。
具体的な使用例を見てみましょう!
TIPSとしてこの戻るボタンをいつ見せるかを自在にコントロールすることが可能です。
実用例については別の記事でまとめています
context()関数を使うことで、アプリのUIを高めることが可能です(^^)
【簡単設定!】context()関数の使い方
まとめ
以上、6種類のDeeplink関数についての記事でした。
特にlinktoform()関数はぜひマスターして欲しい関数です。
この関数を使いこなせるようになれば、本当に色々なことが出来るようになります。
他のDeeplink関数についても、知っているとアプリの画面遷移がスムーズになるので、
アプリやViewを繋げる関数として覚えておいて損はない関数だと思います。
記事内容について何かありましたらページ下にあるコメント欄からコメントをお願いします。
わかりにくかった部分や間違った情報などご指摘いただけると嬉しいです!
勉強お疲れさまでした(^^)