Toyokumo kintoneApp Blog

【1月ユーザー会】神奈川県庁様による登壇レポート記事

トヨクモ編集部のサムネイルアイコン トヨクモ編集部

ユーザー会での事例登壇の様子をレポート!

この記事はユーザー会での神奈川県庁 上村さんの事例登壇の様子をお届けするレポート記事です。

今回は「開発前・中・後で使えるkintone&トヨクモ製品プチ工夫」をテーマにご登壇いただきました!

神奈川県庁の体制と利用中のトヨクモ製品

神奈川県 健康医療局 保健医療部 医療企画課 健康医療DXグループの上村と申します。kintoneとトヨクモ製品を活用し、健康医療局の業務改善を行う内製化の組織にいます。

神奈川県庁では、FormBridge、kViewer、kMailer、PrintCreator、kBackupの5製品を活用中です。

自治体ならではのポイントとして、必ず異動があり、職員全員が同じ業務を続けられるわけではないという点が挙げられます。

つまり、誰かは出ていき、誰かが入ってくるため、必ず後任がいることになるのです。

この前提を踏まえた上で、本日はシステムや仕組みの「開発前」と「開発中・開発後」に分けて、当庁で意識しているプチ工夫をお話しします。

「開発前」については、トヨクモ製品との関係は間接的になりますが、「開発中・開発後」編については直接的な話になるので、ぜひ参考にしてください。

トヨクモ製品プチ工夫「開発前」編

早速、神奈川県庁における「開発前」のプチ工夫を2つご紹介します。

1.JavaScript・テクニックはkintoneアプリで管理

1本目のプチ工夫として、当社ではJavaScriptやテクニックなどを、kintoneアプリで管理しています。

「kintoneで使えるプラグイン、スクリプト、機能等のレシピ集」というkintoneアプリに蓄積していまして、キーワードで検索をかけると対象のtipsを見つけられます。

このアプリに載せているものは、過去に使ったもの・開発したものになりまして、依頼元に求められる可能性があります。

ポイントは、自治体では異動があるため、難しいものを載せないようにしていることです。フィールド名やURLの入れ替えなどだけで対応できる簡易なもの、スクリプトの行数が少ないもののみを載せています。

2.具体的な依頼には疑いを持つ

2本目は意識していることになりますが、私は依頼元の依頼が具体的な場合は、疑って開発をするようにしています。

神奈川県庁では、いろいろと内製化を進めておりまして、たくさん開発依頼を請けているので、徐々に依頼元所属の経験も増えてきています。

こうした場合に出てくるのが、「これもあの仕組みでやりたい」「こうできるかもしれない」という発想です。

「FormBridgeで〇〇ができると思っていて、kintoneで〇〇したいんだけど、できそうかな?」といった相談や依頼が増えてきます。

このような発想が出てくること自体は素晴らしいですし、まさに私の後任にしたい人たちでもあります。

ただし、私は依頼の中で、製品名や具体的な内容が出てくるのは罠だと考えています。基本的に、相手の言うことは疑うようにしているのです。

なぜなら、手段ではなく、目的を確認する必要があるからです。

1つ例を出します。以下は、最近、私と隣の課に所属する同期の間で起きた会話です。

上村氏の同期:上村さん、タバコ吸う人を探してるんだけど知らない?
上村氏:それなら上のフロアのAさんがタバコ吸うけど、何がしたいの?
上村氏の同期:局長の誕生日のお祝いでケーキのロウソクに火をつけたいの!

実際に、私の同期が実現したかったことは「ロウソクに火をつけること」、もっと大きな話で言えば「局長をお祝いすること」でした。

その1つの手段がライターであって、実際はチャッカマンでもマッチでも良かったことになります。

そもそも、周辺状況として紙巻きタバコを吸う人は減っていて、加熱式タバコの販売が増えているので、タバコを吸う人=ライターを所持しているとも言えません。

このようなケースが開発依頼でも出てくるので、手段に対しては疑いを持ち、目的を確認する必要があるのです。

また、依頼者の向こうには、さらに依頼者がいるかもしれません。先ほどの依頼者である同期は、「ライターを探して来て」と依頼されているかもしれないのです。

