レセコンソフト ORCA を巡るあれこれから ORCA Plus・OpenOcean へ

最近 ORCA (日本医師会がソースコードを配布・公開しているレセコンソフト)を触る機会が多かったので、ついでで画面っぽいものをつくってみる。 従来の GTK を使った画面構成 GTK というのは、Linux で GUI を使うときによく用いられるライブラリです。 えーと、 ORCA の構成がわかりにくいのは、この画面をサーバー側でつくってしまうから(正確には .xml に直してクライアントに送る)。 だから、クライアント側で画面構成を変更するというのは原則できない。また、この画面は COBOLで書かれた ORCA 本体の各機能と深く結びついている(COBOL で書かれた部分が一種のコントローラーにように振舞うわけですね)。 一般的にビュー(図のような画面、UI)とコントローラーが分離できていないと、大規模なシステムには不向きだとされている。 クリニックあたりで使っている分にはよかったんでしょうけど、という話かな。 (『 ORCA Plus というレセコンユーティリティソフトをつくっていて気がついたんだが 』あたりもご参考に) ところで、ORCA に関しては一家言持っている方も多いようで、某 SNS で元になった記事を公開したときは、みなさんあれこれコメントして色々教えてくれました。 「建て増し建て増しできているから、そろそろフレームワークを見直した方がいい」みたいな意見は多かったですね。 感心したのは「開発当初の基本設計思想は、クライアント・サーバシステムでもなく MVC(モデル・ビュー・コントローラ)でもなく 汎用機アーキテクチャ だった」というコメント。各種言語のウエブアプリ系のフレームワークが洗練されてきた今から見ると、全体の構成が「あれ?」というふうに感じたりもしますが、開発当初の状況を考慮すると「なるほどなー」という感じで納得しました。 銀行の勘定系システムや(電子化される前の)定期券発行システムみたいなノリで開発されていたわけですね。 フレームワークで一部 Web アプリ化する では、適当なフレームワークを持ってきて最も単純な CRUD 操作を試してみるとどうなるか? 対象にしたのは、public スキーマの tbl_ptinf というテーブル。おそらくここが患者さんの基本情報を永続化しているテーブルだと...