From 9519b052158019cfa6e4f8e582d7f8e0b86f72c8 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Tue, 4 Oct 2022 00:34:16 +0530 Subject: Prefix all form variables with form specific prefixes. If the form variables are not prefixed and thus namespaced correctly, form variables from different forms interact illegitimately and cause pandemonium. * ksh-scan2.el, ksh-scan3.el: Prefix all form variables with form specific prefixes. --- ksh-scan3.el | 169 ++++++++++++++++++++++++++++++----------------------------- 1 file changed, 85 insertions(+), 84 deletions(-) (limited to 'ksh-scan3.el') diff --git a/ksh-scan3.el b/ksh-scan3.el index 7d25a74..76a7431 100644 --- a/ksh-scan3.el +++ b/ksh-scan3.el @@ -7,121 +7,122 @@ (setq forms-file (expand-file-name "data/scan3.dat" ksh-path)) (setq forms-number-of-fields (forms-enumerate - '(ip-op-no patient-name age sex visit-date lmp-date lmp-edd - scan - survey-presentation survey-placenta survey-liquor - survey-amniotic-fluid-index survey-umbilical-cord - survey-fetal-activity survey-cardiac-activity - survey-fetal-heart-rate - biometry-bpd biometry-bpd-age biometry-bpd-percentile - biometry-hc biometry-hc-age biometry-hc-percentile - biometry-ac biometry-ac-age biometry-ac-percentile - biometry-fl biometry-fl-age biometry-fl-percentile - biometry-fetal-weight - impression-gestational-age impression-menstrual-age - impression-corrected-edd impression-notes - sonologist))) + (list 'ksh-scan3-ip-op-no 'ksh-scan3-patient-name 'ksh-scan3-age 'ksh-scan3-sex + 'ksh-scan3-visit-date 'ksh-scan3-lmp-date 'ksh-scan3-lmp-edd + 'ksh-scan3-scan + 'ksh-scan3-survey-presentation 'ksh-scan3-survey-placenta 'ksh-scan3-survey-liquor + 'ksh-scan3-survey-amniotic-fluid-index 'ksh-scan3-survey-umbilical-cord + 'ksh-scan3-survey-fetal-activity 'ksh-scan3-survey-cardiac-activity + 'ksh-scan3-survey-fetal-heart-rate + 'ksh-scan3-biometry-bpd 'ksh-scan3-biometry-bpd-age 'ksh-scan3-biometry-bpd-percentile + 'ksh-scan3-biometry-hc 'ksh-scan3-biometry-hc-age 'ksh-scan3-biometry-hc-percentile + 'ksh-scan3-biometry-ac 'ksh-scan3-biometry-ac-age 'ksh-scan3-biometry-ac-percentile + 'ksh-scan3-biometry-fl 'ksh-scan3-biometry-fl-age 'ksh-scan3-biometry-fl-percentile + 'ksh-scan3-biometry-fetal-weight + 'ksh-scan3-impression-gestational-age 'ksh-scan3-impression-menstrual-age + 'ksh-scan3-impression-corrected-edd 'ksh-scan3-impression-notes + 'ksh-scan3-sonologist))) ;; Default values for fields (setq default-field-values - `((,sex . "F") - (,survey-presentation . "cephalic") - (,survey-placenta . "posterior") - (,survey-liquor . "normal") - (,survey-fetal-activity . "normal") - (,survey-cardiac-activity . "normal") - (,sonologist . "Dr. Bala Bharathy"))) + `((,ksh-scan3-sex . "F") + (,ksh-scan3-survey-presentation . "cephalic") + (,ksh-scan3-survey-placenta . "posterior") + (,ksh-scan3-survey-liquor . "normal") + (,ksh-scan3-survey-fetal-activity . "normal") + (,ksh-scan3-survey-cardiac-activity . "normal") + (,ksh-scan3-sonologist . "Dr. Bala Bharathy"))) ;; Format specification for form display (setq forms-format-list (append (list "Trimester 3 - Scan Report\n\n") (seq-mapcat 'form-entry - '(("IP/OP No" . ip-op-no) - ("Patient Name" . patient-name) - ("Age" . age) - ("Sex" . sex) - ("Visit Date" . visit-date) - ("LMP Date" . lmp-date) - ("LMP EDD" . lmp-edd))) + '(("IP/OP No" . ksh-scan3-ip-op-no) + ("Patient Name" . ksh-scan3-patient-name) + ("Age" . ksh-scan3-age) + ("Sex" . ksh-scan3-sex) + ("Visit Date" . ksh-scan3-visit-date) + ("LMP Date" . ksh-scan3-lmp-date) + ("LMP EDD" . ksh-scan3-lmp-edd))) (list "Indications\n" "Growth Scan\n" "Real time B-mode ultrasonography of gravid uterus done.\n" - "Route: Transabdominal\n" scan "\n\n") + "Route: Transabdominal\n" ksh-scan3-scan "\n\n") (list "Fetal Survey\n") (seq-mapcat 'form-entry - '(("Presentation" . survey-presentation) - ("Placenta" . survey-placenta) - ("Liquor" . survey-liquor) - ("Amniotic fluid index" . survey-amniotic-fluid-index) - ("Umbilical cord" . survey-umbilical-cord) - ("Fetal activity" . survey-fetal-activity) - ("Cardiac activity" . survey-cardiac-activity) - ("Fetal heart rate" . survey-fetal-heart-rate))) + '(("Presentation" . ksh-scan3-survey-presentation) + ("Placenta" . ksh-scan3-survey-placenta) + ("Liquor" . ksh-scan3-survey-liquor) + ("Amniotic fluid index" . ksh-scan3-survey-amniotic-fluid-index) + ("Umbilical cord" . ksh-scan3-survey-umbilical-cord) + ("Fetal activity" . ksh-scan3-survey-fetal-activity) + ("Cardiac activity" . ksh-scan3-survey-cardiac-activity) + ("Fetal heart rate" . ksh-scan3-survey-fetal-heart-rate))) (list "Fetal Biometry\n") (seq-mapcat 'form-entry - '(("BPD" . biometry-bpd) - ("BPD-Age" . biometry-bpd-age) - ("BPD-Percentile" . biometry-bpd-percentile) - ("HC" . biometry-hc) - ("HC-Age" . biometry-hc-age) - ("HC-Percentile" . biometry-hc-percentile) - ("AC" . biometry-ac) - ("AC-Age" . biometry-ac-age) - ("AC-Percentile" . biometry-ac-percentile) - ("FL" . biometry-fl) - ("FL-Age" . biometry-fl-age) - ("FL-Percentile" . biometry-fl-percentile) - ("Estimated fetal weight according to BPD, HC, AC, FL" . biometry-fetal-weight))) + '(("BPD" . ksh-scan3-biometry-bpd) + ("BPD-Age" . ksh-scan3-biometry-bpd-age) + ("BPD-Percentile" . ksh-scan3-biometry-bpd-percentile) + ("HC" . ksh-scan3-biometry-hc) + ("HC-Age" . ksh-scan3-biometry-hc-age) + ("HC-Percentile" . ksh-scan3-biometry-hc-percentile) + ("AC" . ksh-scan3-biometry-ac) + ("AC-Age" . ksh-scan3-biometry-ac-age) + ("AC-Percentile" . ksh-scan3-biometry-ac-percentile) + ("FL" . ksh-scan3-biometry-fl) + ("FL-Age" . ksh-scan3-biometry-fl-age) + ("FL-Percentile" . ksh-scan3-biometry-fl-percentile) + ("Estimated fetal weight according to BPD, HC, AC, FL" . ksh-scan3-biometry-fetal-weight))) (list "Impression\n") (seq-mapcat 'form-entry - '(("Gestational age" . impression-gestational-age) - ("Menstrual age" . impression-menstrual-age) - ("Corrected EDD" . impression-corrected-edd) - ("Notes" . impression-notes) - ("Sonologist" . sonologist))))) + '(("Gestational age" . ksh-scan3-impression-gestational-age) + ("Menstrual age" . ksh-scan3-impression-menstrual-age) + ("Corrected EDD" . ksh-scan3-impression-corrected-edd) + ("Notes" . ksh-scan3-impression-notes) + ("Sonologist" . ksh-scan3-sonologist))))) (setq form-to-org (lambda () (with-output-to-string (make-report-header "OB - 3/3 TRIMESTER SCAN REPORT") (seq-do 'single-line-org-entry - `(("IP/OP No" . ,ip-op-no) - ("Age" . ,age) - ("Sex" . ,sex) - ("Name of Patient" . ,patient-name) - ("Visit Date" . ,visit-date) - ("LMP Date" . ,lmp-date) - ("LMP EDD" . ,lmp-edd))) + `(("IP/OP No" . ,ksh-scan3-ip-op-no) + ("Age" . ,ksh-scan3-age) + ("Sex" . ,ksh-scan3-sex) + ("Name of Patient" . ,ksh-scan3-patient-name) + ("Visit Date" . ,ksh-scan3-visit-date) + ("LMP Date" . ,ksh-scan3-lmp-date) + ("LMP EDD" . ,ksh-scan3-lmp-edd))) (mapc 'princ `("* Indications\n" "** Growth Scan\n" "Real time B-mode ultrasonography of gravid uterus done.\n\n")) (seq-do 'single-line-org-entry `(("Route" . "Transabdominal"))) - (text-if-non-blank (get-field scan)) + (text-if-non-blank (get-field ksh-scan3-scan)) (princ "* Fetal Survey\n") (seq-do 'single-line-org-entry - `(("Presentation" . ,survey-presentation) - ("Placenta" . ,survey-placenta) - ("Liquor" . ,survey-liquor) - ("Amniotic fluid index" . ,survey-amniotic-fluid-index) - ("Umbilical cord" . ,survey-umbilical-cord) - ("Fetal activity" . ,survey-fetal-activity) - ("Cardiac activity" . ,survey-cardiac-activity) - ("Fetal heart rate" . ,survey-fetal-heart-rate))) + `(("Presentation" . ,ksh-scan3-survey-presentation) + ("Placenta" . ,ksh-scan3-survey-placenta) + ("Liquor" . ,ksh-scan3-survey-liquor) + ("Amniotic fluid index" . ,ksh-scan3-survey-amniotic-fluid-index) + ("Umbilical cord" . ,ksh-scan3-survey-umbilical-cord) + ("Fetal activity" . ,ksh-scan3-survey-fetal-activity) + ("Cardiac activity" . ,ksh-scan3-survey-cardiac-activity) + ("Fetal heart rate" . ,ksh-scan3-survey-fetal-heart-rate))) (insert-biometry "Fetal Biometry" - `(("BPD" ,biometry-bpd ,biometry-bpd-age ,biometry-bpd-percentile) - ("HC" ,biometry-hc ,biometry-hc-age ,biometry-hc-percentile) - ("AC" ,biometry-ac ,biometry-ac-age ,biometry-ac-percentile) - ("FL" ,biometry-fl ,biometry-fl-age ,biometry-fl-percentile))) + `(("BPD" ,ksh-scan3-biometry-bpd ,ksh-scan3-biometry-bpd-age ,ksh-scan3-biometry-bpd-percentile) + ("HC" ,ksh-scan3-biometry-hc ,ksh-scan3-biometry-hc-age ,ksh-scan3-biometry-hc-percentile) + ("AC" ,ksh-scan3-biometry-ac ,ksh-scan3-biometry-ac-age ,ksh-scan3-biometry-ac-percentile) + ("FL" ,ksh-scan3-biometry-fl ,ksh-scan3-biometry-fl-age ,ksh-scan3-biometry-fl-percentile))) (princ "* Impression\n") (princ (format "%s gestational age assigned as per biometry (CRL)\n\n" - (get-field impression-gestational-age))) + (get-field ksh-scan3-impression-gestational-age))) (seq-do 'single-line-org-entry - `(("Menstrual age" . ,impression-menstrual-age) - ("Corrected EDD" . ,impression-corrected-edd) - ("Placenta" . ,survey-placenta) - ("Presentation" . ,survey-presentation) - ("Liquor" . ,survey-liquor) - ("Estimated fetal weight according to BPD, HC, AC, FL" . ,biometry-fetal-weight))) - (text-if-non-blank (get-field impression-notes)) - (multi-line-org-entry `("Sonologist" . ,sonologist))))) + `(("Menstrual age" . ,ksh-scan3-impression-menstrual-age) + ("Corrected EDD" . ,ksh-scan3-impression-corrected-edd) + ("Placenta" . ,ksh-scan3-survey-placenta) + ("Presentation" . ,ksh-scan3-survey-presentation) + ("Liquor" . ,ksh-scan3-survey-liquor) + ("Estimated fetal weight according to BPD, HC, AC, FL" . ,ksh-scan3-biometry-fetal-weight))) + (text-if-non-blank (get-field ksh-scan3-impression-notes)) + (multi-line-org-entry `("Sonologist" . ,ksh-scan3-sonologist))))) -- cgit v1.2.3