病棟・病室情報
メニュー
- 更新履歴
- 概要
- テスト方法
- リクエスト(POSTリクエスト)サンプル
- レスポンスサンプル(病棟情報)
- レスポンスサンプル(病室情報)
- リクエスト一覧
- レスポンス一覧(病棟情報)
- レスポンス一覧(病室情報)
- Rubyによるリクエストサンプルソース
- エラーメッセージ一覧
更新履歴
2014-08-01 「エラーメッセージ一覧」を追加。
2013-11-26 「レスポンスサンプル(病棟情報)・(病室情報)」「レスポンス一覧(病棟情報)・(病室情報)」の項目名を一部変更。
概要
POSTメソッドによる病棟・病室情報の取得を行います。
日レセ Ver.4.7.0[第17回パッチ適用] 以降
リクエストおよびレスポンスデータはxml2形式になります。
テスト方法
- 参考提供されている sample_in_room_v2.rb 内の変数HOST等を接続環境に合わせます。
- sample_in_room_v2.rb 内の基準日等を接続先の日レセの環境に合わせます。
- ruby sample_in_room_v2.rb により接続。
リクエスト(POSTリクエスト)サンプル
POST : /api01rv2/hsconfwardv2
Content-Type: application/xml
application/xml の場合の文字コードは UTF-8 とします。
今までのAPIではURLに引数(class)を指定することで機能の選択を行っていましたが、このAPIでは引数を受け取らない仕様に変更となりました。
その代わりに、リクエストデータ内に「Request_Number」の項目を追加し、「Request_Number」にリクエスト番号を指定することで機能の選択を行います。
<data>
<private_objects type="record">
<Request_Number type="string">1</Request_Number>
<Base_Date type="string">2013-09-09</Base_Date>
<Ward_Number type="string"></Ward_Number>
<Room_Number type="string"></Room_Number>
</private_objects>
</data>
処理概要
病棟・病室情報リクエストで基準日を指定することにより病棟・病室の情報を返却します。処理詳細
- 基準日の妥当性チェック(未設定の場合は、システム日付を設定)
返却情報について
- 病棟情報
- 病棟番号、病室番号指定なしの場合、全ての病棟情報を返却する。
- 病室番号のみ指定ありの場合、該当する病室を含む病棟情報を全て返却する。
- 病棟番号のみ指定ありの場合、指定された病棟情報を返却する。
- 病棟番号、病室番号指定ありの場合、指定された病棟情報を返却する(病室番号は無視する)。
- 病室情報
- 病棟番号、病室番号指定なしの場合、エラーを返却する。
- 病室番号のみ指定ありの場合、該当する病室情報を全て返却する。
- 病棟番号のみ指定ありの場合、該当する病棟の病室情報を全て返却する。
- 病棟番号、病室番号指定ありの場合、指定された病室情報を返却する。
レスポンスサンプル(病棟情報)
<xmlio2>
<private_objects type="record">
<Information_Date type="string">2013-09-12</Information_Date>
<Information_Time type="string">13:10:42</Information_Time>
<Api_Result type="string">00</Api_Result>
<Api_Result_Message type="string">処理終了</Api_Result_Message>
<Ward_Configuration type="array">
<Ward_Configuration_child type="record">
<Start_Date type="string">2013-03-01</Start_Date>
<End_Date type="string">9999-12-31</End_Date>
<Ward_Number type="record">
<Label type="string">病棟番号</Label>
<Data type="string">01</Data>
</Ward_Number>
<Ward_Name type="record">
<Label type="string">病棟名称</Label>
<Data type="string">北病棟</Data>
</Ward_Name>
<Ward_Short_Name type="record">
<Label type="string">短縮病棟名</Label>
<Data type="string">北病棟</Data>
</Ward_Short_Name>
<Ward_Type type="record">
<Label type="string">病棟種別</Label>
<Data type="string">08</Data>
<Name type="string">有床診療所</Name>
</Ward_Type>
<Hospital_Charge type="record">
<Label type="string">入院基本料</Label>
<Data type="string">190097010</Data>
<Name type="string">有床診療所入院基本料1(14日以内)</Name>
</Hospital_Charge>
<Over180days_Hospital_Stay_Charges type="record">
<Label type="string">選定入院料</Label>
<Calculation_Type type="record">
<Label type="string">負担計算</Label>
<Data type="string">1</Data>
<Name type="string">定率設定</Name>
</Calculation_Type>
<Consumption_Tax type="record">
<Label type="string">消費税</Label>
<Data type="string">0</Data>
<Name type="string">なし</Name>
</Consumption_Tax>
<Value_Per_Day type="record">
<Label type="string">一般点数単価</Label>
<Data type="string"> 10</Data>
<Name type="string">点</Name>
</Value_Per_Day>
<Value_Per_Day_Late_Elderly type="record">
<Label type="string">後期高齢者点数単価</Label>
<Data type="string"> 10</Data>
<Name type="string">点</Name>
</Value_Per_Day_Late_Elderly>
</Over180days_Hospital_Stay_Charges>
<Room_Number type="array">
<Room_Number_child type="record">
<Label type="string">病室番号</Label>
<Data type="string">101</Data>
</Room_Number_child>
</Room_Number>
</Ward_Configuration_child>
</Ward_Configuration>
</private_objects>
</xmlio2>
レスポンスサンプル(病室情報)
<xmlio2>
<private_objects type="record">
<Information_Date type="string">2013-09-12</Information_Date>
<Information_Time type="string">13:13:16</Information_Time>
<Api_Result type="string">00</Api_Result>
<Api_Result_Message type="string">処理終了</Api_Result_Message>
<Room_Configuration type="array">
<Room_Configuration_child type="record">
<Start_Date type="string">2013-03-01</Start_Date>
<End_Date type="string">9999-12-31</End_Date>
<Ward_Number type="record">
<Label type="string">病棟番号</Label>
<Data type="string">01</Data>
</Ward_Number>
<Ward_Name type="record">
<Label type="string">病棟名称</Label>
<Data type="string">北病棟</Data>
</Ward_Name>
<Room_Number type="record">
<Label type="string">病室番号</Label>
<Data type="string">101</Data>
</Room_Number>
<Room_Type type="record">
<Label type="string">病室種別</Label>
<Data type="string">01</Data>
<Name type="string">一般病室</Name>
</Room_Type>
<Bed_Numbers type="record">
<Label type="string">収容人数</Label>
<Data type="string"> 4</Data>
<Name type="string">人</Name>
</Bed_Numbers>
</Room_Configuration_child>
</Room_Configuration>
</private_objects>
</xmlio2>
リクエスト一覧
番号 | 項目名 | 内容 | 例 | 備考 |
---|---|---|---|---|
1 | Request_Number | リクエスト番号 | 1 | 1: 病棟情報 2: 病室情報 |
2 | Base_Date | 基準日 | 2013-09-09 | 未設定はシステム日付 |
3 | Ward_Number | 病棟番号 | 01 | ※1 |
4 | Room_Number | 病室番号 | 101 | ※1 |
※1: 病室情報取得時には病棟番号、病室番号のどちらかを必須とします。
レスポンス一覧(病棟情報)
番号 | 項目名 | 内容 | 例 | 備考 |
---|---|---|---|---|
1 | Information_Date | 実施日 | 2013-09-12 | |
2 | Information_Time | 実施時間 | 13:10:42 | |
3 | Api_Result | 結果コード(ゼロ以外エラー) | 00 | |
4 | Api_Result_Message | エラーメッセージ | 処理終了 | |
5 | Ward_Configuration | 病棟情報(繰り返し50) | ||
5-1 | Start_Date | 設定の有効期間開始日 | 2013-03-01 | |
5-2 | End_Date | 設定の有効期間終了日 | 9999-12-31 | |
5-3 | Ward_Number | 病棟番号 | | |
5-3-1 | Label | 内容の名称 | 病棟番号 | |
5-3-2 | Data | 病棟番号 | 01 | |
5-4 | Ward_Name | 病棟名称 | ||
5-4-1 | Label | 内容の名称 | 病棟名称 | |
5-4-2 | Data | 病棟名 | 北病棟 | |
5-5 | Ward_Short_Name | 短縮病棟名称 | ||
5-5-1 | Label | 内容の名称 | 短縮病棟名 | |
5-5-2 | Data | 短縮病棟名称 | 北病棟 | |
5-6 | Ward_Type | 病棟種別 | ||
5-6-1 | Label | 内容の名称 | 病棟種別 | |
5-6-2 | Data | 病棟種別コード (01、02、03、04、05、06、08、09、10) | 08 | |
5-6-3 | Name | 病棟種別名称 (一般病棟、 精神病棟、 結核病棟、 療養病棟、 障害者施設等、 専門病院、 有床診療所、 有床診療所療養病床、 医療観察病棟) | 有床診療所 | |
5-7 | Department_Code | 診療科 | ||
5-7-1 | Label | 内容の名称 | ||
5-7-2 | Data | 診療科コード | ||
5-7-3 | Name | 診療科名称 | ||
5-8 | Specific_Hospital_Charge | 特定入院料 | ||
5-8-1 | Label | 内容の名称 | ||
5-8-2 | Data | 特定入院料コード | ||
5-8-3 | Name | 特定入院料の内容 | ||
5-9 | Hospital_Charge | 入院基本料 | | |
5-9-1 | Label | 内容の名称 | 入院基本料 | |
5-9-2 | Data | 入院基本料コード | 190097010 | |
5-9-3 | Name | 入院基本料の内容 | 有床診療所入院基本料1(14日以内) | |
5-10 | Additional_Hospital_Charge | 算定対象の入院料加算(システムで定められているものから選択した加算) (繰り返し20) | ||
5-10-1 | Label | 内容の名称 | ||
5-10-2 | Data | 入院加算コード | ||
5-10-3 | Name | 入院加算の内容 | ||
5-11 | User_Additional_Hospital_Charge | 算定対象の入院料加算(ユーザーが追加設定した加算) (繰り返し10) | ||
5-11-1 | Label | 内容の名称 | ||
5-11-2 | Data | 入院加算コード | ||
5-11-3 | Name | 入院加算の内容 | ||
5-12 | Over180days_Hospital_Stay_Charges | 選定入院料 | ||
5-12-1 | Label | 内容の名称 | 選定入院料 | |
5-12-2 | Calculation_Type | 負担計算 | ||
5-12-2-1 | Label | 内容の名称 | 負担計算 | |
5-12-2-2 | Data | 負担計算コード | 1 | |
5-12-2-3 | Name | 負担計算の内容 | 定率設定 | |
5-12-3 | Consumption_Tax | 消費税 | 変更 (2013-11-26) | |
5-12-3-1 | Label | 内容の名称 | 消費税 | |
5-12-3-2 | Data | 消費税コード | 0 | |
5-12-3-3 | Name | 消費税の有無 | なし | |
5-12-4 | Value_Per_Day | 定率設定 / 定額設定 / 一般点数単価 / 一般1日金額 | ||
5-12-4-1 | Label | 内容の名称 | 一般点数単価 | |
5-12-4-2 | Data | 一般点数単価 / 一般1日金額 | 10 | |
5-12-4-3 | Name | 単位(点 / 円) | 点 | |
5-12-5 | Value_Per_Day_Late_Elderly | 定率設定 / 定額設定 / 後期高齢者点数単価 / 後期高齢者1日金額 | ||
5-12-5-1 | Label | 内容の名称 | 後期高齢者点数単価 | |
5-12-5-2 | Data | 後期高齢者点数単価 / 後期高齢者1日金額 | 10 | |
5-12-5-3 | Name | 単位(点 / 円) | 点 | |
5-13 | Room_Number | 病室番号(繰り返し200) | ||
5-13-1 | Label | 内容の名称 | 病室番号 | |
5-13-2 | Data | 病棟に属する病室番号 | 101 |
レスポンス一覧(病室情報)
番号 | 項目名 | 内容 | 例 | 備考 |
---|---|---|---|---|
1 | Information_Date | 実施日 | 2013-09-12 | |
2 | Information_Time | 実施時間 | 13:13:16 | |
3 | Api_Result | 結果コード(ゼロ以外エラー) | 00 | |
4 | Api_Result_Message | エラーメッセージ | 処理終了 | |
5 | Room_Configuration | 病室情報(繰り返し200) | ||
5-1 | Start_Date | 設定の有効期間開始日 | 2013-03-01 | |
5-2 | End_Date | 設定の有効期間終了日 | 9999-12-31 | |
5-3 | Ward_Number | 病棟番号情報 | ||
5-3-1 | Label | 内容の名称 | 病棟番号 | |
5-3-2 | Data | 病棟番号 | 01 | |
5-4 | Ward_Name | 病棟名称情報 | ||
5-4-1 | Label | 内容の名称 | 病棟名称 | |
5-4-2 | Data | 病棟名称 | 北病棟 | |
5-5 | Room_Number | 病室番号情報 | ||
5-5-1 | Label | 内容の名称 | 病室番号 | |
5-5-2 | Data | 病室番号 | 101 | |
5-6 | Room_Type | 病室種別情報 | ||
5-6-1 | Label | 内容の名称 | 病室種別 | |
5-6-2 | Data | 病室種別コード (01、02、03、04、05、06、07、08、09、10、11、12、13) | 01 | |
5-6-3 | Name | 病室種別名称 (一般病室、 ICU、 CCU、 NICU、 リカバリ室、 感染症室、 ダミー室、 重症者加算部屋1、 重症者加算部屋2、 MFICU、 GCU、 無菌室、 精神科隔離病室) | 一般病室 | |
5-7 | Bed_Numbers | 収容人数情報 | ||
5-7-1 | Label | 内容の名称 | 収容人数 | |
5-7-2 | Data | 収容人数 | 4 | |
5-7-3 | Name | 単位(人) | 人 | |
5-8 | Room_Charge | 室料差額情報 | 変更 (2013-11-26) | |
5-8-1 | Label | 内容の名称 | ||
5-8-2 | Data | 室料差額 | ||
5-8-3 | Name | 単位(円) | ||
5-9 | Sex | 性別特定情報 | ||
5-9-1 | Label | 内容の名称 | ||
5-9-2 | Data | 性別特定コード (1、2、3) | ||
5-9-3 | Name | 性別特定名称 (男部屋、女部屋、男女混合) | ||
5-10 | Extension_Number | 内線番号情報 | ||
5-10-1 | Label | 内容の名称 | ||
5-10-2 | Data | 内線番号 | ||
5-10-3 | Name | 単位(番) | ||
5-11 | Department_Code | 診療科情報 | ||
5-11-1 | Label | 内容の名称 | ||
5-11-2 | Data | 診療科コード | ||
5-11-3 | Name | 診療科名称 | ||
5-12 | Specific_Hospital_Charge | 特定入院料情報 | ||
5-12-1 | Label | 内容の名称 | ||
5-12-2 | Data | 特定入院料コード | ||
5-12-3 | Name | 特定入院料名称 | ||
5-13 | Hospital_Charge | 入院基本料情報(療養病棟、有床診療所療養病床のみ) | ||
5-13-1 | Label | 内容の名称 | ||
5-13-2 | Data | 入院基本料コード | ||
5-13-3 | Name | 入院基本料名称 | ||
5-14 | Additional_Hospital_Charge | 算定対象の入院料加算(繰り返し12) | ||
5-14-1 | Label | 内容の名称 | ||
5-14-2 | Data | 入院加算コード | ||
5-14-3 | Name | 入院加算名称 |
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 -*-
#------ 病棟・病室情報返却
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/visitptlstv2")
# Request_Number :1 病棟情報
# Request_Number :2 病室情報
#
# 1.基準日 Base_Date (IMPLIED)
# 2.病棟番号 Ward_Number (IMPLIED)
# 3.病室番号 Room_Number (IMPLIED)
#
# REQUIRED : 必須 IMPLIED : 任意
#
BODY = <<EOF
<data>
<private_objects type="record">
<Request_Number type="string">1</Request_Number>
<Base_Date type="string">2013-09-09</Base_Date>
<Ward_Number type="string"></Ward_Number>
<Room_Number type="string"></Room_Number>
</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 | 病棟情報が取得できません |
51 | 病室情報が取得できません |
89 | 職員情報が取得できません |
医療機関情報が取得できません | |
システム日付が取得できません | |
患者番号構成情報が取得できません | |
グループ医療機関が不整合です。処理を終了して下さい | |
システム項目が設定できません | |
91 | リクエスト番号の指定に誤りがあります |
92 | 基準日は平成20年(2008年)4月1日以降を指定してください |
97 | 送信内容に誤りがあります |
98 | 送信内容の読込ができませんでした |
99 | ユーザIDが未登録です |
それ以外 | 返却情報の編集でエラーが発生しました |