関連記事
- 【#マイナンバー】マイナンバーカード、全病院で保険証に 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にて作業は続けております
コメント
【#大相撲】 横綱 照ノ富士 引退の意向を固める
【#日向灘地震】割れ残り部が依然健在じゃし.怖いわなぁ
【#大地震】宮崎に大地震キタ━(゚∀゚)━!!(25/1/13)
【#大雪】宮崎市に降雪予報キター(25/1/11)
【#2025】あけおめ~ 2025年が始まったらしい...ドロドロドロ
2024年が終わりますなぁ 1年ありがとうございました
ついに宮崎市も氷点下気温キター(24/12/23)