データをバーコードとして表示することができます。8.3.0

詳細表示画面でバーコードを表示した例です。

図1 詳細画面にバーコードを表示する

一覧画面でもバーコードを表示することができます。

図2 一覧画面にバーコードを表示する

サンプルで用意したリポジトリは次の通りです。バーコードを出力する項目は「文字列型」として用意します。

図3 サンプルのリポジトリ

モデル項目詳細定義ダイアログを開きます。詳細 > 自動計算 > に BARCODE 関数を指定します。

図4 BARCODE関数を指定する

書式は次の通りです。第二引数は "codabar", "code39", "code128", "ean-13", "qr", "jppost" という方式を指定することができます。"jppost" は次節で説明します。

BARCODE(文字列, 出力方式)

BARCODE関数の第二引数である出力方式に "jppost" を指定することで、カスタマーバーコードを出力することができます。しかしこの場合、第一引数の入力文字列は、住所文字列ではなくカスタマーバーコード用のコードを指定する必要があります。

この対応のために、別製品「住所正規化コンバータ」を使うことができます。住所文字列を、住所正規化コンバータを使って住所要素へ分解し、この要素の組み合わせでカスタマーバーコード用の入力文字列を作成する方法を説明します。

定義方法

サンプルとして、郵便番号と住所文字列をもつ顧客モデルを用意します。

図5 顧客モデル

このモデルは郵便番号から住所文字列を求める機能を有効にしています。番地以降の住所は手入力されるものとします。

図6 郵便番号から住所を求める

住所の各要素を保持する項目群を用意しています。ANORMPART 関数を使っています。

このうちカスタマーバーコードで利用するのは、"郵便番号","丁目、番地、号","建物番号" になります。

図7 郵便番号部
図8 丁目、番地、号部
図9 建物番号部

上記の要素を結合した文字列を用意します。これがカスタマーバーコードになります。

図10 カスタマーバーコードを求める

BARCODE関数では、上記入力文字列を指定します。

図11 BARCODE関数

このANORMPART関数を使うために、住所正規化コンバータの設定を行います。URLは、住所正規化コンバータのREST APIサーバが稼働するURLを指定します。

図12 住所正規化コンバータの設定

動作

住所に "東京都千代田区霞が関1丁目3番2号 郵便プラザ503室" を入力した例を示します。

図13 カスタマーバーコードの出力

Excel帳票の場合

Excel帳票でもバーコード出力を行うことができます。

図13 Excel帳票でバーコードを出力する

帳票テンプレートのプレースホルダは次のようになります。

図14 Excel帳票のプレースホルダの設定
${モデルID_p.項目ID_jshBarcode}

項目IDの末尾に "_jshBarcode" を付与してください。

JasperReportの場合

JasperReports の場合は画像オブジェクトの Expression 欄に次の設定を記述します。Base64エンコードされたバーコードが画像で表示されるようになります。

new ByteArrayInputStream(org.apache.commons.codec.binary.Base64.decodeBase64($F{qrcode}.getBytes()))