受診日指定による来院患者一覧

メニュー

更新履歴

 2021-01-27  「レスポンス一覧(来院日一覧)」に項目を追加。

 2017-12-20  「レスポンス一覧」に項目を追加。

 2017-04-26  「レスポンス一覧(来院日一覧)」に項目を追加。
        受診日指定の返却情報の最大件数を500件から1000件に変更。

 2014-06-23  「エラーメッセージ一覧」を追加。


概要

POSTメソッドによる来院患者一覧の取得を行います。

日レセ Ver.4.7.0[第17回パッチ適用] 以降

リクエストおよびレスポンスデータはxml2形式になります。

 

テスト方法

  1. 参考提供されている sample_visitpt_v2.rb 内の変数HOST等を接続環境に合わせます。
  2. sample_visitpt_v2.rb 内の来院日付等を接続先の日レセの環境に合わせます。
  3. ruby sample_visitpt_v2.rb により接続。

 

リクエスト(POSTリクエスト)サンプル

POST : /api01rv2/visitptlstv2

Content-Type: application/xml

application/xml の場合の文字コードは UTF-8 とします。

今までのAPIではURLに引数(class)を指定することで機能の選択を行っていましたが、このAPIでは引数を受け取らない仕様に変更となりました。
その代わりに、リクエストデータ内に「Request_Number」の項目を追加し、「Request_Number」にリクエスト番号を指定することで機能の選択を行います。


<data>
  <visitptlstreq type="record">
    <Request_Number type="string">01</Request_Number>
    <Visit_Date type="string">2003-01-14</Visit_Date>
    <Department_Code type="string">01</Department_Code>
  </visitptlstreq>
</data>  

 

処理概要

来院患者一覧リクエストで受診日を指定することにより来院患者の情報を返却します。
機能として以下の2つを提供します。

  1. 受診日指定による来院患者の返却
  2. 受診月、診療科指定による来院患者の返却

処理詳細

  1. 基準日の妥当性チェック(未設定の場合は、システム日付を設定)
  2. 診療科の妥当性チェック
  3. 返却情報は、受診日指定の場合は最大500件。(2017-04-26 パッチ適用以降1000件)
    受診月指定の場合は最大2000件。

 

レスポンスサンプル(来院日一覧)

<xmlio2>
<visitptlst01res type="record">
<Information_Date type="string">2013-09-06</Information_Date>
<Information_Time type="string">13:29:09</Information_Time>
<Api_Result type="string">00</Api_Result>
<Api_Result_Message type="string">処理終了</Api_Result_Message>
<Reskey type="string">Medical Info</Reskey>
<Visit_Date type="string">2003-01-14</Visit_Date>
<Visit_List_Information type="array">
<Visit_List_Information_child type="record">
<Patient_Information type="record">
<Patient_ID type="string">00012</Patient_ID>
<WholeName type="string">日医 太郎</WholeName>
<WholeName_inKana type="string">ニチイ タロウ</WholeName_inKana>
<BirthDate type="string">1975-01-01</BirthDate>
<Sex type="string">1</Sex>
</Patient_Information>
<Department_Code type="string">01</Department_Code>
<Department_Name type="string">内科</Department_Name>
<Physician_Code type="string">10001</Physician_Code>
<Physician_WholeName type="string">日本 一</Physician_WholeName>
<Voucher_Number type="string">0020672</Voucher_Number>
<Sequential_Number type="string">1</Sequential_Number>
<Insurance_Combination_Number type="string">0003</Insurance_Combination_Number>
<HealthInsurance_Information type="record">
<InsuranceProvider_Class type="string">060</InsuranceProvider_Class>
<InsuranceProvider_WholeName type="string">国保</InsuranceProvider_WholeName>
<InsuranceProvider_Number type="string">138057</InsuranceProvider_Number>
<HealthInsuredPerson_Symbol type="string">01</HealthInsuredPerson_Symbol>
<HealthInsuredPerson_Number type="string">12345</HealthInsuredPerson_Number>
<PublicInsurance_Information type="array">
<PublicInsurance_Information_child type="record">
<PublicInsurance_Class type="string">010</PublicInsurance_Class>
<PublicInsurance_Name type="string">感37の2</PublicInsurance_Name>
<PublicInsurer_Number type="string">10131142</PublicInsurer_Number>
<PublicInsuredPerson_Number type="string">1234566</PublicInsuredPerson_Number>
</PublicInsurance_Information_child>
</PublicInsurance_Information>
</HealthInsurance_Information>
</Visit_List_Information_child>
</Visit_List_Information>
</visitptlst01res>
</xmlio2>

 

