2018年11月10日土曜日

マスタ更新時におけるトラブル

現象


マスタ更新処理を行うと、ライセンスマスタの更新処理で
前回処理分の更新は異常終了しました。
[ERROR] 401 Unauthorized
あるいは
提供サーバへ接続できませんでした。
[ERROR] 401 Unauthorized
と赤字で出る。

図1.マスタ更新でエラー発生

対処法


1.マスタ更新画面でCtrl+F5を押して「アクセスキーを削除します。よろしいですか?」と出たら[OK]をクリックする。

2.下記の医療機関専用サイトにアクセスしてログインする。
https://orcaid.orca.med.or.jp/minst/signin
図2.医療機関専用サイト

3.右下の[再発行]をクリックする。


図3.アクセスキーの再発行

4.ORCAのマスタ更新の画面に戻って[キー取得]ボタンをクリックすると、「アクセスキーを取得します。よろしいですか?」と表示されるので[OK]をクリックする。

5.「2~3秒待って方ボタンをクリックして下さい」と表示されたら2~3秒待ってから[OK]ボタンをクリックする。

6.「アクセスキーが取得できました」と表示されたら[OK]ボタンをクリックしてポップアップウィンドウを閉じてから[更新]ボタンをクリックする。

7.「マスタ更新を実行します。よろしいですか?」と出たら[OK]ボタンをクリックする。

2018年11月8日木曜日

カルテ例1(第2章の章末問題)

診療科の登録


事前準備として、ORCAに内科(01)、小児科(09)、耳鼻科(27)を登録しておく(カッコ内は科コード)。 診療科の登録は[マスタ登録]→[システム管理マスタ]で管理コードから[1005 診療科目情報]を選択して[診療科目コード]に科コードを入力して行う。

患者登録


P56の診療録を見ながら患者登録を行う。
図1 カルテ例1の患者登録

病名登録


P56のカルテ例1を見ながら患者病名登録を行う。患者病名登録は、業務メニューから[病名]を選択する。

図2.病名登録画面
左上のテキストボックスに患者番号を入力してEnterキーを押す。患者番号は、先行する0は省略して入力できる。例えば患者番号が"0002"のとき、"2"と入力すればよい。また、入力時、次の項目に移る際は必ずEnterキーを叩く。マウスで入力フィールドを移動すると、入力が反映しないことがあるので、必ず1項目ごとにEnterキーを叩くこと。

F5を押すか 画面下の[病名検索]をクリックすると病名検索画面が表示される。

図3.病名検索画面
病名欄に病名の先頭数文字を入力してEnterキーをクリックすると条件に該当する病名の一覧が表示されるので目的の病名を選択する。その後、開始日を入力して[登録]をクリックする。

図4.病名登録が完了したところ
こうして図4に示すように病名登録が完了した。

診療行為の入力


※最初に職員情報で「クライアント印刷」を「1 する」に、「クライアント印刷時ダイアログ表示」を「1 表示する」にしておく


P57のカルテ例1を見ながら診療行為を入力する。
まず最初に日付の設定を行う。メニュー画面の[環境設定]ボタンをクリックする。

図5 メニュー画面
 すると図6の画面が現れる。

図6.環境設定画面
カレンダーから日付を入力(この例では2017年4月10日)し、[登録]ボタンをクリックする。
次に[メニュー]へ戻って、[01 医事業務]→[21 診療行為]を選択する。

図7.診療行為入力画面
診療行為入力画面の診療日(左上[院内]ボタンの左側)が環境設定画面で入力した日付になっていることを確認する。これから入力する診療行為はすべてこの日に行ったことになる。
一度入力した診療行為は月をまたがって診療日を変更することはできない。ただし、同月内であれば[会計照会]画面から変更できる。

左上のテキストボックスに患者番号を入力してEnterキーを押す。

図8.患者番号を入力したところ

患者番号を入力してEnterキーを叩くと1回目の診察なので図8に示すように「初診」が自動的に入力される。

ここで、診療科から「耳鼻科」を選択する。

4/10分の入力


検査入力


次に検査の入力を行う。検査に限らず、診療行為はすべて「入力コード」に項目名の先頭数文字を入力してEnterキーを叩くと候補が表示されるので、そこから選択する。

図9.診療行為の検索結果


図9は、図8の画面で[入力コード]に「抹消血液」と入力してEnterキーを叩いたときに表示される画面である。ここから目的の診療行為を選択して[確定]をクリックする(あるいはF12を押す)。

これで、図10のように、検査項目の入力が完了する。

図10.検査項目「抹消血液一般」が入力できたところ
このようにして、P57にあるカルテ例1に記載されている4/10分の検査項目をすべて入力する。
このとき気を付けなければならないのは、入力コードに入力する検索文字は必ず全角文字でなければならないという点である。例えば「CRP」は「CRP」とすべて全角で入力しなければならない。

アレルギー検査「IgE (RIST) 判定量」は「非特異的IgE判定量」のことで、「IgE (RAST) 判定量・定量」は「特異的IgE定量・判定量」のことである。「特異的IgE定量・判定量」はスギ、ヒノキ、・・・、ハウスダストの9種類について行っているので、入力に際してコードの後に9と入力する(図11参照)。

