別アプリのサブテーブルから条件一致する情報を取得したい。

お世話になっております。
類似のご質問にも目を通したのですがどうもサブテーブルに対しての理解が難しく、ご指南頂けないでしょうか。

Aというアプリには顧客別のレコードがあり、それぞれサブテーブル内に対応履歴があります。
この対応履歴をプリントクリエイターで書類提出するため、Aアプリのサブテーブル内にある対応日(○月○日〜○月○日)と担当者で絞り込み、Bアプリのサブテーブルに条件に一致した対応内容を取得、セットしたいと考えているのですがこのようなことはカスタマイズで可能なのでしょうか。

Bアプリには担当者と対応日(○月○日〜○月○日)を入力後のchangeイベントでサブテーブルに取得したいと考えています。

Aアプリのサブテーブルにある対応日と担当者が一致する各一列の情報をBアプリで対応日順に取得し、書類にできればと考えております。
宜しくお願い致します。

佐々木 さん

 

以下アプリの構成の理解で回答します。

Aアプリ

  • 対応履歴(サブテーブル)
      - 対応開始日(日付)
      - 対応終了日(日付)
      - 担当者(ユーザー選択)

Bアプリ

  • 対応開始日(日付)
  • 対応終了日(日付)
  • 担当者(ユーザー選択)
  • Aアプリの対応履歴で対応開始日・対応終了日・担当者が一致する情報(サブテーブル)

 

カスタマイズ自体は可能です。実装手順は下記になると思います。

  1. Bアプリの対応開始日・対応終了日・担当者フィールドに change イベントを設定
  2. 上記イベント発生時、対応開始日・対応終了日・担当者がすべて入力されている場合、Aアプリで対応するレコードをAPIで取得
  3. 取得したAアプリのレコードの対応履歴から、Bアプリの対応開始日・対応終了日・担当者と完全一致する行のみを取得し、Bアプリのサブテーブルに値を設定

2, 3 の注意点としてサブテーブルの内容を検索する場合、サブテーブルの行全体が検索対象になるため、APIで取得後 JavaScript で更に絞り込む必要があります。

 

JavaScript で更に絞り込む必要性について補足のサンプルとして、下記条件で絞り込むと、

 

このようにサブテーブル内に一致する行が1つでもあればヒットします。

 

以上になります。コードを書いてみて何か不明な点がありましたら、気兼ねなくご質問ください。

川村さま

ご回答いただきありがとうございます!非常にわかりやすく手順についても具体的になり
サブテーブルについても理解が深まりました。
さっそくご教示頂いた内容を参考にコードを書いてみたいと思います。

もし自身で解決できないことが出てきてしまった際にはまたこちらでご質問させてください。
今後とも宜しくお願い致します。