管理人がみんなに伝えたい!!と思った知識や学びを気ままに書いています(^^)

【脱初心者!】Deeplink関数の使い方

【脱初心者!】Deeplink関数の使い方

本記事はノーコードアプリ開発について全く知らなかった管理人が独学で勉強し、ここ大事!と感じた部分を記事にまとめています。

本ブログでは新UI画面で内容をまとめています。

新旧画面への切り替えは、下図を参考に該当アイコンをクリックしてください(^^)

新UI画面の説明

まずはじめに

本記事はこんな人におすすめ!!
  • Deeplink関数とは何かを知りたい人
  • アクションボタンで出来ることを増やしたい人
本記事を読んで出来るようになること
  • 6種類のDeeplink関数の引数の渡し方が分かる
  • アプリ内に高度な画面推移の機能を持たせる

appsheetに用意されているDeeplink・・

2024年5月現在、appsheetには6種類のDeeplink関数があります。

引数の渡し方に特徴がありとっつきにくくてワケが分からない!って方が多いと思いますが、使えるようになるとやりたかったことがすんなりと出来るようになることが多いです。

Deeplink関数は、UXやUIを高める非常に大事な関数です。

今回はそんなDeeplinkの引数の渡し方やTIPSをまとめました。

私なりの理解の仕方にはなりますが、これから勉強される方は参考にしてください(^^)

それでは勉強していきましょう!


Deeplink関数とは?

deeplink関数とは

Deeplink関数は、appsheetに用意されているアプリ開発者のやりたいことを叶える魔法の関数と思ってください。

他の関数とは違って、返り値ではなく画面の遷移をする関数となります。

Deeplink関数が求めている引数がappsheet独特のものなので、知っていないと本当に分からないと思います(^^)

そんな読者の悩みを解決できるよう気合いを入れてまとめました!(使いこなせないのもあるけど!笑)

linktoapp()関数

linktoapp()関数は別のアプリに画面を遷移させる関数

linktoapp()関数の使い方

linktoapp(app-name)

括弧の中に ” でくくって、app-nameを指定するとそのアプリに画面が遷移します。

linktoapp関数の説明

app-name(アプリID)って何!?と私も調べまくったので以下を参考にしてください(^^)

アプリIDの入手方法
アプリIDの入手場所

appsheetのedit画面の上部URLを見てみると、appName=deeplink-5497651&appld・・となっています。

アプリIDはこの場合、deeplink-5497651となります。

例えば、別のアプリで下図のような設定でアクションボタンを作ります。

linktoappのアクションボタンの作り方

このアクションボタンを押すと、アプリIDが”deeplink-5497651″のアプリに画面を遷移することが可能です。

設定としてはこれだけです。

使い方も簡単なので、複数のアプリを開発してそれらを紐付けたい!って時に便利な関数ですね。

linktoapp()関数を使ったアプリの作成例です

参考記事

linktoview()関数

linktoview()関数別のViewに画面を遷移させる関数

linktoview()関数の使い方

linktoview(View-name[,app-name])

第一引数にView-name第二引数にapp-nameを指定すると、そのアプリの指定したViewに画面が遷移します。

引数は ” でくくる必要があり、第二引数にapp-nameを指定しない場合、現在のアプリを参照します。

linktoview関数の説

View-nameって何!?という方は、以下を参考にしてください(^^)

View-nameの場所
view nameの表示場所

画面遷移させたいViewを表示させてのち、Edit Viewをクリックする。

view nameの表示場所

View nameにある名称を確認する。

この写真の場合だと、”map”がView-nameですね。

例えば、下図のような設定でアクションボタンを作ります。

linktoviewのアクション作成

設定としてはこれだけです。

ある特定のViewにアプリ利用者を画面遷移させたい時に便利ですね。

小技として知っておくと良いのが、Form ViewのSAVE時にアクションを1つセットすることが出来ます。

Form ViewのSave時にアクションを発動させる方法
form保存時にアクションを発動させる方法

アクションを仕込みたいテーブル名の〇〇_Formを選択してから、Behavior→Event Actions→Form Savedに作成したアクションをセットすることが可能です。

linktoview()関数のアクションボタンを仕込んでおくことで、データを登録したあとのView画面をコントロールすることが可能となり、よりUIが高いアプリを作成することが可能になります。

このTIPSは特にDeeplink関数と相性のいい組み合わせなので、この機会にぜひ覚えておきましょう(^^)

linktorow()関数

linktorow()関数はlinktoview()関数から見ると、さらに対象レコード情報まで取得する関数

linktoview()関数は対象のViewに遷移でしたが、linktorow()関数は対象データまで指定することが可能(^^)

linktorow()関数の使い方

linktorow(row-key,View-name[,app-name])

第一引数にリンク先とする行のkey項目を指定第二引数にターゲットとするViewの名前第三引数にapp-nameを指定するとアプリの指定したViewの行の画面に遷移します。

linktorow関数の説明

linktorow関数については、別記事に使えるネタをまとめていたのですが、appsheetに保存したデータの同期スピードが格段にスピーディーになったため、汎用性としては低いです・・

一応小ネタとしてご紹介します

参考記事

linktoform()関数

