Ejemplo n.º 1
0
        public HL7Parser2X(string HL7Message)
        {
            NHapi.Base.Parser.XMLParser xmlp = new NHapi.Base.Parser.DefaultXMLParser();
            //NHapi.Base.Model.IMessage imess =  xmlp.Parse(HL7Message);

            NHapi.Base.Parser.PipeParser pp    = new NHapi.Base.Parser.PipeParser();
            NHapi.Base.Model.IMessage    imess = pp.Parse(HL7Message, "2.3");

            NHapi.Model.V23.Message.ORU_R01 orm;
            orm = imess as NHapi.Model.V23.Message.ORU_R01;

            XmlDocument MessageXML = new XmlDocument();

            if (orm != null)
            {
                MessageXML = xmlp.EncodeDocument(orm);
            }
            NHapi.Base.Model.IStructure[] seg = imess.GetAll("MSH");
            report.ReportXML = MessageXML;

            //testFunction(MessageXML);


            report.PatientID   = GetPatientID(report.ReportXML);
            report.Patientname = GetPatientName(report.ReportXML);
            string date = string.Empty;

            report.ReportDateTime  = GetDateTime(GetStudyDate(report.ReportXML), "yyyyMMddHHmm", out date);
            report.DOB             = GetDateTime(GetPatientDOB(report.ReportXML), "yyyyMMdd", out date);
            report.AccessionNumber = GetAccessioNnumber(report.ReportXML);
        }