公開日:2025-01-23
システム開発グループのすずきです。
kintoneの連携サービスでよく使われるFormBridgeで、異なる初期値をフォームにあらかじめ入れておきたいことってありますよね!
例えば、ユーザーが個人情報を毎回入力する手間や、あらかじめ割り振ったIDを入力させる必要がある場合などです。
個人情報などはブラウザの自動入力機能を使えば、ある程度は緩和できるかと思いますが、個人情報として認識されないような部分などうまくいかない部分もあるかと思います。
そういった場合、安全で確実な方法は、FormBridgeの連携機能として用意されている、「Toyokumo kintoneApp認証」でユーザーがメールアドレスを使ってフォームにログインするように設定しておき、「kViewerルックアップ」を使ってメールアドレスをキーにkintone上のユーザーマスタアプリからユーザーの情報を取得して各フィールドに入れる、という方法です。
ですが、初期値を入れたいのが数項目程度であれば、簡易的な方法があります。
それは「URLパラメータ」を使う方法です。
もともとのフォームのURLに、「このフィールドにはこの値を入れ、このフィールドにはこの値を入れる」という情報(URLパラメータ)を付け加えることができ、そのURLにアクセスすると、設定した値が入った状態のフォームが表示されるというものです。(FormBridgeに限らず他の多くのWebフォームで同様のことが可能です。)
パラメータ入りのURLの作り方
具体的なパラメータ入りのURLの作り方はこちらです。
- 元のURLの末尾に「?」を追加
- 「フィールドコード=値」を追加
- 複数の値を追加する場合は「&」でつなぐ
例えば元のフォームのURLが、
「https://xxxxxxxx.form.kintoneapp.com/public/xxxxxxxxxxxxxxxxxxxxxxxxxxxxx」で、「会社名」に「アールスリー」、「氏名」に「鈴木」を入れたいとすると、
「https://xxxxxxxx.form.kintoneapp.com/public/xxxxxxxxxxxxxxxxxxxxxxxxxxxxx?会社名=アールスリー&氏名=鈴木」となります。このURLにアクセスしてみると・・・
このように値が入ります!
kintone アプリで手助け
さて、このようなURLをユーザーごとに作らないといけないとなると、1件1件作るのは面倒ですね・・・。そんな時はURLを簡単に作れるkintoneアプリも作っておきましょう。
作り方は簡単元のURLを入れるフィールドと初期値を入れたい入力欄の値を入れるフィールドを置き、それらをkintone標準機能の、文字列フィールドの自動計算機能によって結合するだけ!
出来たURLをエンコードしよう
これでURLは出来ましたが、あることに気付きます。リンクが途中で切れてる・・・!URLに日本語や記号が含まれている場合、それらはWebブラウザやメールアプリによって正しく認識されないことがあり、リンクが途中で切れてしまい、正常に動作しなくなっちゃいます。この状態のリンクから飛んじゃうと初期値が入らず台無しです。URLを丸ごとコピーしてブラウザでたたけばちゃんと初期値が入るのですが、ちょっと面倒だしユーザーにその操作をしてもらえるかどうかもわからない・・・。
そんな時は「エンコード」しましょう!
エンコードとは、URLに含まれる特殊な文字(日本語や記号など)を、ブラウザが正しく読み取れる形式に変換することです。例えば、「鈴木」という文字はエンコード後に「%E9%88%B4%E6%9C%A8」という形に変換されます。この変換により、リンク全体が一続きの文字列として認識され、途中で切れることを防げます。
エンコードされたURLを使うことで、ユーザーがリンクをクリックした際に、確実に設定した値がフォームに反映されるようになります。
なんだか難しそうに聞こえますが、弊社で提供しているノーコードカスタマイズツールのgusuku Customineを使えば簡単です。
今回は「encodeuri関数」を使います。
こちらも作り方は単純で、パラメータ入りのURLの入っているフィールドの値が変わった時に、URLをencodeuri関数で変換したものを別のフィールドに入れるだけ。
すると・・・?
このようにエンコードされたURLが入ります。
この状態でレコードを保存すると、詳細画面ではエンコード前のもので表示されますが、リンクの範囲が変わっています。
また、メールに添付しても、
このようにエンコード済みのURLならちゃんと全てがリンクになってますね。
注意点
さて、このように簡単で便利なURLパラメータですが、使う際にはいくつか注意点があります。
セキュリティについて
URLパラメータは、メールやチャットツールで共有されることが一般的です。しかし、誤って共有範囲外の人に転送されてしまうと、パラメータに含まれる情報が第三者に知られる可能性があります。
URLに機密情報やパスワードなど絶対に漏れてはいけない情報は含めないようにしておきましょう。
URLの長さ
パラメータを追加すれば追加するほど、エンコードされたURLがどんどん長くなってしまいます。長くなってしまうとメールなどで共有した時に、見た目があまりよくありませんし、URLをコピーする際の操作ミスで一部が欠落してしまうといったことも起こり得ます。できるだけ短くなるようにパラメータは最小限にしましょう。
また、URL内の日本語が多ければ多いほど長くなってしまうので、FormBridge側ではフィールドコードはできるだけ日本語を使わないようにしておくのがオススメです。
この記事がkintoneの活用において、新たな発見や業務改善のヒントになれば幸いです。ぜひ一度お試しください!
投稿者プロフィール
- kintoneがメインのエンジニアです。空き時間の半分を合気道に使います。
最新の投稿
- kintone2025年1月23日[FormBridge]あらかじめ値が入ったフォームを表示するURLを作ろう
- life-work2025年1月17日冬の沖縄ワーケーション!ついでにバスケ観戦にスパルタンレース参戦で最高に温まってきた!
- community2018年7月13日ハッカーズチャンプルー2018でLTにあこがれる
- Uncategorized2018年6月1日誤出荷ゼロへ!物流倉庫の意外な工夫(見学レポート)