Hamza Fayz

Case Study #1

محرك تحكم تكلفة المشاريع في D365 F&O للمقاولات: تحويل Procurement + Warehouse + Finance إلى رؤية يومية على BOQ/Activity

هذه الدراسة توثق كيف تحول النظام من قيود محاسبية متفرقة إلى نموذج تكلفة يومي قابل للتتبع والمساءلة، مع محرك تخصيص واضح لفروقات الخصومات والشحن والضريبة وفجوات الاستلام/الفوترة ورايات Settlement.

← الرجوع إلى دراسات الحالة تحميل السيرة الذاتية (PDF)

الملخص التنفيذي

حولت دورة المشتريات والمخازن والفوترة في D365 إلى لغة تكلفة واحدة تربط كل حركة بـ BOQ/Activity/WBS، وتعرض Committed vs Actual يوميًا، مع محرك تخصيص تلقائي للخصومات/الشحن/الضريبة وفروقات الاستلام/الفوترة ورايات Settlement.

القيمة الإدارية المباشرة: الإدارة لم تعد تنتظر نهاية الشهر لفهم الانحراف، بل أصبحت ترى الاستهلاك اليومي ومصدر الفارق قبل أن يتحول إلى خسارة.

السياق

البيئة كانت مقاولات متعددة المواقع مع تعدد موردين وتنوع بنود (مواد، خدمات، معدات)، وفي نفس الوقت كل مشروع عنده BOQ/WBS خاص به. البيانات كانت موجودة داخل D365، لكن القراءة كانت محاسبية أكثر من كونها تشغيلية، وبالتالي المتابعة اليومية كانت صعبة.

المطلوب كان واضح: نظام يومي يربط الحركة التشغيلية بالتكلفة الفعلية والالتزام المالي، ويخرج بلغة يفهمها Finance وProject Control وProcurement بدون تضارب تعريفات أو اجتهادات يدوية.

المشكلة

المشكلة لم تكن في غياب البيانات، بل في غياب نموذج تكلفة موحد يحترم طبيعة كل نوع بند.

1) Committed vs Actual حسب نوع البند

2) Header discounts/charges

3) VAT base

4) Received vs Invoiced

5) Settlement risk

المنهج

My Role Technical Lead ERP + BI: تحديد منطق التكلفة، تصميم الطبقات، تنسيق تنفيذ الربط بين D365 وPower BI، ومراجعة قواعد التحقق مع الفرق التشغيلية والمالية.

Solution Architecture (Layer 1..5)

  1. Layer 1 - Data Capture: استخراج حركات PO/PR/Product receipt/Vendor invoice من D365 مع مفاتيح Project + BOQ + Activity.
  2. Layer 2 - Classification: تصنيف البند (Material / Service / Equipment) لتحديد منطق الاعتراف الصحيح.
  3. Layer 3 - Allocation Engine: توزيع خصومات الرأس والشحن والضريبة على مستوى السطر حسب قواعد موزونة.
  4. Layer 4 - Cost Fact Model: إنتاج Fact موحد يعرض Committed وActual وVariance عبر WBS hierarchy.
  5. Layer 5 - Decision Layer: لوحات تنفيذية وتشغيلية مع Flags استثنائية وDrill-down حتى مستوى المعاملة.
D365 Transactions
Classification Rules
Allocation Engine
Cost Fact Model
Executive Dashboards
Exception Actions

النموذج

Allocation Engine steps (A..D)

  1. Step A: بناء Base Amount لكل سطر حسب نوع البند وتوقيت الاعتراف.
  2. Step B: توزيع Header discounts بنسبة مساهمة كل سطر في إجمالي المستند.
  3. Step C: توزيع Charges (شحن/مناولة/رسوم) بنفس منهجية موحدة قابلة للتدقيق.
  4. Step D: احتساب VAT base بعد الخصم والإضافة ثم إعادة ربط النتيجة مع Project/BOQ/Activity.

Received vs Invoiced logic

Settlement flags

اللوحات (4 صفحات)

Executive Dashboard

ملخص محفظة المشاريع: committed/actual/variance مع ranking لأعلى الانحرافات.

BOQ & Activity Dashboard

Drill-down لكل BOQ line مع cost composition على مستوى Activity.

Variance Dashboard

تحليل مسببات الفروقات: سعر، كمية، توقيت، وتوزيع Charges/Discounts.

Exceptions Dashboard

متابعة Flags التشغيلية (Received vs Invoiced + Settlement risks) حسب عمر الحالة وحرجها.

الأثر

الأدلة

يمكن مراجعة ملفات داعمة للتصميم وطريقة العرض التنفيذي عبر الروابط التالية:

Key Takeaways

← الرجوع إلى دراسات الحالة