「EF-鼻咽腔」は「嗅裂部・鼻咽腔・副鼻腔入口部ファイバースコピー」のことでORCAの点数マスターでは「EF−嗅裂・鼻咽腔・副鼻腔」となっている。

「鼻汁中好酸球」は「好酸球(鼻汁・喀痰)」(15点)のことである。

こうして検査を入力したのが図11である。

図11.検査入力完了


処方入力


次は処方の入力を行う。

まず、内服薬を入力することを示すために入力コードに内服薬の診療区分「.210」を入力する(図12)。

図12.内服薬の診療区分を入力


次に、入力コードに「オロパ」と入力してEnterキーを叩くと図13の検索結果画面が表示されるので、その中から「オロパタジン塩酸塩5mg錠」を選択する。

図13.「オロパタジン塩酸塩5mg錠」の検索結果

F12キーを押して確定すると元の画面に戻るので、「オロパタジン塩酸塩5mg錠」のコードの後に数量2を入力してEnterキーを押す。すると、図14に示すように錠数が表示される。

図14.「オロパタジン塩酸塩5mg錠」の数量入力


次に用法と日数を入力する。用法を入力するには入力コードに「Y」と入力してEnterキーを押す。すると、図15に示す用法の一覧画面が表示される。

図15.用法一覧

この中から「1日2回朝夕食後に」を選択して確定する。

次に入力コードに「クロモ」と入力してEnterキーを叩くと図16に示す検索結果が現れる。

図16.「クロモ」の検索結果
この中には目的の用法「1日2回朝夕1噴霧」がない。なぜなら内服薬を検索しているからである。そこで、F3キーを押して外用薬の検索を行う。

図17.外用薬での検索

この中から「【後】クロモグリク酸Na点鼻液2%「トーワ」 190mg9.5mL」を選択して[確定]する。

図18.数量入力
コードの後に「1」と入力して数量を1瓶とする。
最後に用法を入力するが、入力コードに「Y」と入力しても内服薬の用法しか出てこないので、入力コードに「//Y」と入力して用法を検索する。その結果が図19である。

図19.用法の検索結果
この中から目的の用法に近い「1日2回」を選択して[確定]させる。これで、4/10分の診療行為の入力は終わりである。

図20.4/20分の入力完了

[登録]ボタンをクリックすると「特定疾患処方管理加算が算定できる」とのポップアップが出るので[OK]を押して加算を発生させる。

図21.特定疾患処方管理加算の確認

「特定疾患処方管理加算」というのは
特定疾患を主病とする入院外の患者について診療所または許可病床数が200床未満の病院において算定し、特定疾患療養管理料と同じ疾患が対象となります
というものである。 この患者は「甲状腺機能低下症」という特定疾患を主病名として持っているので該当する。

診療行為の登録

診療行為の入力が完了したので[登録]ボタンをクリックすると図21の確認画面が表示される。

図21.確認画面
さらに[登録]ボタンをクリックすると図22の請求画面が表示されるので[登録]ボタンをクリックする。

図22.請求確認画面
 このとき、プリンターに請求書兼領収書が印刷される。


4/17分の入力


耳鼻科での診察


最初に診療行為入力画面で「耳鼻科」を選択する。

処方入力


[診療行為]画面に患者番号を入力してEnterキーをクリックすると図に示すように「再診料」と「外来管理加算」が自動的に発生する。

図23.基本料の自動発生

ここで、「外来管理加算」とは、再診料に対する加算項目(52点)で、厚生労働大臣が定める診療行為(処置や手術、超音波エコーや内視鏡検査など)を行わない再診時に加算できる。

カルテ例1には「院外処方せん」と書いてあるので、図23の画面の左上の診察日の右横にある[院内]ボタンをクリックして[院外]にする。

[入力コード]に「.210」と入力して内服薬剤であることをORCAに知らせる。続いて[入力コード]に「オロパ」と入力してEnterキーをクリックする。検索画面に表示された結果一覧から「【後】オロパタジン塩酸塩5mg錠」を選択して[確定]する。
もとの診療行為入力画面に戻ったら、コードの後に「2」と入力してEnterキーを押す。

次に[入力コード]に「Y」と入力してEnterキーを押す。検索結果から[1日2回朝夕食後に]を選択して[確定]し、もとの診療行為入力画面に戻ったら*の後に14と入力してEnterキーを押す。

次に、[入力コード]に「.230」と入力して外用薬を入力することをORCAに伝える。続いて[入力コード]に「クロモ」と入力してEnterキーをクリックする。検索画面に表示された結果一覧から「  【後】クロモグリク酸Na点鼻液2%「杏林」 190mg9.5mL」を選択して[確定]する。
もとの診療行為入力画面に戻ったら、コードの後に「2」と入力してEnterキーを押す。


図24.処方の入力を終えたところ

これで処方登録が終わったので[登録]ボタンを押す。すると、図24のような「特定疾患処方管理加算」の算定を確認する画面が出るので[OK]をクリックする。

図25.特定疾患処方管理加算確認画面

特定疾患処方管理加算とは、外来患者(別に厚生労働大臣が定める疾患を主病とするものに限る)に対して処方箋を交付した場合、月2 回に限り、処方箋の交付1回につき18点を所定点数に加算するものである。

図25で[OK]ボタンをクリックすると次のような確認画面が表示される。

