見出し画像

AppGyver(チョット)やってみた#5〜チュートリアル「パブリック API から AppGyver アプリケーションにデータをフェッチする」まで

今回はローコード開発ツール「AppGyver」をチョットやってみたのシリーズ第5弾に入ります。
前回はついにデータとの接続からスキーマの設定などデータ廻りの設定を無事に終わらせましたが、今回は画面側とそのデータ呼び出しAPIをつなぎます。いよいよゴールに近づいてきました。

前回までの話と準備

まずは前回までのざっくりしたストーリーと、今回のチュートリアルをスタートするまでの準備をします。

前回までのざっくりしたお話

前回まではこんな感じです。

#1 AppGyverという製品の概要ととりあえずサインインしてみる
#2 チュートリアルに従って画面まで作ってみた。
#3 ボタンを押したらバーコードを読んで読んだ結果を表示させた。
#4 データを呼び出すAPIの設定とデータの定義をした

今回の準備

今回も前回作成したモバイルアプリのプロジェクトを呼び出すところからスタートします。

AppGyverのアプリのページ(上記)を呼び出すと以下の画面になります。
(ログインを要求されることもあります)

AppGyverの初期画面(2回め以降)

前回作った「Open Foof Fact API」を呼び出します。

ロードに少し時間がかかりますが、下の開発画面が開けば準備完了です。

開発画面

インジケーターの値は「80%」のままです。
伸び悩んでる?????

ステップ1〜アラート コンポーネントを削除する

まずは以前に作ったアラートの部分を着手します。
この部分はバーコードの読み込みが正しく行われるかのテストのために作ったのでこの部分は不要になります。

設定したときと同様にボタン(Scan)をクリックした状態で右下にある「add logic to BUTTON1」をクリックしてロジック パネルを表示させます。

ロジックパネルからAlertを削除

クリックして「✕」をクリックするとAlertのロジックが削除されます。

Alertを削除のため「✕」をクリック


ステップ2〜Get Record コンポーネントを追加する

次に削除した「Alert」の代わりにデータを呼び出す「Get Recode」を追加して接続します。
Dataのところから「Get Recode」をドラッグアンドドロップで配置します。

DATA:Get recodeを配置する

配置したら「DEVICE:Scan QR/barcode」の一番上と「DATA:Get recode」を接続します。

「DEVICE:Scan QR/barcode」の一番上と「DATA:Get recode」を接続


ステップ3〜バインディングを編集

ロジックフローができたら、その中身である出力に情報をバインドする設定をします。

Currently bound to: Static textを選択


ロジックフローにある「Get Record」をクリックし、右側のプロパティの「ABC」のところ「Currently bound to: Static text」を選択してバインディングオプション画面を開きます。

バインディングオプション画面

下の段にあるOutput value of another nodeを選択して、パラメータ設定画面を表示させ下記を選択します

・Select logic node – Scan QR/barcode
・Select node output – Scan QR/barcode / QR barcode content

Output value of another nodeの設定

最後にダイアログ下で「save」をクリックして保存します。


ステップ4〜データ変数を追加する

次は受信したデータを表示するための一時保管を行うためのデータ変数を設定します。

変数の設定は「VARIABLES」モードに切り替えます。

VIEW - VARIABLES モードの切替

画面が切り替わったら左のメニューから「Data Variables.」を選択します。


Data VariablesでADD DATA VARIABLEを選択

次に画面の右側にある「ADD DATA VARIABLE」をクリックして選択肢から個々までに用意した「OpenFoodFactst」を選択します。

OpenFoodFactstを選択

呼び出すデータは単一レコードなので、右側のパラメータは「Single data recode」を選択しておきます。

Single data recodeを選択


つぎにデフォルトで設定されてしまっている余計な機能「5秒おきに新しい情報を取得する既定のロジック」を除外するために画面右下の「Show Logic for Empty Page」をクリックします。

Show Logic for Empty Pageをクリック
右側3つを削除

DATA:Get recode、UTILITY:Delay、VERIABLE:Set data variableの3つを削除します。

削除結果

最後に「Save」してこのフェースは完了です

Saveして終了

ステップ5〜スキャンボタンのデータ変数を設定

次にスキャンボタンを押すことによって得られるデータ変数を設定します。

ふたたび「VIEW」モードに切り替えます。

VIEWモードに切り替え

ボタンをクリックして関連するロジックフローを表示します

スキャンボタンとロジックフロー

左側のロジックフローの部品からVariablesのところのSet Data Variablesを選択してロジックフローにドラッグアンドドロップして「DATA:Get recode」の上のコネクタと接続します。

DATA:Get recodeとSet Data Variablesを接続

次に、取得したデータをデータ変数に格納します。
チュートリアルを読むと標準の方法だと処理がうまくいかない場合があるみたいです。
まずはやってみます。

右の「data」にある「{ }」「Custom object」の「{ }」をクリックします。(注意:この部分はチュートリアルの説明が抜けています)

「{ }」「Custom object」

Output value of another node」を選択してパラメータ画面に以下の内容をセットします。

・Select logic node: Get record
Select node output: Record

Get recordとRecordをセット

選択はできたのですが、なぜか「save」がでてきません。

仕方がないので戻って「Output value of another node」ではなく「Formula」を選択して下の画面をだします。

式を入れる

式(Formula)に以下の式を入れます。

outputs["Get record"].record

式を入力した結果

「save」をクリックします

これで無事(??????)終わりました



この記事が参加している募集

やってみた

この記事が気に入ったらサポートをしてみませんか?