トップORCAとは日レセ医見書給管鳥訪看鳥特定健診定点調査認証局コミュニティサポートOSC  |関連情報
トップ日医標準レセプトソフト>拡張漢字(JISX0213:2004)の使用

拡張漢字(JISX0213:2004)の使用

日医標準レセプトソフトでJISX0213:2004(JIS第3水準,第4水準)までの拡張漢字を使用するための設定手順です。

これまで使用できる文字は JISX0208:1983の「6,877文字」まででしたが、「11,233文字」まで使用できるようになります。

メニュー

更新履歴

ダウンロードファイル

前提条件

拡張漢字を使用するための条件は以下になります

※Ver.4.5.0/Ver.4.6.0では、拡張漢字が使用出来るのは「氏名」欄のみです。

レセプト電算は拡張漢字を使用していても自動で置き換えるためにそのまま使用することが出来ます

設定手順

作業をする日レセマシン上で「kakutyou-3.tar.gz」をダウンロードし展開しておいてください。

$ tar xvzf kakutyou-3.tar.gz
kakut.ps
kakut.pdf
convu8.rb

設定手順は以下のようになります。

  1. 使用するプリンタが拡張漢字出力のチェック
  2. データベースのエンコーディングをUTF-8に変換
  3. 拡張漢字入力しての動作確認

使用するプリンタが拡張漢字出力のチェック

拡張漢字の入ったPostScriptファイルを実際に印刷して確認します。 内部でGhostscriptを使用しプリンタの言語に変換している場合は、そのまま印刷可能ですが、多くのPSプリンタの場合は拡張漢字に対応していません。

※ 対応していないプリンタの場合エラーとなったり誤操作する場合があります。あらかじめ用紙を少なくセットしておき、もし動作がおかしくなったらプリンタのリセットが出来るようにした上でテスト印刷をおこなってください。

kakut.psは拡張漢字をいくつかピックアップした帳票ファイルです

  1. 使用するプリンタを確認します。「lpstat -a」とコマンドラインから打つことでプリンタ一覧を確認することが出来ます。
  2. 使用するプリンタ全てに印刷して確認します。以下のコマンドにより印刷してください
    $ lpr -Pプリンタ名 kakut.ps
    

    (例)

    $ lpr -Plp1 kakut.ps
    

    以下の画像と同じように全ての枠内に漢字が印刷されていれば対応しています。

    拡張漢字(pdf)

対応していないPSプリンタの場合は設定変更する必要があります。

PSプリンタが 他のプリンタ言語でGhostScriptに対応している場合は、そちらに変更してください

PSプリンタで 「Generic Raw Queue[en]」を選択していた場合は「Generic PostScript Printer Foomatic/PostScript [en]」を試してみてください

データベースのエンコーディングをUTF-8に変換

EUC-JPエンコーディングで作成された orcaデータベースを UTF-8エンコーディングに変換します。

※データベースを複製するためデータベース分の空き容量がディスクに必要です。

  1. 日医標準レセプトソフト等データベースに接続しているアプリケーションを全て停止させてください
  2. データベース名がデフォルトの「orca」の場合、以下のように実行するとデータベースがUTF-8に変換されます
    $ sudo -u orca ruby convu8.rb
    

    バックアップ・リストア処理をおこなうためコンソールに大量に結果が出力され、処理に時間がかかります。

    最後の行に「OK」と表示されれば変換は終了です。

  3. 変換が完了したデータベースはエンコーディングがUTF-8になっています。「 psql -l」で確認出来ます
    $ sudo -u orca psql -l
    
                                               データベース一覧
         名前      |  所有者  | エンコーディング |  照合順序  | Ctype(変換演算子) |      アクセス権       
    ---------------+----------+------------------+------------+-------------------+-----------------------
     orca          | orca     | UTF8             | C          | C                 | 
     orca_backup   | orca     | EUC_JP           | C          | C                 | 
     postgres      | postgres | UTF8             | ja_JP.utf8 | ja_JP.utf8        | 
     template0     | postgres | UTF8             | ja_JP.utf8 | ja_JP.utf8        | =c/postgres
                                                                                  : postgres=CTc/postgres
     template1     | postgres | UTF8             | ja_JP.utf8 | ja_JP.utf8        | =c/postgres
                                                                                  : postgres=CTc/postgres
    (5 行)
    

元のデータベースはデフォルトでは「orca_backup」という名前で保存されています。 もしUTF-8への変換に失敗して途中で終了した場合は「orca」というデータベースは元のままで「orca_temp」というデータベースが作成されています。この「orca_temp」というデータベースを削除してください。

$ sudo -u orca dropdb orca_temp
また、なんらかの不具合が出て元のデータベースに戻したい場合は、以下のようにUTF-8で作成されたデータベースを破棄し「orca_backup」を「orca」に変更してください。

$ sudo -u orca dropdb orca
$ sudo -u orca psql template1 -c "ALTER DATABASE orca_backup RENAME TO orca;"