なので、私は具体的な依頼に対しては疑いを持つように心掛けています。

トヨクモ製品プチ工夫「開発中・開発後」編

ここからは、開発中・開発後のプチ工夫をお話します。トヨクモ製品に直接的に関わるものになるので、ぜひ参考にしてください。

1.【FormBridge】レコードの絞り込み条件の活用

ある日、kintoneを使用していると事件が起きました。

kintoneの画面に、「検索中に、候補となるレコードが上限(10万件)を超えたため、検索を中止しました。」と表示されたのです。

つまり、kintoneに「データ多すぎるから一覧の絞り込み諦めるね」と言われたことになります。

すでに利用を停止しているアプリではありましたが、改めて確認したところ、対象となっているデータが132万件以上もありました。

しかも、新型コロナウイルス感染症対応時の患者データなどを入れていたため、停止することは許されず、かなり焦りました。

そこで試行錯誤して見つけ出した解決策が、kintoneの絞り込み条件の活用です。

「次のいずれかを含む」ではなく、「=(等しい)」なら件数が絞られて正しく一覧で絞り込みできることが分かりました。

この絞り込みをかける際、ラジオボタンやドロップダウンでは「次のいずれかを含む」でしか絞り込めないので、文字列フィールドに引用する必要があります。

例えば、ラジオボタンやドロップダウンで「自己療養フォーム」が選択されていたら、kintoneの自動計算で、そのまま文字列フィールドに引用して「自己療養フォーム」と入力します。

そのあと、「自己療養フォーム」「=(等しい)」と指定をしたら、kintoneが無事絞り込みをしてくれました。ただ、全データに計算を適用する間、1時間以上アプリが利用できなくなりました。

このとき、考えたのが「ラジオボタンやドロップダウンの回答を文字列フィールドにも入力しておくのはどうか」ということです。

FormBridgeからデータを入れるのであれば、「kintoneアプリの保存先フィールド」の設定で、文字列フィールドも対象にして同時に格納すればいいのではないかと気付きました。

『ラジオボタン・ドロップダウンの回答を文字列フィールドにも入れておく』という発想は、今後どこかで使えるかもしれません。

仮に、誰かがkintone上でラジオボタンの選択肢自体を変えて過去のデータが全部書き換わってしまっても、文字列でも保存しているから大丈夫だったなんてことが想定できます。

2.【PrintCreator】開始位置を綺麗に揃える方法

次に、PrintCreatorで使えるプチ工夫になります。

PrintCreatorの書類作成画面で、「Ctrl+左クリック」で複数選択してから位置調整をすると、選択した項目(エレメント)の開始位置をぴったり同じに設定できます。

エレメントの横幅を揃えておけば、右揃いでも左揃いでもキレイに縦位置・横位置が揃うので、請求書などの書類を作る際に使えるかもしれません。

3.【PrintCreator】文字サイズを細かく調整

同じくPrintCreatorで使えるプチ工夫として、文字のサイズを細かく調整する方法をご紹介します。

デフォルトでは、PrintCreatorの文字サイズのドロップダウンは「6.7.8.9.10…」と整数になっていて、「5.5」のような小数点がつくサイズに設定できません。

そこで、魔法の呪文を入力してみましょう。

「FONT->SIZE=44」と指定したことで、文字のサイズが「8.8」になっていることが分かると思います。

このように魔法の呪文を入れると、選択肢にないフォントサイズに設定できるのですが、こちらは「プリントクリエイターの裏技」で紹介されていました。

※本設定はサポートの対象外です。あらかじめご了承ください。

4.【kMailer】メール送信後に添付ファイルを差し替える

4つ目は、kMailerで使えるプチ工夫です。皆さん、kMailerでメール送信後に添付ファイルを差し替えると、どうなるのかご存じでしょうか?

kMailerでは、kintoneの添付ファイルフィールドをダウンロードURLとして送付します。

そのため、メールの受信者は、kMailer内のURLをクリックして、ダウンロードページに飛んでから添付ファイルをダウンロードすることになります。

つまり、実際にメールにファイルを添付しているわけではないのです。

この仕様から、メール送信後にkintoneで添付ファイルを変更すると、自動的に変更後の添付ファイルがダウンロードの対象になります。

