あるアプリのテーブルを、別アプリのレコードとして書き出すのは「テーブル行を別アプリのレコードへ書き出す」で実現することが可能です。


ただ、このやることは毎回新しい行に書き出すため、元アプリのレコードが何度も更新されるようなアプリの場合、書き出した先のアプリとの同期を取りたくなるケースがあります。


例えば以下のようなケースです。


案件管理の活動履歴テーブルの各行 → 案件管理/活動履歴集計アプリの各レコードに同期

今回は、これを実現するカスタマイズを作成してみたいと思います。

Customineによるカスタマイズでは、レコードの削除はポリシーにより提供されていませんので、削除は削除フィールドで表現するようにしてみます。


案件管理アプリ側の事前準備

まずはじめに、案件管理アプリ側の活動履歴テーブルに必要なフィールドを追加します。


まずこのテーブルは行の削除は出来ないようにしたいので、代わりの削除フィールドを追加します。

また、集計アプリ側と紐付けるための「更新キー」という必須フィールドも追加してください。


集計アプリ側の事前準備

追加した2つのフィールドを、集計アプリ側にも追加します。 このとき、「更新用キー」に関しては「値の重複を禁止する」をチェックしておくと、よりよいかと思います。


案件管理アプリ側のカスタマイズ : 追加・編集画面

準備したアプリに対して、カスタマイズを作成していきます。ここでは案件管理アプリで、保存された時に集計アプリ側のレコードを更新または追加するようにしたいと思います。


流れとしては以下のとおりです。

設定は以下のようになります。


この段階で、一旦「kintoneアプリへ登録」を押して、案件管理アプリを試してみてください。テーブルの内容が集計アプリ側のレコードとして出力されていればOKです。



追加・編集画面で見た目の問題をカスタマイズ

続いて、少し見た目を整えて、使いやすくしていきたいと思います。


まずテーブルから行が削除されることを防ぐために、削除ボタンを「テーブルの行増減ボタンを非表示にする」で非表示にしておきます。


また、更新キーもユーザーが入力する必要のないフィールドですので、「フィールドやグループを非表示にする」で非表示にしておくと良いでしょう。



詳細画面の見た目をカスタマイズ

最後に、詳細画面では削除フラグを立てた行は、詳細画面で見た時にテーブルに表示されないようにしましょう。
テーブルの表示行を絞り込む」で表示を絞り込むことが出来ます(実際のデータは変更されませんので、ご安心ください)。


これも見た目の問題なので、あえてこのカスタマイズは追加しなくてもよいのですが、気になる場合は設定しておいてください。削除した操作が明示的に分かるので、逆に残しておいても良いと思います。


また、追加・編集画面と同じように削除フラグと更新キーは不要なので、これも「フィールドやグループを非表示にする」で消しておくとよいかと思います。 


以上で完成です!



まとめ

簡単なカスタマイズで、テーブルの内容を別アプリのレコードと同期させることが出来ました。

案件管理/活動履歴集計アプリでは、削除フラグが空のレコードを一覧に表示するように設定したり、集計対象にしたりという事をお忘れなく実施してください。


もしなにか分からないことがありましたら、チャットサポートにてお問い合わせください。