TOP >日付項目間の日数を表示する

技術者情報 日付項目間の日数を表示する


機能概要


日付項目間の日数を数字項目に自動入力します。
案件の開始日から終了日までの日数を自動演算、入力することでユーザーの入力負荷を低減します。

案件ごとのリードタイムの確認などにご利用いただけます。
※スマートフォン版の画面は未対応です。

サンプルファイル構成


 

JSファイルの作成

必要な値の確認をします

  プラグインを作動させるシート上で、「右クリック>検証」からデベロッパーツールを開きます。
     セレクトアイコンをクリックします。
     ①リードタイム算出に必要な日付型項目(1つ目)にカーソルを合わせて必要な値を確認します。
  参考画像では、開始日の値が「EXT_2_ANK_DATE_2」であることが確認できます。
   
  ②リードタイム算出に必要な日付型項目(2つ目)にカーソルを合わせて必要な値を確認します。
  参考画像では、終了日の値が「EXT_2_ANK_DATE_1」であることが確認出来ます。
   
  ③リードタイムを表示する数値型項目にカーソルを合わせて必要な値を確認します。
  参考画像では、日数の値が「myform_EXT_2_ANK_INTEGER_1_id」であることが確認できます。
   
///////////////////////////////↓環境に合わせて変更するパラメーター///////////////////////////////

 //リードタイム計算元項目①
 const date1 = "EXT_2_ANK_DATE_1";

 //リードタイム計算元項目②
 const date2 = "EXT_2_ANK_DATE_2";

 //リードタイム表示項目
 const leadTime = "myform_EXT_2_ANK_INTEGER_1_id";

///////////////////////////////↑環境に合わせて変更するパラメーター///////////////////////////////

 //リードタイム計算元項目①②が編集された際に、処理が走るようにトリガーをセット
 $(document).ready(function(){
    $("input[id =" + date1 + "]").attr('onchange', 'calcLeadTime();');
    $("input[id =" + date2 + "]").attr('onchange', 'calcLeadTime();');
 });

 //リードタイム計算
 function calcLeadTime() {

    //リードタイム計算元項目①②から項目値を取得
    var start = $("input[id =" + date2 + "]").val();
    var end = $("input[id =" + date1 + "]").val();

    //リードタイム計算元項目①②から項目値が共に空欄でない場合にリードタイムを計算
    if(!(start == "" || end == "")){

       //YYYY-MM-DD から YYYY/MM/DDにデータフォーマットを変更
       startDate = new Date(start.replaceAll("-","/"));
       endDate = new Date(end.replaceAll("-","/"));

       //リードタイム計算元項目①②の項目値からリードタイムを算出
       $("input[id =" + leadTime + "]").val((endDate - startDate)/86400000);
    }
 }

JSファイルのコードを変更して、JSの動作条件を指定します

   const date1の第一引数に、①で確認した、値を記載して、開始日を指定します。
   ※サンプルでは「EXT_2_ANK_DATE_2」が記載されています。
             const date1 = "EXT_2_ANK_DATE_2";             

   const date2の第一引数に、②で確認した、値を記載して、終了日を指定します。
   ※サンプルでは「EXT_2_ANK_DATE_1」が記載されています。
             const date1 = "EXT_2_ANK_DATE_1";             

   const leadTimeの第一引数に、③で確認した、値を記載して、演算した日数を入力する項目を指定します。
   ※サンプルでは「 myform_EXT_2_ANK_INTEGER_1_id 」が記載されています
        const leadTime = "myform_EXT_2_ANK_INTEGER_1_id";        

JSプラグインのアップロード

マニュフェストファイルと作成したJSファイルを圧縮します

   作成したJSファイルとマニフェストファイルを選択いただき、
   「右クリック>送る>圧縮(zip形式)フォルダー」でファイル圧縮します。
   ※マニフェストファイルの名称は「manifest.json」としてください。

   

zipファイルを登録します

  管理者画面から「システムの設定>環境設定>JSプラグイン」と画面遷移いただきます。
  【PC版】プラグイン一覧の新規登録ボタンから
  作成したzipファイルをeセールスマネージャーRemixに登録します。