日医特定健康診査システムを便利に活用するためのODBC接続データベース操作
(6) マスタ設定の自動化
日特のマスタ初期設定では極めて煩雑かつ膨大な作業が要求されます。
また、運用しているうちに保険者登録数がどんどん増えていきますので、そうなってから契約単価や基準値等の変更を多数の保険者にひとつひとつ適用するのも結構面倒な作業になりそうです。
そこで、各種設定の中でも特に骨の折れる検査項目マスタと健診パターンマスタの登録の自動化を試みました。
1)検査項目マスタの自動設定
まずは予め作成、登録してある設定表を確認。必要があれば適宜修正しておきます。
設定表は配布を想定し、Excel形式で保存および読込ができるようにしました。
次に検査項目マスタ設定済みの保険者をリストアップ
SELECT DISTINCT "T_KENSHINMASTER"."HKNJANUM", "T_HOKENJYA"."HKNJANAME"
FROM "T_KENSHINMASTER", "T_HOKENJYA"
WHERE "T_KENSHINMASTER"."HKNJANUM" = "T_HOKENJYA"."HKNJANUM"
このSELECT文から得られた結果にはデフォルトの99999999マスタデータ編集が含まれていませんので、これを新規レコードとして追加しておきます。
設定したい保険者にすべてチェックを入れます。
下図の場合はインストール直後なのでマスタデータ編集しかありません。
一旦既存の登録マスタ全レコードを"T_KENSHINMASTER"から取得
SELECT *
FROM "T_KENSHINMASTER"
取得後にチェックを付けなかった保険者の分は削除します。
設定表から値をインポートします。
これによりインポートが行われた項目以外は対象レコードから外れます。
日特検査項目マスタ更新。
更新候補の項目は、必須フラグ、男性上限、男性下限、女性上限、女性下限、基準値範囲、単価。
これらのうち値の入っている項目だけをSETの後に列挙するように工夫してSQL文を組み立てます。
UPDATE "T_KENSHINMASTER"
SET
"HISU_FLG" = '1'
WHERE
"KOUMOKU_CD" = '9N001000000000001'
AND "HKNJANUM" = '99999999'
(ループ処理)
これで検査項目マスタが登録できました。
2)健診パターンマスタの自動設定
下図は初期状態の健診パターンメンテナンス画面。
1 特定健診
2 特定健診+詳細な健診
の2項目ははじめから用意されています。
画面には表示されませんが、実はもう一つ
-1 特定健診(固定)
というのが登録されています。
健診パターンの3〜6を追加する
INSERT INTO "T_KENSHIN_P_M" ("K_P_NAME","K_P_NO")
VALUES ('健診パターン名','健診パターン番号')
(ループ処理)
これで一通りのパターンができましたが、デフォルトで用意されている1と2以外は下図のごとくパターンの中身がまだありません。
一旦日特の健診パターン内容をすべて削除します。
DELETE FROM "T_KENSHIN_P_S"
ファイルメーカー側に保持している健診パターンの中身を送り込みます。
INSERT INTO "T_KENSHIN_P_S" ("K_P_NO","LOW_ID","KOUMOKU_CD")
VALUES ('5','0','9N001000000000001')
(ループ処理)
これで健診パターンの中身が揃いました。
HOME 前のページ 7 / 8 次のページ