更新日の自動計算スクリプト
今回、記録テーブルに以下の項目を用意しておきます。
・開始日(日付A)
・更新日(日付B)
・年数(分類A) 1~20までの数字選択肢を用意
設定手順は以下の通りです。
- 対象のテーブルを開きます。
- メニューから、「管理」→「テーブルの管理」を開きます。
- 「スクリプト」タブを開きます。
- 「新規作成」をクリックし、[タイトル]に「更新日の自動計算」などと入力し、以下のスクリプトを記載します。
- 「出力先」は、「全て」のチェックを外し、「新規作成,編集」にチェックをして、「追加」をクリックします。
- 「更新」をクリックします。
「新規作成」ボタンをクリックして動作を確認してみましょう。
(なお、下記スクリプトはブラウザは最新のChromeのみで確認をしており、その他のバージョンやブラウザでの動作は未確認です)
<更新日の自動計算スクリプト>
$("#Results_ClassA").change(calDate);
$("#Results_DateA").change(calDate);
function calDate() {
let startDate = new Date($("#Results_DateA").val());
let year = parseInt($("#Results_ClassA").val());
if (startDate !== "" && year) {
let expiryDate = yearPast(startDate, year);
$p.set($('#Results_DateB'), expiryDate);
}
}
function yearPast(date, years) {
let year = date.getFullYear() + years;
let month = date.getMonth() + 1;
let day = date.getDate();
if (month < 10) {
month = "0" + month;
}
if (day > 1) {
day = day - 1;
} else {
month = month - 1;
if (month < 10) {
month = "0" + month;
}
if (month == 0) {
month = 12;
}
day = new Date(year, month, 0).getDate();
}
if (day < 10) {
day = "0" + day;
}
if (month == "12" && day == "31") {
year = year - 1
}
let result = year + '/' + month + '/' + day;
return result;
}
更新日の自動計算
こんにちは、プリザンターのスクリプトの開発を担当しておりますCCSの徐(ジョ)です。
インプリム社が公開しているプリザンターのマニュアルに、生年月日から現在の年齢を求めるスクリプトがあります。
今回は、これに近いスクリプトで実用的で使えそうなものを紹介したいと思います。
会社で資産管理や設備管理をされる場合に、資産・設備の耐用年数や製品であれば保守期間などがあると思います。耐用年数が切れる前に予算の確保だったり、製品の保守切れの前に延長申請だったりが必要になってきますよね。その場合には、更新日を入れておき、その3か月前にプリザンターから通知させるということをすればよいのですが、この更新日を手入力するよりは、単に耐用年数や保証年数をいれれば、購入日から自動で計算されて入力されると便利ですね。
ということで、今回は元となる日付と年数を入力すると、元となる日付から指定された年数後の日付を自動計算するスクリプトを紹介いたします。