SSブログ

医療文書作成ソフトTheご紹介12_5.6.1について [FileMaker]

いつものブログ内容とは異なりますが、ブログタイトルにあるFileMakerに関するお知らせです。Theご紹介は医療文書作成用のファイルメーカーデータベースです。今回、FileMaker Pro 12〜14用のTheご紹介12_5.6.1をリリースしました。CD-R版/USBメモリ版があります。近日中にWeb版もリリース予定です。

詳しくは MedFiles Integrated をご覧ください。


Theご紹介7_5.6.1およびTheご紹介12_5.6.1(CD-R版/USBメモリ版)をにリリースしました 2015/08/26
Theご紹介12_5.6.1は、FileMaker Pro 7〜11用のTheご紹介7_5.6.1をFileMaker Pro 12〜14用に変換したものです。今回のバージョンからCD-R版とUSBメモリ版を用意しました。Web版も出す予定です。

 注1:新版のマニュアルは付属していません。同封した旧版のManual_7を参考にしてください。
 注2:生命保険の入院証明書はWeb版のバージョン7_5.4からは改定していませんのでご注意ください。


Web版のTheご紹介7_5.4からの改定点は以下の通りです。
●書式の改定と追加:
 医師意見書
 訪問介護指示書(別紙様式16)
 精神科訪問介護指示書(別紙様式17)
 特別訪問介護指示書(別紙様式18)
 地域包括ケア病棟入院診療計画書(別紙様式7)
 褥瘡対策に関する診療計画書(別紙3:日本褥瘡学会 DESIGN-R 対応 2013.8.30)
 輸血同意書(別紙様式26)
 血漿成分製剤輸注同意書(別紙様式20)
●入院診療計画書の改定
 入院診療計画書に特別な栄養管理の必要性と地域包括ケア病棟入院料算定用項目を追加
●医療要否意見書の改定
●主治医意見書
 主治医意見書(医師会)と主治医意見書を入れ替えるボタンを新設した。
 主治医意見書(医師会)の不具合修正。
●主治医意見書、医師意見書
 A4両面印刷できるように、半面づつ印刷するように仕様変更した。
●診療情報提供書:自由記載
 表題(紹介目的 主訴 既往歴 家族歴 嗜好 症状経過、検査結果および治療経過 現在の処方)だけをゴシック、明朝に変更できるボタンを新設した。自由書式と様式12-2を入れ替えるボタンを新設した。
●テキストクリップ:
 認知症高齢者の日常生活自立度の判定基準表(平成5年10月26日 老健第135号 厚生省老人保健福祉局長通知)を追加
●処方せんの改定
 処方箋様式第二号の改正に準拠:2012/04/01の処方せん様式第二号の改正に準拠した。
 「高一」と「高二」の自動判別 :平成26年4月改定により、平成26年4月1日以降に70歳になる被保険者(誕生日が昭和19年4月2日以降の方)については、70歳〜74歳のあいだ療養に係る一部負担金等の割合が2割になった。「高齢一」ボタンをクリックしたとき、負担区分が自動的に「高一」か「高二」に設定される。
●テキストクリップ:
 認知症高齢者の日常生活自立度の判定基準表(平成5年10月26日 老健第135号 厚生省老人保健福祉局長通知)を追加。

定型文書の番号に○をつける [FileMaker]

定型文書をデータベース化したい場合、定型文書の番号に○を付けたい場合がある。そして○をつけた項目もデータとしてリストしておきたい。FileMakerでこのような○をつける定型文書(例として質問数15までの質問表)を作成する方法を示す。
------------------------------------------------------------------------------
[テーブル]
設定テーブル  フィールドとして質問番号、質問内容
質問表テーブル フィールドは下記
 設定のIDと質問表のIDをXリレーションさせる
        
[質問表のフィールド]
質問表       数字 15繰り返し データの書式:論理値 0以外の場合 ○ 
質問表_○項目    数字 15繰り返し
質問表_○項目リスト 計算(数字) = List ( 質問表_○項目 )