図26.診療行為確認画面

上記に説明したもの以外では「処方箋料」(68点)が自動発生されている。これは、保険薬局において調剤を受けるために処方箋を交付した場合に、交付1回につ き算定できるものである。つまり、院外処方でなければ算定できない。

図27.請求確認画面
図26で[登録]ボタンをクリックすると図27に示す[請求確認画面]が表示される。ここで、[請求書兼領収書][診療費明細書][処方せん]をすべて「1 発行あり」にして[登録]ボタンをクリックする。


内科での同日診察


診療行為入力画面を出して患者番号を入力し、診療科を内科にする。このとき「診療科が変更されました。現在の診療内容を残しますか?」 というメッセージが出るが[OK]をクリックする。


検査入力


  • [入力コード]に「末梢血」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「抹消血液一般」を選択して[確定]する。
  • [入力コード]に「TP」と全角で入力してEnterキーを押すと検索結果一覧が出るので、その中から「TP【総蛋白】」を選択して[確定]する。
  • [入力コード]に「Alb」と全角で入力してEnterキーを押すと検索結果一覧が出るので、その中から「Alb【アルブミン】」を選択して[確定]する。
  •  [入力コード]に「AST」と全角で入力してEnterキーを押すと検索結果一覧が出るので、その中から「AST【アスパラギン酸アミノトランスフェラーゼ(AST)】」を選択して[確定]する。
  •  [入力コード]に「ALT」と全角で入力してEnterキーを押すと検索結果一覧が出るので、その中から「ALT【アラニンアミノトランスフェラーゼ(ALT)】」を選択して[確定]する。
  •  [入力コード]に「γ」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「γ-GT【γ-グルタミントランスフェラーゼ(γ-GT)】」を選択して[確定]する。
  •  [入力コード]に「LD」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「LD【乳酸デヒドロゲナーゼ(LD)】」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[名称]欄に「LD 項目数:6」と表示され、[数量・点数]欄には93×1と表示される。これは、血液化学検査のまるめにより、5項目以上7項目以下は93点になるからである。
  • [入力コード]に「総ビリルビン」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「BIL/総【総ビリルビン】」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[名称]欄に「BIL/総 項目数:7」と表示され、[数量・点数]欄には93×1と表示される。
  •  [入力コード]に「ALP」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「ALP【アルカリホスファターゼ(ALP)】」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[名称]欄に「ALP 項目数:8」と表示され、[数量・点数]欄には99×1と表示される。これは、血液化学検査のまるめにより、8項目以上9項目以下は99点になるからである。
  • [入力コード]に「CK」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「CK【クレアチンキナーゼ(CK)】」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[名称]欄に「CK 項目数:9」と表示され、[数量・点数]欄には99×1と表示される。
  • [入力コード]に「BUN」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「BUN【尿素窒素】」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[名称]欄に「BUN 項目数:10」と表示され、[数量・点数]欄には112×1と表示される。これは、血液化学検査のまるめにより、10項目以上は112点になるからである。 
  •  [入力コード]に「クレ」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「クレアチニン」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[名称]欄に「クレアチニン 項目数:11」と表示され、[数量・点数]欄には112×1と表示される。
  •   [入力コード]に「ナトリウム」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「ナトリウム及びクロール」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[名称]欄に「ナトリウム及びクロール 項目数:12」と表示され、[数量・点数]欄には112×1と表示される。ナトリウム及びクロールについては、両方を測定した場合も、いずれか一方のみを測定した場合も、同一の所定点数により算定する。
  • [入力コード]に「カリウム」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「カリウム」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[名称]欄に「カリウム 項目数:13」と表示され、[数量・点数]欄には112×1と表示される。
  • [入力コード]に「TSH」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「TSH【甲状腺刺激ホルモン(TSH)】」を選択して[確定]する。このとき、元の診療行為画面に戻ったとき、[診区]欄に「60」が表示され、検査項目のグルーピングが変わったことがわかる。
  • [入力コード]に「FT」と入力してEnterキーを押すと検索結果一覧が出るので、その中から「FT4【遊離サイロキシン(FT4)】」と「FT3【遊離トリヨードサイロニン(FT3)】」を選択して[確定]する。

処方


 院外処方せんを入力するので[院外]に変更する。

  • [入力コード]に「.210」を入力して内服薬剤入力モードにする。
  • [入力コード]にチラと入力 してEnterキーを押すと検索結果一覧が出るので、その中から「チラーヂンS錠50μg」を選択して[確定]する。元の画面に戻ったらコードの後に「1」を入力してEnterキーを押す。
  • [入力コード]に「Y」を入力 してEnterキーを押すと用法一覧が出るので、その中から「1日1回朝食後」を選択して[確定]する。元の画面に戻ったら*の後に「30」を入力してEnterキーを押す。
 入力が終わったら[登録]ボタンをクリックする。

図28 入力を終えたところ


図29 診療行為確認画面

このとき、「生化学検査(1)判断料」(144点) と「生化学検査(2)判断料」(144点)が自動発生されている。検体検査判断料は該当する検体検査の種類又は回数にかかわらずそれぞれ月1回に限り算定できる。その中に生化学的検査(Ⅰ)判断料や生化学的検査(Ⅱ)判断料が含まれる。TP~Kは生化学的検査Ⅰ、FT3、FT4は生化学的検査Ⅱ。これに伴って2種類の判断料が加算されたものと思われる。

