処方のインポート
病名のインポートとやり方はほぼ一緒で、処方のインポート専用の別DBファイル「処方取得」を用意して一旦そこにデータを取込みます。
少し違うのは、病名は列挙して全部「患者登録」に送りましたが、ここではインポートされたデータ一覧を表示し、そこで必要な処方だけを選択して「患者登録」に送るようにします。
また、普通にインポートすると非常にたくさんのデータが帰ってきてしまいますので、SELECT文に"DISTINCT"と書き加えることにより、重複データを取り除きます。
処方は診療行為情報テーブル"tbl_sryact"に診療行為コード"srycd"で記録されています。
診療行為コードを診療行為名称に変換するのには、「診療行為ルックアップ」とのリレーションを使うことにします。
なお、病名のインポートと同様、"ptid"を検索条件としてインポートしています。
新規データベース
「処方取得」を作成し、まずフィールド定義。
診療行為情報テーブル"tbl_sryact"では、繰り返し(5回)が使われていますので、これ以降の記述で「1〜5」と記述してあるところは同種のフィールドを5個用意するという意味です。
(1)No. <数字フィールド> 検索対象の患者番号を入力するフィールド。
(2)ptid <数字フィールド> 患者登録DBからルックアップで自動入力。
(3)診療行為1〜5 "tbl_sryact"."srycd1"〜"tbl_sryact"."srycd5"を取り込みます。
(4)数量1〜5 "tbl_sryact"."srysuryo1〜"tbl_sryact"."srysuryo5"を取り込みます。
(5)クエリー <グローバル・フィールド> SQL文の共通部分を格納する。
SELECT DISTINCT "tbl_sryact"."ptid", "tbl_sryact"."srykbn", "tbl_sryact"."srycd1", "tbl_sryact"."srycd2", "tbl_sryact"."srycd3", "tbl_sryact"."srycd4", "tbl_sryact"."srycd5", "tbl_sryact"."srysuryo1", "tbl_sryact"."srysuryo2", "tbl_sryact"."srysuryo3", "tbl_sryact"."srysuryo4", "tbl_sryact"."srysuryo5"
FROM "tbl_sryact"
WHERE "tbl_sryact"."srykbn" BETWEEN '21' AND '29'
AND "tbl_sryact"."ptid" =
(6)クエリー全文 <計算フィールド>
=クエリー & ptid
(7)単位名称1〜5 「診療行為ルックアップ」からルックアップ
(8)診療行為名称1〜5 「診療行為ルックアップ」からルックアップ
(9)診療行為数量単位1〜5 <計算(テキスト)フィールド>
=If(診療行為1〜5<>"●",If(Left(診療行為1〜5,1)=0,診療行為名称1〜5 & "■",診療行為名称1〜5 & "" & 数量1〜5 & 単位名称1〜5),"")
( 下図のように●には半角スペースを9個、 ■には改行マークを入れてください。)
この計算式では、診療行為名称と数量と単位名称を連結した文字列を作っています。診療行為コードの最初の文字が"0"の場合は服用方法が記録されているとみなして、その後に改行を挿入しています。
(10)処方連結 <計算(テキスト)フィールド>
=Trim(診療行為数量単位1 & " " & 診療行為数量単位2 & " "
& 診療行為数量単位3 & " " & 診療行為数量単位4 & " "
& 診療行為数量単位5)
この計算式では、「診療行為数量単位1〜5」を連結しています。
(11)処方出力用 <グローバル(テキスト)フィールド>
選択した処方を貼り付けて格納しておくためのフィールドです。この内容を「患者登録に」送ります。
フィールド定義は以上。
あとは病名取得と同様に、データ・インポートのスクリプトを作成して、「患者登録」から実行できるように設定してみてください
患者登録のページにデータ・インポートのスクリーン・ショットを掲載しましたので、参照してください。
HOME TOP↑ ORCAのページのTOP