The last time a cardiac surgery department lost a patient to a preventable post-op complication, the root cause wasn't the surgeon's technique. It was a missing INR value from three days before the procedure — buried in a paper folder that hadn't been cross-referenced with the coagulation profile sheet. The folder was on the right shelf. The data was there. Nobody connected the dots fast enough.

This is the problem that paper-based and generic EHR systems create in high-acuity surgical departments: data exists, but it doesn't talk. Fields are isolated. Dates drift. Pre-op workup from one admission becomes invisible to the next attending.

When the Workup Is Incomplete and Nobody Knows It

Cardiac surgery pre-op is a sequenced protocol, not a checklist. CBC, coagulation profile, liver and kidney functions, lipid panel, ESR, CRP — each has its own draw date, its own acceptable window before surgery. An INR pulled six weeks ago is clinically irrelevant for a patient who just started warfarin. An EF measured pre-angiography tells you something different from the post-cath echo.

The EHR template tracks not just values but dates: CBC date, CP date, LF date, KF date, LP date, ESR date, CRP date. Every panel gets a boolean flag — was this done? — and a separate date field. That pairing is what allows a rapid pre-op audit. Filter for patients where Surgery date is within seven days and INR has no associated CP date in the last seventy-two hours. That list is your risk exposure. It's not a report you generate manually; it's a query you run in thirty seconds.

For patients with HbA1c flagged under the DM boolean, the template captures both the value and the draw date. A patient whose HbA1c was 9.4 two months ago is not the same operative risk as one whose value was measured last week post-optimization. The date is half the data.

The Angiography Map Nobody Else Builds

Most EHR systems give you a single text field for angiography findings. Cardiologists learn to write novels in that box. Nobody can query a novel.

This template maps coronary anatomy vessel by vessel: LMS, LAD, Diagonal(s), LCx, OM(s), RI, RCA, PDA, PL. Each is a separate text field. The Angio type checkboxes distinguish coronary from congenital. There's a CA date and a separate free-text CA comments field for findings that don't fit the vessel schema.

That granularity matters when you're preparing a CABG candidate list for the weekly surgical conference. You're not reading through narrative notes — you're looking at structured vessel-level data. LMS disease with EF under 35 and elevated S. Cr sorts to the top of the risk stratification immediately. You built that query from fields, not from text parsing.

The MSCT and Duplex fields follow the same pattern: boolean, date, report. If a patient's MSCT was done at a referring center and the report was transcribed into the field, it travels with the record.

ICU to Discharge: Closing the Audit Loop

Outcome data is where institutional learning happens, and it's where most departmental databases fall apart.

The template closes the loop with ICU Event(s), ICU Discharge date, a post-operative echo (PO Echo date, PO ECHO Report), and a three-option discharge classification: Uneventful, Morbidity, or Mortality. Morbidity cases get a free-text type field. Mortality cases get a cause field.

After twelve months of data, the department can run its own outcomes analysis. Filter for all CABG cases with pre-op EF under 40. Cross-reference with Discharge = Morbidity. Check whether INR was within range at the time of surgery. The data structure was built for this from the first entry.

The Surgery Details field captures technique in free text — grafts used, bypass time, cross-clamp duration — while the structured fields handle everything that needs to be queried. That balance between narrative and structured data is what separates a working clinical database from an expensive filing cabinet.