活動履歴を保管していくアプリを作成しています。活動内容はテーブルに保管するアプリです。
しかし、履歴がたくさんあると画面の下までスクロールするのが大変なので、フォームの上部にテーブル内のフィールドと同様のフィールドを配置し、ボタンでテーブルに書き込むように対応しようとしています。以下の内容をほぼ踏襲して作成しています。
# kintoneにおけるテーブル操作の基本(行の追加・更新・削除)
ボタンでテーブルに書き込むことはできるのですが、このままではレコードの保管時にフォーム上部のフィールドの内容もそのまま保管されてしまい、次回の使用時には却って不便になります。これを避けるために、テーブルに書き込んだ後に文字列のフィールドなどはNULLを書き込んで初期化をしています。
しかし、活動日時を記録する日時フィールドの初期化ができずに困っています。
日時フィールドを次回の編集時にレコード作成時と同様に現在日時を表示させる(レコード登録時の日時を初期値にする)ようにしておきたいのですが、その方法が分かりません。アドバイスをいただければと思います。
pomo
2
@jirotan
編集画面イベントで入力用テーブルの日時フィールドを現時刻で書き換えてあげる形にしてあげればよいかと思います。
(() => {
kintone.events.on(['app.record.edit.show'], (event) => {
const inputTableFieldName = "テーブル1"
const inputDateFieldName = "日時"
const record = event.record
const table = record[inputTableFieldName].value
table[0].value[inputDateFieldName].value = new Date().toISOString()
return event
});
})();
「いいね!」 1
ありがとうございます。
初期化したかったのはテーブルに書き込んだフィールドではなく、テーブルに書き出す前の編集用の日時フィールドだったのですが、参考にさせていただいて解決しました。
日時フィールドでも"new Date().toISOString()"で良かったのですね。初心者なので助かりました!
「いいね!」 1
system
(system)
クローズされました:
4
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。