# Validation Rules (WP-01)

هذا الملف يحدد قواعد التحقق الأساسية التي يجب تنفيذها قبل أي ترحيل محاسبي.

## القواعد الأساسية

- لا يسمح بقيم سالبة في المدين أو الدائن.
- لا يجوز أن يكون المدين والدائن كلاهما صفر.
- يجب أن يكون كود الحساب صالحا ونشطا.
- يجب وجود معرف الفرع لكل سطر قيد.
- معرف المشروع مطلوب لحسابات المشاريع.
- لا يجوز الجمع بين مركز التكلفة والمشروع في نفس السطر عند تعارض السياسة.
- يجب أن تتطابق العملة والدقة مع لقطة العملة وقت الترحيل.
- لا يسمح بمعرفات مورد أو عميل غير موجودة.
- لا يسمح بتكرار نفس تركيبة الحساب والابعاد على نحو يخالف السياسة.
- لا يسمح بالترحيل في فترة محاسبية مغلقة.
- لا يسمح بترحيل عكس بدون مرجع للقيد الاصلي.
- لا يسمح باعادة تقييم عملة لحساب غير مؤهل لاعادة التقييم.
- لا يسمح بالترحيل لمستند غير قابل للتعديل حسب السياسة.

## مبدأ التنفيذ

كل حدث محاسبي يجب أن يمر عبر:

1. التحقق من الحمولة.
2. التحقق من الابعاد.
3. التحقق من سياسات الاغلاق وعدم القابلية للتعديل.
4. التحقق من توازن القيد.

إذا فشل أي شرط، يمنع الترحيل ويرجع سبب الفشل بشكل واضح.
