この度「kintone」(キントーン)を始めてみることにしました。
kintone(キントーン)とは
サイボウズのkintoneでは、顧客管理、案件管理、アンケート、〇〇業務…などなど多目的に利用できるツールです。
くわしくは↓
簡単にフォームを作ることはできるのですが、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); } });
こんな感じでその他の選択肢が表示非表示となる。