[登録]ボタンを押して請求確認画面が出たら、 [請求書兼領収書][診療費明細書][処方せん]をすべて「1 発行あり」にして[登録]ボタンをクリックする。

すると図30~32の画面が次々と表示されるので印刷する。

図30.診療費請求書兼領収書

図31.診療費明細書

図32.処方箋

2018年9月6日木曜日

患者受付処理

ORCAで患者を受け付けたら、OpenDolphinにその情報が伝達されるようになっている。そのためには、ORCAの設定が必要になる。
CLAIM接続情報の設定
ORCAで[医事業務]→[マスタ登録]→[101 システム管理マスタ]と進んで、管理コードから[9000 CLAIM接続情報]を選ぶ。
図1 ORCAのCLAIM接続情報設定画面
図1のように設定して登録する。ここで、送信アドレスにはOpenDolphinクライアントがインストールされたPCのIPアドレスを設定する。
これによって、ORCAで受付処理された患者の受付情報がOpenDolphinクライアントへ直接送信される。OpenDolphinクライアントはポート番号TCP/5002を開けておく必要がある。
図2 ORCAの患者受付画面
 図2はORCAの[受付]で、患者を選択したところである。ここで、[受付完了]ボタンをクリックすると図3のように[現在の予約、受付状況]に受け付けた患者の情報が表示され、[送信]欄に「送信」と表示される。
図3 ORCAの受付完了画面
 ORCAはOpenDolphinクライアントに向けてダイレクトに受付情報を送り、図4のように受付患者が表示される。
図4 OpenDolphinクライアントの受付リスト画面
 このときのパケットをキャプチャしたのが図5である。
図5 受付完了時にORCAサーバからOpenDolphinに直接送られたパケット
 ORCAサーバはソケット通信を使ってOpenDolphinに受付情報を送信する。送信内容を組み立てたのが図6である。
図6 ORCAサーバからOpenDolphinクライアントに送信された受付情報
 図6に示すように、受付情報はXMLの形式になっている。
