إنشاء تقارير إحصائية للأكواد الطبية المستخدمة.
// تقارير الترميز
Class Hospital.ICD10.Reports
{
ClassMethod TopDiagnoses(limit As %Integer = 20)
{
Write "أكثر ", limit, " تشخيصاً:", !
Write "═══════════════════════════════════", !
&sql(SELECT TOP :limit ICDCode, COUNT(*) AS Cnt INTO :code, :cnt
FROM Hospital.Models.Diagnosis
GROUP BY ICDCode
ORDER BY Cnt DESC)
While SQLCODE = 0 {
&sql(SELECT Description INTO :desc FROM Hospital_ICD10.Codes WHERE Code = :code)
Write code, " | ", desc, " | عدد: ", cnt, !
&sql(FETCH)
}
}
ClassMethod DepartmentReport()
{
Write "تقرير التشخيصات حسب القسم:", !
&sql(SELECT Department, COUNT(DISTINCT ICDCode) AS UniqueCodes, COUNT(*) AS Total
INTO :dept, :codes, :total
FROM Hospital.Models.Diagnosis d
INNER JOIN Hospital.Models.Patient p ON d.PatientId = p.ID
GROUP BY Department
ORDER BY Total DESC)
While SQLCODE = 0 {
Write dept, ": ", codes, " كود فريد، ", total, " إجمالي", !
&sql(FETCH)
}
}
}