テーブルに格納した値を集計して、別アプリに反映する方法

[実現したい内容]

テーブル内の数値を科目ごとに集計してフィールドに入れたい

こちらのQAを見ながら、テーブル内の数値を科目ごとに集計して同じアプリ内の数値フィールドに反映することができました。
これの応用で、集計した数値を別のアプリ内の数値フィールドに反映したいです。

[課題]
こちらのQA通りにしたところ、一旦同じアプリ内に数値フィールドが表示されるので、それをルックアップして別のアプリに反映することができると思います。
ですが、運用上、同じアプリ内に数値フィールドを増やしたくありません。

どのようにすればこちらは実装できるでしょうか。

[現在使用しているJavascriptコード]
(function() {
“use strict”;

var fields = ['所属コード', '残業時間', 'テーブル'];
var kamokuInfos = {
'15555': '_15555残業時間合計',
'14688': '_14688残業時間合計',
}

var events = ["app.record.edit.show", "app.record.create.show"];
fields.forEach(function(field) {
events.push("app.record.edit.change." + field);
events.push("app.record.create.change." + field);
})



var totalFields = [];
Object.keys(kamokuInfos).forEach(function(kamoku) {
var tcode = kamokuInfos[kamoku];
if (totalFields.indexOf(tcode) < 0) {
totalFields.push(tcode);
}
});

kintone.events.on(events, function(event) {
var record = event.record;
totalFields.forEach(function(tcode) {
record[tcode].value = 0;
record[tcode].disabled = true;
});
var subTable = record['テーブル'].value;
subTable.forEach(function(rows) {
var kamoku = rows.value['所属コード'].value;
if (Object.keys(kamokuInfos).indexOf(kamoku) >= 0) {
var tcode = kamokuInfos[kamoku];
if (rows.value['残業時間'].value) {
record[tcode].value += Number(rows.value['残業時間'].value);
}
}
});

return event;
});
})();

方法としては、
①計算後に1件のレコードを更新するを用いて別のアプリに数値を登録
②サブテーブルがあるアプリへレコードの取得(1件のレコードを取得するまたは複数のレコードを取得する)を行い計算し、別のアプリへ登録(REST APIで実装するか、レコードを開いた時にkintone.app.record.set()で実装)

があります。どちらも一長一短(①の場合、工夫しないと誰かが編集中でもレコードを更新してしまうのでそのユーザーが保存できなくなり、②でREST APIを使わない場合は①の不具合がないものの、都度レコードの編集と保存が必要)です。

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。