
POS → Sessions #
🆕 Print Summary (Excel) Report Enhancement #
🔹 Update Summary #
تم تحسين وتصحيح تقرير Print Summary (Excel) الخاص بجلسات POS لضمان دقة كاملة في القيم المالية والضريبية.
✅ Enhanced Metrics in Export #
يعرض ملف Excel الآن القيم التالية بشكل موثوق:
- Total Before Tax
- Total After Tax
- Tax Amount
- Refund
- Credit Amount
يتم احتساب القيم مباشرة من بيانات جلسة الـ POS الفعلية (الطلبات، المدفوعات، الضرائب، الإرجاعات، والـ credits).
🔁 Accuracy & Calculation Fixes #
- تحديث منطق احتساب الضريبة بما يتوافق مع:
- الحساب الرسمي
- التقريب (rounding) الصحيح
- الحساب الرسمي
- معالجة كاملة لعمليات Refund:
- تخفيض الإجمالي قبل الضريبة
- تعديل الضريبة
- انعكاس صحيح على الإجمالي بعد الضريبة
- تخفيض الإجمالي قبل الضريبة
- عكس عمليات Credit في عمود مستقل بدون التأثير على باقي الإجماليات.
⚙️ Performance & Compatibility #
- الأداء مستقر حتى مع الجلسات ذات الأحجام الكبيرة.
- إعادة تصدير الجلسات القديمة:
- يعرض القيم المصححة عند توفر إعادة الحساب.
- يعرض القيم المصححة عند توفر إعادة الحساب.
- لا أخطاء أو تراجعات (regressions).
📌 Scope #
- ينطبق فقط على:
- POS Session → Print → Print Summary (Excel)
- POS Session → Print → Print Summary (Excel)
- لا تأثير على:
- تقارير POS الأخرى
- إغلاق الجلسات
- الاستخدام اليومي للـ POS
- تقارير POS الأخرى
Inventory → Adjustments Out #
🆕 Batch Quantity Refresh Enhancement #
🔹 Update Summary #
تحسين قابلية الاستخدام عند تحديث كميات Adjustments Out للمنتجات المرتبطة بالـ batches.
✅ Key Enhancement #
- عند الضغط على زر Refresh / Recompute:
- يتم جلب أحدث كمية متاحة للـ batch المختار.
- إذا كانت الكمية المتاحة أقل من الكمية المُدخلة:
- يتم تعديل Actual Quantity تلقائيًا لتطابق المتاح.
- يتم تعديل Actual Quantity تلقائيًا لتطابق المتاح.
- يتم جلب أحدث كمية متاحة للـ batch المختار.
🎯 Benefits #
- لا حاجة لإعادة اختيار الـ batch.
- منع صرف كميات أكبر من المتاح.
- كفاءة أعلى في البيئات متعددة المستخدمين.
📎 Behavioral Notes #
- يبقى:
- Batch / Lot
- UoM
- Location
بدون تغيير.
- Batch / Lot
- التحديث يؤثر فقط على Actual Quantity عند الحاجة.
- ينطبق على جميع المنتجات المتتبعة بالـ batch.
Inventory → Periodic Adjustments (Cycle Count) #
🆕 Workflow Enhancements #
🔹 Overview #
تحسينات شاملة لتحديث وتسهيل عمليات الجرد الدوري.
✅ New Features #
🔁 Automated Cycle Count Scheduling #
- دعم ترددات الجرد حسب الموقع.
- جدولة تلقائية للجرد القادم بعد إغلاق الحالي.
- تعبئة تاريخ الجرد المقترح تلقائيًا في wizard.
📋 Inventory Adjustment Templates #
- إنشاء Templates قابلة لإعادة الاستخدام تشمل:
- منتجات
- مواقع
- كميات افتراضية (اختياري)
- منتجات
- تقليل الإدخال اليدوي والأخطاء.
🛡️ Safety Validation Before Apply #
- التحقق من تغيّر الكميات منذ إنشاء المسودة.
- في حال وجود اختلاف:
- تحذيرات
- تسجيل معلومات تدقيق (Audit).
- تحذيرات
📊 Cycle Count Performance Dashboard #
- لوحة تقارير جديدة تعرض:
- آخر / القادم للجرد
- عدد عمليات الجرد
- اتجاهات الفروقات
- آخر / القادم للجرد
- تمييز المواقع ذات الفروقات العالية.
Clinic & POS → Prescriptions #
🆕 Prescription Flexibility & Product Access #
✅ Enhancements #
Optional Generic Name #
- جعل Generic Name حقلًا اختياريًا.
- إمكانية حفظ الوصفة باستخدام Trade Name فقط.
POS Dispensing by Trade Name #
- عرض وصرف الأدوية في POS باستخدام:
- Trade Name
- Trade Name
- الاحتفاظ بالـ Generic Name داخليًا إن وُجد.
New Product Menu in Clinic #
- إضافة قائمة Products داخل Clinic Module.
- الوصول لقائمة المنتجات مباشرة دون التنقل بين الموديولات.
Configurable Access #
- التحكم بصلاحية عرض قائمة المنتجات حسب المستخدم / المجموعة.
- عند الإخفاء:
- لا تظهر القائمة
- يتم منع الوصول المباشر.
- لا تظهر القائمة
Communication → WhatsApp #
🆕 Editable WhatsApp Message Content #
🔹 Update Summary #
إتاحة تعديل محتوى رسائل WhatsApp قبل الإرسال.
✅ Key Features #
- تعديل النص (النبرة، الصياغة، التفاصيل).
- صلاحية جديدة للتحكم بمن يمكنه التعديل.
- الدعم يشمل:
- جميع قوالب WhatsApp.
- جميع قوالب WhatsApp.
📝 Audit & Traceability #
- تسجيل:
- النص النهائي المرسل
- المستخدم الذي قام بالتعديل
- النص النهائي المرسل
- المستخدمون بدون صلاحية:
- يرسلون القوالب المعتمدة فقط.
- يرسلون القوالب المعتمدة فقط.
Accounting → Payments (Checks) #
🆕 Correct Destination Account for “Receive Check” #
🔹 Update Summary #
تصحيح منطق حساب الوجهة عند استلام شيكات العملاء.
✅ Behavior #
- التوجيه التلقائي إلى:
- Outstanding Receipts في Bank Journal.
- Outstanding Receipts في Bank Journal.
- منع اختيار حسابات غير صحيحة مع:
- رسالة خطأ واضحة بدل “invalid state”.
- رسالة خطأ واضحة بدل “invalid state”.
📎 Additional Notes #
- العمليات السابقة غير متأثرة.
- إضافة Help Text لتوضيح السلوك.
Accounting → Payments #
🆕 Automatic Destination Account Lock #
🔹 Update Summary #
قفل حساب الوجهة تلقائيًا بعد اختيار الشريك.
✅ Behavior #
- Customer Payment → Receivable Account
- Vendor Payment → Payable Account
- يصبح الحقل Read-only بعد اختيار الشريك.
- بدون شريك:
- يبقى الحقل قابلًا للتعديل.
- يبقى الحقل قابلًا للتعديل.
🎯 User Experience #
- تمييز بصري للحقل المقفول.
- Tooltip يوضح السبب.
Accounting → Vouchers #
🆕 Check Amount on Printed Payment Voucher #
🔹 Update Summary #
عرض Check Amount مباشرة على سند الدفع المطبوع.
📌 Applies To #
- Customer → Receive Cheque
- Vendor → Cheque Issuance
✅ Notes #
- المبلغ مأخوذ من payment.amount.
- بنفس العملة والدقة.
- لا تغيير على تخطيط السند.
Accounting → Partner Ledger #
🆕 Zero Balance Visibility Permission #
🔹 Update Summary #
إضافة صلاحية خاصة لعرض الشركاء ذوي الرصيد الصفري.
✅ Behavior #
- المستخدم المخوّل:
- يمكنه تفعيل “Display zero balances”.
- يمكنه تفعيل “Display zero balances”.
- المستخدم غير المخوّل:
- يتم إخفاء الخيار تلقائيًا.
- تُستبعد الأرصدة الصفرية.
- يتم إخفاء الخيار تلقائيًا.
📌 Scope #
- ينطبق فقط على:
- Partner Ledger
- Partner Ledger
- لا تأثير على تقارير أخرى.
Purchase → Purchase History #
🆕 New Fields Added #
🔹 Enhancements #
- Expiration Date
- Tax Amount
📌 Details #
- التاريخ من:
- Batch / Lot أو Purchase Line
- Batch / Lot أو Purchase Line
- الضريبة:
- القيمة الفعلية المطبقة
- القيمة الفعلية المطبقة
- الحقول:
- قابلة للبحث
- الفرز
- التجميع
- قابلة للبحث
- السجلات القديمة:
- تبقى متوافقة (Blank / N/A / 0).
- تبقى متوافقة (Blank / N/A / 0).
POS → Promotions #
🆕 Enhanced Product Selection Filters #
🔹 Update Summary #
تحسين واجهة اختيار المنتجات في:
POS Promotions → Percent Discount on Quantity
✅ New Filters #
- Product Type
- Product Category
- Agent
- Brand
- POS Category
📌 Notes #
- يمكن دمج الفلاتر معًا.
- جميع المنتجات تظهر افتراضيًا.
- لا تأثير على العروض الحالية.
- الأداء مستقر مع الكتالوجات الكبيرة.
Inventory → Quantity Validation #
🆕 Maximum Quantity Limit #
🔹 Update Summary #
فرض حد أقصى لإدخال الكميات.
✅ Rule #
- الحد الأقصى: 999,999
- يتم منع أي قيمة ≥ 1,000,000
- التحقق يتم:
- على الواجهة
- على مستوى الـ backend
- على الواجهة
📌 Applies To #
- On-hand Quantity
- Opening Stock
- Purchase Receipts
- Inventory Adjustments In
Customers → New Records #
🆕 Default Country = Saudi Arabia #
🔹 Update Summary #
تعيين Saudi Arabia كدولة افتراضية عند إنشاء عميل جديد.
✅ Behavior #
- يتم تعبئة الدولة تلقائيًا.
- يمكن تعديلها يدويًا.
- السجلات الحالية غير متأثرة.
- قابل للتوسعة مستقبلًا بالإعدادات.
✅ Sprint 19 Summary #
- دقة مالية أعلى في POS.
- تحسينات قوية في الجرد والمخزون.
- مرونة أكبر في العيادات والوصفات.
- ضبط محاسبي أدق وتقليل الأخطاء.
- تجربة مستخدم أنظف وأكثر أمانًا.