オンライン資格確認 導入記 (No.29)                 2023.12.26 更新

Windowsで オンライン資格確認 : Pluginを利用



当方のオンライン資格確認、電子処方箋はWindows 10の専用端末のFolder内に貯まるxml FileをMac側からFilemakerのインポート機能を使って取り込んで処理します。それはMacのFilemaker v18,v19でしかできなかったのですが、(その経緯は  Road11 参照 )  MBS Plugin, あるいはBaseElements Pluginを使うと Windows v18, v19でもインポート処理ができることがわかりました。また 最新のFilemaker 2023では Native 機能ではMac, Windowsとも Text としてxmlの取り込みができないことがわかりました。てっきり, 2023では Mac, Windowsとも正式にサポートされると期待していましたが, 残念です。なので, Filemaker 2023を使おうと思えば, Mac, Windows とも上記いずれかの Plugin を使用しないと不可能ということになりました。

# 追伸 MacOS12, Windows 10 の Filemaker 2023でも Pluginを使って オンライン資格確認 正常動作を確認しました。


MBS Plugin (有料)

https://www.monkeybreadsoftware.com/filemaker/

7000もの機能を有するPluginということです。Mac,Windowsで同じ機能が使えます。


QR Codeの表示に使っていますが、通常のFilemakerの関数と同じ感覚で使えて便利です。

試用しているうちに漢字を含む日本語のQR code変換に不具合があることがわかり,直接メールで尋ねたら、バグがあったようで、次回のVersion Upで修正されました。現在のところ不具合は見られません。

MBS Pluginの使用料は

初年の使用料 (5人の共有状態) は$149, 今は 円安ですから 日本円で2万円近くします。

2年目からは Update 価格が $75です。 約1万円くらいです。

試用版もあります。

https://www.monkeybreadsoftware.com/trial/trial-filemaker.shtml

Mailすると 社長のSchmitzさんから直接メールが来ます。

わからないことは 拙い英語で質問しましたらていねいに答えてくれました。

instllの方法は 後述します。


BaseElements Plugin (無料)

を利用するという選択肢もあります。Mac, Windows いずれでも動作します。

https://docs.baseelementsplugin.com/article/442-about-the-baseelements-plugin

Downloadは

https://docs.baseelementsplugin.com/article/522-downloads


Pluginのinstallは

Macの場合は Clientsマシンに

User > ライブラリ > Application Support > FileMaker > Extentions のFolderにsaveすれば, どのVersionでも 作動します。Serverには installは不要です。



Windowsの場合は

C > Program Files  > FileMaker > Filemaker Pro > Extensions

Filemaker Proのところは FilemakerのVersionによって v18, v19を選択

それぞれの Extensions の Folderに MBS, BaseElements Pluginを貼り付けます。

下図は v19の例で, MBSのPlugin は x32,x64 両方installしています。



Import Script

MBS, Plagin, BaseElements Pluginとも Folder内のxml FileをTextとして, Filemakerに取り込むScriptにはほぼ同じような関数を使います。

以下

Filenameを S_XML::S135_resfileName; に,

xml Text 内容を S_XML::S140_resXMLに 代入する場合です。

Closed LANの環境です。


Filemakerの オリジナル Script Step (v18,19)

「レコードのインポート」

[ フォルダ名: res;  ファイルタイプ: テキストファイル; ターゲット: 「S_XML」; 方法: 追加; 文字セッ ト: 「UTF-8」; フィールドデータのインポート順: ソースフィールド 1 のインポート S_XML::S140_resXML;

ソースフィールド 2 のインポート S_XML::S135_resfileName; ]


Pluginを利用して データを読み込む Script

Windows コンピュータ名が “BPX_Medical”

Target Folderが C Driveの 最上層 OQS/face の場合

FolderPathは

Macから Windows10にアクセスする場合: “Volumes/OQS/face”

Windows から Windows10にアクセスする場合: “//BPX_Medical/OQS/face”

となります。OSによって作法が異なります。

Filemakerの オリジナル Import Script Stepを 以下の Scriptに 差し替えます。


