//返信予定日 Date085 変更イベントを検知して実行 $p.on('change', 'Date085', function () { if ($('#Results_Date085').val() != '') { console.log('返信予定日が変更されました。'); //返信予定日を取得 let date085 = $('#Results_Date085').val(); //遅延理由メッセージを取得 let content081 = $('#Results_Description081').val(); //%返信予定日% を置換する let newContent = content081.replace(/%返信予定日%/g, date085); //遅延理由を再設定する $p.set($('#Results_Description081'), newContent); } }); /* //---------------------------------------------------------------------- //日付文字列を「年/月/日(曜日)」形式に整形する(例:"2026/06/25" → "2026/6/25(木)") function formatDateWithWeekday(dateStr) { if (!dateStr) return ''; let datePart = dateStr.split(' ')[0]; //時刻が付いている場合は日付部分のみ取り出す let parts = datePart.split('/'); if (parts.length < 3) return datePart; //想定外の形式の場合はそのまま返す let year = parseInt(parts[0], 10); let month = parseInt(parts[1], 10); let day = parseInt(parts[2], 10); let dateObj = new Date(year, month - 1, day); let weekdays = ['日', '月', '火', '水', '木', '金', '土']; let weekday = weekdays[dateObj.getDay()]; return year + '/' + month + '/' + day + '(' + weekday + ')'; //例:2026/6/25(木) } //---------------------------------------------------------------------- //返信予定日を遅延連絡内容に反映する共通処理 function reflectReplyDate() { let replyDateRaw = $('#Results_Date085').val(); //返信予定日 if (!replyDateRaw) return; //未入力の場合は何もしない let replyDate = formatDateWithWeekday(replyDateRaw); //「2026/6/25(木)」の形式に整形 let content = $('#Results_Description081').val(); //遅延連絡内容 if (!content) return; //テンプレがまだ反映されていない場合は何もしない //「見積り返信が【○○】の予定です」の【○○】部分を、現在の中身に関わらず新しい日付に置き換える let newContent = content.replace(/【.*?】の予定です/, '【' + replyDate + '】の予定です'); $p.set($('#Results_Description081'), newContent); } //---------------------------------------------------------------------- //返信予定日が変更された時 $p.events.on_change_Date085 = function (args) { reflectReplyDate(); }; //---------------------------------------------------------------------- //遅延理由が変更された時(Lookupでテンプレが上書きされた直後に再反映) $p.events.on_change_Class086 = function (args) { reflectReplyDate(); }; */