API 旧姓履歴情報取得
メニュー
更新履歴
2021-11-24
新規掲載
概要
POSTメソッドによる旧姓履歴情報の取得を行います。
リクエストおよびレスポンスデータはxml2形式になります。
テスト方法
- 参考提供されている ssample_patientlst8_v2.rb 内の変数HOST等を接続環境に合わせます。
- sample_patientlst8_v2.rb 内の患者番号等を接続先の日レセの環境に合わせます。
- ruby ssample_patientlst8_v2.rbにより接続。
リクエスト(POSTリクエスト)サンプル
POST : /api01rv2/patientlst8v2
Content-Type : application/xml
application/xml の場合の文字コードは UTF-8 とします。
<data>
<patientlst8req type="record">
<Request_Number type="string">01</Request_Number>
<Patient_ID type="string">216</Patient_ID>
</patientlst8req>
</data>
処理概要
患者番号を指定することにより、その患者の旧姓の履歴情報の取得を可能とする。
処理詳細
- 送信されたユーザID(職員情報)の妥当性チェック
- 送信された患者番号による患者の存在チェック
レスポンスサンプル
<xmlio2>
<patientlst8res type="record">
<Information_Date type="string">2021-11-12</Information_Date>
<Information_Time type="string">13:36:47</Information_Time>
<Api_Result type="string">000</Api_Result>
<Api_Result_Message type="string">処理終了</Api_Result_Message>
<Reskey type="string">Patient Info</Reskey>
<Patient_Information type="record">
<Patient_ID type="string">00216</Patient_ID>
<WholeName type="string">日医 有資格</WholeName>
<WholeName_inKana type="string">ニチイ ユウシカク</WholeName_inKana>
<NickName type="string">有ちゃん</NickName>
<BirthDate type="string">1990-08-10</BirthDate>
<Sex type="string">1</Sex>
</Patient_Information>
<Former_Name_Information type="array">
<Former_Name_Information_child type="record">
<ChangeDate type="string">2021-11-12</ChangeDate>
<WholeName type="string">日医 無資格</WholeName>
<WholeName_inKana type="string">ニチイ ムシカク</WholeName_inKana>
</Former_Name_Information_child>
<Former_Name_Information_child type="record">
<ChangeDate type="string">2021-11-13</ChangeDate>
<WholeName type="string">日医 有有資格</WholeName>
<WholeName_inKana type="string">ニチイ ユウユウシカク</WholeName_inKana>
<NickName type="string">有有ちゃん</NickName>
</Former_Name_Information_child>
</Former_Name_Information>
</patientlst8res>
</xmlio2>
リクエスト一覧
番号 | 項目名 | 内容 | 例 | 備考 |
---|---|---|---|---|
1 | Request_Number | リクエスト番号 | 01 | 必須 |
2 | Patient_ID | 患者番号 | 00001 | 必須 |
レスポンス一覧
番号 | 項目名 | 内容 | 例 | 備考 |
---|---|---|---|---|
1 | Information_Date | 実施日 | 2021-11-12 | |
2 | Information_Time | 実施時間 | 13:36:47 | |
3 | Api_Result | 結果コード(ゼロ以外エラー) | 000 | ※1 |
4 | Api_Result_Message | 処理メッセージ | ||
5 | Reskey | | Patient Info | |
6 | Patient_Information | 患者情報 | ||
6-1 | Patient_ID | 患者番号 | 00001 | |
6-2 | WholeName | 患者漢字氏名 | 日医 有資格 | |
6-3 | WholeName_inKana | 患者カナ氏名 | ニチイ ユウシカク | |
6-4 | NickName | 通称名 | 有ちゃん | |
6-5 | BirthDate | 生年月日 | 1990-08-10 | |
6-6 | Sex | 性別 (1:男性、 2:女性) | 1 | |
7 | Former_Name_Information | 旧姓履歴情報 | ※2 | |
7-1 | ChangeDate | 変更年月日 | 2021-11-12 | |
7-2 | WholeName | 患者漢字氏名 | 日医 無資格 | |
7-3 | WholeName_inKana | 患者カナ氏名 | ニチイ ムシカク | |
7-4 | NickName | 通称名 | 無ちゃん |
※1 正常終了:【000】、エラーあり:【EXX】
※2 旧姓履歴情報を変更年月日の昇順に最大20件返却します。
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
#!/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/patientlst8v2?class=01")
# class :01
#
#
BODY = <<EOF
<data>
<patientlst8req type="record">
<Request_Number type="string">01</Request_Number>
<Patient_ID type="string">216</Patient_ID>
</patientlst8req>
</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
}
エラーメッセージ一覧
エラーコード | エラーメッセージ |
---|---|
01 | 患者番号が未設定です |
10 | 患者番号に該当する患者が存在しません |
11 | 旧姓履歴はありませんでした。 |
12 | 旧姓履歴が20件以上存在します。 |
89 | 職員情報が取得できません |
医療機関情報が取得できません | |
システム日付が取得できません | |
患者番号構成情報が取得できません | |
グループ医療機関が不整合です。処理を終了して下さい | |
システム項目が設定できません | |
90 | 他端末使用中 |
91 | 処理区分未設定 |
97 | 送信内容に誤りがあります |
98 | 送信内容の読込ができませんでした |
99 | ユーザID未登録 |