レスポンスサンプル(来院年月一覧)

<xmlio2>
<visitptlst02res type="record">
<Information_Date type="string">2013-09-06</Information_Date>
<Information_Time type="string">13:45:09</Information_Time>
<Api_Result type="string">00</Api_Result>
<Api_Result_Message type="string">処理終了</Api_Result_Message>
<Reskey type="string">Medical Info</Reskey>
<Visit_Date type="string">2003-01</Visit_Date>
<Department_Code type="string">01</Department_Code>
<Department_Name type="string">内科</Department_Name>
<Visit_List_Information type="array">
<Visit_List_Information_child type="record">
<Patient_Information type="record">
<Patient_ID type="string">00012</Patient_ID>
<WholeName type="string">日医 太郎</WholeName>
<WholeName_inKana type="string">ニチイ タロウ</WholeName_inKana>
<BirthDate type="string">1975-01-01</BirthDate>
<Sex type="string">1</Sex>
</Patient_Information>
<Visit_Calendar type="string">0000000100000001000000000000000</Visit_Calendar>
</Visit_List_Information_child>
</Visit_List_Information>
</visitptlst02res>
</xmlio2>

 

リクエスト一覧

番号項目名内容備考
1
Request_Number
リクエスト番号
01
01: 来院日の受診履歴取得
02: 来院年月の受診履歴取得
2
Visit_Date来院日付2003-01-14未設定はシステム日付
※2
3
Department_Code診療科コード ※1
(01:内科)
01class=02のみ必須
※3

※1:システム管理マスタの診療科目情報の診療科コードを参照して下さい。

※2:来院年月指定時は、日のチェックは行いません。暦日チェックは日=1で行います。

※3:指定された診療科を対象とします。


レスポンス一覧(来院日一覧)

番号項目名内容備考
1Information_Date実施日2013-09-06
 
2Information_Time実施時間13:29:09
 
3Api_Result結果コード(ゼロ以外エラー)00 
4Api_Result_Messageエラーメッセージ処理終了 
5Reskey Medical Info
 
6Visit_Date
来院日付
2003-01-14
 
7Visit_List_Information
来院一覧情報 (繰り返し 500) 

(2017-04-26 パッチ適用以降 繰り返し1000)

7-1Patient_Information
患者情報
  
7-1-1Patient_ID
患者番号
00012
 
7-1-2WholeName
漢字氏名
日医 太郎
 
7-1-3WholeName_inKana
カナ氏名
ニチイ タロウ
 
7-1-4BirthDate
生年月日
1975-01-01
 
7-1-5Sex
性別
(1:男、2:女)
1
 
7-2Department_Code
診療科コード ※1
(01:内科)
01 
7-3Department_Name
診療科名称
内科
 
7-4Physician_Code
ドクターコード
10001
 
7-5 Physician_WholeName
ドクター名
日本 一
 
7-6
Voucher_Number
伝票番号
0020672
 
7-7Sequential_Number
連番
1
診療科毎の同日連番
7-8Insurance_Combination_Number
保険組合せ番号
0003
 
7-9HealthInsurance_Information保険組合せ情報  
7-9-1InsuranceProvider_Class保険の種類060 
7-9-2InsuranceProvider_WholeName保険の制度名称
国保
 
7-9-3InsuranceProvider_Number保険者番号
138057
 
