kintoneをはじめてみました。

この度「kintone」(キントーン)を始めてみることにしました。

 

kintone(キントーン)とは

 

サイボウズのkintoneでは、顧客管理、案件管理、アンケート、〇〇業務…などなど多目的に利用できるツールです。

くわしくは↓

https://kintone.cybozu.co.jp/

 

簡単にフォームを作ることはできるのですが、IF文などはjavascriptにて作成するとのこと。

例:選択Aが選択されているときだけ有効になる入力ボックス等

 

下準備

とりあえず、デベロッパー登録

https://developer.cybozu.io/hc/ja

 

そして、チュートリアル

 

まあ、簡略するとjavascriptを使うときには自分で作ったファイルをアップロードするかJSEdit for kintoneを利用するようだ。

「JSEdit for kintone」はJSEdit for kintoneを使ってみようコーナーからダウンロードしてプラグインとして読み込む。

 

その後、個別のアプリで「アプリの設定」>「プラグイン」から「JSEdit for kintone」プラグインを追加する。

追加したプラグインの設定欄の歯車からコード作成画面を開くことが可能

 

覚えたてのhogehogeコード

詳細を開いたときに処理を行う

    kintone.events.on('app.record.detail.show', function(e) {
~略~
    });

※「https://developer.cybozu.io/hc/ja/articles/360000903686」を参照

 

一覧を表示したときに処理を行う

    kintone.events.on('app.record.index.show', function(e) {
~ 略 ~
    });

※「https://developer.cybozu.io/hc/ja/articles/360000903686」を参照

 

イベントはまとめて書くとよいみたいなので

    var events = ['app.record.detail.show',
        'app.record.create.show'];

    kintone.events.on(events, function(event) {
~略~

 });

って感じで詳細のときと追加の時の処理になる。

 

↓イベント。チュートリアルサイトより。

| app.record.detail.show | レコード詳細画面表示時 |
| app.record.create.show | レコード追加画面表示時 |
| app.record.create.change.past | レコード追加画面表示でフィールドコード[past]変更時 |
| app.record.create.change.radio2 | レコード追加画面表示でフィールドコード[radio2]変更時 |
| app.record.create.change.radio3 | レコード追加画面表示でフィールドコード[radio3]変更時 |
| app.record.create.change.radio4 | レコード追加画面表示でフィールドコード[radio4]変更時 |
| app.record.create.change.radio5 | レコード追加画面表示でフィールドコード[radio5]変更時 |
| app.record.edit.show | レコード編集画面表示時 |
| app.record.edit.change.past | レコード編集画面表示でフィールドコード[past]変更時 |
| app.record.edit.change.radio2 | レコード編集画面表示でフィールドコード[radio2]変更時 |
| app.record.edit.change.radio3 | レコード編集画面表示でフィールドコード[radio3]変更時 |
| app.record.edit.change.radio4 | レコード編集画面表示でフィールドコード[radio4]変更時 |
| app.record.edit.change.radio5 | レコード編集画面表示でフィールドコード[radio5]変更時 |

 

よくある「その他」の選択肢を選ぶと理由を書く場合(選択肢(input_select)、理由ボックス(input_select_other)とした場合

    //レコードの追加、編集、詳細画面で適用する
    var events = ['app.record.detail.show',
        'app.record.create.show',
        'app.record.edit.show',
        'app.record.create.change.input_select', 
        'app.record.edit.change.input_select'];

    kintone.events.on(events, function(event) {
        var record = event.record;
        var input_select = record['input_select']['value'];
        if (input_select === 'その他') {
            kintone.app.record.setFieldShown('input_select_other', true);
        } else {
            kintone.app.record.setFieldShown('input_select_other', false);
        }
    });

こんな感じでその他の選択肢が表示非表示となる。