# R45-P11.2.3 — Branch Comparison Emergency Column Ownership Hotfix

## الخطأ
ظهر أثناء Live Acceptance:

`ORA-00904: "R"."CLINIC_ID": invalid identifier`

## السبب الجذري
تم تأهيل `CLINIC_ID` خطأً على أنه عمود داخل:

`RCP_SERVICE_RESERVATION r`

بينما المصدر القديم استخدم:

```sql
NVL(outpta_emergency_type, 0) = 1
OR clinic_id IN (16, 297, 298)
```

دون تأهيل، حتى يحسم Oracle الجدول الفعلي الذي يحتوي العمود في مخطط كل فرع.

## الإصلاح
تمت استعادة صيغة العقد القديم حرفيًا:

```sql
AND (
    NVL(outpta_emergency_type, 0) = 1
    OR clinic_id IN (16, 297, 298)
)
```

## تحسين الاختبار الحي
أصبح Live Acceptance:
- يمسك خطأ كل فرع.
- يخرج JSON منظمًا.
- يسجل رمز Oracle.
- يحفظ Evidence حتى عند الفشل.
- لا يطبع Stack Trace HTML كاملًا ثم يتوقف.

## أداة تشخيص إضافية
تمت إضافة:

`tools/branch-comparison-emergency-column-diagnostic.php`

لعرض الجدول الذي يحتوي فعليًا على:
- `OUTPTA_EMERGENCY_TYPE`
- `CLINIC_ID`

في NJCH وMNH.

## ما تم الحفاظ عليه
- `ORDER BY 1, 2`.
- إعدادات Revenue Summary.
- NJCH وMNH فقط.
- JCKH محجوب.
- المجالات الستة.
- المقارنة العادلة.
- Oracle writes: NONE.
