トップ «前の日記(2010-11-02) 最新 次の日記(2010-11-06)» 編集

ORCA愉快日記

2004|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|10|11|12|
2012|01|02|09|
2013|04|

2010-11-04 ORCAの新APIを使って患者情報を取得してみた

_ [orca] ORCAの新APIを使って患者情報を取得してみた

従来はCLAIMやdbsインタフェースを使ってデータベースにアクセスする必要があったのですが、jma-receipt 4.5からはglserverとHTTPプロトコルを介してAPI呼出しが可能になりました(プログラム更新を行なって最新の状態にしておく必要あり)。現状ではまだまだ呼び出せるものが少ないのですが、簡単に呼び出せてコーディングが楽なのがいいですね。XMLの処理の方はちょっと面倒ですが。

将来的には、DB構造が変更された際にAPI互換性を保って抽象的にアクセスできるかどうかが気になりますね。ここが中途半端でDB構造変更のたびに修正が必要になるようだと、自分でSQL叩いたほうが早いということになりますから。いずれはAPIバージョンの定義とかもされるんでしょうか。

追記: 下記の内容はやや古くなっており、日医のサイトでjma-receipt 4.6に対応したAPIのサンプル等が公開されているので、そちらを参考にしたほうが良いかと思います。http://www.orca.med.or.jp/receipt/tec/api/patientget.rhtml

orca.med.or.jp - 日医標準レセプトソフト 新API
http://www.orca.med.or.jp/receipt/tec/api/index.rhtml
  
下記は、2010/11/5時点でまだスクリプトが掲載されていなかったので
患者情報を取得する、簡単なサンプルを作ってみました。
患者番号 00001の氏名を取得して表示します。
  
(患者番号/パスワード等はスクリプト中にハードコードしてあり
エラーハンドリング等は行なっていませんので、各自の環境に
合わせて設定してください。)
  
スクリプトダウンロード orca_api.rb
  
-----------------------------------------------------------------
#!/usr/bin/env ruby
  
# ORCA APIサンプル 患者氏名の取得
  
require 'uri'
require 'net/http'
require 'rexml/document'
  
Net::HTTP.version_1_1
  
ptid = '00001'
user = 'ormaster'
password = 'ormaster'
host = 'localhost'
port = '8000'
  
req = Net::HTTP::Get.new("/orca12/patientget?id=#{ptid}")
req.basic_auth(user, password)
  
Net::HTTP.start(host, port){|http|
  @res = http.request(req)
}
  
document = REXML::Document.new(@res.body)
puts document.elements['data/record/record/record[@name="Patient_Infomation"]/string[@name="WholeName"]'].text
-----------------------------------------------------------------

トップ «前の日記(2010-11-02) 最新 次の日記(2010-11-06)» 編集