MBS Plugin の場合の Script

全レコードを表示

対象外のみを表示

If [ Get ( システムプラットフォーム ) = 1 ]

# Mac

変数を設定 [ $FolderPath; 値:"Volumes/OQS/face" ]

Else

# Windows

変数を設定 [ $FolderPath; 値:”//BPX_medical/OQS/face" ]

End If

変数を設定 [ $r; 値:MBS("Files.List"; $FolderPath) ]

変数を設定 [ $count; 値:ValueCount ( $r ) ]

変数を設定 [ $index; 値:0 ]

If [ $count > 0 ]

Loop

変数を設定 [ $FileName; 値:GetValue ( $r ; $index + 1) ]

変数を設定 [ $FilePath; 値:MBS( "Path.AddPathComponent"; $FolderPath; $FileName ) ]

変数を設定 [ $FileData; 値:MBS("Text.ReadTextFile"; $FilePath;"UTF8") ]

新規レコード/検索条件

フィールド設定 [ S_XML::S135_resfileName; $FileName ]

フィールド設定 [ S_XML::S140_resXML ; $FileData ]

レコード/検索条件確定 [ ダイアログなし ]

変数を設定 [ $index; 値:$index + 1 ]

Exit Loop If [ $index = $count ]

End Loop

End If




BaseElements Pluginの場合 の Script (靑地部分が MBS と異なる)

全レコードを表示

対象外のみを表示

If [ Get ( システムプラットフォーム ) = 1 ]

変数を設定 [ $FolderPath; 値:"Volumes/OQS/face" ]

Else

変数を設定 [ $FolderPath; 値:”//BPX_medical/OQS/face" ]

End If

変数を設定 [ $r; 値:BE_FileListFolder ($FolderPath ) ]

変数を設定 [ $count; 値:ValueCount ( $r ) ]

変数を設定 [ $index; 値:0 ]

If [ $count > 0 ]

Loop

変数を設定 [ $FileName; 値:GetValue ( $r ; $index + 1) ]

変数を設定 [ $FilePath; 値:$FolderPath & $FileName ]

変数を設定 [ $FileData; 値:BE_FileReadText ( $FilePath  ) ]

新規レコード/検索条件

フィールド設定 [ S_XML::S135_resfileName; $FileName ]

フィールド設定 [ S_XML::S140_resXML ; $FileData ]

レコード/検索条件確定 [ ダイアログなし ]

変数を設定 [ $index; 値:$index + 1 ]

Exit Loop If [ $index = $count ]

End Loop

End




xmlのExport 機能に関しては Win Mac とも Filemakerのオリジナル機能で問題ありません。

上記のxml Import機能は電子処方箋においても利用できます。

ただし 署名付き電子処方箋に関しては AIDsignを組み込まねばなりません。後ほど検討したいと思います。

# 追伸 (2024.1.15) BaseElements Pluginで Filenameを読み込んだときに 文頭に”/”が入ることがわかりました。Windowsでは “¥”になります。これはこれで便利な機能ですが, 見栄えがよくありません。

MacOS の Filemakerでは これをSubstitute関数で消すことができますが, Windowsでは難しいのでこのままにします。


サンプルソフト FMbat v3.1.0

ご自分のFilemakerに BaseElemets Plugin をinstall してください。

zip Fileを解凍してください。(Windows は 「すべてを展開」)

その Folderは 「FMbat310」となっています。このFolderはどこにおいてもかまいません。

ただし 内部のFile, Test_Folderはそこから出さないでください。

TEST_face, TEST_resのなかのXML Filesを読み込むしくみになっています。本番で使うときは

K_XML FileのScript「BaseE_Plugin_face」,「BaseE_Plugin_res」の

パス ($FolderPath) をご自分のネットワークに合わせて変更してください。

オンライン資格確認に関する説明は 「オンライン資格確認 No.13」を参照してください。



                                                                 



                                                                       


 

(工事中)

FMbat 更新 v3.1.0

詳細は このページの文末に