前回紹介した、帳票の出力であれば、HTMLでの再構成は比較的容易ですが、掲示物を印刷する際など、画像があるレコードの再構成には一工夫必要でした。
今回は、添付ファイルの画像を印刷する方法を備忘録として残します。
社内掲示物をkintoneで作って印刷
弊社のお客様である製造業のT社では、社内活動の一環として「環境美化活動」をしています。毎月、before/afterの画像をExcelで並べて掲示物を作成し、印刷した上で、食堂に掲示しています。
しかし、現場でまとめて撮影した写真をExcelに貼る際に、何の写真だったかを忘れてしまうことが多く、整理に時間がかかっていました。
そこで、既にkintoneを使っていることから、「タブレットなどで撮影し、そのままkintoneに画像添付&場所などを書き込む。」といったことができないか?という相談をいただきました。
kintone標準機能でレコードの印刷はできますが、掲示物となると話は変わります。

既にExcelやpdfに出力する機能を持つプラグインもご利用いただいていたのですが、毎回サイズや枚数が変わる写真を、並べて表示するのは難しいなと感じ、弊社にてカスタマイズしてみることにしました。
HTMLで別ウィンドウに再構成、しかし…
写真(添付ファイル)を再構成先の別ウィンドウで表示できない問題に直面しました。

この現象を調査したところ、次の原因にたどり着きました
- filekeyを取得できても、kintoneログインセッションのない環境では画像を表示できない。
HTMLレンダリングのために window.open() で新しいウィンドウを開いた際、そのウィンドウにはセッション情報が引き継がれず、画像が表示されない状態になっていました。
画像ファイルをBase64にエンコードして表示させる。

この問題を解決するために、filekeyを使ってファイルのBlobを取得し、Base64形式に変換して文字列として画像を持ち出すことにしました。

画像のままでは表示できない場合でも、Base64形式にエンコードすることで文字列化し、HTML再構成先に表示することができました。
まとめ
kintoneカスタマイズの可能性をさらに広げる手段として、参考になればと思います。
エーアイティ研究所では、基本機能、プラグインはもちろんのこと、カスタマイズのご相談もお待ちしております。kintone化をあきらめていた業務などがございましたら、お気軽にお問い合わせください。





