お世話になります。
添付画像のような画面で、日付を入力したら同じ行の文字列フィールドに年齢が表示されるようにしたいです。
テーブル無しではうまくいきますが、
テーブルにすると、年齢が表示されず困っています。
いくつかの年齢計算方法の記事を見たのですが、用途柄できるだけ正確に取得したいと思い、こちらの記事を参考にしました。
第 15 回 kintone JavaScript カスタマイズのプログラム実例を学ぼう③(経過年数を表示する) - cybozu developer network
現状このようになっています。。。
(() => {
'use strict';
// テーブルの情報を取得
const familyTable = kintone.app.record.get().record['FamilyTable'].value;
// 各行の情報を出力
familyTable.forEach((row, index) => {
const birthDayValue = row.value['BirthDay'].value;
console.log(`Row ${index + 1} - BirthDay: ${birthDayValue}`);
// 年齢を計算して表示する
const currentDate = luxon.DateTime.local().startOf('day');
const birthDate = luxon.DateTime.fromISO(birthDayValue).startOf('day');
const ageDuration = currentDate.diff(birthDate, ['years', 'months', 'days']);
const ageElement = kintone.app.record.getSpaceElement('Age');
const $emLabel = $('<label>');
const $emDiv = $('<span>');
$(ageElement).append($emDiv);
$(ageElement).css({
width: $(ageElement).innerWidth() + 50 + 'px',
});
$emDiv.append($emLabel);
$emLabel.html('<br>');
$emLabel.append(
ageDuration.years + '年' + ageDuration.months + 'ヶ月'
);
$emDiv.css({
color: 'green',
});
});
})();
不足の情報などがあれば教えて頂ければと思います。
宜しくお願いいたします。