関連記事
- 【#マイナンバー】マイナンバーカード、全病院で保険証に 21年3月から 【2019年02月14日(木)】
- Delphi5をWindows7 64ビット環境に突っ込んでみた 【2011年01月15日(土)】
- 【C#】XmlDocument.CreateElement()を使うとPrefixを出力しない不具合があるらしい 【2010年12月24日(金)】
- 電子カルテ,下り電文のテストがオワタ 【2010年12月15日(水)】
- NET FRAMEWORKのソケット通信 【2010年11月30日(火)】
いや,ずっぽりはまった(笑
MSXMLを利用して,ORCA-CLAIMの電文XMLを読み込もうとしたら
IXMLDOMDocument.Load()が,エラー吐いて,読めやしない
原因をあれこれ追っかけていったら,
MSXMLのパーサが,構文解析エラーを起こしている模様
CLAIM電文(MML)中
-
<!DOCTYPE Mml SYSTEM….
引きあがるようにはなる
でも,コメントアウトしたXMLをCLAIMに投げつけても
たぶん,エラー起こして,データ受信してくれないようなぁ
ってことで,さらに追っかけたら,こちらに,似たような事例…
IXMLDOMDocument.resolveExternals
IXMLDOMDocument.validateOnParse
二つのプロパティ,FALSEにすれば,読み込むまでは可能になるとのこと
今回は,読み込んで,一部書き換えて,保存するって,作業なんで
これ,FALSEにしても,実害ないかな?
DELPHIで書き起こしてみました
//メンバとして定義 FdomDocument : IXMLDOMDocument; //********************************************** //コンストラクタ // //********************************************** constructor TClaimOutput.Create; begin inherited; FdomDocument := CoDOMDocument.Create(); //インスタンス生成 FdomDocument.async := true; //同期モードがいいらしい end; //********************************************** //XMLテンプレートの読み込み // //********************************************** function TClaimOutput.Load : Boolean; var wb : WordBool; a : Integer; l : Integer; st : string; st1 : string; begin if (FileExists(FInPath + XML_INFILENAME) = false) then //ファイルが見つからない場合 begin Result := false; exit; end; FdomDocument.resolveExternals := false; //二つのプロパティをFALSE FdomDocument.validateOnParse := false; wb := FdomDocument.load(FInPath + XML_INFILENAME); //CLAIM-XML読み込み if ( wb = true) then begin //OK時 result := true; end else begin //NG時 a := FdomDocument.parseError.errorCode; l := FdomDocument.parseError.line; st := FdomDocument.parseError.reason; st1 := FdomDocument.parseError.srcText; FErrorStr := IntToHex(a, 8) + ',' + IntToStr(l) + ',' + st + ',' + st1; //ShowMessage(FErrorStr); result := false; end; end;とりあえず,本番の送受信テストまでは
この実装で行きますです
やばかったら,そのとき,また悩む,ということで(笑
あと,MSXMLのバージョン表はこちらですわん
とりあえず,MSXML3にて作業は続けております
コメント
宮崎ー台湾 国際定期便が週2往復に増便へ 来月30日から(25/2/15)
『にっぽん縦断 こころ旅』4月から田中美佐子が新たな旅人に 火野正平さんが14年間担当
オリックス・バファローズのキャンプ見学に行ってきた,昨日(爆(25/2/9)
【大雪】9日も降り続く見込み 交通影響に警戒 雪崩など注意を(25/2/9)
日産、ホンダとの統合合意撤回へ(25/2/5)
【特殊詐欺:トクリュウ】+1-844-173-3313から電話キター 特殊詐欺だぁ~~これはアカンヤツ
備蓄米放出へ準備、流通不足で初 政府、買い戻し条件に売り出し