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

Filemakerによる 操作を目指す    

  

Filemakerを操作して, 連携アプリケーションの情報のやり取りを目指します。


要求XMLの作成

  1. Filemakerでは XMLをexportすることができます。ただし, このオンライン資格確認システムのXMLとはちょっと形式が異なるようです。オンライン資格確認システムでは内容が simpleなので, Plain TEXTで作成できそうです。 以下のXMLを”ひながたXML”=Textとして, 赤字の部分を受診者ごとにFilemakerのSubstitute関数で置換すればいいのです。


<?xml version="1.0" encoding="UTF-8" standalone="no"?>

<XmlMsg>

<MessageHeader>

<QualificationConfirmationDate>20210522</QualificationConfirmationDate>      (今日の日付)

<MedicalInstitutionCode>8110212489</MedicalInstitutionCode>     (医療機関コード)

<ArbitraryFileIdentifier>test1234</ArbitraryFileIdentifier> (これは任意:数字アルファベット)

</MessageHeader>

<MessageBody>

<QualificationConfirmSearchInfo>        (以下4点必須 ただし国保は 記号=Symbol不要)

<InsurerNumber>81301914</InsurerNumber>    (保険者番号)

<InsuredCardSymbol>5874</InsuredCardSymbol>    (被保険者記号)

<InsuredIdentificationNumber>89574</InsuredIdentificationNumber>  (被保険者番号)

<InsuredBranchNumber></InsuredBranchNumber>    (枝番不要)

<Birthdate>19630924</Birthdate> (生年月日)

<LimitApplicationCertificateRelatedConsFlg>0</LimitApplicationCertificateRelatedConsFlg>

</QualificationConfirmSearchInfo>  (上は支払限度額:今は1を入力しても公開されない)

</MessageBody>

</XmlMsg>


一見簡単そうに見えたのですが, 最上段の

<?xml version="1.0" encoding="UTF-8" standalone="no"?> が問題でした。この中にdoble quatation(“)が6個ありますが, これをText の囲い(“”)の中でそのまま表現するには (¥”)と表現しなければいけません。

まあ,そういう物だとして, 作ってみたのですが, 不思議なことに, 上記と外見上まったく同じ置換xmlが出来たはずなのに, xmlとして認識されません。Web browserで開いてみるとエラーになるのです。結局, その問題は根源的な解明はできていないのですが, テキストエンコーディングが関係しているのではないかと推測します。つまりMacで置換作業するときにUTF8でなくなってしまうのではないか...(未確認)。すったもんだしているうちに, Safariのエラー表示から (“)は single quatation(‘) でも代用できるのではないか と思い至りました。


実際に オンライン資格確認システムで試したら,うまくゆきました。これは助かりました。こんなことはXML やプログラミングやっているひとには常識なんでしょうね。...そういえば, JavaScriptでもそんな使い方をしますよね。  大分時間をロスしました。これで最上段は

<?xml version=‘1.0’ encoding=’UTF-8’ standalone=’no’?> としました。これで, 単純にSubstitute関数が使えて, Scriptで 受診者毎の要求XMLが作れます。Fileのexport step では, 絶対パス“file:/C:/OQS/req” に続いて

“OQSsiquc01req_”(ファイル名前半部, ここは定型) &

“20210529” (ここは当日日付) & 

“21060” (ここは受診者ID番号など任意) & ”.xml”

になります, これらをつなぐ計算式で作成できます。以上を 変数にして, (疑似) xmlをtab 形式 でexportします。(xml 形式を指定しません)

変数 $pathfile : file:/C:/OQS/req/OQSsiquc01req_2021052921060.xml  とします。


なお, Filemaker v19を オンライン資格確認システムWindows10に installしました。

Script を組むみます。核心部分のScript Stepは

レコードのエクスポート, $pathfile, unicode (UTF-8),   です。


実際, オンライン資格確認端末(Windows10 マシン)の Filemakerの ボタンを押すだけで, resに保険証照会情報が返ってくるのは ちょっと感動的です。


まだ 懸案事項があります。

  1. 1.Filemakerの電子カルテシステムの中で, このボタンを押す操作は, オンライン資格確認Windowsマシンで(ボタンを押すなど)やらないと作動しません。Filemakerの仕様です。

  2. なるべくなら, オンライン資格確認端末はつつきたくないのですが, まだネットワークマシンでの遠隔操作はできない段階です。

  3. 2.回答XMLは OQSsiquc01res_2021052921060.xml と, 要求XMLとほぼ同じFile名で返ってくるので, これを通常のFiledに移し替えなければなりません。これは受診者IDが手がかりになりそうです。

  4. 3.顔認証カードリーダーの回答XMLの名前は時刻の要素しかありませんので, これを当該受診者にどう結びつけてゆくか。