ルックアップを設定する

記事番号:040547

ルックアップを設定すると、他のアプリから必要なデータをコピーして取得できるようになります。
たとえば、「注文管理アプリ」に「商品管理アプリ」を参照するルックアップを設定すると、「商品管理アプリ」から商品情報を取得して「注文管理アプリ」に必要なデータをコピーできるようになります。データの二重入力を省き、入力ミスも防げます。

参考:ルックアップとは  

スクリーンショット:ルックアップ完成イメージ

ルックアップの基本

ルックアップの設定には、マスターデータ(参照先)となるアプリと、そのアプリからデータを取得するアプリが必要です。

  • マスターデータ(参照先)となるアプリを作成する
    アプリ間の関連付けのキーとなるフィールドが必要です。

  • データを取得するアプリに、[ルックアップ]フィールドを配置する
    [ルックアップ]フィールドで、マスターデータ(参照先)アプリとの関連付けを設定します。
    [ルックアップ]フィールドの各設定項目については、次のページを参照してください。
    [ルックアップ]フィールドの設定項目

  • アプリが正しく参照されているかを確認する
    レコードの追加画面を開いて、ルックアップを使ってマスターデータからデータを取得できるかを確認します。
    ルックアップの利用方法は次のページを参照してください。
    設定したルックアップを使ってみる

ルックアップの設定例

具体的なアプリを用いて、ルックアップの設定例を説明します。ここでは、注文管理アプリと商品管理アプリを使用します。

マスターアプリにデータを登録する

商品管理アプリ(マスターアプリ)のデータを注文管理アプリに取り込むには、はじめに元データとなる商品管理アプリのデータ登録が必要です。
今回の例では、商品コード、商品名、単価などのデータを登録しておきます。 スクリーンショット:商品管理アプリのレコード画面

[ルックアップ]フィールドを設定する

次に、データを取得する注文管理アプリに[ルックアップ]フィールドを配置します。

  1. 注文管理アプリを開きます。

  2. [レコードの一覧]画面で、画面右上にある歯車の形をした[アプリを設定]アイコンをクリックします。
    スクリーンショット:[アプリを設定]アイコンが枠線で強調されている

  3. [アプリの設定]画面で、[フォーム]タブをクリックします。

  4. フォームの設定画面で、フォームに[テーブル]を配置します。
    スクリーンショット:アプリ設定の[フォーム]タブで[テーブル]フィールドを右側のエリアに配置している画面

  5. [テーブル][ルックアップ]をドラッグアンドドロップします。
    ここでは、商品コードを元に情報を取得するルックアップを設定します。
    スクリーンショット:アプリ設定の[フォーム]タブで[ルックアップ]フィールドを右側のエリアの[テーブル]に配置している画面

  6. 商品管理アプリから情報を取得したいフィールドも、あわせて[テーブル]に追加します。
    今回は、次のフィールドを追加しました。

    • 商品名:[文字列(1行)]フィールド
    • 単価:[数値]フィールド
    • 数量:[数値]フィールド
    • 小計:[計算]フィールド スクリーンショット:フィールドを配置したテーブル
  7. [ルックアップ]フィールドの右上にある歯車の形をした設定アイコンにカーソルを合わせて、[設定]をクリックします。
    スクリーンショット:[ルックアップ]フィールドの設定アイコンと、[設定]を枠線で強調している

  8. 次の項目を設定します。

    • [フィールド名]を変更します。
      今回は「商品コード」に変更します。
    • [関連付けるアプリ]を選択します。
      データを取得する元のアプリを選択します。ここでは「商品管理アプリ」を選択します。
    • [コピー元のフィールド]を選択します。
      関連付けのキーにするフィールドを選択します。ここでは「商品コード」フィールドを選択します。
      [コピー元のフィールド]には、次のフィールドを指定できます。
      • [文字列(1行)][数値][計算][ルックアップ][リンク][レコード番号] スクリーンショット:[ルックアップの設定]画面で、[フィールド名]、[関連付けるアプリ]、および[コピー元のフィールド]を赤枠で強調している
  9. 続けて、[ほかのフィールドのコピー]を選択します。
    ルックアップ元のレコードから、ほかのフィールドのデータをまとめて取得できます。
    ここでは、「商品名」 ← 「[商品管理]商品名」、「単価」 ← 「[商品管理]単価」を選択します。
    [ + ]ボタンをクリックして、コピーしたいフィールド分だけ設定を追加できます。
    スクリーンショット:[ルックアップの設定]画面で、[ほかのフィールドのコピー]を枠線で強調している

  10. 必要に応じて、[コピー元のレコードの選択時に表示するフィールド]を選択します。
    ここで選択したフィールドは、取得するレコードの選択画面に表示されます。たとえば、同じ商品コードのレコードが複数ある場合などに、レコードを識別するのに役立ちます。
    ここでは「商品名」、「単価」を選択します。実際の表示画面は、次のページを参照してください。
    設定したルックアップを使ってみる スクリーンショット:[ルックアップの設定]画面で、[コピー元のレコードの選択時に表示するフィールド]を枠線で強調している

  11. 次の項目も、必要に応じて設定します。

    • [絞り込みの初期設定]を指定します。
      ここで設定した絞り込み条件は、取得するレコードの選択画面に適用されます。ドロップダウンで条件を指定するフィールドを選択して、絞り込み条件を指定します。今回の例では[絞り込みの初期設定]は指定せず、すべてのレコードが表示されるようにします。
      なお、[絞り込みの初期設定]を指定していても、[ルックアップ]フィールドに入力されたキーワードと一致するレコードが1つしかない場合は、絞り込みは適用されずにそのままレコード情報が取得されます。

    • [ソートの初期設定]を選択します。
      取得するレコードの表示順を設定します。ここでは「商品コード」、[昇順]を選択します。
      スクリーンショット:[ルックアップの設定]画面で[絞り込みの初期設定]と[ソートの初期設定]を枠線で強調している

  12. [保存]をクリックします。

  13. [テーブル]右上にある歯車の形をした設定アイコンから[テーブルの設定]をクリックして、[テーブル名]を設定します。
    スクリーンショット:[テーブル]の設定アイコンと[テーブルの設定]を枠線で強調している

  14. [テーブル名]を入力して、[保存]をクリックします。
    ここでは、「商品情報」と入力します。
    スクリーンショット:「テーブルの設定」画面で「テーブル名」を赤枠で強調している

  15. 画面左上の[フォームを保存]をクリックします。

  16. 画面右上の[アプリを更新]をクリックします。
    スクリーンショット:アプリの設定画面で[アプリを更新]を枠線で強調している

  17. [アプリを更新]ダイアログで、[アプリを更新]をクリックします。

