アプリからテーブルを操作する
  • 31 Oct 2023
  • 1 読む分
  • 寄稿者

アプリからテーブルを操作する


記事の要約

アプリのエディタ内でテーブルを修正する方法

フロント業務アプリからテーブルを読み書きする方法を説明します。

このガイドでは、次のことを学びます。

  • アプリ内の既存のテーブルレコードを読み込む方法
  • アプリ内で既存のテーブルレコードを更新する方法
  • アプリで新しいテーブルレコードを作成する方法
  • アプリのコンプリーションに基づいてテーブルのデータを分析する方法

App Editorでは、個々のテーブルレコードを読み込んだり、編集したり、作成したりできます。テーブルはコードを必要としないため、Playerでアプリを実行し、テーブルがリアルタイムで更新されるのを見ることができます。

このガイドでは、テーブルとアプリを一緒に使用して、より強力なアプリを作成するためのさまざまな方法について説明します。

アプリを構築する際、特定のデータを変数に格納するか、テーブル レコードに格納するかを決定する必要があります。

変数は、特定のアプリの個々の使用法に関連するデータに適しています。テーブルは、複数のアプリでアクセスする必要があるデータに適しています。

テーブルは、次のような概念を追跡するために頻繁に使用されます:

  • 作業指示
  • 個々の製品SKU
  • 部品表(BOM)
  • スキルマトリックス
  • その他多数

この記事を読む前に、まず「テーブルの概要」を読んで、テーブルの機能を完全に理解してください。

テーブルとアプリが一緒に使用されている完全な例をご覧になりたい場合は、作業指示テーブルのウォークスルーをご覧ください。

テーブルレコードの読み取りや更新には、3つのステップがあります:

1-"Record Placeholder "を作成し、アプリ内で特定のテーブルレコードに名前を付けます。

**2-**トリガーアクションでレコードをロード(または作成)する。

**3a-**テーブルレコードの値の周りにロジックを書きたい場合は、テーブルレコードを "If "ステートメントに含めます。

**3b-**レコードの個々のフィールドを更新したい場合は、テーブルレコードを "Then "ステートメントに含めます。

レコードプレースホルダの作成

まず、テーブルレコードにアクセスするアプリで「レコードプレースホルダ」を作成する必要があります。これは、後にトリガーロジックで動的に読み込まれるレコードのプレースホルダです。

例えば、アプリで "Work Orders "テーブルのレコードを編集したい場合、"Active Work Order "というRecord Placeholderを作成します。後でオペレーターの入力に基づいてレコードを動的にロードしますが、それは常に "Active Work Order "として参照されます。

これらのプレースホルダーを設定するには、ステップ・リストの隣にあるレコード・タブをクリックしてください。

