三好クリニック 青山・表参道

内科・循環器・高血圧・不整脈

カルテソフトの更新が完了しました

3月に古いiMacが壊れた後から、新しいiMacでも動くようにカルテの整備を進めてきました。 それが今日でようやくある程度診察に支障ないぐらいのスピードで動くようになり、今日、土曜日の診療から使用開始しました。 まだまだ使っていくうちに、不具合が出てきて修正が必要になってくるのではないかなと思っているのですが、今日は幸い患者さんが少なかったので、細かな調整をしながら、なんとか混乱なく診療が終わりました。
今までの診療はMacOX-X Mountain Lion (version 10.8)で動かしていたのですが。今のMacOSは Yosemite (version 10.10)で2世代前のOSを使っていたのでした・・。 Macは新しいハードウエアーに古いOSをインストールすることができないので、自然と新しいMacを購入するとYosemiteになってしまうのですが、そうするとすごく入力に時間がかかってしまって、診療に支障が出るため古いOSで診療をしていたのでした。 でも今の古いMacもいつ壊れるともわかりませんので、ちょっと頑張って、システムを更新したのでした。
でも、患者さんにとってはどちらでもあまり変わりないのですけどね・・・。

今回みたいにMacが突然壊れたりした際に新しいコンピューターに入れ替えが出来ず、実はヒヤヒヤしながら診療をしていたので良い機会だったと思います。 
詳細はセキュリティー上の問題もあるので言えませんが、三好クリニックでは処方をしたり、会計をしたりするシステムは
postgresqlというデーターベース操作のためのとても一般的な通信プロトコールを使っています。 今までは既製の製品版のソフトウエアーをApplescriptというmacの操作を自動化するプロトコール(GUI scripting)を使って操作していたのですが、Yosemiteになってからウインドーの操作一つ一つが遅くなったため、スムーズな診療のためにどうしても、GUI scriptingを介さないでpostgresqlを直接操作する必要が出てきたのでした。このブログは患者さん向けに書いているつもりなので、ほとんどの方は全く興味がないと思いますが、やっぱり同じことをされようとされる方もおられるかもしれないので、ちょっと記載しておきます。

興味のない方はこれ以下は読む価値なしです。

いわゆる
SQLプロトコールをまずは知ってもらわないといけないのですが、SELECT * FROM table WHERE date=‘20150424’; といったコマンドを打つことで、高速にデータベースサーバにアクセスして情報を取り出すことができます。 今までもこのSQLを使っていたのですが、主にTerminalというUnixの文字ベースのコマンドを打ち込むアプリケーションを介して行っていました。 実はこれがとっても起動に時間がかかったり、反応が不安定だったりして、挙動が怪しかったので今回はApplescript上でそのままdo shell scriptコマンドを使って操作することにしました。
psqlは対話形式で操作してゆくので、自動化するのはちょっと難しく、まずLog inする操作自体を自動化する必要がありました。 そちらは、.pgpassファイルにパスワードを記載することで、自動的にログインさせることができました。
もう一つの障壁は、terminalではpsqlとコマンドを打てば動くのですが(パスが通っているので)、Applescript上でのdo shell scriptではpathが通っていないので、アプリケーションの絶対パスを調査する必要があります。 そこで、whichコマンドを使って。
set pqsl_pas to do shell script "which /opt/local/lib/*/bin/psql”
といった具合に、大体の場所にあたりをつけて、絶対パスを取り出すことにしました。 これで、作業環境の違うMacの上で、psqlのバージョンが異なっていてpathが微妙に異なっていても大丈夫になります。
psqlはすいません、もともとMacOSには入っていないので、Xcodeをインストールしてcommand line toolをインストールした状態え、MacPortを使ってpsqlをインストールしないと動きません。
そうやって環境を整えると、

do shell script "/opt/local/bin/psql -h server.com -U user -d databasetable -q SELECT * FROM table WHERE date=‘20150425’;"
といったコマンドをアップルスクリプト上で動かすと、データーを直接取り出すことが出来、以前の診療履歴や、処方や、検査項目などを抜き出すことができます。
これをうまくアップルスクリプト上でハンドルすることで、ファイルメーカーで作られたカルテと、レセプトコンピューターと、オーダーシステムを連動することができるわけです。 ちなみにカルテ全体を見渡すために、私のクリニックではFileMaker php-APIを用いて、閲覧は主に、safariを使って今までの診療録全体を見渡したり、検索をかけたりすることにしています。 そうすることで視認性が良くなりますし、iPadなどで簡単に情報にアクセスすることができるのでiPadの正規アプリ、FileMaker goを使うより、利便性が良いのです。 とにかく簡単に直感的に動くことは、診療のクオリティーにも影響するのでとても大事です。
正直、3年前には諦めていたことだったので、このpsqlApplescript内で動いた時には、一人で思わずガッツポーズしてしまいました。