استيراد وتجارة جملة للمواد الغذائية — السوق المحلي · منشور وشغّال
زاد الخير
نظام ويب عربي كامل يتتبّع الشحنة المستوردة من لحظة الطلب حتى تحصيل ثمنها، ويربط مديونية التجّار بالذهب بدل الجنيه فلا يأكلها التضخّم.
- نوع النظام
- نظام تشغيل داخلي (استيراد · مخزون · مبيعات آجلة · خزائن · تقارير)
- دورنا
- بناء كامل — فهم التشغيل ثم التنفيذ ثم النشر

نظام تشغيل داخلي يغطّي الاستيراد والمخزون والمبيعات الآجلة والخزائن والتقارير في سلسلة واحدة: كل مصروف تخليص يُقيَّد فترتفع تكلفة الوحدة النهائية لحظيًا، والبضاعة تُباع من دفعة مخزون بعينها، والفاتورة تُقاس بالذهب يوم إصدارها وتُسدَّد بسعر يوم كل دفعة. الواجهة عربية من اليمين لليسار في بنيتها، وتعمل بنفس القدرات على الكمبيوتر والهاتف.
- 18
- شاشة
- 21
- جدولًا في قاعدة البيانات
- 44
- إجراء خادم
- 39
- فهرسًا وقيد تفرّد
- 11
- قيد CHECK على القاعدة
- 27
- اختبارًا آليًا كلها ناجحة
- 12,318
- سطر شيفرة
- المجال
- استيراد وتجارة جملة للمواد الغذائية — السوق المحلي
- نوع النظام
- نظام تشغيل داخلي (استيراد · مخزون · مبيعات آجلة · خزائن · تقارير)
- التغطية
- ١٨ شاشة، ٧ مسارات API، ٢١ جدولًا
- المستخدمون
- دوران: مالك (كل الصلاحيات) وموظّف (تشغيل يومي)
- اللغة والاتجاه
- عربية كاملة من اليمين لليسار (RTL) — لا طبقة ترجمة فوق واجهة إنجليزية
- الأجهزة
- كمبيوتر المكتب والهاتف — نفس النظام بلا نسخة مبتورة
- العملة والتوقيت
- العملة المحلية · التوقيت المحلي · تواريخ ميلادية DD/MM/YYYY
المشكلة قبل النظام
التاجر يستورد ١٨ صنفًا من الفول والأرز والزيوت والبهارات والملح، من موردين خارجيين ومن موردين محليين. المشكلة ليست في البيع، بل في ثلاث فجوات كانت تكلّفه مالًا حقيقيًا.
اقرأ التفاصيلإخفاء التفاصيل3 نقطة
- تكلفة الشحنة الحقيقية كانت مجهولة حتى تنتهي.
- — الشحنة الواحدة تمرّ بالجمارك ورصيف الميناء والغرفة التجارية وجهاز رقابة الأغذية والنقل — كل مصروف يُدفع في يوم مختلف ويُقيَّد في ورقة أو ملف Excel مختلف. سعر الكيلو الحقيقي لا يظهر إلا بعد أن تُجمع الأوراق يدويًا، وغالبًا بعد أن تكون البضاعة قد بيعت بسعرٍ حُدِّد بالتخمين.
- الحسابات كانت موزّعة على دفاتر وملفات Excel متفرقة.
- — دفتر للعملاء، وملف للشحنات، وملف للمصاريف — والأرقام تنتقل بينها بالنقل اليدوي. كل نقل فرصة لخطأ، ولا توجد نسخة واحدة صادقة من الحقيقة.
- البيع بالأجل كان يخسر قيمته بصمت.
- — التاجر يبيع بمهلة ٣٠ إلى ٩٠ يومًا. حين يتحرّك سعر الصرف والتضخّم خلال المهلة، يعود المبلغ نفسه بقوة شرائية أقل. الحلّ الذي كان يتّبعه: تحويل الفاتورة إلى ما يعادلها ذهبًا على الآلة الحاسبة، وكتابة الرقم على هامش الدفتر، وإعادة الحساب يدويًا مع كل دفعة جزئية. عمليةٌ صحيحة الفكرة، لكنها بطيئة وعرضة للخطأ، ولا أحد يستطيع مراجعتها لاحقًا.
المدخل: فهم التجارة قبل كتابة الكود
اقرأ التفاصيلإخفاء التفاصيل
بدأنا من سؤال واحد: ما الذي يجعل هذا النشاط يربح أو يخسر؟ الإجابة كانت رقمين: تكلفة الوحدة النهائية بعد كل المصاريف، وقيمة المديونية وقت تحصيلها لا وقت إصدارها.
فبنينا النظام حول هذين الرقمين لا حول شاشات الإدخال. كل قرار في البنية يخدم أحدهما: مصاريف الشحنة قيود مالية حقيقية مرتبطة بالشحنة (فتظهر في التكلفة والدفتر معًا بلا ازدواج)، وكل تحويل ذهبي يُخزَّن بسعره لحظة حدوثه (فلا يتغيّر أثرٌ ماضٍ بتغيّر سعر اليوم).
النظام ليس مجموعة شاشات مستقلة، بل سلسلة واحدة كل حلقة فيها تغذّي التالية: طلب الشحنة ← الميناء/التخليص ← خروج من الميناء ← دخول المخزن، وكل مصروف تخليص يُقيَّد ويُضاف للتكلفة. تكلفة الوحدة النهائية = (سعر الشراء + كل المصاريف) ÷ الكمية، فتصير دفعة مخزون بتكلفتها. ثم بيع من دفعة محدّدة ← خصم فوري من المخزون، وتُقاس الفاتورة بالذهب لحظة إصدارها: جرامات الفاتورة = الإجمالي ÷ سعر جرام عيار ٢٤ يوم الإصدار. وكل دفعة بسعر يومها: الجرامات المسدّدة = المبلغ المدفوع ÷ سعر الجرام يوم السداد ← المتبقّي بالجرامات، وقيمته بالجنيه بسعر اليوم.
النتيجة العملية: الفاتورة قد تُسدَّد بجنيهات أكثر مما صدرت به، وهذا هو الصواب. في البيانات المعروضة فاتورة صدرت بـ ٢٩٧٬٥٠٠ ج.م وسُدِّدت بدفعتين مجموعهما ٣٠٥٬٨٠٠ ج.م — الفارق ليس زيادة على العميل، بل هو نفس وزن الذهب الذي أخذه يوم الشراء، محسوبًا بسعر يوم السداد.
العربية وRTL والاستجابة
الواجهة عربية بالكامل واتجاهها من اليمين لليسار في بنيتها، لا بانعكاس بصري — والنظام يعمل على الهاتف بنفس القدرات.
اقرأ التفاصيلإخفاء التفاصيل4 نقطة
- التنقّل والجداول والنماذج والمستندات المطبوعة كلها مبنية على dir="rtl" وخصائص منطقية (padding-inline-start بدل padding-left).
- الأرقام والتواريخ والأكواد مُجبَرة على الاتجاه اللاتيني داخل النص العربي حتى لا تنقلب.
- الجداول العريضة تنزلق داخل حاويتها بدل أن تكسر الصفحة، والتنقّل يصير قائمة جانبية منزلقة.
- وضع ليلي (الافتراضي) ونهاري مبنيّان على متغيّرات لونية، ويُحفظ الاختيار للمستخدم.
المبيعات على الموبايل
الشاشات
32 شاشةالبرنامج حقيقي، والبيانات الظاهرة فيه ليست كذلك. كل الأسماء والأرقام في هذه الصور بيانات تجريبية مُولَّدة: الموردون والعملاء والمخازن والحسابات البنكية وأرقام الهاتف والأرقام الضريبية والمبالغ وأسعار الذهب — كلها متخيّلة، وقد أُنشئت على قاعدة بيانات محلية معزولة تمامًا لا صلة لها بقاعدة الإنتاج، ولم تُقرأ قاعدة الإنتاج ولا مرة. ما هو حقيقي: البرنامج نفسه (بناء إنتاجي فعلي بشاشاته وحساباته وسلوكه كما هي)، واسم النشاط وشعاره، وأسماء الأصناف المأخوذة من كتالوج النشاط الحقيقي، وأرقام حجم النظام المقيسة من المستودع، ونتيجة الاختبارات.
الدورة الكاملة — من الطلب إلى التحصيل
الاستيراد والشحنات
البيع المربوط بالذهب
العملاء والموردون
الدفتر والخزائن
الحوكمة والصلاحيات
المستندات المطبوعة
الدخول
الوضع النهاري
الأثر
| قبل | بعد |
|---|---|
| تكلفة الشحنة تُجمع يدويًا بعد انتهائها | التكلفة النهائية للوحدة تظهر لحظيًا مع كل مصروف يُقيَّد |
| ربط الفاتورة بالذهب على الآلة الحاسبة وإعادة الحساب مع كل دفعة | التحويل والسداد يحدثان تلقائيًا، وكل سعر مستخدم محفوظ كسجلّ ثابت |
| بيانات موزّعة على دفاتر وملفات Excel متفرقة | نسخة واحدة صادقة: ٢١ جدولًا مترابطًا خلف ١٨ شاشة |
| معرفة المتأخرين تحتاج مراجعة الدفتر | المتأخرون يُبرزون تلقائيًا بعدد أيام التأخير ويُرتَّبون أولًا |
| رصيد الخزنة تقدير ذهني | رصيد مشتقّ من الحركات نفسها مع كشف حساب متسلسل يُراجَع سطرًا سطرًا |
| نسخة احتياطية عند التذكّر | نسخة تلقائية كل فجر مع الاحتفاظ بآخر ٦٠ |
قبل
تكلفة الشحنة تُجمع يدويًا بعد انتهائها
بعد
التكلفة النهائية للوحدة تظهر لحظيًا مع كل مصروف يُقيَّد
قبل
ربط الفاتورة بالذهب على الآلة الحاسبة وإعادة الحساب مع كل دفعة
بعد
التحويل والسداد يحدثان تلقائيًا، وكل سعر مستخدم محفوظ كسجلّ ثابت
قبل
بيانات موزّعة على دفاتر وملفات Excel متفرقة
بعد
نسخة واحدة صادقة: ٢١ جدولًا مترابطًا خلف ١٨ شاشة
قبل
معرفة المتأخرين تحتاج مراجعة الدفتر
بعد
المتأخرون يُبرزون تلقائيًا بعدد أيام التأخير ويُرتَّبون أولًا
قبل
رصيد الخزنة تقدير ذهني
بعد
رصيد مشتقّ من الحركات نفسها مع كشف حساب متسلسل يُراجَع سطرًا سطرًا
قبل
نسخة احتياطية عند التذكّر
بعد
نسخة تلقائية كل فجر مع الاحتفاظ بآخر ٦٠
هذا الجدول يصف تغيّر القدرة (ما صار النظام قادرًا عليه) لا مكاسب مقيسة. لا يوجد قياس قبليّ/بعديّ موثّق لتوفير الوقت أو تقليل الأخطاء، فلم نذكر أي نسبة.




