1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

kintone アプリ間で、相互に関連レコード一覧を表示させてみる。

Posted at

0.はじめに

kintone アプリ間で、相互に連携する関連レコードの一覧を表示したくて、ちょっと試してみました。

大枠の構成は、こちら。

名称未設定.001.jpeg

流れとしては、以下。

  1. アプリBで、アプリAに登録されているレコードを選択する。
  2. アプリBの関連レコードに、選択されたアプリAのレコード情報が表示される。
  3. アプリAの関連レコードに、連携IDが選択された、アプリBの全レコード情報が表示される。

1.アプリAに、連携IDを追加する。

  1. アプリAに、連携用のIDの設定先として、自動計算を設定した文字列フィールドを追加します。

* ※ 作成日時から簡易的に作成した連携 ID なので、一秒以内に複数レコードの登録があると、ID の一意性が担保出来ませんので、その点ご注意下さい !!

* フィールド名 : ※任意 * 自動計算する : 〆 * DATE_FORMAT(作成日時, "YYYYMMddHHmmss", "system") * フィールドコード : ※任意

* ![FireShot Capture 185 - アプリの設定 - genbasupport.cybozu.com.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/161939/5b2e3de2-c8f7-84c2-3705-6d927f7cf86a.jpeg)

2.アプリBに、アプリAの連携IDの設定先を追加する。

  1. アプリBに、アプリAの連携IDと紐付けを設定するルックアップフィールドを追加します。

* フィールド名 : ※任意 * 関連づけるアプリ : アプリA * コピー元のフィールド : アプリAに追加した連携ID * フィールドコード : ※任意

* ![FireShot Capture 188 - アプリの設定 - genbasupport.cybozu.com.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/161939/f5c2cff7-136b-12f9-112b-1cb331245305.jpeg)

3.アプリBに、関連レコード用の連携IDを追加する。

  1. アプリBに追加する関連レコードの「表示するレコードの条件」において使用されるフィールドとして、自動計算を設定した文字列フィールドを追加します。

* フィールド名 : ※任意 * 自動計算する : 〆 * ※アプリBに追加したルックアップフィールドのフィールドコード * フィールドコード : ※任意

* ![FireShot Capture 187 - アプリの設定 - genbasupport.cybozu.com.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/161939/8106e54f-deca-e460-233d-1fa7a5eeda97.jpeg)

4.アプリBに関連レコードを追加する。

  1. アプリBに以下の設定で関連レコードを追加します。

* 参照するアプリ : アプリA * 表示するレコードの条件 : 〆 * アプリBに追加したルックアップフィールド * アプリAに追加した連携IDフィールド * フィールドコード : ※任意

* ![FireShot Capture 189 - アプリの設定 - genbasupport.cybozu.com.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/161939/d7fad513-3480-d542-a2cf-93830a8a82ea.jpeg)

5.アプリAに関連レコードを追加する。

  1. アプリAに以下の設定で関連レコードを追加します。

* 参照するアプリ : アプリB * 表示するレコードの条件 : 〆 * アプリAに追加した連携IDフィールド * アプリBに追加したルックアップフィールド * [3.](https://qiita.com/drafts/5c91315936280dabcea7#%EF%BC%93%E3%82%A2%E3%83%97%E3%83%AA%EF%BD%82%E3%81%AB%E9%96%A2%E9%80%A3%E3%83%AC%E3%82%B3%E3%83%BC%E3%83%89%E7%94%A8%E3%81%AE%E9%80%A3%E6%90%BAid%E3%82%92%E8%BF%BD%E5%8A%A0%E3%81%99%E3%82%8B) で作成した関連レコード用の連携IDでもOK * フィールドコード : ※任意

* ![FireShot Capture 186 - アプリの設定 - genbasupport.cybozu.com.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/161939/f7c09f69-3377-f032-64a0-7809c7f896c4.jpeg)

99.ハマりポイント

  • js 連携で出来るかと思ったんですが、js 連携でのレコード情報の更新は、「一覧表示」や「詳細表示」では許可されていないので、こういう形になりました。


  • 1. でも記載しましたが、アプリAの連携IDはあくまで簡易的なものなので、一秒間に複数のレコード登録が発生しそうなアプリの場合には、js 連携を作って、ちゃんと一意性の担保される連携IDを作成した方が良いと思います。

XX.まとめ

今回こういうやり方をしましたが、もしかしたら、もっと簡単に出来る方法があるかもしれないので、良いやり方があれば、どうぞコメントお願いします。

🙇‍♂️🙇‍♂️🙇‍♂️

参考になれば♪

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?