kintone 플러그인 개발 메모 그 8 (더미의 설정치를 읽어 JavaScript 커스터마이즈 해 본다)

그 7에서 계속.

플러그인 설정 화면을 작성하기 전에 먼저 JavaScript 사용자 정의 프로그램을 작성하십시오.

필드 제로 채우기 JavaScript 사용자 정의



kintone 앱의 필드를 0으로 채우는 맞춤설정을 만듭니다.
이 때 플러그인의 설정치를 취득했다고 가정해 더미 데이터를 작성해, 그것을 이용해 커스터마이즈 해 갑니다.

사용자 정의 개요



다음과 같은 내용입니다.
  • 편집 화면, 신규 작성 화면에서 저장할 때 실행
  • 플러그인 설정 값을 얻습니다 (더미입니다)
  • 단가 필드가 비어있을 때 필드에 0을 설정합니다
  • 저장

  • 동작 이미지



    편집 화면 또는 신규 작성 화면시에 제로 메우기 버튼을 표시시킵니다.


    0 채우기 버튼을 누르면 입찰가가 비어있을 때 0을 채 웁니다.


    저장 후 화면입니다.


    사용자 정의 측 소스 코드



    통상의 커스터마이즈와 조금 다른 점은, 설정 화면으로부터 값을 읽었다고 가정해, 이하의 흐름으로 작성하고 있습니다.
  • 설정값을 읽어들입니다.
  • 더미 설정값을 준비합니다.
  • 설정치를 사용해 처리를 기술합니다.

  • customize.js
    (function(pluginId) {
        "use strict";
        let config = kintone.plugin.app.getConfig(pluginId)
        console.log(config);
    
        // var config = {
        //     'DisableItem': JSON.stringify(arrayDisableItem),
        //     'DisableLine': JSON.stringify(arrayDisableLine)
        // };
    
        config = {
            'ZeroFillItem': ["単価", "単価_1", "単価_0"]
        };
        console.log(config);
        console.log(JSON.stringify(config));
    
        // 詳細画面 編集、新規作成
        kintone.events.on(['app.record.edit.show', 'app.record.create.show'], function(event) {
            let myIndexButton = document.createElement('button');
            myIndexButton.id = 'my_index_button';
            myIndexButton.innerHTML = 'ゼロ埋めボタン';
            myIndexButton.onclick = function() {
                let record = kintone.app.record.get();
                config.ZeroFillItem.forEach(function(value){
                    if (!record.record[value].value) {
                        console.log("record.value is NULL or undefined");
                        record.record[value].value = 0;
                    } else {
                        console.log(record.record[value].value);
                    }
                });
                kintone.app.record.set(record);
            }
            kintone.app.record.getHeaderMenuSpaceElement().appendChild(myIndexButton);
            return event;
        });
    })(kintone.$PLUGIN_ID);
    

    다음은 드디어 설정 화면을 작성해 갑니다.

    좋은 웹페이지 즐겨찾기