internal IList <Medication> getMedsHl7() { QBP_Q13_PID msg = new QBP_Q13_PID(); fillMshSegment(msg.MSH, HL7Constants.FIELD_SEPARATOR.ToString(), "MHV EVAULT", "200MHS", "127.0.0.1", "DNS", "MHV VISTA", _cxn.DataSource.SiteId.Id, _cxn.DataSource.Provider, "DNS", "", "QBP", "Q13", "QBP_Q13", "", "P", "2.4"); fillQpdSegment(msg, msg.QPD, "0", new DateTime(), new DateTime(), "", "Q13", "RxList"); addIdToPID(msg.getPid(), _cxn.Pid, 1, "", ""); fillRdfSegment(msg.RDF, DATA_FIELDs); fillRcpSegment(msg.RCP); string response = (string)_cxn.query(msg.encode()); return(toMedsFromHL7(response)); }
void fillQpdSegment(QBP_Q13_PID qbp_q13, QPD qpd, string requestId, DateTime fromDate, DateTime toDate, string icn, string trigger, string subjectArea) { qpd.MessageQueryName.Identifier.Value = trigger; qpd.MessageQueryName.Text.Value = subjectArea; qpd.MessageQueryName.NameOfCodingSystem.Value = "HL70471"; qpd.QueryTag.Value = requestId; ST stRequestId = new ST(qbp_q13); stRequestId.Value = requestId; ((NHapi.Base.Model.Varies)qpd.GetField(3, 0)).Data = stRequestId; ST subjectAreaId = new ST(qbp_q13); subjectAreaId.Value = subjectArea; ((NHapi.Base.Model.Varies)qpd.GetField(4, 0)).Data = subjectAreaId; if (fromDate.Year > 1) { ST stFromDate = new ST(qbp_q13); stFromDate.Value = fromDate.ToString("yyyyMMdd"); ((NHapi.Base.Model.Varies)qpd.GetField(5, 0)).Data = stFromDate; } if (toDate.Year > 1) { ST stToDate = new ST(qbp_q13); stToDate.Value = toDate.ToString("yyyyMMdd"); ((NHapi.Base.Model.Varies)qpd.GetField(6, 0)).Data = stToDate; } if (!String.IsNullOrEmpty(icn)) { ST stIcn = new ST(qbp_q13); stIcn.Value = icn; ((NHapi.Base.Model.Varies)qpd.GetField(7, 0)).Data = stIcn; } ST stDfn = new ST(qbp_q13); stDfn.Value = ""; ((NHapi.Base.Model.Varies)qpd.GetField(8, 0)).Data = stDfn; }
internal IList<Medication> getMedsHl7() { QBP_Q13_PID msg = new QBP_Q13_PID(); fillMshSegment(msg.MSH, HL7Constants.FIELD_SEPARATOR.ToString(), "MHV EVAULT", "200MHS", "127.0.0.1", "DNS", "MHV VISTA", _cxn.DataSource.SiteId.Id, _cxn.DataSource.Provider, "DNS", "", "QBP", "Q13", "QBP_Q13", "", "P", "2.4"); fillQpdSegment(msg, msg.QPD, "0", new DateTime(), new DateTime(), "", "Q13", "RxList"); addIdToPID(msg.getPid(), _cxn.Pid, 1, "", ""); fillRdfSegment(msg.RDF, DATA_FIELDs); fillRcpSegment(msg.RCP); string response = (string)_cxn.query(msg.encode()); return toMedsFromHL7(response); }