さらに詳しい使い方はデータベース文字エンコーディングを参照してください。

拡張漢字入力しての動作確認

データベースを変換後、日医標準レセプトソフトを起動すれば拡張漢字が使用可能になっています。Ver.4.5.0/Ver.4.6.0では氏名欄のみ拡張漢字が使用可能です。glclient2を起動し患者登録の漢字氏名欄に入力してみます

Lucidのインストールドキュメントに従いインストールされた場合は 「alt-cannadic-extra」というパッケージが自動でインストールされています。このパッケージはJISX0213の「単漢字」辞書です。変換を一文字だけにして読みを変換する事でJISX0213の漢字を変換する事が出来るようになります。

例として大迫の「迫」という字の「辶」が「廴」に変わった「廹(ハク、ヒャク、セマ・ル)(JIS:1-84-16、Unicode:U+5EF9)」という文字を入力してみます。

  1. 「おおさこ」と入力して変換すると「大迫」しか候補にあらわれませんが、まずカーソルキー「←」を押して「大」の部分だけ変換します
  2. 「→」を押して「迫」にカーソルを合わせ「スペースキー」で変換候補を出すと多くの変換候補が現れます
  3. その中から第3水準の漢字である「廹」を選択し「Enterキー」で確定します
  4. さらに「Enterキー」を押すと入力内容がサーバーに送られて入力欄と上の氏名欄にも「大廹」と表示されれば成功です。

    登録画面

このとき拡張漢字に対応していないサーバーでは「大■」となります。その場合はデータベースがUTF-8のサーバーに接続されているか確認してください

拡張漢字の入った患者氏名を登録し、帳票を印刷して確認してみてください。

monsiaj設定

Windows Vista/Windows 7/Mac OS Xではそのまま使用することが出来ます。

Windows XPではフォントをダウンロードし設定する事で表示する事が出来ます。Microsoftのページよりメイリオフォントをダウンロードしインストールしてください。

ただしWindowsでは使用のフォントによっては拡張漢字対応のフォントではないため、拡張漢字のみ他のフォントで表示される場合があります。monsiajのシステムプロパティに以下のように拡張漢字に対応したフォントを指定すると統一したフォントで表示されるようになります

monsia.user.font=メイリオ-PLAIN-11

「機種依存文字」と表示される漢字を登録することが出来るようになりますが、一部Unicodeのみにあり「JISX0213:2004」にない文字は登録する事が出来ません。 (例:はしご高(U+9AD9)、つち吉(U+20BB7)と言われている高や吉の異体字)

UTF-8のデータベース作成(バックアップ/リストア)

UTF-8のデータベースを作成するには createdbのオプションを「-EUTF-8」に変更して作成します。

リストアしたい場合にデータベースを作成するには以下のように実行してください。

$ sudo -u orca createdb -lC -Ttemplate0 -EUTF-8 orca

「-EEUC-JP」のエンコーディングのオプションを「-EUTF-8」に変更する以外は同じです(バックアップ元のデータベースがUTF-8であることを確認してUTF-8のデータベースにリストアしてください)。

レセプト電算の対応

レセプト電算ではJISX0208:1983(第一、第二水準)以外の文字が名前に使われていた場合、該当の名前はカタカナに置き換えられて作成されます。

2人の氏名を登録しレセプト電算ファイルを作成してみます

レセ電ビューアで表示してみるとJISX0213の文字が入った氏名「大廹 一郎」さんはカタカナに変換されているとが確認できます。レセ電ビューア

注意事項

内部的な動作

日医標準レセプトソフト Ver.4.5.0からミドルウェアの内部コードは「UTF-8」で動作するようになりました。必要な場合にEUC-JISX0213(EUC-JP)へ変換して動作させています。

クライアントからのはmonsiaj(Unicode)、glclient2(UTF-8)、glclient(EUC-JP)で動作しサーバーに取り込む時点で必要ならUTF-8に変換されます。

UTF-8に変換されたデータは言語ハンドラの定義に従い文字コードが変換されます。COBOLの場合はEUC-JP(EUC-JISX0213)に変換されます。

またデータベースのエンコーディングにより自動判定され、EUC-JPの場合はデータベース操作時に変換されます

さらにデータベースがEUC-JPである場合はCOBOL側で入力値をチェックし、拡張漢字を「■」に置き換えられます。

拡張漢字が有効な場合、COBOL側ではすべてEUC-JISX013で処理しており、拡張漢字の一部文字が3バイトで処理される事になります。現時点では「氏名欄」のみ使用可能であり、「氏名欄」では入力可能文字数 * 3のバイト数分を用意して定義する必要があります。

※「EUC-JP」は「UTF-8」との変換ルールにCP932のルールが含まれることが多く、「EUC-JISX0213」と一部互換性がありません。そのため、内部的にはすべて「EUC-JISX0213」と「UTF-8」の変換ルールを使用するようにしています