一覧表示画面でサブテーブルの内容を表示する場合は、「表示する」をクリックすることで表示することができますが、サブテーブル内の件数を表示し、それをクリックすることで内容表示することは可能なのでしょうか。
(デフォルトは上の図のように出ますが、下の図のようにできないか)
ご教示いただけますよう、お願いいたします。
一覧表示画面でサブテーブルの内容を表示する場合は、「表示する」をクリックすることで表示することができますが、サブテーブル内の件数を表示し、それをクリックすることで内容表示することは可能なのでしょうか。
(デフォルトは上の図のように出ますが、下の図のようにできないか)
ご教示いただけますよう、お願いいたします。
田川俊弥様
お世話になっております.
cstapの江田と申します.
以下のようなコードで実装できるかと思います。
fieldCodeとcolumnIndexは適宜変更してください。
(function () {
"use strict";
kintone.events.on([
'app.record.index.show',
], function (event) {
var subTables = [
{
fieldCode: '重要案件進捗のフィールドコード',
columnIndex: 1
}, {
fieldCode: '月額サービスのフィールドコード',
columnIndex: 2
}, {
fieldCode: '発生トラブルのフィールドコード',
columnIndex: 3
}, {
fieldCode: 'QCD問題のフィールドコード',
columnIndex: 4
}, {
fieldCode: '課題とリクエストのフィールドコード',
columnIndex: 5
}
];
var changeLabels = function () {
subTables.forEach(function (subTable) {
[].forEach.call(document.querySelectorAll('#view-list-data-gaia > table > tbody > tr.recordlist-row-gaia'), function (rowDom, rowIndex) {
rowDom.getElementsByClassName('recordlist-cell-gaia')[subTable.columnIndex].childNodes[0].innerText = event.records[rowIndex][subTable.fieldCode].value.length + '件';
});
});
};
[].forEach.call(document.getElementsByClassName('recordlist-toggle-subtable-gaia'), function (toggleButton) {
toggleButton.addEventListener('click', function () {
changeLabels();
});
})
changeLabels();
});
})();
cstap江田様
早速のご回答ありがとうございます。
早速実装してみました。kintoneの仕様かもしれませんが、データがなくてもレコードは作成されるようで、必ず1件と出てしまうようです。
ありがとうございます。