Re: Create message from xml
Posted: Fri Apr 06, 2012 5:59 pm
And you can use:
msg.LoadfromFile(XML File...);
msg.LoadfromFile(XML File...);
Code: Select all
<?xml version="1.0"?>
<ORM_O01 xmlns="urn:hl7-org:v2xml">
<MSH>
<MSH.1>|</MSH.1>
<MSH.2>^~\&</MSH.2>
<MSH.3><HD.1>CMQMS</HD.1></MSH.3>
<MSH.4></MSH.4>
<MSH.5><HD.1>CRQMS</HD.1></MSH.5>
<MSH.6></MSH.6>
<MSH.7><TS.1>20120402143932</TS.1></MSH.7>
<MSH.8></MSH.8>
<MSH.9>
<MSG.1>ORM</MSG.1>
<MSG.2>O01</MSG.2>
</MSH.9>
<MSH.10>1368</MSH.10>
<MSH.11>
<PT.1>P</PT.1>
</MSH.11>
<MSH.12>
<VID.1>2.5</VID.1>
</MSH.12>
<MSH.13></MSH.13>
<MSH.14></MSH.14>
<MSH.15>AL</MSH.15>
<MSH.16></MSH.16>
<MSH.17></MSH.17>
<MSH.18></MSH.18>
<MSH.19></MSH.19>
</MSH>
<ORM_O01.PATIENT>
<PID>
<PID.1></PID.1>
<PID.2></PID.2>
<PID.3>
<CX.1>119182</CX.1>
<CX.5>PI</CX.5>
</PID.3>
<PID.3>
<CX.1></CX.1>
<CX.5>JHN</CX.5>
</PID.3>
<PID.3>
<CX.1>55223311N</CX.1>
<CX.5>NNESP</CX.5>
</PID.3>
<PID.4></PID.4>
<PID.5>
<XPN.1>
<FN.1>ESTEBAN</FN.1>
</XPN.1>
<XPN.2>GRACIELA</XPN.2>
<XPN.3>RIESCO</XPN.3>
</PID.5>
<PID.6></PID.6>
<PID.7>
<TS.1>19550101</TS.1>
</PID.7>
<PID.8>F</PID.8>
<PID.9></PID.9>
<PID.10></PID.10>
<PID.11>
<XAD.1>
<SAD.1></SAD.1>
</XAD.1>
<XAD.2></XAD.2>
<XAD.3>LUGO</XAD.3>
<XAD.4>LUGO</XAD.4>
<XAD.5>27001</XAD.5>
</PID.11>
<PID.12></PID.12>
<PID.13>
<XTN.1>1</XTN.1>
</PID.13>
<PID.14>
<XTN.1></XTN.1>
</PID.14>
<PID.15></PID.15>
<PID.16></PID.16>
<PID.17></PID.17>
<PID.18></PID.18>
<PID.19></PID.19>
<PID.20></PID.20>
<PID.21></PID.21>
<PID.22></PID.22>
<PID.23></PID.23>
<PID.24></PID.24>
<PID.25></PID.25>
<PID.26></PID.26>
<PID.27></PID.27>
<PID.28></PID.28>
<PID.29></PID.29>
<PID.30></PID.30>
</PID>
<ORM_O01.PATIENT_VISIT>
<PV1>
<PV1.1>695</PV1.1>
<PV1.2>O</PV1.2>
<PV1.3></PV1.3>
<PV1.4></PV1.4>
<PV1.5></PV1.5>
<PV1.6></PV1.6>
<PV1.7></PV1.7>
<PV1.8></PV1.8>
<PV1.9></PV1.9>
<PV1.10></PV1.10>
<PV1.11></PV1.11>
<PV1.12></PV1.12>
<PV1.13></PV1.13>
<PV1.14></PV1.14>
<PV1.15></PV1.15>
<PV1.16></PV1.16>
<PV1.17></PV1.17>
<PV1.18></PV1.18>
<PV1.19></PV1.19>
<PV1.20></PV1.20>
<PV1.21></PV1.21>
<PV1.22></PV1.22>
<PV1.23></PV1.23>
<PV1.24></PV1.24>
<PV1.25></PV1.25>
<PV1.26></PV1.26>
<PV1.27></PV1.27>
<PV1.28></PV1.28>
<PV1.29></PV1.29>
<PV1.30></PV1.30>
<PV1.31></PV1.31>
<PV1.32></PV1.32>
<PV1.33></PV1.33>
<PV1.34></PV1.34>
<PV1.35></PV1.35>
<PV1.36></PV1.36>
<PV1.37></PV1.37>
<PV1.38></PV1.38>
<PV1.39></PV1.39>
<PV1.40></PV1.40>
<PV1.41></PV1.41>
<PV1.42></PV1.42>
<PV1.43></PV1.43>
<PV1.44></PV1.44>
<PV1.45></PV1.45>
<PV1.46></PV1.46>
<PV1.47></PV1.47>
<PV1.48></PV1.48>
<PV1.49></PV1.49>
<PV1.50></PV1.50>
<PV1.51></PV1.51>
<PV1.52></PV1.52>
</PV1>
</ORM_O01.PATIENT_VISIT>
<ORM_O01.INSURANCE>
<IN1>
<IN1.1>0</IN1.1>
<IN1.2>
<CE.1>0</CE.1>
</IN1.2>
<IN1.3>
<CX.1>11701</CX.1>
</IN1.3>
<IN1.4></IN1.4>
<IN1.5></IN1.5>
<IN1.6></IN1.6>
<IN1.7></IN1.7>
<IN1.8></IN1.8>
<IN1.9></IN1.9>
<IN1.10></IN1.10>
<IN1.11></IN1.11>
<IN1.12></IN1.12>
<IN1.13></IN1.13>
<IN1.14></IN1.14>
<IN1.15></IN1.15>
<IN1.16></IN1.16>
<IN1.17></IN1.17>
<IN1.18></IN1.18>
<IN1.19></IN1.19>
<IN1.20></IN1.20>
<IN1.21></IN1.21>
<IN1.22></IN1.22>
<IN1.23></IN1.23>
<IN1.24></IN1.24>
<IN1.25></IN1.25>
<IN1.26></IN1.26>
<IN1.27></IN1.27>
<IN1.28></IN1.28>
<IN1.29></IN1.29>
<IN1.30></IN1.30>
<IN1.31></IN1.31>
<IN1.32></IN1.32>
<IN1.33></IN1.33>
<IN1.34></IN1.34>
<IN1.35></IN1.35>
<IN1.36></IN1.36>
<IN1.37></IN1.37>
<IN1.38></IN1.38>
<IN1.39></IN1.39>
<IN1.40></IN1.40>
<IN1.41></IN1.41>
<IN1.42></IN1.42>
<IN1.43></IN1.43>
<IN1.44></IN1.44>
<IN1.45></IN1.45>
<IN1.46></IN1.46>
<IN1.47></IN1.47>
<IN1.48></IN1.48>
<IN1.49></IN1.49>
</IN1>
</ORM_O01.INSURANCE>
</ORM_O01.PATIENT>
<ORM_O01.ORDER>
<ORC>
<ORC.1>NW</ORC.1>
<ORC.2>
<EI.1>695</EI.1>
</ORC.2>
<ORC.3></ORC.3>
<ORC.4></ORC.4>
<ORC.5></ORC.5>
<ORC.6></ORC.6>
<ORC.7></ORC.7>
<ORC.8></ORC.8>
<ORC.9></ORC.9>
<ORC.10></ORC.10>
<ORC.11></ORC.11>
<ORC.12>
<XCN.1></XCN.1>
<XCN.2>
<FN.1>CMQMS</FN.1>
</XCN.2>
<XCN.3></XCN.3>
<XCN.4></XCN.4>
</ORC.12>
<ORC.13></ORC.13>
<ORC.14></ORC.14>
<ORC.15></ORC.15>
<ORC.16></ORC.16>
<ORC.17></ORC.17>
<ORC.18></ORC.18>
<ORC.19></ORC.19>
</ORC>
<ORM_O01.ORDER_DETAIL>
<ORM_O01.OBRRQDRQ1RXOODSODT_SUPPGRP>
<OBR>
<OBR.1></OBR.1>
<OBR.2>
<EI.1>695</EI.1>
</OBR.2>
<OBR.3></OBR.3>
<OBR.4>
<CE.1>211</CE.1>
<CE.2>HIPOFISIS</CE.2>
<CE.3>L</CE.3>
</OBR.4>
<OBR.5>P</OBR.5>
<OBR.6>
<TS.1>20120402</TS.1>
</OBR.6>
<OBR.7>
<TS.1>200907161000</TS.1>
</OBR.7>
<OBR.8></OBR.8>
<OBR.9></OBR.9>
<OBR.10>
<XCN.1>2</XCN.1>
</OBR.10>
<OBR.11></OBR.11>
<OBR.12></OBR.12>
<OBR.13></OBR.13>
<OBR.14></OBR.14>
<OBR.15></OBR.15>
<OBR.16></OBR.16>
<OBR.17></OBR.17>
<OBR.18></OBR.18>
<OBR.19>E</OBR.19>
<OBR.20></OBR.20>
<OBR.21></OBR.21>
<OBR.22></OBR.22>
<OBR.23></OBR.23>
<OBR.24></OBR.24>
<OBR.25></OBR.25>
<OBR.26></OBR.26>
<OBR.27></OBR.27>
<OBR.28></OBR.28>
<OBR.29></OBR.29>
<OBR.30></OBR.30>
<OBR.31></OBR.31>
<OBR.32></OBR.32>
<OBR.33></OBR.33>
<OBR.34></OBR.34>
<OBR.35></OBR.35>
<OBR.36></OBR.36>
<OBR.37></OBR.37>
<OBR.38></OBR.38>
<OBR.39></OBR.39>
<OBR.40></OBR.40>
<OBR.41></OBR.41>
<OBR.42></OBR.42>
<OBR.43></OBR.43>
</OBR>
</ORM_O01.OBRRQDRQ1RXOODSODT_SUPPGRP>
</ORM_O01.ORDER_DETAIL>
</ORM_O01.ORDER>
</ORM_O01>
Code: Select all
procedure TForm3.LoadXMLFromFile;
var
msg : TdiORM_O01_25;
begin
msg := TdiORM_O01_25.Create;
try
msg.LoadFromFile('D:\Proyecto_HL7\ws\ES99.xml',ftXML);
memo2.Lines.Text := msg.AsXML;
memo1.Lines.Text := msg.AsString;
finally
msg.Free;
end;
end;
procedure TForm3.Button2Click(Sender: TObject);
var
msg : TdiORM_O01_25;
begin
msg := TdiORM_O01_25.Create;
try
msg.AsXML := memo2.Lines.Text;
memo1.Lines.Text := msg.AsString;
finally
msg.Free;
end;
end;
Code: Select all
[...]
<ORM_O01.ORDER_DETAIL>
<ORM_O01.OBRRQDRQ1RXOODSODT_SUPPGRP>
<OBR>
<OBR.1></OBR.1>
<OBR.2>
<EI.1>695</EI.1>
</OBR.2>
<OBR.3></OBR.3>
<OBR.4>
<CE.1>211</CE.1>
<CE.2>HIPOFISIS</CE.2>
<CE.3>L</CE.3>
</OBR.4>
<OBR.5>P</OBR.5>
<OBR.6>
<TS.1>20120402</TS.1>
</OBR.6>
<OBR.7>
<TS.1>200907161000</TS.1>
</OBR.7>
<OBR.8></OBR.8>
<OBR.9></OBR.9>
<OBR.10>
<XCN.1>2</XCN.1>
</OBR.10>
<OBR.11></OBR.11>
<OBR.12></OBR.12>
<OBR.13></OBR.13>
<OBR.14></OBR.14>
<OBR.15></OBR.15>
<OBR.16></OBR.16>
<OBR.17></OBR.17>
<OBR.18></OBR.18>
<OBR.19>E</OBR.19>
<OBR.20></OBR.20>
<OBR.21></OBR.21>
<OBR.22></OBR.22>
<OBR.23></OBR.23>
<OBR.24></OBR.24>
<OBR.25></OBR.25>
<OBR.26></OBR.26>
<OBR.27></OBR.27>
<OBR.28></OBR.28>
<OBR.29></OBR.29>
<OBR.30></OBR.30>
<OBR.31></OBR.31>
<OBR.32></OBR.32>
<OBR.33></OBR.33>
<OBR.34></OBR.34>
<OBR.35></OBR.35>
<OBR.36></OBR.36>
<OBR.37></OBR.37>
<OBR.38></OBR.38>
<OBR.39></OBR.39>
<OBR.40></OBR.40>
<OBR.41></OBR.41>
<OBR.42></OBR.42>
<OBR.43></OBR.43>
</OBR>
</ORM_O01.OBRRQDRQ1RXOODSODT_SUPPGRP>
</ORM_O01.ORDER_DETAIL>
[...]
Code: Select all
[...]
<ORM_O01.ORDER_DETAIL>
</ORM_O01.ORDER_DETAIL>
[...]
Code: Select all
<?xml version="1.0"?>
<ORM_O01 xmlns="urn:hl7-org:v2xml">
<MSH>
<MSH.1>|</MSH.1>
<MSH.2>^~\&</MSH.2>
<MSH.3><HD.1>CMQMS</HD.1></MSH.3>
<MSH.4></MSH.4>
<MSH.5><HD.1>CRQMS</HD.1></MSH.5>
<MSH.6></MSH.6>
<MSH.7><TS.1>20120402143932</TS.1></MSH.7>
<MSH.8></MSH.8>
<MSH.9>
<MSG.1>ORM</MSG.1>
<MSG.2>O01</MSG.2>
</MSH.9>
<MSH.10>1368</MSH.10>
<MSH.11>
<PT.1>P</PT.1>
</MSH.11>
<MSH.12>
<VID.1>2.5</VID.1>
</MSH.12>
<MSH.13></MSH.13>
<MSH.14></MSH.14>
<MSH.15>AL</MSH.15>
<MSH.16></MSH.16>
<MSH.17></MSH.17>
<MSH.18></MSH.18>
<MSH.19></MSH.19>
</MSH>
<ORM_O01.PATIENT>
<PID>
<PID.1></PID.1>
<PID.2></PID.2>
<PID.3>
<CX.1>119182</CX.1>
<CX.5>PI</CX.5>
</PID.3>
<PID.3>
<CX.1></CX.1>
<CX.5>JHN</CX.5>
</PID.3>
<PID.3>
<CX.1>55223311N</CX.1>
<CX.5>NNESP</CX.5>
</PID.3>
<PID.4></PID.4>
<PID.5>
<XPN.1>
<FN.1>ESTEBAN</FN.1>
</XPN.1>
<XPN.2>GRACIELA</XPN.2>
<XPN.3>RIESCO</XPN.3>
</PID.5>
<PID.6></PID.6>
<PID.7>
<TS.1>19550101</TS.1>
</PID.7>
<PID.8>F</PID.8>
<PID.9></PID.9>
<PID.10></PID.10>
<PID.11>
<XAD.1>
<SAD.1></SAD.1>
</XAD.1>
<XAD.2></XAD.2>
<XAD.3>LUGO</XAD.3>
<XAD.4>LUGO</XAD.4>
<XAD.5>27001</XAD.5>
</PID.11>
<PID.12></PID.12>
<PID.13>
<XTN.1>1</XTN.1>
</PID.13>
<PID.14>
<XTN.1></XTN.1>
</PID.14>
<PID.15></PID.15>
<PID.16></PID.16>
<PID.17></PID.17>
<PID.18></PID.18>
<PID.19></PID.19>
<PID.20></PID.20>
<PID.21></PID.21>
<PID.22></PID.22>
<PID.23></PID.23>
<PID.24></PID.24>
<PID.25></PID.25>
<PID.26></PID.26>
<PID.27></PID.27>
<PID.28></PID.28>
<PID.29></PID.29>
<PID.30></PID.30>
</PID>
<ORM_O01.PATIENT_VISIT>
<PV1>
<PV1.1>695</PV1.1>
<PV1.2>O</PV1.2>
<PV1.3></PV1.3>
<PV1.4></PV1.4>
<PV1.5></PV1.5>
<PV1.6></PV1.6>
<PV1.7></PV1.7>
<PV1.8></PV1.8>
<PV1.9></PV1.9>
<PV1.10></PV1.10>
<PV1.11></PV1.11>
<PV1.12></PV1.12>
<PV1.13></PV1.13>
<PV1.14></PV1.14>
<PV1.15></PV1.15>
<PV1.16></PV1.16>
<PV1.17></PV1.17>
<PV1.18></PV1.18>
<PV1.19></PV1.19>
<PV1.20></PV1.20>
<PV1.21></PV1.21>
<PV1.22></PV1.22>
<PV1.23></PV1.23>
<PV1.24></PV1.24>
<PV1.25></PV1.25>
<PV1.26></PV1.26>
<PV1.27></PV1.27>
<PV1.28></PV1.28>
<PV1.29></PV1.29>
<PV1.30></PV1.30>
<PV1.31></PV1.31>
<PV1.32></PV1.32>
<PV1.33></PV1.33>
<PV1.34></PV1.34>
<PV1.35></PV1.35>
<PV1.36></PV1.36>
<PV1.37></PV1.37>
<PV1.38></PV1.38>
<PV1.39></PV1.39>
<PV1.40></PV1.40>
<PV1.41></PV1.41>
<PV1.42></PV1.42>
<PV1.43></PV1.43>
<PV1.44></PV1.44>
<PV1.45></PV1.45>
<PV1.46></PV1.46>
<PV1.47></PV1.47>
<PV1.48></PV1.48>
<PV1.49></PV1.49>
<PV1.50></PV1.50>
<PV1.51></PV1.51>
<PV1.52></PV1.52>
</PV1>
</ORM_O01.PATIENT_VISIT>
<ORM_O01.INSURANCE>
<IN1>
<IN1.1>0</IN1.1>
<IN1.2>
<CE.1>0</CE.1>
</IN1.2>
<IN1.3>
<CX.1>11701</CX.1>
</IN1.3>
<IN1.4></IN1.4>
<IN1.5></IN1.5>
<IN1.6></IN1.6>
<IN1.7></IN1.7>
<IN1.8></IN1.8>
<IN1.9></IN1.9>
<IN1.10></IN1.10>
<IN1.11></IN1.11>
<IN1.12></IN1.12>
<IN1.13></IN1.13>
<IN1.14></IN1.14>
<IN1.15></IN1.15>
<IN1.16></IN1.16>
<IN1.17></IN1.17>
<IN1.18></IN1.18>
<IN1.19></IN1.19>
<IN1.20></IN1.20>
<IN1.21></IN1.21>
<IN1.22></IN1.22>
<IN1.23></IN1.23>
<IN1.24></IN1.24>
<IN1.25></IN1.25>
<IN1.26></IN1.26>
<IN1.27></IN1.27>
<IN1.28></IN1.28>
<IN1.29></IN1.29>
<IN1.30></IN1.30>
<IN1.31></IN1.31>
<IN1.32></IN1.32>
<IN1.33></IN1.33>
<IN1.34></IN1.34>
<IN1.35></IN1.35>
<IN1.36></IN1.36>
<IN1.37></IN1.37>
<IN1.38></IN1.38>
<IN1.39></IN1.39>
<IN1.40></IN1.40>
<IN1.41></IN1.41>
<IN1.42></IN1.42>
<IN1.43></IN1.43>
<IN1.44></IN1.44>
<IN1.45></IN1.45>
<IN1.46></IN1.46>
<IN1.47></IN1.47>
<IN1.48></IN1.48>
<IN1.49></IN1.49>
</IN1>
</ORM_O01.INSURANCE>
</ORM_O01.PATIENT>
<ORM_O01.ORDER>
<ORC>
<ORC.1>NW</ORC.1>
<ORC.2>
<EI.1>695</EI.1>
</ORC.2>
<ORC.3></ORC.3>
<ORC.4></ORC.4>
<ORC.5></ORC.5>
<ORC.6></ORC.6>
<ORC.7></ORC.7>
<ORC.8></ORC.8>
<ORC.9></ORC.9>
<ORC.10></ORC.10>
<ORC.11></ORC.11>
<ORC.12>
<XCN.1></XCN.1>
<XCN.2>
<FN.1>CMQMS</FN.1>
</XCN.2>
<XCN.3></XCN.3>
<XCN.4></XCN.4>
</ORC.12>
<ORC.13></ORC.13>
<ORC.14></ORC.14>
<ORC.15></ORC.15>
<ORC.16></ORC.16>
<ORC.17></ORC.17>
<ORC.18></ORC.18>
<ORC.19></ORC.19>
</ORC>
<ORM_O01.ORDER_DETAIL>
<ORM_O01.OBRRQDRQ1RXOODSODT_SUPPGRP>
<OBR>
<OBR.1></OBR.1>
<OBR.2>
<EI.1>695</EI.1>
</OBR.2>
<OBR.3></OBR.3>
<OBR.4>
<CE.1>211</CE.1>
<CE.2>HIPOFISIS</CE.2>
<CE.3>L</CE.3>
</OBR.4>
<OBR.5>P</OBR.5>
<OBR.6>
<TS.1>20120402</TS.1>
</OBR.6>
<OBR.7>
<TS.1>200907161000</TS.1>
</OBR.7>
<OBR.8></OBR.8>
<OBR.9></OBR.9>
<OBR.10>
<XCN.1>2</XCN.1>
</OBR.10>
<OBR.11></OBR.11>
<OBR.12></OBR.12>
<OBR.13></OBR.13>
<OBR.14></OBR.14>
<OBR.15></OBR.15>
<OBR.16></OBR.16>
<OBR.17></OBR.17>
<OBR.18></OBR.18>
<OBR.19>E</OBR.19>
<OBR.20></OBR.20>
<OBR.21></OBR.21>
<OBR.22></OBR.22>
<OBR.23></OBR.23>
<OBR.24></OBR.24>
<OBR.25></OBR.25>
<OBR.26></OBR.26>
<OBR.27></OBR.27>
<OBR.28></OBR.28>
<OBR.29></OBR.29>
<OBR.30></OBR.30>
<OBR.31></OBR.31>
<OBR.32></OBR.32>
<OBR.33></OBR.33>
<OBR.34></OBR.34>
<OBR.35></OBR.35>
<OBR.36></OBR.36>
<OBR.37></OBR.37>
<OBR.38></OBR.38>
<OBR.39></OBR.39>
<OBR.40></OBR.40>
<OBR.41></OBR.41>
<OBR.42></OBR.42>
<OBR.43></OBR.43>
</OBR>
</ORM_O01.OBRRQDRQ1RXOODSODT_SUPPGRP>
</ORM_O01.ORDER_DETAIL>
</ORM_O01.ORDER>
</ORM_O01>
Please, open another thread for monitoring.I'm working with ORU messages and seeking to attach PDF reports.
(Is it better to open another thread?)