仮に誤ったファイルを送ってしまっても、kintone上の添付ファイルを差し替えたり、消したりすれば拡散を防ぐことが可能となります。

当庁では、kMailerのこの仕様を知ったメンバーが少し変わった使い方を始めました。

オンライン研修の話になるのですが、研修2日前になっても講師から完成版の資料が送られてこなかったので、一旦kMailerで暫定版を受講者に送付したそうです。

完成版が来てから、kintoneの添付ファイルを差し替えて、研修当日に「今ダウンロードすれば最新のものに差し変わってます」と案内したという事例がありました。

5.【kViewer×FormBridge】Myページと複数フォームの連携

最後に、kViewerとFormBridgeを組み合わせて、JavaScriptでカスタマイズした事例になります。

まず、やっていることとしては、kViewerの1つのMyページから「研修の申込受付」と「参加の出欠」を取っています。

JavaScriptを使って、入力フォームに遷移するための編集ボタンをフィールドの値に合わせて出し入れしているのです。

kintone上で研修申込ボタンが「表示」であれば「感染症対策向上研修の申込み」が表示されて、アンケートボタンが「表示」であれば「感染症対策向上研修のアンケート」が表示されます。

kViewerの標準機能では、Myページに連携して表示できるフォームは1つだけだったと思います。

このカスタマイズをすることで、このようにフォームに遷移する編集ボタンを2つ、3つと複数出せるようになるのです。

なお、JavaScriptは申し込みとアンケートで2つに分けています。

本来は1つのスクリプトで実現できますが、そうすると技術や保守が難しくなると言う自治体職員としての事情があるので、別のものに入れて競合しないことを確認して使っています。

※使用されているJavaScriptは以下の通りです。JavaScript,CSSでのカスタマイズについては、サポート対象外となることをあらかじめご了承ください。

(function () {
“use strict”;

// フォームブリッジ
const fb = ‘フォームのURL’;

kv.events.record.mounted.push(function (state) {
// コンテンツの取得
const content = document.querySelector(‘.kv-record-detail-content-item .content’);
if(content === null) { return state; }

// 編集ボタンの設置
if(state.record.ドロップダウンのフィールドコード.value == “表示する場合の選択肢”){
const buttonText = “上部に表示させるボタンの文字列”;
const formButton = document.createElement(‘a’);
var kViewerCode = location.pathname.split(‘/’)[2];
var recordCode = state.record[‘__kviewer_record_code__’]
var formUrl = fb + ‘?__kViewerViewCode__=’ + kViewerCode + ‘&__kViewerRecordCode__=’ + recordCode;
formButton.className = ‘ui icon button kv-fb-content circular teal large’;
formButton.innerHTML = ‘<i class=”ui icon pencil”></i> ‘ + buttonText;
content.insertBefore(formButton, content.firstChild);
formButton.onclick = function(){ window.location.href = formUrl };
}
return state;
});
})();

なお、この仕組みは、特定の受講者を対象とした研修の参加管理に使っています。

以上、「開発前」「開発中・開発後」に分けて計7本のプチ工夫をご紹介しました。

少しでも何かの気付きになれば幸いです。本日はありがとうございました。

ご登壇ありがとうございました!

上村さん、今回はご登壇いただきましてありがとうございました!

まさに明日から使えそうなプチ工夫から中級者向けのプチ工夫まで、とてもボリューミーな登壇でしたね!

今回の事例でご活用いただいたトヨクモのFormBridge、kViewerは、何度でも使える30日間の無料お試しを実施しております。
気になる方は、ぜひ以下のフォームよりお申し込みください。
https://www.kintoneapp.com/trial

トヨクモ編集部のサムネイルアイコン

監修者トヨクモ編集部


kintoneを便利に活用する情報を発信|サポートチーム全員がkintone資格保有者|【クラウドで、もっと便利に。もっと簡単に。】をモットーに活動

その他のお役立ち情報 Other Useful Information

サービスカタログや過去のセミナー動画、FormBridgeを応用したもっと便利な活用方法などを紹介しています。


私たち、トヨクモのサービス Our Services

kintoneをより使いやすくするためのkintone連携サービスです。30日間の無料お試しへぜひお申し込みください。