<?xml version="1.0" encoding="UTF-8" ?>
<Mml version="2.3" createDate="2018-09-06T09:30:32" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:mmlCm="http://www.medxml.net/MML/SharedComponent/Common/1.0" xmlns:mmlNm="http://www.medxml.net/MML/SharedComponent/Name/1.0" xmlns:mmlFc="http://www.medxml.net/MML/SharedComponent/Facility/1.0" xmlns:mmlDp="http://www.medxml.net/MML/SharedComponent/Department/1.0" xmlns:mmlAd="http://www.medxml.net/MML/SharedComponent/Address/1.0" xmlns:mmlPh="http://www.medxml.net/MML/SharedComponent/Phone/1.0" xmlns:mmlPsi="http://www.medxml.net/MML/SharedComponent/PersonalizedInfo/1.0" xmlns:mmlCi="http://www.medxml.net/MML/SharedComponent/CreatorInfo/1.0" xmlns:mmlPi="http://www.medxml.net/MML/ContentModule/PatientInfo/1.0" xmlns:mmlBc="http://www.medxml.net/MML/ContentModule/BaseClinic/1.0" xmlns:mmlFcl="http://www.medxml.net/MML/ContentModule/FirstClinic/1.0" xmlns:mmlHi="http://www.medxml.net/MML/ContentModule/HealthInsurance/1.1" xmlns:mmlLs="http://www.medxml.net/MML/ContentModule/Lifestyle/1.0" xmlns:mmlPc="http://www.medxml.net/MML/ContentModule/ProgressCourse/1.0" xmlns:mmlRd="http://www.medxml.net/MML/ContentModule/RegisteredDiagnosis/1.0" xmlns:mmlSg="http://www.medxml.net/MML/ContentModule/Surgery/1.0" xmlns:mmlSm="http://www.medxml.net/MML/ContentModule/Summary/1.0" xmlns:mmlLb="http://www.medxml.net/MML/ContentModule/test/1.0" xmlns:mmlRp="http://www.medxml.net/MML/ContentModule/report/1.0" xmlns:mmlRe="http://www.medxml.net/MML/ContentModule/Referral/1.0" xmlns:mmlSc="http://www.medxml.net/MML/SharedComponent/Security/1.0" xmlns:claim="http://www.medxml.net/claim/claimModule/2.1" xmlns:claimA="http://www.medxml.net/claim/claimAmountModule/2.1">       
    <MmlHeader>
        <mmlCi:CreatorInfo>
            <mmlPsi:PersonalizedInfo>
                <mmlCm:Id mmlCm:type="facility" mmlCm:tableId="MML0024">
                    1234567
                </mmlCm:Id>
                <mmlPsi:personName>
                    <mmlNm:Name mmlNm:repCode="I" mmlNm:tableId="MML0025">
                        <mmlNm:fullname>オルカ シャチ</mmlNm:fullname>
                    </mmlNm:Name>
                </mmlPsi:personName>
                <mmlFc:Facility>
                    <mmlFc:name mmlFc:repCode="I" mmlFc:tableId="MML0025">
                        医療法人 オルカ医院
                    </mmlFc:name>
                    <mmlCm:Id mmlCm:type="insurance" mmlCm:tableId="MML0027">
                        JPN332020100008
                    </mmlCm:Id>
                </mmlFc:Facility>
                <mmlDp:Department>
                    <mmlDp:name mmlDp:repCode="I" mmlDp:tableId="MML0025">
                        内科
                    </mmlDp:name>
                    <mmlCm:Id mmlCm:type="medical" mmlCm:tableId="MML0029">
                        01
                    </mmlCm:Id>
                </mmlDp:Department>
                <mmlPsi:addresses>
                    <mmlAd:Address mmlAd:repCode="I" mmlAd:tableId="MML0025">
                        <mmlAd:full>
                            東京都文京区本駒込2?28?16
                        </mmlAd:full>
                        <mmlAd:zip>
                            113-0021
                        </mmlAd:zip>
                    </mmlAd:Address>
                </mmlPsi:addresses>
            </mmlPsi:PersonalizedInfo>
            <mmlCi:creatorLicense mmlCi:tableId="MML0026">
                doctor
            </mmlCi:creatorLicense>
        </mmlCi:CreatorInfo>
        <masterId>
            <mmlCm:Id mmlCm:type="facility" mmlCm:tableId="MML0024">
                00001
            </mmlCm:Id>
        </masterId>
        <toc>
            <tocItem>http://www.medxml.net/MML/SharedComponent/Common/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/SharedComponent/Name/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/SharedComponent/Facility/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/SharedComponent/Department/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/SharedComponent/Address/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/SharedComponent/Phone/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/SharedComponent/PersonalizedInfo/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/SharedComponent/CreatorInfo/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/ContentModule/PatientInfo/1.0</tocItem>
            <tocItem>http://www.medxml.net/MML/ContentModule/HealthInsurance/1.1</tocItem>
            <tocItem>http://www.medxml.net/claim/claimModule/2.1</tocItem>
        </toc>
        <encryptInfo>no encryption</encryptInfo>
    </MmlHeader>
    <MmlBody>
        <MmlModuleItem>
            <docInfo contentModuleType="patientInfo">
                <securityLevel>
                    <accessRight permit="all" />
                </securityLevel>
                <title>
                    Data of Regist
                </title>
                <docId>
                    <uid>7533aba1-0f33-4c4a-a7cd-4c75ab327b44</uid>
                </docId>
                <confirmDate>2018-09-06</confirmDate>
                <mmlCi:CreatorInfo>
                    <mmlPsi:PersonalizedInfo>
                        <mmlCm:Id mmlCm:type="facility" mmlCm:tableId="MML0024">
                            1234567
                        </mmlCm:Id>
                        <mmlPsi:personName>
                            <mmlNm:Name mmlNm:repCode="I" mmlNm:tableId="MML0025">
                                <mmlNm:fullname>オルカ シャチ</mmlNm:fullname>
                            </mmlNm:Name>
                        </mmlPsi:personName>
                        <mmlFc:Facility>
                            <mmlFc:name mmlFc:repCode="I" mmlFc:tableId="MML0025">
                                医療法人 オルカ医院
                            </mmlFc:name>
                            <mmlCm:Id mmlCm:type="insurance" mmlCm:tableId="MML0027">
                                JPN332020100008
                            </mmlCm:Id>
                        </mmlFc:Facility>
                        <mmlPsi:addresses>
                            <mmlAd:Address mmlAd:repCode="I" mmlAd:tableId="MML0025">
                                <mmlAd:full>
                                    東京都文京区本駒込2?28?16
                                </mmlAd:full>
                                <mmlAd:zip>
                                    113-0021
                                </mmlAd:zip>
                            </mmlAd:Address>
                        </mmlPsi:addresses>
                    </mmlPsi:PersonalizedInfo>
                    <mmlCi:creatorLicense mmlCi:tableId="MML0026">
                        doctor
                    </mmlCi:creatorLicense>
                </mmlCi:CreatorInfo>
                <extRefs />
            </docInfo>
            <content>
                <mmlPi:PatientModule>
                    <mmlPi:uniqueInfo>
                        <mmlPi:masterId>
                            <mmlCm:Id mmlCm:type="facility" mmlCm:tableId="MML0024">
                                00001
                            </mmlCm:Id>
                        </mmlPi:masterId>
                    </mmlPi:uniqueInfo>
                    <mmlPi:personName>
                        <mmlNm:Name mmlNm:repCode="P" mmlNm:tableId="MML0025">
                            <mmlNm:fullname>キョウカイ タロウ</mmlNm:fullname>
                        </mmlNm:Name>
                        <mmlNm:Name mmlNm:repCode="I" mmlNm:tableId="MML0025">
                            <mmlNm:fullname>協会 太郎</mmlNm:fullname>
                        </mmlNm:Name>
                    </mmlPi:personName>
                    <mmlPi:birthday>1986-10-22</mmlPi:birthday>
                    <mmlPi:sex>male</mmlPi:sex>
                    <mmlPi:addresses>
                        <mmlAd:Address mmlAd:repCode="I" mmlAd:addressClass="home" mmlAd:tableId="MML0025">
                            <mmlAd:full>
                                東京都新宿区市谷左内町 
                            </mmlAd:full>
                            <mmlAd:zip>
                                162-0846
                            </mmlAd:zip>
                        </mmlAd:Address>
                    </mmlPi:addresses>
                    <mmlPi:phones>
                        <mmlPh:Phone>
                            <mmlPh:area>
                                ?????
                            </mmlPh:area>
                            <mmlPh:city>
                                ?????
                            </mmlPh:city>
                            <mmlPh:number>
                                ?????
                            </mmlPh:number>
                            <mmlPh:memo>
                                03-1234-5678
                            </mmlPh:memo>
                        </mmlPh:Phone>
                    </mmlPi:phones>
                    <mmlPi:death>false</mmlPi:death>
                </mmlPi:PatientModule>
            </content>
        </MmlModuleItem>
        <MmlModuleItem>
            <docInfo contentModuleType="healthInsurance">
                <securityLevel>
                    <accessRight permit="all" />
                </securityLevel>
                <title>
                    Data of Regist
                </title>
                <docId>
                    <uid>72a9fbf9-0f3e-4137-9b91-fd496077cd69</uid>
                </docId>
                <confirmDate>2018-09-06</confirmDate>
                <mmlCi:CreatorInfo>
                    <mmlPsi:PersonalizedInfo>
                        <mmlCm:Id mmlCm:type="facility" mmlCm:tableId="MML0024">
                            1234567
                        </mmlCm:Id>
                        <mmlPsi:personName>
                            <mmlNm:Name mmlNm:repCode="I" mmlNm:tableId="MML0025">
                                <mmlNm:fullname>オルカ シャチ</mmlNm:fullname>
                            </mmlNm:Name>
                        </mmlPsi:personName>
                        <mmlFc:Facility>
                            <mmlFc:name mmlFc:repCode="I" mmlFc:tableId="MML0025">
                                医療法人 オルカ医院
                            </mmlFc:name>
                            <mmlCm:Id mmlCm:type="insurance" mmlCm:tableId="MML0027">
                                JPN332020100008
                            </mmlCm:Id>
                        </mmlFc:Facility>
                        <mmlDp:Department>
                            <mmlDp:name mmlDp:repCode="I" mmlDp:tableId="MML0025">
                                内科
                            </mmlDp:name>
                            <mmlCm:Id mmlCm:type="medical" mmlCm:tableId="MML0029">
                                01
                            </mmlCm:Id>
                        </mmlDp:Department>
                        <mmlPsi:addresses>
                            <mmlAd:Address mmlAd:repCode="I" mmlAd:tableId="MML0025">
                                <mmlAd:full>
                                    東京都文京区本駒込2?28?16
                                </mmlAd:full>
                                <mmlAd:zip>
                                    113-0021
                                </mmlAd:zip>
                            </mmlAd:Address>
                        </mmlPsi:addresses>
                    </mmlPsi:PersonalizedInfo>
                    <mmlCi:creatorLicense mmlCi:tableId="MML0026">
                        doctor
                    </mmlCi:creatorLicense>
                </mmlCi:CreatorInfo>
                <extRefs />
            </docInfo>
            <content>
                <mmlHi:HealthInsuranceModule mmlHi:countryType="JPN">
                    <mmlHi:insuranceClass mmlHi:ClassCode="09" mmlHi:tableId="MML0031">
                        協会けんぽ
                    </mmlHi:insuranceClass>
                    <mmlHi:insuranceNumber>01010016</mmlHi:insuranceNumber>
                    <mmlHi:clientId>
                        <mmlHi:group>21700023</mmlHi:group>
                        <mmlHi:number>21</mmlHi:number>
                    </mmlHi:clientId>
                    <mmlHi:familyClass>true</mmlHi:familyClass>
                    <mmlHi:startDate>2018-09-04</mmlHi:startDate>
                    <mmlHi:expiredDate>9999-12-31</mmlHi:expiredDate>
                    <mmlHi:paymentOutRatio>0.30</mmlHi:paymentOutRatio>
                </mmlHi:HealthInsuranceModule>
            </content>
        </MmlModuleItem>
        <MmlModuleItem>
            <docInfo contentModuleType="claim">
                <securityLevel>
                    <accessRight permit="all" />
                </securityLevel>
                <title>
                    Data of Regist
                </title>
                <docId>
                    <uid>28c3da1f-c6cf-4b90-b2f2-faaebe526a12</uid>
                </docId>
                <confirmDate>2018-09-06</confirmDate>
                <mmlCi:CreatorInfo>
                    <mmlPsi:PersonalizedInfo>
                        <mmlCm:Id mmlCm:type="facility" mmlCm:tableId="MML0024">
                            10002
                        </mmlCm:Id>
                        <mmlPsi:personName>
                            <mmlNm:Name mmlNm:repCode="I" mmlNm:tableId="MML0025">
                                <mmlNm:fullname>医師 二郎</mmlNm:fullname>
                            </mmlNm:Name>
                        </mmlPsi:personName>
                        <mmlFc:Facility>
                            <mmlFc:name mmlFc:repCode="I" mmlFc:tableId="MML0025">
                                医療法人 オルカ医院
                            </mmlFc:name>
                            <mmlCm:Id mmlCm:type="insurance" mmlCm:tableId="MML0027">
                                JPN332020100008
                            </mmlCm:Id>
                        </mmlFc:Facility>
                        <mmlDp:Department>
                            <mmlDp:name mmlDp:repCode="I" mmlDp:tableId="MML0025">
                                内科
                            </mmlDp:name>
                            <mmlCm:Id mmlCm:type="medical" mmlCm:tableId="MML0029">
                                01
                            </mmlCm:Id>
                        </mmlDp:Department>
                        <mmlPsi:addresses>
                            <mmlAd:Address mmlAd:repCode="I" mmlAd:tableId="MML0025">
                                <mmlAd:full>
                                    東京都文京区本駒込2?28?16
                                </mmlAd:full>
                                <mmlAd:zip>
                                    113-0021
                                </mmlAd:zip>
                            </mmlAd:Address>
                        </mmlPsi:addresses>
                    </mmlPsi:PersonalizedInfo>
                    <mmlCi:creatorLicense mmlCi:tableId="MML0026">
                        doctor
                    </mmlCi:creatorLicense>
                </mmlCi:CreatorInfo>
                <extRefs />
            </docInfo>
            <content>
                <claim:ClaimModule>
                    <claim:information claim:status="regist" claim:registTime="2018-09-06T09:30:31" claim:admitFlag="false" claim:insuranceUid="72a9fbf9-0f3e-4137-9b91-fd496077cd69">
                        <claim:appoint>
                            <claim:memo>
                                診察1
                            </claim:memo>
                        </claim:appoint>
                        <claim:patientDepartment>
                            <mmlDp:Department>
                                <mmlDp:name mmlDp:repCode="I" mmlDp:tableId="MML0025">
                                    内科
                                </mmlDp:name>
                            </mmlDp:Department>
                        </claim:patientDepartment>
                    </claim:information>
                    <claim:bundle claim:classCode="110" claim:classCodeId="Claim007">
                        <claim:className>診療料</claim:className>
                        <claim:bundleNumber>1</claim:bundleNumber>
                        <claim:item claim:subclassCode="0" claim:subclassCodeId="Claim003" claim:code="111000110" claim:tableId="tbl_tensu">
                            <claim:name>初診料</claim:name>
                        </claim:item>
                    </claim:bundle>
                </claim:ClaimModule>
            </content>
        </MmlModuleItem>
    </MmlBody>
