日医特定健康診査システムを便利に活用するためのODBC接続データベース操作

(5) QRコード読み取り


日特はQRコードに対応しているらしいのですが、検証不十分ということで未だ機能が封印されたままで、
ボタンは不活性、マニュアルにも操作方法や対応機種等の記述がありません。
試みに安価なQRコードリーダーを入手し、自作プログラム上で活用可能なものか実験してみました。
利用したQRコードリーダーはこちら。
http://www.psytec.co.jp/product/04/

内臓のカメラがQRコードを感知すると、コードを読み取りアクティブなアプリケーションのカーソル位置にテキスト入力されます。



読み取った文字列の先頭から何文字目は何を意味しているか、下記の資料に掲載されています。
受診券QRコード収録項目

http://www.mhlw.go.jp/bunya/shakaihosho/iryouseido01/pdf/info03d-11.pdf



例えば、先頭から46文字目から始まる11文字は受診券整理番号なので、
JYUSHIN_SEIRI_NO = Middle ( 読み取りテキスト ; 46 ; 11 )
といった具合にフィールドを計算式で定義していけば内容を読み取ることができます。



そうやって読み取ったのが上図青ワク外の項目。

日特では受診日の日付(YYYYMMDD)と4桁のシリアル番号を連結したものを受付IDとして発番している。
日特が自動発生する受付IDとの不整合を回避するため、まず日特に登録済みの受付IDの最大値を"T_KOJIN"から取得する。

SELECT MAX("T_KOJIN"."UKETUKE_ID")
FROM "T_KOJIN"

本日の日付をもとに生成したYYYYMMDD0001と先ほど取得した登録済み受付ID最大値とを比較し、前者の方が大きい場合には前者を受付IDとして採用、後者の方が大きいか等しい場合は後者に1を加えた数字を受付IDとして採用します。

青ワク内の項目はQRコードに記録されていないので手入力します。

住所は郵便番号を参照して町名までが自動的に入ります。
日レセの"tbl_adrs"からインポートしたテーブルを参照しており、郵便番号表は随時データ更新が可能です。



日特に受診券情報を登録します。

INSERT INTO "T_KOJIN" ("BIRTHDAY","HIHOKENJYASYO_KIGOU","HIHOKENJYASYO_NO","HKNJANUM","HOME_ADRS","HOME_POST",
"JYUSHIN_SEIRI_NO","KANANAME","KOUHUBI","MADO_FUTAN_K_SYUBETU","MADO_FUTAN_KIHON"
,"MADO_FUTAN_S_SYUBETU","MADO_FUTAN_SYOUSAI","NAME","SEX","UKETUKE_ID","YUKOU_KIGEN")
VALUES ('
19400906','記号','番号','00001002','住所','3700045','08110021954','カナ氏名','20080815','4','005400','4','003400','漢字氏名','2','200901190001','20090331')

以上で受診券入力ができました。

窓口負担の種別等、受診券入力画面でプルダウンメニューになっている一部の項目は登録した値が画面に反映されないようですので、それらについては手作業での追加設定が必要です。




HOME                           前のページ   6 / 8  次のページ