7-9-4HealthInsuredPerson_Symbol記号01 
7-9-5HealthInsuredPerson_Number番号12345 
7-9-6
HealthInsuredPerson_Branch_Number
枝番
00
追加
(2021-01-27)
7-9-7PublicInsurance_Information公費情報(繰り返し 4)  
7-9-7-1PublicInsurance_Class公費の種類010 
7-9-7-2PublicInsurance_Name公費の制度名称感37の2 
7-9-7-3PublicInsurer_Number負担者番号10131142 
7-9-7-4PublicInsuredPerson_Number受給者番号1234566 
7-10
Update_Date更新日付
 追加
(2017-04-26)
7-11
Update_Time
更新時間
 追加
(2017-04-26)
7-12
Patient_Update_Date
患者情報更新日
 追加
(2017-12-20)
7-13
Patient_Update_Time
患者情報更新時間 追加
(2017-12-20)

※来院日付の受診履歴テーブル内容を伝票番号順に編集します。
 包括保険(9999)は対象外となります。

※伝票番号は受診履歴を削除後、再度登録した場合は新しい番号となります。
 また、会計照会・外来まとめで一括して入力した場合も伝票番号を一括で採番します。

※500件以上存在した時はメッセージを返却します。(2017-04-26 パッチ適用以降1000件)

※1:システム管理マスタの診療科目情報の診療科コードを参照して下さい。

 

レスポンス一覧(来院年月一覧)

番号項目名内容備考
1Information_Date実施日2013-09-06
 
2Information_Time実施時間13:45:09
 
3Api_Result結果コード(ゼロ以外エラー)00 
4Api_Result_Messageエラーメッセージ処理終了 
5Reskey Medical Info
 
6Visit_Date
来院日付
2003-01
 
7
Department_Code
診療科コード ※1
(01:内科)
01
 
8
Department_Name
診療科名称
内科
 
9
Visit_List_Information
来院一覧情報 (繰り返し 2000)  
9-1
Patient_Information
患者情報
  
9-1-1Patient_ID
患者番号
00012
 
9-1-2WholeName
漢字氏名
日医 太郎
 
9-1-3WholeName_inKana
カナ氏名
ニチイ タロウ
 
9-1-4BirthDate
生年月日
1975-01-01
 
9-1-5Sex
性別
(1:男、2:女)
1
 
9-2
Visit_Calendar
来院日カレンダー
0000000100000001000000000000000
※2

※来院年月・診療科から受診履歴を決定し、患者番号順に来院日を編集します。
 包括保険(9999)は対象外となります。

※2000件以上存在した時はメッセージを返却します。

※1:システム管理マスタの診療科目情報の診療科コードを参照して下さい。

※2:来院した日に1を、以外に0を編集します。
   例:(2日・4日に来院があれば 0101000000000000000000000000000)

 

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 -*- 

 

sample_visitpt_v2.rb 

#!/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 :01 来院日の受診履歴取得
# Request_Number :02 来院年月の受診履歴取得
#
# 1.来院日付 Visit_Date (IMPLIED)
# 2.診療科コード Department_Code (REQUIRED class=02のみ)
#
# REQUIRED : 必須 IMPLIED : 任意
#
BODY = <<EOF
<data>
<visitptlstreq type="record">
<Request_Number type="string">01</Request_Number>
<Visit_Date type="string">2003-01-14</Visit_Date>
<Department_Code type="string">01</Department_Code>
</visitptlstreq>
</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 対象が500件以上存在します。(2017-04-26 パッチ適用以降1000件)
 13 対象がありません
 14 対象が2000件以上存在します。
 K1 診療日を設定しました
 89 職員情報が取得できません
 医療機関情報が取得できません
 システム日付が取得できません
 患者番号構成情報が取得できません
 グループ医療機関が不整合です。処理を終了して下さい。
 システム項目が設定できません
 90 他端末使用中
 91 処理区分未設定
 97 送信内容に誤りがあります。
 98 送信内容の読込ができませんでした
 99 ユーザID未登録。

 

 

 

このページのトップへ