</Mml>

【Tips】

OpenDolphinクライアントのポーリング

OpenDolphinクライアントは45秒おきにOpenDolphinサーバに対してポーリングを行っている。
図7 45秒おきにOpenDolphinクライアントとサーバの間で送受信されるデータ(受付情報がない場合)
図8 受付情報がある場合
GET /dolphin/openSource/pvt2/pvtList HTTP/1.1
Accept: application/json
Accept-Encoding: gzip, deflate
password: d844211bc2d60c9dea151d0b3abb6678
userName: 1.3.6.1.4.1.9414.70.1:DR0002
Host: 172.16.111.217:8080
Connection: Keep-Alive

HTTP/1.1 200 OK
Connection: keep-alive
X-Powered-By: Undertow/1
Server: WildFly/9
Content-Type: application/json
Content-Length: 2457
Date: Thu, 06 Sep 2018 00:31:10 GMT

{
  "list": [
    {
      "deptCode": "01",
      "doctorName": "医師 二郎",
      "doctorId": "10002",
      "jmariNumber": "JPN332020100008",
      "pvtDate": "2018-09-06T09:30:31",
      "department": "内科,01,医師 二郎,10002,JPN332020100008,",
      "firstInsurance": "09 協会けんぽ",
      "insuranceUid": "72a9fbf9-0f3e-4137-9b91-fd496077cd69",
      "facilityId": "1.3.6.1.4.1.9414.70.1",
      "patientModel": {
        "patientId": "00001",
        "healthInsurances": [
          {
            "beanBytes": "PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPGphdmEgdmVyc2lvbj0iMS44LjBfMTcxIiBjbGFzcz0iamF2YS5iZWFucy5YTUxEZWNvZGVyIj4KIDxvYmplY3QgY2xhc3M9Im9wZW4uZG9scGhpbi5pbmZvbW9kZWwuUFZUSGVhbHRoSW5zdXJhbmNlTW9kZWwiPgogIDx2b2lkIHByb3BlcnR5PSJHVUlEIj4KICAgPHN0cmluZz43MmE5ZmJmOS0wZjNlLTQxMzctOWI5MS1mZDQ5NjA3N2NkNjk8L3N0cmluZz4KICA8L3ZvaWQ+CiAgPHZvaWQgcHJvcGVydHk9ImNsaWVudEdyb3VwIj4KICAgPHN0cmluZz7vvJLvvJHvvJfvvJDvvJDvvJDvvJLvvJM8L3N0cmluZz4KICA8L3ZvaWQ+CiAgPHZvaWQgcHJvcGVydHk9ImNsaWVudE51bWJlciI+CiAgIDxzdHJpbmc+77yS77yRPC9zdHJpbmc+CiAgPC92b2lkPgogIDx2b2lkIHByb3BlcnR5PSJleHBpcmVkRGF0ZSI+CiAgIDxzdHJpbmc+OTk5OS0xMi0zMTwvc3RyaW5nPgogIDwvdm9pZD4KICA8dm9pZCBwcm9wZXJ0eT0iZmFtaWx5Q2xhc3MiPgogICA8c3RyaW5nPnRydWU8L3N0cmluZz4KICA8L3ZvaWQ+CiAgPHZvaWQgcHJvcGVydHk9Imluc3VyYW5jZUNsYXNzIj4KICAgPHN0cmluZz7ljZTkvJrjgZHjgpPjgb08L3N0cmluZz4KICA8L3ZvaWQ+CiAgPHZvaWQgcHJvcGVydHk9Imluc3VyYW5jZUNsYXNzQ29kZSI+CiAgIDxzdHJpbmc+MDk8L3N0cmluZz4KICA8L3ZvaWQ+CiAgPHZvaWQgcHJvcGVydHk9Imluc3VyYW5jZUNsYXNzQ29kZVN5cyI+CiAgIDxzdHJpbmc+TU1MMDAzMTwvc3RyaW5nPgogIDwvdm9pZD4KICA8dm9pZCBwcm9wZXJ0eT0iaW5zdXJhbmNlTnVtYmVyIj4KICAgPHN0cmluZz4wMTAxMDAxNjwvc3RyaW5nPgogIDwvdm9pZD4KICA8dm9pZCBwcm9wZXJ0eT0icGF5T3V0UmF0aW8iPgogICA8c3RyaW5nPjAuMzA8L3N0cmluZz4KICA8L3ZvaWQ+CiAgPHZvaWQgcHJvcGVydHk9InN0YXJ0RGF0ZSI+CiAgIDxzdHJpbmc+MjAxOC0wOS0wNDwvc3RyaW5nPgogIDwvdm9pZD4KIDwvb2JqZWN0Pgo8L2phdmE+Cg==",
            "id": 18
          }
        ],
        "kanaName": "キョウカイ タロウ",
        "gender": "male",
        "genderDesc": "男",
        "birthday": "1986-10-22",
        "simpleAddressModel": {
          "zipCode": "162-0846",
          "address": "東京都新宿区市谷左内町 "
        },
        "appMemo": "診察1",
        "pvtDate": null,
        "ownerUUID": null,
        "romanName": null,
        "nationality": null,
        "nationalityDesc": null,
        "maritalStatus": null,
        "jpegPhoto": null,
        "mobilePhone": null,
        "relations": null,
        "reserve1": null,
        "reserve2": null,
        "reserve3": null,
        "reserve4": null,
        "reserve5": null,
        "reserve6": null,
        "facilityId": "1.3.6.1.4.1.9414.70.1",
        "telephone": "03-1234-5678",
        "memo": null,
        "email": null,
        "fullName": "協会 太郎",
        "id": 9
      },
      "deptName": "内科",
      "memo": null,
      "appointment": null,
      "lastDocDate": null,
      "id": 19,
      "state": 0
    }
  ]
}
 図7のように、受付情報がない場合は空のリストが返ってくるが、受付情報がある場合はその受付情報が返ってくる。