この関数はめちゃくちゃ使える関数です!必ずこの記事で使い方をマスターしてほしいです(^^)

入力されているデータを別のテーブルにコピーするように使えるので、AutomationのAdd onlyと組み合わせることで簡単に自動化が出来てしまいます(^^)

Automationによる自動化についてまとめています

参考記事
linktoform()関数の使い方

linktoform(View-name,column-name,column-value[,column-name,column-value]…[app-name])

第一引数に対象となるview-nameを指定第二引数に対象テーブルのカラム名を指定第三引数に第二引数のカラムに送りたい値を指定します。

linktoform関数の説明

よりシンプルにまとめると、

linktoform(“編集したいテーブル_form”,“データを送りたいテーブルのカラム名”,[送りたい値],…)

  • 第一引数は ” ” でくくったデータを送りたいView名に_formをつける
  • 第二引数はデータを送りたいViewにあるカラム名を” ” でくくる
  • 第三引数は第二引数のカラムに送りたい値を渡す

具体例を用いて検証をしてみます。

いま2つのテーブルがあるとします。1つ目のテーブル名はオリジナル、もう1つのテーブル名はコピー先 です。

それぞれのテーブルが持つカラム構成を以下の表にまとめました。

テーブル名オリジナルコピー先
ID(Key値)オリジナルIDコピーID
日付日付日付
登録者登録者登録者
内容内容内容

ここでオリジナルにある情報をコピー先に送りたいと思います。

作成したアクションボタンの内容は下図です。

linktoform()関数の条件式

オリジナルの情報をコピー先に送りたいので、アクションボタンはオリジナルに作ります。

Targetには以下の関数を入力しています。

linktoform(“コピー先_form”,”コピーID”,[オリジナルID],”日付”,[日付],”登録者”,[登録者])

値を送りたいのはコピー先なので、第一引数は”コピー先_form”です。

linktoform()関数の検証
linktoformの検証
linktoformの検証

ちなみに、内容のカラムについては値を送らなかったので空白となっています(^^)

大事なポイント!

linktoform()関数のView nameや登録先のカラム名は “(ダブルクォーテーション)でくくる必要があります。

入力エラーが出ている場合は、まずはこれを確認してください。

linktofilteredview()関数

この関数はスライステーブルの考え方と同じです。

まず関数の使い方を説明します。

linktofilteredview()関数の使い方

linktofilteredview(View-name,filter-expression)

第一引数にview-nameを指定第二引数にフィルター条件を指定します。

linktofilteredview関数の説明

イメージとしては、スライステーブルと近いです。

一例として、所属部署別の組織表を再現してみましょう。

組織表の説明

上図のテーブルのような構成を用意します。

以下の手順を参考にViewやアクションボタンを作成していきましょう。

Viewの作成
組織表Viewの作成

読み込んだテーブルViewをrefで作成します。

組織表テーブルに代表IDを取得するVCを作成
VC作成

+アイコンから同じ部署に所属する代表者を取得するVCを作成します。

Show?のチェックをはずして、App formulaに以下の構文を入力します。

maxrow(“組織表”,”_RowNumber”,[組織]=[_thisrow].[組織])

STEP.2で作成したVCのスライステーブルを作成
スライス作成

先ほど作成したVCと等しいカラムのスライス条件を作ります。

Deeplinkのアクションボタンを作成
deeplinkアクションボタンの作成

赤矢印を参考にTargetに以下の関数を入力します。

LINKTOFILTEREDVIEW(“組織表ref“, [組織]=[_thisrow].[組織])

アプリに表示させるViewの作成
スライスViewの作成

対象テーブルをスライステーブルとするViewを作成します。

アクションボタンのセット

Event Actionsに先ほど作成したアクションボタンをセットします。

この設定でどういった画面の遷移が発生するのか確認してみましょう(^^)

linktofilteredview()アクションのUI確認
画面UIの確認

トップViewには組織表の代表部署名が表示され、クリックすることで所属しているメンバーが表示されます。

個人的には、デスクトップモードのGroup byを使ったほうがスマートなので、こちらをおすすめします。

デスクトップモードの仕様がこれからのベースになりそうです

参考記事

linktoparentview()関数

linktoparentview()関数はDeeplink関数の中でも特殊で引数は必要ありません。

この関数で出来ることは前のページ(View)に戻るです。

具体的な使用例を見てみましょう!

前の画面に戻るボタンの作成方法
戻るボタンの実装

TIPSとしてこの戻るボタンをいつ見せるかを自在にコントロールすることが可能です。

実用例については別の記事でまとめています

参考記事

まとめ

以上、6種類のDeeplink関数についての記事でした。

特にlinktoform()関数はぜひマスターして欲しい関数です。

この関数を使いこなせるようになれば、本当に色々なことが出来るようになります。

他のDeeplink関数についても、知っているとアプリの画面遷移がスムーズになるので、

アプリやViewを繋げる関数として覚えておいて損はない関数だと思います。

記事内容について何かありましたらページ下にあるコメント欄からコメントをお願いします。

わかりにくかった部分や間違った情報などご指摘いただけると嬉しいです!

勉強お疲れさまでした(^^)

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA