Dynamics — خريطة الحقول واختيار النموذج

التحضير يقبل أسماء Dynamics المعتادة (payee_name · net_amount · issue_date · document_no · memo) بسلاسل بديلة مرتّبة، ويختار النموذج بشجرة قرار من template_id أو bank_id أو الأسماء. هنا الخريطة كاملة وما يختمه السيرفر وما يُقبل ولا يُقرأ.

آخر تحديث: 2026-10-24

في الصفحة دي

قاعدة السلاسل

لكل حقل قائمة أسماء مقبولة: أول قيمة غير فارغة (بعد trim) تفوز، والفارغ يسقط للتالي.

حقل الشيك الأسماء المقبولة بترتيب الأسبقية ملاحظة
recipient_name ✅ recipient_name → payee_name → beneficiary_name → vendor_name → customer_name مطلوب
amount ✅ amount → net_amount مطلوب
cheque_date cheque_date → issue_date → due_date يُطبَّع Y-m-d
reason reason → memo → description
reference_number reference_number → external_reference → document_no → voucher_no
note note و notes معًا تُدمج بسطر جديد بلا تكرار
currency currency → currency_code → EGP تُحوَّل لحروف كبيرة
cheque_type cheque_type فقط الافتراضي OUT
المعرّف الخارجي external_id → external_reference → document_no → voucher_no مفتاح المطابقة — أرسل external_id
bank_name · template_name ⛔ لا تُؤخذ من الدخل تُختم من البنك والنموذج المحلولين
external_source ⛔ من الإعداد DYNAMICS_SOURCE

حقول القسيمة stub_date · stub_name · stub_amount · stub_reason — بلا بدائل، وتسقط إلى نظيرتها الرئيسية بشرط ثلاثي: لم تُرسل و حُلّ نموذج و للنموذج كعب (with_stub = 1). في حالة «اختيار النموذج مطلوب» لا سقوط.

bank_code · bank_account_code · bank_account_number ليست في العقد (حُذفت في 1.8.0) — لا تُقرأ.

اختيار النموذج — شجرة القرار

الأساس في كل الفروع: النموذج نشط وبنكه نشط. و«المُعلَّم» (أكثر استخدامًا) يكسر التعادل فقط: يُختار إن كان مُعلَّمًا واحدًا بالضبط، وإلا الوحيد إن كانت المجموعة عضوًا واحدًا، وإلا لا حسم.

# المُرسَل النتيجة
1 template_id يفوز مطلقًا؛ غير موجود/معطَّل ⟹ 422
2 bank_id يُحلّ؛ غير موجود/معطَّل ⟹ 422 على bank_id
2ب bank_name مطابقة ضبابية (تجاهل الحالة والمسافات وطيّ الألف والياء والهمزة): تطابق تام وحيد ← جزئي وحيد؛ الفشل مع template_name يُكمل بلا بنك
3 template_name تام ← جزئي؛ تعدّد ⟹ 422 (تعدّد مُعلَّمين / اسم ملتبس)
4 بنك فقط مُعلَّم وحيد ⟹ يُختار · لا نماذج ⟹ 422 · وإلا ⟹ 200 بـtemplate_selection_required
5 لا شيء صالح 422 على template برسالة تشرح الخيارات

التوصية: أرسل template_id — أدقّ وأسرع، ولا يعتمد على الأسماء العربية.

ما يعود في data — 30 مفتاحًا بالترتيب

شفرة
bank_name · template_name · cheque_type · cheque_date · stub_date · place · recipient_name ·
stub_name · amount · stub_amount · amount_text · reason · reference_number · note · stub_reason ·
signed_by · currency · cheque_number · liner_enabled · liner_text · two_lines · company_id ·
bank_account_id · cheque_book_id · cheque_leaf_id · partner_id · resolved_bank_id ·
resolved_template_id · template_selection_required · available_templates

(+ external_source · external_id · request_hash.)

cheque_leaf_id: ورقة متاحة من دفتر صادر في شركة المفتاح تتبع cheque_book_id/bank_account_id/البنك المُحلّ إن أُرسلت — تُفحَص عند التحضير، وتُحجز عند التسجيل، وتصير مستخدمة عند الإنهاء؛ ورقم الشيك منها (cheque_number المرسَل يجب أن يساويه). الرسائل في الأخطاء.

ما يختمه السيرفر عند التسجيل

يختمه السيرفر دائمًا يستطيع المستدعي ضبطه
bank_name · template_name (المحلولان) · printed_status (false عند التسجيل، true عند الإنهاء) —
external_source · external_id · request_hash (من المسودة) cheque_type
printed_at · printed_by (الموظف) · company_id (شركة المفتاح من المسودة) —
الحالة الابتدائية (من الاتجاه) · paper_status كل حقل آخر في جسم التسجيل — يعلو المسودة

رسائل 422 الشائعة

  • bank_id: البنك غير موجود أو معطَّل.
  • template: «حدّد النموذج بأحد ثلاثة: template_id أو bank_id أو template_name».
  • template_name: اسم ملتبس / أكثر من نموذج مُعلَّم.
  • المبلغ والكسر: كما في الإنشاء المباشر.

صفحات ذات صلة

اطلب نسختك التجريبية مجانًا