そのほかのルックアップの設定例

[ルックアップの設定][ほかのフィールドのコピー]を利用することで、[複数選択]フィールド、[チェックボックス]フィールド、[ドロップダウン]フィールドなどのデータを取得できます。
ここでは、顧客リストアプリに登録している以下の内容を、案件管理アプリにもコピーする場合の設定例を紹介します。

  • 利用製品([複数選択]フィールド)
  • オプション([チェックボックス]フィールド)

スクリーンショット:[複数選択]フィールド・[チェックボックス]フィールドの使用イメージ

顧客リストアプリと案件管理アプリでは両方とも会社名を登録するので、この会社名を紐づけて、利用製品とオプションの内容を取得することにします。
案件管理アプリで会社名として[ルックアップ]フィールドを配置し、以下のとおり設定します。

関連付けるアプリ コピー元のフィールド
顧客リスト 会社名
ほかのフィールドのコピー(コピー先) ほかのフィールドのコピー(コピー元)
利用製品 [顧客リスト]利用製品
オプション [顧客リスト]オプション

スクリーンショット:「ルックアップの設定」画面

案件管理アプリの会社名を入力して[取得]をクリックすると、顧客リストアプリから利用製品とオプションの内容を取得できるようになりました。
スクリーンショット:[複数選択]フィールド・[チェックボックス]フィールドの使用イメージ

ルックアップの注意点

  • 参照先のレコード(マスターデータ)に変更があっても、ルックアップで取得済みの値はそのまま維持されます。自動的に最新の値にはなりません。
    再度[取得]をクリックすると、最新の値に上書きされます。

  • 既存のレコードを更新する場合、CSVファイルを読み込んで一括更新する方法が便利です。
    ただし、[コピー元のフィールド]で選択したフィールドの値が、参照先のアプリ内で重複している場合、ファイルの読み込み時に対象レコードが特定できないため、値を更新できません。
    そのような値を更新したい場合は、レコードの編集画面で1件ずつ更新する必要があります。

  • [テーブル]に設定したフィールドは指定できません。

  • [ルックアップ]フィールドの設定を変更しても、登録済みのレコードの、次のフィールドの値は変わりません。

    • [ルックアップ]フィールドの設定の[ほかのフィールドのコピー]で選択したフィールド

参考:動画で見るルックアップの設定

動画でも、顧客管理アプリと案件管理アプリを例にルックアップの設定方法を説明しています。