ssatoh17
6/5/2018 - 1:35 PM

kintoneアクションボタンの拡張

知見 :  kintone.events.on 内では、record.get や record.set関数は使えない(エラーが出ない)  アクションボタンは非同期で読み込まれる⇒少し時間をおいてから取得  first()、last()

//知見 : 
//events.on 内では、record.get や set関数が使えない
//・アクションボタンは非同期で読み込まれる

jQuery.noConflict();
(function($) {
  "use strict"; 
  kintone.events.on("app.record.detail.show", function(e) 
  { 
    console.log($('.gaia-app-statusbar-action-label').last().text()); 
    console.log($('.gaia-app-statusbar-action-label').first().text()); //この時点では「カギ発注」ボタンの読み込みが完了していないため、 //少し時間をおいて取得する
    
    setTimeout(function()
    { 
      var $カギ発注ボタン = $('.gaia-app-statusbar-action-label').last(); //上と同じ記述だが、結果が異なる 
      console.log($カギ発注ボタン.text()); 
      $カギ発注ボタン.text('カギ発注 (連動準備OK!)'); // ← 🔵任意の文字列に変えて下さい
      console.log($('.gaia-app-statusbar-action-label').first().text()); 

      $カギ発注ボタン.on('click',function(event)
      {
        //console.log('clickされました'); //自分のレコードの「カギ発注日」に今日の日付をSet //var レコードID = kintone.app.record.getId(); 
        var objParam = {}; objParam['app'] = kintone.app.getId(); // アプリ番号 
        objParam['id'] = kintone.app.record.getId(); // レコード番号 
        objParam['record'] = {}; // レコードを更新する 
        objParam['record']['カギ発注日'] = {}; 
        objParam['record']['カギ発注日']['value'] = "2018-06-05"; 
        kintone.api('/k/v1/record', 'PUT', objParam, function(resp) { 
          //成功時は画面をリロード
          location.reload(true); 
        }); 
      });
      
    },2000); 
  }); 
})(jQuery);