入院患者医療区分・ADL点数情報
メニュー
更新履歴
2023-10-26 「レスポンス一覧」に項目を追加。
2018-09-25 「レスポンス一覧」に項目を追加。
2018-03-26 「レスポンス一覧」の項目を修正。
2016-04-18 「レスポンス一覧」の項目を修正。
概要
POSTメソッドによる入院患者医療区分およびADL点数情報の取得を行います。
日レセ Ver.4.7.0[第19回パッチ適用] 以降
リクエストおよびレスポンスデータはxml2形式になります。
テスト方法
- 参考提供されている sample_hspteval_v2.rb 内の変数HOST等を接続環境に合わせます。
- sample_hspteval_v2.rb 内の患者番号等を指定します。
- ruby sample_hspteval_v2.rb により接続。
リクエスト(POSTリクエスト)サンプル
POST : /api01rv2/hsptevalv2
Content-Type: application/xml
application/xml の場合の文字コードは UTF-8 とします。
<data>
<private_objects type="record">
<Patient_ID type="string">40024</Patient_ID>
<Perform_Month type="string">2013-10</Perform_Month>
</private_objects>
</data>
処理概要
日レセに設定されている入院患者の医療区分、ADLの詳細内容を返却します。
処理詳細
- 診療年月の妥当性チェック(未設定の場合は、システム日付を設定)
- 患者番号の存在チェック
レスポンスサンプル
<xmlio2>
<private_objects type="record">
<Information_Date type="string">2013-10-23</Information_Date>
<Information_Time type="string">15:46:54</Information_Time>
<Api_Result type="string">00</Api_Result>
<Api_Result_Message type="string">処理終了</Api_Result_Message>
<Patient_Information type="record">
<Patient_ID type="string">40024</Patient_ID>
<WholeName type="string">テスト 一郎</WholeName>
<WholeName_inKana type="string">テスト イチロウ</WholeName_inKana>
<BirthDate type="string">1925-03-10</BirthDate>
<Sex type="string">2</Sex>
</Patient_Information>
<Admission_Discharge_Date type="array">
<Admission_Discharge_Date_child type="record">
<Admission_Date type="string">2013-10-15</Admission_Date>
<Discharge_Date type="string">2013-10-17</Discharge_Date>
</Admission_Discharge_Date_child>
<Admission_Discharge_Date_child type="record">
<Admission_Date type="string">2013-10-19</Admission_Date>
<Discharge_Date type="string">9999-12-31</Discharge_Date>
</Admission_Discharge_Date_child>
</Admission_Discharge_Date>
<Perform_Month type="string">2013-10</Perform_Month>
<Medical_Condition type="array">
<Medical_Condition_child type="record">
<Level type="string">2</Level>
<ID type="string"> 2</ID>
<Name type="string"> 2 尿路感染症に対する治療を実施</Name>
<Evaluation_Daily type="string">,,,,,,,,,,,,,,1,1,,,,,,,,,,,,,,,</Evaluation_Daily>
</Medical_Condition_child>
<Medical_Condition_child type="record">
<Level type="string">2</Level>
<ID type="string"> 3</ID>
<Name type="string"> 3 傷病等によりリハビリテーションが必要な状態</Name>
<Evaluation_Daily type="string">,,,,,,,,,,,,,,,,,,1,1,1,,,,,,,,,,</Evaluation_Daily>
</Medical_Condition_child>
<Medical_Condition_child type="record">
<Level type="string">2</Level>
<ID type="string">M2</ID>
<Name type="string">医療区分2の該当有無</Name>
<Evaluation_Daily type="string">,,,,,,,,,,,,,,1,1,,,1,1,1,,,,,,,,,,</Evaluation_Daily>
</Medical_Condition_child>
<Medical_Condition_child type="record">
<Level type="string">1</Level>
<ID type="string">M1</ID>
<Name type="string">医療区分3・2いずれも0(医療区分1)</Name>
<Evaluation_Daily type="string">,,,,,,,,,,,,,,,,1,,,,,1,1,1,1,1,1,1,1,1,1</Evaluation_Daily>
</Medical_Condition_child>
</Medical_Condition>
<ADL_Score type="array">
<ADL_Score_child type="record">
<ID type="string">a</ID>
<Name type="string">a ベッドの可動性</Name>
<Evaluation_Daily type="string">,,,,,,,,,,,,,,1,1,1,,1,1,1,1,0,0,0,0,0,0,0,0,0</Evaluation_Daily>
</ADL_Score_child>
<ADL_Score_child type="record">
<ID type="string">b</ID>
<Name type="string">b 移乗</Name>
<Evaluation_Daily type="string">,,,,,,,,,,,,,,0,0,0,,0,0,0,0,0,0,0,0,0,0,0,0,0</Evaluation_Daily>
</ADL_Score_child>
<ADL_Score_child type="record">
<ID type="string">c</ID>
<Name type="string">c 食事</Name>
<Evaluation_Daily type="string">,,,,,,,,,,,,,,1,1,1,,1,1,1,1,1,1,1,1,1,1,1,1,1</Evaluation_Daily>
</ADL_Score_child>
<ADL_Score_child type="record">
<ID type="string">d</ID>
<Name type="string">d トイレの使用</Name>
<Evaluation_Daily type="string">,,,,,,,,,,,,,,0,0,0,,0,0,0,0,0,0,0,0,0,0,0,0,0</Evaluation_Daily>
</ADL_Score_child>
</ADL_Score>
<Medical_Condition_Level_Daily type="string">,,,,,,,,,,,,,,2,2,1,,2,2,2,1,1,1,1,1,1,1,1,1,1</Medical_Condition_Level_Daily>
<ADL_Total_Score_Daily type="string">,,,,,,,,,,,,,,2,2,2,,2,2,2,2,1,1,1,1,1,1,1,1,1</ADL_Total_Score_Daily>
<Patient_Condition type="record">
<Evaluation_Daily type="string">,,,,,,,,,,,,,,C,C,E,,C,C,C,E,E,E,E,E,E,E,E,E,E</Evaluation_Daily>
<Evaluation_Difference type="string">,,,,,,,,,,,,,,C,C,C,,B,B,B,B,B,B,B,B,B,B,B,B,B</Evaluation_Difference>
<Evaluation_Class type="string">,,,,,,,,,,,,,,C,C,C,,B,B,B,B,B,B,B,B,B,B,B,B,B</Evaluation_Class>
</Patient_Condition>
</private_objects>
</xmlio2>
リクエスト一覧
番号 | 項目名 | 内容 | 例 | 備考 |
---|---|---|---|---|
1 | Patient_ID | 患者番号 | 40024 | |
2 | Perform_Month | 診療年月 | 2013-10 | 未設定時はシステム日付を設定 |
レスポンス一覧
番号 | 項目名 | 内容 | 例 | 備考 |
---|---|---|---|---|
1 | Information_Date | 実施日 | 2013-10-23 | |
2 | Information_Time | 実施時間 | 15:46:54 | |
3 | Api_Result | 結果コード(ゼロ以外エラー) | 00 | |
4 | Api_Result_Message | エラーメッセージ | 処理終了 | |
5 | Patient_Information | 患者情報 | ||
5-1 | Patient_ID | 患者番号 | 40024 | |
5-2 | WholeName | 漢字氏名 | テスト 一郎 | |
5-3 | WholeName_inKana | カナ氏名 | テスト イチロウ | |
5-4 | BirthDate | 生年月日 | 1925-03-10 | |
5-5 | Sex | 性別(1:男性、2:女性) | 2 | |
6 | Admission_Discharge_Date | 診療年月にかかる入退院日情報(繰り返し 5) | ||
6-1 | Admission_Date | 入院日 | 2013-10-15 | |
6-2 | Discharge_Date | 退院日 | 2013-10-17 | |
7 | Perform_Month | 診療年月 | 2013-10 | |
8 | Medical_Condition | 医療区分情報(繰り返し 50) | 変更(2018-03-26) | |
8-1 | Level | 医療区分コード (3:医療区分3、 2:医療区分2、 1:医療区分3・2に該当しない場合) | 2 | |
8-2 | ID | 医療区分の項目番号 (M3:医療区分3の該当有無、 M2:医療区分2の該当有無、 M1:医療区分1、 他...) | 2 | |
8-3 | Name | 医療区分の項目名称 | 2 尿路感染症に対する治療を実施 | |
8-4 | Evaluation_Month | 頻度が定められていない項目の状態該当有無を"1"、"0"で返却 | | |
8-5 | Evaluation_Daily | 各日の評価をカンマ区切りで返却 (該当する場合は"1"、該当しない場合は"0") | ,,,,,,,,,,,,,,1,1,,,,,,,,,,,,,,, | |
9 | ADL_Score | ADL点数情報(繰り返し 4) | ||
9-1 | ID | "a"、"b"、"c"、"d" | a | |
9-2 | Name | 評価項目の名称 | a ベッドの可動性 | |
9-3 | Evaluation_Daily | 各日の点数をカンマ区切りで返却 | ,,,,,,,,,,,,,,1,1,1,,1,1,1,1,0,0,0,0,0,0,0,0,0 | |
10 | Medical_Condition_Level_Daily | 日毎の医療区分をカンマ区切りで返却 | ,,,,,,,,,,,,,,2,2,1,,2,2,2,1,1,1,1,1,1,1,1,1,1 | |
11 | ADL_Total_Score_Daily | 日毎のADLの合計点数をカンマ区切りで返却 | ,,,,,,,,,,,,,,2,2,2,,2,2,2,2,1,1,1,1,1,1,1,1,1 | |
12 | Patient_Condition | 患者の状態評価 | ||
12-1 | Evaluation_Daily | 日毎の患者の状態評価をカンマ区切りで返却 | ,,,,,,,,,,,,,,C,C,E,,C,C,C,E,E,E,E,E,E,E,E,E,E | |
12-2 | Evaluation_Difference | 日レセの入院基本料の区分が患者の状態評価と一致しない場合、日レセの入院基本料の区分をカンマ区切りで返却 | ,,,,,,,,,,,,,,C,C,C,,B,B,B,B,B,B,B,B,B,B,B,B,B | |
12-3 | Evaluation_Difference | 日レセで算定されている入院料の区分を返却 | ,,,,,,,,,,,,,,C,C,C,,B,B,B,B,B,B,B,B,B,B,B,B,B | 追加(2023-10-26) |
13 | Designr_Total_Score_Daily | DESIGN-Rの合計点(深さの点数は加えない) 日毎の点数をカンマ区切りで返却 | ,,,,,,,,,,,,,,,,0,1,2,,,,,,,,,,,, | 追加(2018-09-25) |
Rubyによるリクエストサンプルソース
Rubyのバージョンが1.9.2以前の環境の場合、HTTPのバージョン指定を1.1に変更する必要があります。
Rubyのバージョンを確認後、以下のように該当箇所を変更して下さい。
- Ruby1.9.2以降の場合
Net::HTTP.version_1_2
- Ruby1.9.2以前の場合
Net::HTTP.version_1_1
Rubyのバージョンが1.9.1以降の環境(日レセ4.8以降の環境)ではソースファイル内の文字コードの指定が必要になります。
サンプルソース内に以下の一行が記述されていることを確認して下さい。
# -*- coding: utf-8 -*-
#!/usr/bin/ruby
# -*- coding: utf-8 -*-
#------ 入院患者基本区分・ADL点数情報返却
require 'uri'
require 'net/http'
Net::HTTP.version_1_2
HOST = "localhost"
PORT = "8000"
USER = "ormaster"
PASSWD = "ormaster"
CONTENT_TYPE = "application/xml"
req = Net::HTTP::Post.new("/api01rv2/hsptevalv2")
#
# 1.患者番号 Patient_ID (REQUIRED)
# 2.診療年月 Perform_Month (IMPLIED)
#
# REQUIRED : 必須 IMPLIED : 任意
#
BODY = <<EOF
<data>
<private_objects type="record">
<Patient_ID type="string">12</Patient_ID>
<Perform_Month type="string"></Perform_Month>
</private_objects>
</data>
EOF
req.content_length = BODY.size
req.content_type = CONTENT_TYPE
req.body = BODY
req.basic_auth(USER, PASSWD)
puts req.body
Net::HTTP.start(HOST, PORT) {|http|
res = http.request(req)
puts res.body
}
エラーメッセージ一覧
エラーコード | エラーメッセージ | 備考 |
---|---|---|
00 | 処理終了 | |
01 | 診療年月の設定に誤りがあります | |
02 | 患者番号の設定に誤りがあります | |
03 | 入退院情報の取得に失敗しました | |
04 | 入院会計情報の取得に失敗しました | |
05 | 医療区分・ADL点数情報の取得に失敗しました | |
06 | 療養病棟入院基本料が算定されていません | 病院の場合 |
有床診療所療養病床入院基本料が算定されていません | 有床診療所の場合 | |
89 | 職員情報が取得できません | |
医療機関情報が取得できません | ||
システム日付が取得できません | ||
患者番号構成情報が取得できません | ||
グループ医療機関が不整合です。処理を終了して下さい | ||
システム項目が設定できません | ||
92 | 診療年月は平成24年(2012年)4月以降を指定してください | |
97 | 送信内容に誤りがあります | |
98 | 送信内容の読込ができませんでした | |
99 | ユーザIDが未登録です | |
それ以外 | 返却情報の編集でエラーが発生しました |