[レイアウト]
□アクティブ時にフィールドのフレームを表示 チェックをはずす

[スクリプト] 丸をつける
フィールド設定 [ 質問表::質問表 [ LeftValues ( Get ( スクリプト引数 ) ; 1 ) ;
 Case ( IsEmpty ( 質問表::質問表 ) or 質問表::質問表 = 0 ; 1 ; 0 ) ]
フィールド設定 [ 質問表::質問表_○項目 [ LeftValues ( Get ( スクリプト引数 ) ; 1 ) ;
 Case ( IsEmpty ( 質問表::質問表 ) or 質問表::質問表 = 0 ;
Substitute ( RightValues ( Get ( スクリプト引数 ) ; 1 ) ; "¶" ; "" ) ; "" )

[透明ボタン]
スクリプト「丸をつける」 引数 1¶食事1〜14¶金銭管理5 ( 繰り返し数¶質問項目)
-------------------------------------------------------------------------------
[解説]
1レコードからなる設定テーブルで質問番号と質問内容を入力する。設定テーブルと質問表テーブルはXリレーションで質問表テーブルのすべてのレコードに反映する。

フィールド「質問表」は数字フィールドの繰り返しで、書式設定で「論理値」をえらび、0を空欄、0以外を○にする。すると、たとえば繰り返し位置3に1を入力すると、そこに○がつく。○は14ポイントにしたが、もっと大きいポイントにすれば大きくなる。

「設定::質問番号」の上に「質問表」を重ねて置く。繰り返しフィールドなので、1〜5、6〜9のように分けて表示することができる。そして表示を2〜2は1行、3〜5は2行などのように配置すると、不定の高さの行表示にも対応可能である。

「質問表」の上に透明ボタン(0ポイントの□)を置き、スクリプト「丸をつける」を実行させる。各ボタンには、スクリプトパラメーターとして、「1¶食事1」から「14¶金銭管理5」を設定する。前方が繰り返し番号、後方が質問項目番号である。

スクリプトの内容
 各ボタンに設定されたスクリプトパラメーターのうち、LeftValues ( Get ( スクリプト引数 ) ; 1 )で繰り返し番号を取得、Substitute ( RightValues ( Get ( スクリプト引数 ) ; 1 ) ; "¶" ; "" )で質問項目番号を取得する。
 ボタンが押されると、「質問表」のその繰り返し番号のところに1を入力する(1が入っている場合は0にする)。1が入力されると○が表示される(0の場合は○が消える)。と同時に、「質問表_○項目」のその繰り返し番号のところに質問項目番号を入力する。

「質問表_○項目リスト」で「質問表_○項目」に入った項目をリストアップする。

[サンプルファイル]
maru.fp7 (ZIP圧縮: 16_maru.zip)
http://www001.upp.so-net.ne.jp/MedFiles/samples.html

通院日に○をつけるスクリプトとおまけのモズ [FileMaker]

6月23日(土)に札幌市生涯学習総合センター「ちえりあ」で開催されたFM-Hokkaidoのユーザーミーティングで発表したファイルメーカーチップスのうち、「スクリプト1つで1ヶ月分の通院日に○をつける」について解説する。該当する日にちをクリックすると○が付いたり消えたりするスクリプトで、1つのスクリプトで31日分のボタンを作成することができる。理論的には何ヶ月分でも1つのスクリプトで実行可能だ。

【方法の骨子】
31日分の繰り返しフィールドを2つ作る。一方に日付と同じ繰り返し数のところに0または1を入れ(理論値で1の時に○を表示する)、他方に日付を入れるスクリプトを作る。各日付上に□ボタンを置き、引数として日付を入れておく。

【方法の内容】 テーブル
設定、通院日  日付表示:設定のIDと通院日のIDがXリレーション

フィールド
通院日   数字 31繰り返し データの書式:論理値 0以外の場合 ○ 
実通院日  数字 31繰り返し
実通院日2 計算(数字) = List ( 実通院日 )
通院日数  計算(数字) =Count ( 実通院日 )

レイアウト
□アクティブ時にフィールドのフレームを表示 チェックをはずす

スクリプト 通院日をチェックする
フィールド設定 [ 通院日: :通院日 [Get ( スクリプト引数 ) ] ;
 Case ( IsEmpty ( 通院日: :通院日 ) or 通院日: :通院日 = 0 ; 1 ; 0 ) ]
フィールド設定 [ 通院日: :実通院日 [Get ( スクリプト引数 ) ] ;
 Case ( IsEmpty ( 通院日: :実通院日 ) or 通院日: :実通院日 = 0 ; Get ( スクリプト引数 ) ; "" )

ボタン□
スクリプト「通院日をチェックする」 引数 1〜31 ( 繰り返し数)

【サンプルファイル】
サンプルファイル 通院日.fp7(ZIP圧縮: 15_tuinbi.zip)をアップしておきますのでお試しください。
http://www001.upp.so-net.ne.jp/MedFiles/samples.html

【おまけ】
7月10日(火)奥さんが美瑛の農道でKOOLPIX P90で撮影した鳥さんたちです(トリミングあり)。
●ノビタキ♂
DSCN1816-2.jpg

DSCN1821-2.jpg
●ホオジロ
DSCN1818-2.jpg
●キジバト
DSCN1819-2.jpg
●モズ♂
DSCN1828-2.jpg

DSCN1830-2.jpg

七夕の空とチェックマークでチェックする(天文・FileMaker) [FileMaker]

7月7日(土)夜、七夕なので織姫と彦星でも撮ってみよう。日中は晴れていたが、20時頃外に出てみると雲っていた。雲のない部分もあるので、時々チェックしていると、22時頃から天頂付近が晴れてきた。織姫と彦星が見えている。街灯を避けて、忠別川河川敷に降りた。だが、月齢17.5の月光と雲のため撮影条件は不良だ。ポータブル赤道儀CD-1+とEOS 7D、EF-S 15-85mm F3.5-5.6 IS USMを持って行った。付属の極軸筒では北極星がよく見えないので、目分量で極軸合わせをした。やっぱり専用の極軸望遠鏡を買うことにしよう。

丁度雲の切れた天頂付近に夏の大三角形が見えた。写真左上にはくちょう座デネブ、右上にこと座ベガ(織姫)、中央下にわし座アルタイル(彦星)が写っている。
●織姫と彦星
IMG_6389-7.jpg
2012/07/07 22:28、ISO 6400、F3.5、25mm

6月23日(土)に札幌市生涯学習総合センター「ちえりあ」で開催されたFM-Hokkaidoのユーザーミーティングで発表したファイルメーカーチップスのうち、「チェックマークでチェックする」の内容をここで書いておく。ファイルメーカーでよく使われるチェックボックス。これをXマークでなく✓マークにしたい。チェックボックスと同じ機能を✓マークで行なうサンプルを作成してみた。

【方法の骨子】
チェックボックスの代わりに繰り返しフィールドcheck、value、contentを使う。項目の表示は、繰り返しの1から1、2から2など、文字数別に1個づつ表示して、チェックボックスの表示と同じ長さにする。図の□をボタンにして、フィールド設定スクリプトを割り付ける。繰り返し数を引数に設定して、1個のスクリプトで繰り返し数分の動作させる。□ボタンをクリックすると、そのボタンのある繰り返し数のcheckを1にする。checkの書式を論理値にして、0以外は✓マークにしておく。同じ繰り返し数のcontentにvalueの値を入れる。計算式content2でcontentの値をListする。content2には、通常のチェックボックスと同じように、チェックされた項目が改行区切りで入力される。なお、valueの値は値一覧を定義せず、Xリレーションによる値一覧テーブルに設定する。

【方法の内容】
テーブル
値一覧、check  value (繰り返し5):値一覧のTableIDとcheckのTableIDがXリレーション

フィールド
check 数字 5 繰り返し データの書式:論理値 0以外の場合 ✓
value 数字 5 繰り返し ルックアップ
content テキスト 5 繰り返し
content2 計算(テキスト) = List ( content )

レイアウト
□アクティブ時にフィールドのフレームを表示 チェックをはずす

スクリプト チェックマークでcheckする
フィールド設定 [ check: :content [Get ( スクリプト引数 ) ] ;
 Case ( IsEmpty ( check: :check ) or check: :check = 0 ; GetRepetition ( check: :value ; Get ( スクリプト引数 ) ) ; "" )
フィールド設定 [ check: :check [Get ( スクリプト引数 ) ] ;
 Case ( IsEmpty ( check: :check ) or check: :check = 0 ; 1 ; 0 ) ]

ボタン
スクリプト「チェックマークでcheckする」 引数 1〜5 ( 繰り返し数)

【サンプルファイル】
サンプルファイル check.fp7(ZIP圧縮: 14_check.zip)をアップしておきますのでお試しください。
http://www001.upp.so-net.ne.jp/MedFiles/samples.html

KeystrokeスクリプトトリガがあるとFileMaker Goで日本語変換できない [FileMaker]

FileMaker Pro 10以降で使用できるようになったスクリプトトリガは大変便利である。たとえば、escを押すとヘルプ画面へ移動する、ブラウズモードのまま検索フィールドに検索後を入れてenterで検索実行する、矢印キーでレコード選択するなどが、レイアウトにOnLayoutKeystrokeトリガを設定しておくことで可能になる。

iPadで動作するFileMaker Go for iPadは、Wi-Fi (無線LAN)経由でファイルメーカーファイル(ファイルメーカーサーバーでもファイルメーカー共有でも)に簡単にアクセスできる。今、医療を含むいろいろなビジネス分野での応用が始まっている。ファイルメーカー共有の場合は、ファイルオプションの「ファイルを開くとき実行するスクリプト」を作成してマルチユーザ設定[オン]にして開いておくと、FileMaker Goでただちに開くことができる。

現在、医療用文書作成ソフトTheご紹介VIを作成中であるが、Keystroke関連のスクリプトトリガが設定してあると、FileMaker Goから開いたときに日本語変換ができない障害があることに気づいた。OnLayoutKeystrokeが設定してあると、フィールドへの日本語入力で変換候補が表示されず、ひらがながそのまま入力されてしまう。OnObjectKeystrokeの設定されたフィールドでは日本語変換だけでなく、すべての文字が入力できない。どうもうまい解決方法がみつからないので、Get (システムプラットホーム) = 3でiPadから開いた場合はOnLayoutKeystrokeトリガをはずしたレイアウトに飛ぶしか手がないようだ。

障害の出るトリガは、OnLayout triggerではOnLayoutKeystrokeだけ、OnObject triggerではOnObjectKeystrokeだけであり、他のトリガはFileMaker Goでも正しく動作する。

【サンプルファイル】
サンプルtrigger-go.fp7のzip圧縮ファイル(14_trigger-go.zip)をアップしておきますのでお試しください。検証するときは、はじめにPCでtrigger-go.fp7を開いてから、FileMaker Goからそれを選択してください。
https://public.me.com/kinda01/ja/
パスワード:yokota

FileMakerから出力したファイルにおいてフィールド内改行を改行に変更する(Macintosh) [FileMaker]

FileMakerからCSVなどのテキスト出力をすると、FileMakerのフィールド内改行は改行されない状態で表示される。出力後も改行の状態にするには、ファイルメーカーのフィールド内改行記号 ¶ 垂直タブ Chr(11)をMacの改行記号Chr(13)に変換すればよい。この変換はAppleScriptで行なう。

【必要なフィールド】
(1) ExportFileName テキスト(グローバル格納)
(2) fullpath 計算(結果:テキスト)
Substitute ( Get ( ファイルパス ) ; [ "file:/" ; "" ] ; [ "/" ; ":" ] ; [ Get ( ファイル名 ) & ".fp7" ; ExportFileName ] )

【スクリプト:Export】
・レコードエクスポート[ダイアログなし;「ExportFile.csv」;日本語 (Shift-JIS)]
・AppleScriptを実行
---------------------------
set filepath to cell "VtabReturn::fullpath" of current record

tell application "Finder"
set OpenFile to file ( filepath ) as alias
set aFilePointer to open for access OpenFile
set aData to read aFilePointer
close access aFilePointer

set CurDelim to AppleScript's text item delimiters
set AppleScript's text item delimiters to "FMPの改行文字*"
set buf to text items of aData
set AppleScript's text item delimiters to return
set buf to buf as string

set WriteFile to file ( filepath ) as alias
set aFilePointer to open for access WriteFile with write permission
set eof of aFilePointer to 0
write buf to aFilePointer
close access aFilePointer
end tell
---------------------------
*"FMPの改行文字"は、はじめに書き出したファイルをテキストエディターで開いて、FMPの改行文字にあたる部分をコピーしてAppleScript内にペーストする。

【サンプルファイル】
サンプルVtabReturnMacのzip圧縮ファイル(12_VtabReturnMac.zip)をアップしておきますのでお試しください。
http://www001.upp.so-net.ne.jp/MedFiles/samples.html

FileMakerから出力したファイルにおいてフィールド内改行を改行に変更する(Windows) [FileMaker]

FileMakerからCSVなどのテキスト出力をすると、FileMakerのフィールド内改行は改行されない状態で表示されます。これはFileMakerのフィールド内改行が垂直タブChr(11)であるのに対してWindowsの改行コードがChr(13)+Chr(10)であることによります。そこで、CSV出力後、改行コード変換するVBScriptを作成しました。FileMakerから出力するCSVをExportFile.csv、変換するVBScriptの名前をReplace.VBSとし、それぞれカレントフォルダ(ファイルメーカーのファイルのあるフォルダ)にあるものとします。

【Replace.VBS】
On Error Resume Next
Dim ReadFile, FileData, Henkan, WriteFile, FilePath

Set FS = WScript.CreateObject("Scripting.FileSystemObject")
FilePath = Replace(WScript.ScriptFullName,WScript.ScriptName,"ExportFile.csv")
Set ReadFile =FS.OpenTextFile( FilePath )
FileData = ""
Do Until ReadFile.AtEndOfStream
  FileData = FileData & ReadFile.ReadLine & vbCrLf
Loop
ReadFile.Close

Henkan = Replace(FileData, Chr(11), vbCrLf)

Set WriteFile =FS.CreateTextFile( FilePath )
WriteFile.Write Henkan
WriteFile.Close

If Err.Number <> 0 Then
MsgBox("エラーが起きました。")
End If

【ファイルメーカーのスクリプト:Export】
レコードエクスポート[ダイアログなし;「ExportFile.csv」;日本語 (Shift-JIS)]
Eventを送信[「aevt」; 「odoc」; 「Replace.VBS」]

【サンプルファイル】
サンプルVtabReturnのzip圧縮ファイル(11_VtabReturnWin.zip)をアップしておきますのでお試しください。Lhacaなどのアーカイバで解凍してご使用ください。
http://www001.upp.so-net.ne.jp/MedFiles/samples.html

P.S. 同様の変換は、MacではAppleScriptで自動実行することができます。

「医療現場のデータベース活用」とファイルメーカーサーバー [FileMaker]

【医療現場のデータベース活用】
日本ユーザーメード医療IT研究会 J-SUMMITS から「医療現場のデータベース活用 ファイルメーカーを用いた医療データベース構築・活用術」(編集/若宮俊司 吉田 茂)が出版され、2011年6月6日より販売開始となります。ライフサイエンス出版¥2,625です。
http://www.lifescience.co.jp/shop2/shopping_sin4.html
【この本の骨子】
病院の基幹システム(電子カルテ)と医療者が作成したファイルメーカーデータベースとの連携方法です。私も分担執筆者ですが、私自身は「成果の共有」部分を書いています。執筆時点では私の勤務している病院には電子カルテが導入されておらず、この連携も行われていませんでした。
【オーダリングシステムとファイルメーカーサーバーとの連携】
 電子カルテではありませんが、私の勤務している病院のオーダリングシステムとの連携を今年度になって開始しています。富士通のHOPE/SX-Jの患者データを、ファイルメーカーサーバーで共有するファイルに自動インポートできるようになりました。
 HOPE/SX-Jには患者情報連携機能があり、患者登録または変更するたびに1患者1ファイルが出力されます。しかしこれではファイルメーカーに自動インポートが難しいため、ベンダーにバッチファイルを作成していただきました。このバッチファイルは、ファイルメーカーサーバーのDocumentフォルダを監視して、フォルダが空であればpatientdata.csvを作成します。さらにHOPE/SX-Jから1ファイルが出力されるたびにpatientdata.csvに患者データを改行区切りで追加していく動作をしています。
 ファイルメーカーサーバー11のスケジュールで30分ごとにpatientdata.csvをインポートし、インポート終了したらpatientdata.csvを自動削除しています。データは新規にすべて追加し、ただちに重複削除しています。自動インポート、インポート後CSV削除、重複削除はファイルメーカーサーバー11の基本機能およびファイルメーカースクリプトだけでできます。スケジュールによる自動インポートは、ファイルメーカーサーバー10以降で可能になっています。

ID自己リレーションカウントによる重複削除について [FileMaker]

重複検出用のフィールドを「ID」として、IDによる自己リレーションのカウントを用いた重複削除法を提示します。

1. 自己リレーション
IDで自己リレーションする。リレーション名(テーブルオカレンス名)を duplicate2_self とする。

2. 計算フィールド「ID重複」の作成
IDの重複数を示す計算フィールド「ID重複」を作成する。この計算式は重複のあるレコードを1、ないレコードを0と表示する。
【計算式】Case ( Count ( duplicate2_self::ID ) > 1 ; 1 ; 0 )
【計算結果】数字

3. 重複削除スクリプト
・「ID重複」 = 1のレコードを検索する。
・Loopによって「ID重複」 = 1のものを削除していく。
・対象レコードの最後に移動してからID重複を削除して前のレコードに移動していく場合は、もっとも古いレコード1つが、対象レコードの最初に移動してからID重複を削除して次のレコードに移動していく場合は、もっとも新しいレコード1つが残る。

サンプルファイル duplicate2.fp7のzip圧縮ファイル(10_duplicate2.zip)をアップしておきますのでお試しください。スクリプトインポートとテーブル名の修正により、この重複削除スクリプトを移植することができます。Lhacaなどのアーカイバで解凍してご使用ください。
http://www001.upp.so-net.ne.jp/MedFiles/samples.html

常時ユニーク設定による重複レコード削除 [FileMaker]

ファイルメーカーにおける重複レコード削除方法はFAQの1つです。種々の方法がありますが、データなしコピーを作り重複検出フィールドに常時・ユニークの設定をして元ファイルからデータインポートするのがもっとも簡単でやはいと思います。この方法の汎用スクリプト(他のファイルでも利用できる)を作成しましたので紹介します。MacでもWinでも動作します。

【重複レコード削除の方法】
1. 元ファイルでデータをソートしておく(必要時)
降順でソートしてファイルを開いておくと、重複ある時は最新レコードが、ソートをかけない場合やファイルを閉じている場合は重複レコードのもっとも古いレコードがインポートされる。
2. スクリプト「重複削除用ファイルを作成して開く」を実行する
データなしコピーが開く。ファイル名に「_dupdelete」が付加される。
3. 重複検出フィールドの設定
重複削除用ファイルの重複検出フィールドのオプションを開いて、入力値の制限で○常時 □ユニークな値 の2つをチェックする。
4. スクリプト「重複削除してインポートする」を実行する

サンプルファイル duplicate.fp7のzip圧縮ファイル(09_duplicate.zip)をアップしておきますのでお試しください。Lhacaなどのアーカイバで解凍してご使用ください。
http://www001.upp.so-net.ne.jp/MedFiles/samples.html