إنشاء تقارير شاملة من السجل الموحد للمريض.
// تقرير السجل الموحد
Class Hospital.UPR.ReportGenerator
{
ClassMethod GeneratePatientReport(mpiId As %String)
{
Set patient = ##class(Hospital.UPR.PatientRegistry).FindByMPIID(mpiId)
If '$ISOBJECT(patient) {
Write "المريض غير موجود", !
Quit
}
Write "═══════════════════════════════════", !
Write "تقرير السجل الموحد للمريض", !
Write "═══════════════════════════════════", !
Write "معرف MPI: ", patient.MPIID, !
Write "الاسم: ", patient.Demographics.Name, !
// MRNs من جميع المؤسسات
Write !, "معرفات MRN:", !
For i = 1:1:patient.MRNList.Count() {
Write " - ", patient.MRNList.GetAt(i), !
}
// التشخيصات من جميع المصادر
Write !, "التشخيصات:", !
&sql(SELECT ICDCode, Description, Source INTO :code, :desc, :source
FROM Hospital.UPR.UnifiedDiagnosis
WHERE MPIID = :mpiId)
While SQLCODE = 0 {
Write " ", code, " - ", desc, " (", source, ")", !
&sql(FETCH)
}
}
}