お世話になります。
kintoneを試用して数日の素人です。
お尋ねしたいのは、
「日報」アプリに入力された報告内容を「案件管理」アプリの活動履歴に入力・更新したいのです。
例えば、
日報のテーブル1行目に案件をA 工数を3 業務内容を「AAA」
2行目に案件をB 工数を5 業務内容を「BBB」
として登録すると、
案件管理内で案件がAのレコードを選択し、その中の「活動履歴」テーブルに1行追加、そして追加した行に、登録した日報の日付と作業名、工数(3)と業務内容(AAA)が自動入力され更新する。
同様に案件管理内で案件がBのレコードを選択し、その中の「活動履歴」テーブルに1行追加、そして追加した行に、登録した日報の日付と工数(5)業務内容(BBB)が自動入力され更新する。
ということをしたいのですが、JavaScriptについても素人で、
kintoneのサンプルプログラムを多少触ってみた程度です。
よかったらやり方やヒントを頂ければと思います。
よろしくお願いいたします。
nakaseさん
cstapの瀧ヶ平です。
具体的な流れとしては、日報のレコード保存時のイベントでテーブルのデータそれぞれに対して
- 案件に当てはまるレコードとレコードのIDをレコード取得APIで取得(クエリを利用する必要があるので一括取得のAPIを利用する必要があります)
- 取得したレコードの活動履歴テーブルのに日報のデータを利用して行を追加したデータを作る
- レコードの更新APIを利用して、2で作ったデータを更新する。
という流れになりそうです。
複雑な実装になるため難しいとは思いますが、こちらやこちらのTipsなどが参考になるかと思います。
また実装の際困ったことがあればまたご質問ください。
cstap 瀧ヶ平さんの回答がまっとうなやり方だと思います。
その上で、JavaScriptが苦手な私風の、少々手抜きな方法ですが、、
1)日報でサブテーブルを使わない。日報は1案件1レコードとする。
2)案件管理の下部に、関連レコードで、日報一覧を表示する。
この形であれば、JavaScriptの実装はいらないかもしれません。
但しこの方法の大きな問題として、日報入力者は、案件毎に新規入力する必要があるので、入力者には不評なシステムになるかも知れません。
従って、ユーザーフレンドリーなシステムにする為には、やはりJavaScript実装となると思いますが、一つの考え方として、参考になればと思います。
サブテーブルの内容も関連レコードで表示できるようになるとすごくいいのですけどね。