[

次に、"テーブルの追加 "を選択する。次に、"レコード・プレースホルダー "の追加をクリックする。トリガーから動的にロードされるレコードに名前を付けることができます(例:"Active Work Order")。

How To Modify Tables Within the App Editor_321466239.png

分析のために保存 "設定があることに注意してください。これを選択すると、このレコードプレースホルダーに読み込まれたテーブルレコードがアプリの完了レコードに保存されます。完了のデータにはレコードへのリンクが表示されます。

レコードプレースホルダーの削除

レコードプレースホルダを削除するには、画面左側のレコードリストからプレースホルダを選択します。下の例では、"Test Record Name "を選択します。

次に、以下のメニューから「削除」を選択します。

:::(Warning) (注意:) まず、そのレコードプレースホルダが参照されているすべてのトリガーから削除する必要があります。使用されているステップ "リストを使って、変更が必要なトリガーがあるステップを見つけることができます。

:::

これで、トリガーエディターを使ってレコードを動的に選択する準備ができました。

トリガーエディターでレコードにアクセスする

レコードプレースホルダを作成した後、オペレータ入力に基づいてレコードを動的にロードまたは作成するロジックを記述できます。

テーブルレコード" と "データ操作" のトリガーアクションを使用して、これを実現できます。以下はその方法です。

ステートメント

複数の種類のトリガー・アクションを使用して、テーブル・レコードを読み込んだり変更したりできます。簡単にまとめてみました。

***テーブルレコード/レコードのロード:***特定のIDを持つレコードをロードする。

***テーブルレコード/レコードの作成:***特定の ID で新しいレコードを作成する。

***テーブルレコード/レコードの作成または読み込み:***特定のIDを持つレコードが存在しない場合は、それを作成する。そうでない場合は、特定の ID を持つレコードをロードする。

既存のレコードのロード

レコードを読み込んだり編集したりするには、まずレコードをアプリにロードし、プレースホルダ名を付ける必要があります。これは、ステップを開いたりボタンを押したりすることで頻繁に行われます。

一度にロードできるレコードは 1 つで、一意の ID(テーブルの最初のフィールド、テキスト値)を使用してレコードを選択する必要があります。

このためには、"Table Records" "Load Record" ステートメントを使用します。

How To Modify Tables Within the App Editor_112436109.png{height="" width=""}
* ID: "テキスト" - 0146 * "active_wo "プレースホルダーに。

この例では、ID "0146 "のレコードがすでに作業指示テーブルに存在しています。

各テーブルの "ID "フィールドはテキストフィールドであるため、個々のレコードにアクセスするにはテキストを使用する必要があります。IDを選択するには、一般的なオプションをすべて使用できます:

  • テーブル・レコード
  • 静的値
  • アプリ情報
  • 変数

変数が使われる例:

How To Modify Tables Within the App Editor_136240424.png

  • 「テーブル・レコード" "ロード・レコード" by ID: "変数" "text_wo_id" into:"稼働中の作業指示"

フォーム・ステップのテキスト・ウィジェットのオペレータ入力に関連付けられた入力のように、入力が動的な場合に変数を使用する必要があるでしょう。

新規レコードの作成

テーブルに新しいレコードを作成する場合、"Create "または "Create or Load "オプションを使用する必要があります。

**Create "**を使用する場合、テーブルにまだ存在しないIDで新規レコードを作成する必要があります。レコードがすでにテーブルに存在する場合、アプリはエラーをスローします。

Create or Load」を使用すると、特定のIDを持つレコードがすでに存在する場合はロードされ、そのIDがテーブルに存在しない場合は作成されます。

この場合、"newID "というIDを使って新しいレコードを作成する。

  • "テーブル・レコード" "レコードの作成"
  • by ID: "静的値" "テキスト" "newID"
  • に入れる:"active_wo"

通常、このフィールドには変数のような動的な値を使用する必要があります。なぜなら、オペレーターがアプリを使用するたびに、新しい値を作成したくなるからです。

トリガーエディターでのレコード編集

レコードを編集するには、"Data Manipulation "アクションを使用し、次に "Store "を使用してレコードの値を編集または更新します。

レコードを編集するには、"テーブルレコード "の "ロード "または "テーブルレコード "の "作成 "によって、レコード・プレースホルダとしてすでにロードされている必要があります。

ここでは、"active_wo "としてロードされたレコードの "status "フィールドを更新する例を示します。

How To Modify Tables Within the App Editor_112437653.png

How To Modify Tables Within the App Editor_112437653.png

  • 「データ操作
  • 「保存"
  • "テキスト""合格"
  • "テーブル・レコード" "active_wo"
  • フィールド"ステータス"

例えば、オペレーターが変更を示すためにボタンを押したときなど、一般的にはウィジェット・トリガーを使用してこれを行います。

テーブルレコードから値をインクリメントすることもできます。方法については、インベントリテーブルのガイドを参照してください。

テーブルレコードで条件ロジックを使用する

特定のレコードのフィールドの値に基づいてアプリのロジックを変更したい場合もあります。

これを行うには、レコードがすでにロードされていることを確認します。次に、レコードからフィールドを選択し、他の "if" ステートメントで使用するのと同じロジックを使用します。

*テーブル・レコード:*ロードされたテーブル・レコードのフィールドに特定の値があるかどうかをチェックする。

How To Modify Tables Within the App Editor_122051530.png

  • "Table Record" "TestImg" "ID" "Contains" ...
  • Table:*特定のIDを持つレコードがすでにテーブルに存在するかどうかをチェックする。

How To Modify Tables Within the App Editor_122052009.png

  • "Table" "workorders" "has record with id" "Static Value" "text" "001"...

以下はその例である。この場合、"status "フィールドに他のテキストが含まれているかどうかをチェックする。

How To Modify Tables Within the App Editor_112438525.png{height="" width=""}
* "テーブル・レコード" "active_wo" "status" * "含む" * "静的値" "text" "合格"

If "ステートメントを使って、指定されたIDのレコードがすでに存在するかどうかをチェックし、特定のエラー・メッセージを投げることもできる。

以下は、オペレータに別の作業指示番号を入力するように促すエラーメッセージを作成する方法です。

How To Modify Tables Within the App Editor_122058202.png

IF

  • "テーブル" "workorders" "IDを持つレコードがある"
  • "静的値" "テキスト" "024dfg45"

その後

  • "Show Error" "Static Value" "text" "This work order already exists, please enter a new one".

ステップにテーブルレコードを表示する

このレコードをステップに追加するには、ウィジェットメニューの "テキスト "ボタンの下にある "テーブルレコード "オプションを選択します。

[

コンテキストペインの[ウィジェット]タブで、[レコード]横のオプションからレコードプレースホルダを選択し、プレイヤーに表示します。

[

これは、例えばオペレータに作業指示の詳細を表示するためによく使用されます。

また、アプリを構築していて、特定のテーブルレコードの値が不明な場合にも便利です。

表示から個々のフィールドを並べ替えたり削除したりするには、コンテキスト ペインでプロパティ上の x またはグリッド シンボルをクリックします。

列の数を変更するには、コンテキスト・ペインの列オプションを使用します。

ラベルと値の表示を変更するには、コンテキストペインで色とフォントサイズを調整します。

このデータがオペレータにどのように表示されるかを確認するには、Player でアプリを実行します。最初にレコードをロードすると、値が含まれます。

レコード プレースホルダのクリア

レコード プレースホルダをクリアして、そのレコード プレースホルダの下のアプリに特定のレコードがロードされないようにしたい場合があります。

その方法は以下の通りです:

  • 「テーブルレコード" "レコードプレースホルダのクリア"

ユーザとそのフィールドの表示

ユーザとその関連フィールドのレコード・プレースホルダを作成し、埋め込みテーブルで特定のユーザをロードすることもできます。詳細については、ユーザー・フィールドに関する別のガイドを参照してください

その他の情報


お探しのものは見つかりましたか?

community.tulip.coに質問を投稿したり、他の人が同じような質問に直面していないか確認することもできます!


この記事は役に立ちましたか?