ORCAは患者を受け付けると、受付情報を直接OpenDolphinに送るので、このようなポーリングは不要に思えるが、万一、OpenDolphinが起動していない場合や、OpenDolphinクライアントが複数台立ち上がっている場合など、これによって受付患者情報が取得でき、受付リストに表示できる。

しかし、何故OpenDolphinはサーバではなくクライアントでORCAの受付情報を受信する設計方針をとったのだろう?
また、クライアントで受け取った受付情報をどのようにしてサーバへ送っているのだろうか?

ORCAクライアントのポーリング

ORCAクライアントは7秒おきにポーリングしている。サーバとやりとりする情報には2通りがある(図9、10)。
図9 ORCAクライアントのポーリング(list_downloads)

図10 ORCAクライアントのポーリング(get_message)

2018年9月4日火曜日

プリンタ割り当て

ORCAのプリンタ割り当て方法について記す。
ORCAには「診療録(カルテ1号紙)」や「処方せん」、「診療報酬明細書(レセプト)」など、多くの帳票類が印刷できるようになっている。
それら個々の帳票類をどのプリンタに出力するかを割り当てるのが 出力先プリンタ割り当て情報の役割である。
出力先プリンタ割り当て情報画面は、メニュー画面から[91 マスタ登録]→[101 システム管理マスタ]と進み、管理コードに「1031 出力先プリンタ割り当て情報」を選択して[確定]ボタンを押すことにより表示できる(図1)。
図1 システム管理マスタ
図2 出力先プリンタ割り当て情報
デフォルトではプリンタ名はlp1になっている。

患者情報の登録

患者情報の登録は、ORCAを起動し、メニュー画面から[01 医事業務]→[12 登録]と進む。
図1 患者情報登録画面
患者番号を自動採番するために左上のテキストボックスにアスタリスク(*)を入力してEnterキーをクリックする。すると、自動採番された患者番号が表示されるので、残りの項目を入力する。
図2 患者情報を入力し終えた画面
最後に[登録]ボタンをクリックすると患者情報の登録が完了する。

OpenDolphinとORCAの連携

第3章の章末問題 第2章の章末問題でやったカルテ例1をOpenDolphinに入力してORCAで診療報酬明細書を作成し、模範解答と比較しなさい。 を実際にやってみたのでまとめておく。 OpenDolphinで過去にさかのぼってカルテは作成できるか? その前に標題に...