目次
別のデータポケットを参照するには
あるデータポケットから、マスターデータとした別のデータポケットのレコードを参照して値を取得したいことがあります。Platioでは「レコード選択」フィールドを使って、別のデータポケットのフィールドをリスト選択のように参照して選択できます。
この記事では、例を使ってレコード選択の利用方法を説明します。
利用イメージ
例えば、各店舗から店舗運営の改善を行ったことを報告する「改善報告」データポケットを作成します。
このデータポケットでは、以下のようなレコードを登録します。
[改善報告のレコード]
報告日時, 報告者, 店舗名, 改善した内容, 写真, 備考このデータポケットで3番目のフィールドの「店舗名」を入力するとき、主に以下の方法があります。
- 「テキスト」フィールドで直接店舗名を入力
- 「テキスト選択」フィールドで登録したリストから選択
- 「レコード選択」フィールドで別のデータポケットが持つ「店舗名」フィールドから選択
ここでは、例を使って 3. の「レコード選択」フィールドを使う手順を解説します。
例の「改善報告」データポケットで「レコード選択」フィールドを使うには、「改善報告」データポケットとは別で、店舗情報を管理する「店舗一覧」データポケットを先に作成して以下のようにレコードを登録します。
[店舗一覧のレコード]
店舗名, 住所, 電話番号「店舗一覧」データポケットであらかじめ店舗情報を登録して、「改善報告」データポケットで「店舗名」を入力するときに、「店舗一覧」データポケットの「店舗名」を参照して選択できるようにします。
レコードの関係は以下のようになります。
実際のデータポケットの画面イメージは以下のようになります。
この2つのデータポケットを作成して利用する手順です。
- PlatioStudioでデータポケットを作成
- データポケットA(前述例では「店舗一覧」データポケット)を作成する。
- データポケットB(前述例では「改善報告」データポケット)を作成するときに、「レコード選択」フィールドを追加してデータポケットAのフィールドを選択する。
- データビューアーまたはPlatioアプリで参照するデータを登録
- データポケットA(前述例では「店舗一覧」データポケット)でデータを登録する。
- Platioアプリでデータポケットからデータを入力
- データポケットB(前述例では「改善報告」データポケット)を使うときにデータポケットAのフィールドを参照してデータを登録する。
フィールドの利用イメージを下図に示します。
「改善報告」データポケット
レコード選択フィールドで、下の「店舗一覧」データポケットの「店舗名」フィールドに登録された店舗名リストから選択できます。
「店舗一覧」データポケット
この「店舗一覧」データポケットの「店舗名」テキストフィールドに、店舗名を入力します。
アプリでの「改善報告」データポケットの利用イメージ
レコード選択フィールドの追加手順
フィールドを参照する側のデータポケットに「レコード選択」フィールドを追加する前に、別のデータポケットに参照可能なフィールドを作成しておく必要があります。
先に示した利用手順に沿って、画面図で説明します。
①データポケットAを作成し、レコード選択の対象のフィールドを追加します。データポケットAを完成させて保存します。
※例では、店舗名なので「テキスト」フィールドを使います。
「店舗一覧」データポケット
②データポケットBを作成します。店舗名のフィールドの追加で「+」をクリックします。
「改善報告」データポケット
③「フィールドの追加」画面で「レコード選択」を展開して「レコード選択」フィールドをクリックして追加します。
④どのデータポケットのどのフィールドの値を選択するかを設定します。「どのデータポケットからレコードを選択しますか?」では参照するデータポケットAを選択し、さらに「どのフィールドの値で選択しますか?」では参照したいフィールドを選択します。
⑤データポケットに「レコード選択」フィールドが追加され、画面右にプロパティが表示されます。プロパティの「名前」にフィールド名が自動で設定されたので、名前をクリックしてフィールド名を編集し、Enterキーを押して確定します。
⑥データポケットを完成させて保存します。
⑦ミニアプリを配布して、アプリユーザーが利用できるようにします。
ここでは、ユーザーの追加などミニアプリ利用の手順は省略します。ミニアプリの作成やユーザーの追加などは「Platioスタートアップガイド」をご参照ください。
⑧データポケットAにデータを登録します。
以下はデータビューアーから入力した図です。
⑨Platioアプリからミニアプリを開始して、データポケットBの「レコード選択」フィールドをタップすると、データポケットAで登録済みの情報がリスト表示されて選択することができます。
フィールドプロパティ「初期値」での「レコード選択」
レコード選択フィールドを使うデータポケットでは、別のフィールドで同じ選択元データポケットの値を初期値プロパティを使って値を自動設定することができます。
例えば、「商品1」をレコード選択フィールドで取得し、別フィールドで商品1の「単価」も取得したい場合、単価を設定したいフィールドの初期値プロパティで「レコード選択」を指定して取得することができます。
初期値を「レコード選択」で指定する例を、次に図示して説明します。
※メディア系フィールド(画像など)は対応していません。(保存されているデータサイズなどで読み込みの時間や転送サイズの関係があり、参照・読み込みをすることはできません。)
選択元レコードの別のフィールドを参照する
例:「生花販売管理」テンプレート
「販売リスト」データポケットの「商品1」フィールドは、別の「花マスター」データポケットに登録している「品名(種類)」を参照するレコード選択フィールドになっています。
「花マスター」データポケット
「販売リスト」データポケット
「商品1」レコード選択フィールドで、選択元を「花マスター」データポケットの「品名 (種類)」テキストフィールドに設定しています。
ここで、「商品1」フィールドで、「花マスター」データポケットの”品名(種類)”を選択したら同じレコードの”単価”を「商品1の単価」フィールドに自動で入力するように初期値を設定できます。
※「花マスター」データポケットには、品名・単価などを事前に登録しています。
各データポケットの関連は下図の緑枠と赤枠になります。
「花マスター」データポケット
「販売リスト」データポケット
「商品1」のフィールドプロパティは下図のようになっています。
「商品1の単価」フィールドは通貨フィールドで、フィールドプロパティ「初期値」で同じデータポケット内のレコード選択フィールドで選択したレコードの別のフィールドを参照するように設定しています。
※詳しくは、Platio Studioでテンプレートからミニアプリを作成して確認してください。
フィールドプロパティ「条件付き表示」での「レコード選択」
条件付き表示プロパティでは、フィールドを表示する条件、またはフィールドを表示しない条件を設定してフィールドの表示/非表示を指定することができます。
レコード選択フィールドを使うデータポケットでは、同じ選択元データポケットのスイッチフィールドの値を表示/非表示の条件に使うことができます。
例えば、ユーザーを管理する「ユーザー管理」データポケットで、ユーザーフィールドとリーダーを示すスイッチフィールドがあるとします。レコードを登録時には、ユーザーがリーダーの場合にスイッチをオンにします。
「ユーザー管理」データポケット
別の「日報」データポケットで、「ユーザー管理」データポケットのユーザーフィールドを選択元にしたレコード選択フィールド「報告ユーザー」を作成します。報告ユーザーがリーダーの場合に、リーダーとしてコメントを入力する複数行テキストフィールドがある場合に、複数行テキストフィールド「リーダーコメント」の条件付き表示プロパティで、ユーザーのスイッチがオンの場合に表示するように指定できます。
「日報」データポケット
「報告ユーザー」レコード選択フィールドの選択元は、「ユーザー管理」データポケットのユーザーフィールドです。
「リーダーコメント」複数行テキストフィールドでは、高度なプロパティを開き、条件付き表示プロパティで下図のように「レコード選択」を選択して、参照するフィールドを設定します。
以上で、説明は終わりです。