كشف حساب عميل / مورد
1. نظرة عامة على التقرير
1.1 ما هو هذا التقرير؟
"كشف حساب عميل / مورد" هو كشف حساب موحّد يجمع كل الحركات المالية (فواتير، إشعارات دائنة ومدينة، سندات قبض وصرف، أوامر شراء، إلخ) المرتبطة بجهة اتصال واحدة، سواء تعامل معها المستخدم:
- كـ عميل فقط (باعت له المنشأة).
- كـ مورد فقط (اشترت منه المنشأة).
- بالصفتين معًا (باعت له واشترت منه في آنٍ واحد) — وهذه هي الميزة الجوهرية للتقرير.
1.2 المشكلة التي يحلّها التقرير
قبل توفر هذا التقرير، كانت أي منشأة تتعامل مع جهة واحدة كعميل ومورد في آنٍ معًا (مثال شائع جدًا في السوق السعودي: جهة حكومية أو شركة توريد تشتري منها المنشأة وتبيع لها أيضًا) تضطر إلى:
- استخراج كشف حساب العميل بشكل منفصل.
- استخراج كشف حساب المورد بشكل منفصل.
- تسوية الرقمين يدويًا في ملف إكسل خارجي للوصول إلى "صافي الحركة" الحقيقي بين الطرفين.
هذه العملية اليدوية تستهلك وقت فريق المالية عند كل تسوية، وتفتح الباب لأخطاء الجمع والطرح، وتؤخر الاتفاق النهائي على الرصيد مع الطرف الآخر. التقرير الموحّد يلغي هذه الخطوة اليدوية تمامًا بعرض كشف واحد مع رصيد افتتاحي وختامي وصافي حركة واحد.
1.3 لمن هذا التقرير؟
- المنشآت التي تتعامل مع نفس الجهة بصفتي عميل ومورد (مثل الجهات الحكومية، أو شركات التوزيع المتبادل).
- فرق المالية التي تقوم بتسوية حسابات الموردين والعملاء بشكل دوري (شهري/ربع سنوي).
- أي مستخدم يحتاج كشف حساب مُصفّى حسب مشروع، أو موقع/فرع، أو منتج معيّن.
1.4 مكان التقرير في النظام
القائمة الجانبية ← التقارير ← كل التقارير ← ضمن قسم التقارير المالية ← كشف حساب عميل / مورد.
2. المتطلب الأساسي: ربط المورد بالعميل (العميل المرتبط)
هذه هي الخطوة الجوهرية التي يجب أن يفهمها أي وكيل دعم قبل الإجابة على أي استفسار عن هذا التقرير، لأن أغلب الالتباس لدى المستخدمين يأتي من عدم فهمها.
2.1 كيف يعرف النظام أن المورد والعميل هما نفس الجهة؟
النظام لا يدمج تلقائيًا أي عميل ومورد يحملان نفس الاسم. الربط بينهما يتم يدويًا وبشكل صريح من خلال حقل مخصص:
المسار: المشتريات ← الموردين ← افتح تفاصيل المورد المطلوب بالضغط على تعديل بجانبه ← ابحث عن حقل "العميل المرتبط" ← اختر العميل المقابل له من القائمة.
إذا اشتكى عميل من أن "كشف الحساب الموحّد لا يُظهر حركاتي كعميل رغم أنني أراها في صفحة العميل الخاصة بي"، فالسبب شبه المؤكد هو: المورد الذي اختاره في التقرير غير مرتبط أصلاً بحسابه كعميل (حتى لو تطابق الاسمان)، ويجب توجيهه للتحقق من حقل "العميل المرتبط" في صفحة تفاصيل المورد.
2.5 هل الربط باتجاه واحد أم بالاتجاهين؟
حقل الربط ("العميل المرتبط") موجود على صفحة المورد فقط (ولا يوجد حقل مقابل باسم "المورد المرتبط" في صفحة العميل ).
3. شاشة التصفية: شرح كل حقل بالتفصيلعند فتح التقرير تظهر لوحة تصفية زرقاء داكنة أعلى الصفحة، تحتوي الحقول التالية:
3.1 الفترة الزمنية (من – إلى)
- حقلان لتاريخ البداية والنهاية بصيغة
YYYY-MM-DD. - عند فتح التقرير لأول مرة، يضع النظام فترة افتراضية
- آلية الإدخال:
- يمكن الكتابة المباشرة في الحقل بصيغة
YYYY-MM-DDثم الضغط Enter — وهذه الطريقة موثوقة ومباشرة. - يمكن أيضًا فتح التقويم (أيقونة التقويم) الذي يعرض شهرين متجاورين مع أسهم للتنقل بين الأشهر/السنوات (
<<<للخلف،>>>للأمام). - ملاحظة تقنية مهمة حول التقويم: عند فتحه، أول نقرة على أي يوم تُعيد ضبط الفترة بالكامل (يجعل تاريخ البداية = تاريخ النهاية = اليوم المنقور)، والنقرة الثانية على يوم لاحق تُحدد تاريخ النهاية الجديد. هذا يعني أن التقويم لا يسمح عمليًا باختيار تاريخ نهاية أقدم من تاريخ البداية (لأنه يعيد ضبط النطاق تلقائيًا بدل قبول نطاق معكوس) — وهذه حماية ضمنية من إدخال فترة غير منطقية عبر التقويم.
- القيم الجديدة لا تُطبَّق على التقرير إلا بعد الضغط على زر "تصفية". مجرد تغيير التاريخ لا يُحدّث الجدول تلقائيًا.
- يمكن الكتابة المباشرة في الحقل بصيغة
- سيناريو تاريخ البداية = تاريخ النهاية (يوم واحد فقط). النتيجة: التقرير يعرض فقط "الرصيد الافتتاحي" كسطر وحيد (وهو تراكم كل الحركات حتى نهاية اليوم السابق لهذا التاريخ)، دون أي حركات أخرى إن لم توجد حركة مسجلة بالضبط في ذلك اليوم. هذا سلوك سليم ومتوقع وليس خطأ.
- سيناريو فترة لا تحتوي على أي حركات لهذه الجهة. النتيجة: يظهر رصيد افتتاحي فقط (إن كان هناك رصيد سابق متراكم) أو رسالة "لا توجد بيانات" مع أيقونة صندوق فارغ إن لم يوجد شيء إطلاقًا (كما يحدث أيضًا عندما لا يتم اختيار أي جهة اتصال بعد).
3.2 حقل "جهة الاتصال" (اختيار العميل/المورد)
- قائمة بحث قابلة للكتابة ، بحث فوري أثناء الكتابة.
- يمكن البحث بالاسم أو بالرقم المرجعي (مثال: كتابة "VND049" يُظهر مباشرة "شركة A (VND049)").
- إذا كان نوع الجهة = كلاهما أو مورد: يظهر الاسم مرفوقًا برمزه كمورد، مثل
شركة الزهور (VND049). - إذا كان نوع الجهة = عميل: يظهر الاسم مرفوقًا برمزه كعميل، مثل
شركة الزهور (CUS1343)— وهذا قد يكون سجلاً مختلفًا تمامًا عن السجل الذي يحمل نفس الاسم في قائمة الموردين (راجع القسم 2.3).القائمة المعروضة تعتمد على قيمة حقل "نوع الجهة" المجاور:
- إذا كان نوع الجهة = كلاهما أو مورد: يظهر الاسم مرفوقًا برمزه كمورد، مثل
- تغيير قيمة "نوع الجهة" يُفرغ حقل "جهة الاتصال" تلقائيًا (لأن قائمة الخيارات تتغيّر جذريًا)، لذا يجب دائمًا اختيار "نوع الجهة" أولًا، ثم اختيار الجهة.
3.3 حقل "نوع الجهة" (كلاهما / عميل / مورد)
هذا هو المفتاح الفعلي لتفعيل ميزة الدمج، وله ثلاث قيم فقط:
- كلاهما (القيمة الافتراضية)
- يدمج حركات الجهة كعميل وحركاتها كمورد المرتبط بها في كشف واحد. عنوان التقرير يصبح "كشف حساب عميل / مورد".
- عميل
- يعرض فقط حركات الجهة كعميل (فواتير مبيعات، عروض أسعار، إشعارات دائنة). عنوان التقرير يصبح "كشف حساب عميل" (بدون "/ مورد").
- مورد
- يعرض فقط حركات الجهة كمورد (فواتير مشتريات، أوامر شراء، فواتير بسيطة، إشعارات مدينة). عنوان التقرير يصبح "كشف حساب مورد".
3.4 حقل "نوع التصفية"
قائمة منسدلة بحث تحدد بُعد إضافي واحد لتصفية الحركات ضمنه. الخيارات المتاحة فعليًا
- حقول إضافية وتختلف حسب الحقول الاضافية المضافة في كل منشأة مثل : مستورد من , اسم المندوب . تاريخ الانتهاء , او اي حقل اضافي تضيفه المنشأة
- المشاريع وبجانبها يتم اختيار المشروع او عدة مشاريع
- المنتجات وبجانبها يتم اختيار المنتج او عدة منتجات
- الفروع والمخازن ومن ثم بجانبها يتم تحديد الفرع او عدة فروع
- الأصول الثابتة ومن ثم بجانبها يتم تحديد اصل او اكثر.
آلية العمل على نوع التصفية
- يختار المستخدم البُعد من قائمة "نوع التصفية" (مثال: المنتجات).
- يظهر بجانبه/أسفله مربع بحث بقيمة يحمل تسمية تتغيّر بحسب البُعد المختار (مثل يظهر اسماء المشاريع المضافة بالمنشأة عند اختيار المشاريع). هذا المربع يعرض قائمة القيم الفعلية الموجودة في المنشأة (مثال حقيقي لقائمة منتجات يظهر المنتجات المضافة بالنظام).
- بعد الضغط على "تصفية"، يُطبَّق الفلتر ويظهر شريط تأكيد نصي أعلى جدول النتائج مباشرة تحت التاريخ، بالصيغة التالية بالضبط
"تم التصفية عبر [اسم البُعد] باختيار [القيمة/القيم المختارة]"
⚠️ تحذير بالغ الأهمية: إعادة احتساب الرصيد عند استخدام التصفية المتقدمة
هذه من أهم النقاط التي يجب أن يعرفها وكيل الدعم، وتم إثباتها رقميًا في الاختبار:
عندما يُفعَّل أي بُعد تصفية متقدم (مثل تصفية بمنتج معين)، فإن عمود "الرصيد" و"الرصيد الافتتاحي" في التقرير يُعاد احتسابهما بناءً على الحركات المُصفّاة فقط — وهو رقم مختلف تمامًا عن الرصيد الفعلي الكامل لحساب الجهة.
الأثر العملي: إذا جاء عميل يقول "الرصيد الذي يظهر لي في كشف الحساب المُصفّى حسب مشروع/منتج معين لا يطابق الرصيد الحقيقي لحسابي"، فهذا ليس خطأ في النظام، بل هو السلوك المصمَّم: الرصيد المعروض عند التصفية المتقدمة هو رصيد فرعي محسوب فقط من الحركات المطابقة للفلتر، وليس الرصيد الإجمالي الحقيقي للحساب. يجب توضيح ذلك للمستخدم، ونصحه بإزالة التصفية المتقدمة (أو استخدام زر "إعادة تعيين") إذا أراد الرصيد الفعلي الكامل.
3.5 حقل "مشروع" (تصفية سريعة إضافية بجانب " نوع التصفية " )
بجانب/أسفل حقل "نوع التصفية" يوجد أيضًا مربع منفصل بعنوان ثابت "مشروع:" يعمل كواجهة لاختيار قيمة البُعد المختار في القسم 3.4 أعلاه (في حال اختيار "المشاريع" تحديدًا، يتطابق مع مربع القيمة نفسه). .
3.7 زرا "تصفية" و"إعادة تعيين"
- زر "تصفية" (بأيقونة قمع، لون أزرق داكن، من نوع Submit): يُطبّق كل القيم المُدخلة في اللوحة على التقرير ويُحمّل النتائج. لا تتحدث أي بيانات في التقرير قبل الضغط على هذا الزر، حتى لو غُيّرت الحقول.
- زر "إعادة تعيين" (بأيقونة تراجع/Undo): يُعيد كل حقول التصفية إلى القيم الافتراضية دفعة واحدة: نوع الجهة → كلاهما، جهة الاتصال → فارغة، نوع التصفية المتقدم → فارغ، الفترة الزمنية → الفترة الافتراضية للنظام. لا يُبقي على أي فلتر جزئي.
4. بنية التقرير وشرح الأعمدة بالتفصيل
بعد الضغط على "تصفية" (وبعد اختيار جهة اتصال واحدة على الأقل)، يظهر:
4.1 عنوان ومعلومات الترويسة
- العنوان الديناميكي: "كشف حساب عميل / مورد" أو "كشف حساب عميل" أو "كشف حساب مورد" (بحسب نوع الجهة، انظر القسم 3.3).
- اسم الجهة (بدون الرمز المرجعي في هذا الموضع).
- سطر الفترة الزمنية: "من [تاريخ البداية] إلى [تاريخ النهاية]".
- (عند وجود تصفية متقدمة فقط) شريط تأكيد الفلتر: "تم التصفية عبر [البُعد] باختيار [القيمة]" (انظر القسم 3.4).
- زر "تصدير" يظهر أعلى يسار الجدول (انظر القسم 5).
4.2 أعمدة الجدول (بالترتيب كما تظهر من اليمين لليسار في الواجهة العربية)
- التاريخ
- تاريخ العملية المحاسبية. السطر الأول دائمًا بتاريخ بداية الفترة ويمثل الرصيد الافتتاحي.
- النوع
- نوع المستند: فاتورة مبيعات، إشعار دائن، إشعار مدين للمبيعات، سند قبض، سند صرف، (ولأنواع المورد: فاتورة مشتريات وما شابه). السطر الأول (الرصيد الافتتاحي) يكون هذا العمود فارغًا فيه.
- وصف العملية
- نص وصفي، غالبًا يحمل اسم الطرف/الجهة المرتبطة بالعملية (مثال: "شركة x ") وليس وصفًا حرًا مخصصًا بالضرورة. ملاحظة جودة بيانات: لوحظت حالة واحدة في بيانات الاختبار كانت فيها القيمة الإنجليزية "Invoice" بدل وصف عربي، وهذا يعكس تفاوتًا محتملًا في جودة إدخال البيانات من المستخدمين وليس خطأ في التقرير نفسه.
- المرجع
- رقم المستند الأصلي (مثال: INV6-Mar-26، CN201-Mar-26، REC28)، ويظهر كرابط أزرق قابل للنقر يوجّه مباشرة إلى صفحة المستند الأصلي (مثال حقيقي: الرابط
/tenant/invoices/1470عند النقر على المرجعINV8-Apr-26). هذا يتيح للمستخدم أو موظف الدعم التنقل الفوري من الكشف إلى المستند المصدر للتحقق.
- رقم المستند الأصلي (مثال: INV6-Mar-26، CN201-Mar-26، REC28)، ويظهر كرابط أزرق قابل للنقر يوجّه مباشرة إلى صفحة المستند الأصلي (مثال حقيقي: الرابط
- مدين
- القيمة التي تزيد الرصيد المستحق على الجهة (مثال مختبر: فاتورة مبيعات بقيمة 1,150 ظهرت في عمود المدين ورفعت الرصيد من 101,214.10 إلى 102,364.10).
- دائن
- القيمة التي تُخفّض الرصيد المستحق على الجهة (مثال مختبر: إشعار دائن بقيمة 1,150 ظهر في عمود الدائن وأعاد الرصيد إلى 101,214.10؛ وسند قبض بقيمة 122 ظهر في الدائن وخفّض الرصيد من 101,214.10 إلى 101,092.10).
- الرصيد
- الرصيد التراكمي (الجاري) بعد كل عملية بالترتيب الزمني. يُعاد احتسابه بالكامل إذا كانت هناك تصفية متقدمة مُفعّلة (راجع التحذير في القسم 3.4).
- مشروع
- يظهر اسم المشروع المرتبط بالعملية إن وُجد (عمود يكون غالبًا فارغًا للعمليات غير المرتبطة بمشروع).
4.3 منطق الحساب المحاسبي (مدين/دائن) — تم التحقق منه رقميًا
من واقع تسلسل حقيقي من الاختبار (نفس الجهة، بالترتيب الزمني):
- رصيد افتتاحي: 101,214.10
- فاتورة مبيعات بقيمة 1,150.00 → ظهرت في مدين → الرصيد أصبح 102,364.10 (زاد).
- إشعار دائن بقيمة 1,150.00 → ظهر في دائن → الرصيد عاد إلى 101,214.10 (نقص بنفس القيمة).
- سند قبض بقيمة 122.00 → ظهر في دائن → الرصيد أصبح 101,092.10 (نقص).
الخلاصة المؤكدة: التقرير يتّبع المنطق المحاسبي القياسي لكشف حساب العميل: الفواتير (مدين) تزيد المبلغ المستحق على الجهة، والإشعارات الدائنة وسندات القبض (دائن) تُخفّضه. هذا يسري بشكل موحّد حتى لو كانت الحركة المعروضة أصلها من الجانب "المورد" ضمن كشف مُدمج (لأن التقرير يعرض الأثر الصافي على الجهة ككل من منظور المنشأة).
4.4 صف "المجموع" وصف "صافي الحركة" وصف "الرصيد الختامي" (أسفل الجدول)
- المجموع: إجمالي عمود المدين + إجمالي عمود الدائن لكل الحركات ضمن الفترة (بدون الرصيد الافتتاحي).
- صافي الحركة: الفرق الصافي بين إجمالي الدائن وإجمالي المدين لهذه الفترة، ويظهر بتاريخ نهاية الفترة المحددة.
- الرصيد الختامي: = الرصيد الافتتاحي + صافي الحركة، ويظهر أيضًا بتاريخ نهاية الفترة.
تحقق رقمي: 101,214.10 (افتتاحي) + 3,048.50 (صافي الحركة = 4,720.50 دائن − 1,672.00 مدين) = 104,262.60 (ختامي) ✅ مطابق تمامًا لما ظهر فعليًا.
4.5 حالة عدم وجود بيانات
عند عدم اختيار أي "جهة اتصال" بعد (الحالة الافتراضية عند فتح الصفحة لأول مرة)، أو عند عدم وجود أي حركات ضمن الفترة/الفلتر المحدد، يظهر الجدول فارغًا مع أيقونة صندوق بريد فارغ ونص "لا توجد بيانات". هذه حالة طبيعية وليست خطأ نظام.
4.6 الترقيم (Pagination)
أسفل الجدول يظهر شريط ترقيم صفحات (أرقام الصفحات مع أسهم للتنقل للأمام > وللخلف <)، يظهر الرقم "1" كحد أدنى دائمًا حتى مع نتيجة صفحة واحدة. هذا يدعم استعراض عدد كبير من الحركات دون التأثير على أداء تحميل الصفحة (تحميل تدريجي/Progressive loading حسب التوثيق الرسمي).
5. التصدير (Export)
- يظهر زر "تصدير" (بسهم منسدل) أعلى يسار جدول النتائج، بعد تنفيذ عملية تصفية ناجحة لجهة اتصال محددة.
- عند فتحه، يعرض خيارين فقط، تم رصدهما فعليًا بالضبط:
- PDF (بأيقونة ملف PDF أحمر).
- اكسل (Excel) (بأيقونة ملف إكسل أخضر).
- وفق التوثيق الرسمي (ومتوافق مع سلوك التصفية المرصود فعليًا في الشريط أعلى الجدول): معايير التصفية المستخدمة (الفترة، الجهة، نوع الجهة، أي بُعد تصفية متقدم) تنعكس تلقائيًا داخل الملف المصدَّر نفسه، بحيث يعرف أي شخص يستلم الملف (مثل محاسب الطرف الآخر عند التسوية) على أي أساس بالضبط استُخرج الكشف، دون الحاجة لسؤال معد التقرير.
- يدعم التصدير كميات بيانات كبيرة بفضل آلية التحميل التدريجي في التقرير نفسه.
6. الصلاحيات (Permissions)
وفق التوثيق الرسمي لقيود:
- الوصول لهذا التقرير متاح تلقائيًا لكل مستخدم يملك أصلاً صلاحية الوصول إلى تقرير "كشف الحساب" (العادي/القديم)، دون الحاجة لإعداد أي صلاحية إضافية بأثر رجعي.
- عند إنشاء دور صلاحيات جديد من الصفر، يمكن لمدير النظام تفعيل الوصول إلى هذا التقرير الموحّد بشكل مستقل تمامًا عن صلاحية تقرير "كشف الحساب" التقليدي — أي أن الصلاحيتين منفصلتان قابلتان للتحكم بهما كل على حدة عند تصميم أدوار جديدة.
7. سيناريوهات مختبرة فعليًا (ملخص تنفيذي بالأرقام)
السيناريو 1
كشف مُدمَج لجهة ذات دور مزدوج
الإعداد: نوع الجهة = كلاهما، الجهة = شركة الزهور (VND049)
النتيجة الفعلية المرصودة: رصيد افتتاحي 101,214.10، مزيج حركات "فاتورة مبيعات" و"إشعار دائن" و"سند قبض" وغيرها، رصيد ختامي 104,262.60، العنوان "كشف حساب عميل / مورد"
السيناريو 2
نفس الجهة، تصفية "مورد" فقط
الإعداد: نوع الجهة = مورد، نفس الفترة
النتيجة الفعلية المرصودة: رصيد افتتاحي مختلف تمامًا (-1.00)، لا حركات ضمن الفترة، العنوان تحوّل إلى "كشف حساب مورد"
السيناريو 3
عميل بنفس الاسم لكن غير مرتبط
الإعداد: نوع الجهة = عميل، الجهة = شركة الزهور (CUS1343)
النتيجة الفعلية المرصودة: رصيد صفري بالكامل ولا حركات — يثبت استقلالية السجلين رغم تطابق الاسم
السيناريو 4
فترة يوم واحد (بداية = نهاية)
الإعداد: 2026-12-31 إلى 2026-12-31
النتيجة الفعلية المرصودة: ظهر فقط سطر الرصيد الافتتاحي المتراكم حتى ذلك التاريخ، بدون حركات جديدة
السيناريو 5
تصفية متقدمة بمنتج واحد
الإعداد: نوع التصفية = المنتجات، القيمة = مشمش
النتيجة الفعلية المرصودة: ظهر شريط "تم التصفية عبر المنتجات باختيار مشمش"، وتغيّر الرصيد الافتتاحي كليًا إلى 14,352.87 (رصيد فرعي محسوب من حركات هذا المنتج فقط)
السيناريو 6
تعدد الجهات بنفس الاسم
الإعداد: البحث عن "الزهور" ضمن الموردين
النتيجة الفعلية المرصودة: ظهرت نتيجتان مختلفتان: شركة الزهور (VND046) وشركة الزهور (VND049) — سجلان منفصلان
السيناريو 7
إعادة تعيين الفلاتر
الإعداد: الضغط على "إعادة تعيين" بعد ضبط عدة فلاتر
النتيجة الفعلية المرصودة: أعاد نوع الجهة إلى "كلاهما"، أفرغ جهة الاتصال، أفرغ الفلاتر المتقدمة، أعاد الفترة الزمنية للافتراضي
السيناريو 8
التنقل من الكشف إلى المستند الأصلي
الإعداد: النقر على رقم مرجعي (مثل INV8-Apr-26)
النتيجة الفعلية المرصودة: يوجّه مباشرة لرابط المستند الفعلي في النظام (/tenant/invoices/{id})
8. أفضل الممارسات الموصى بها
- تحقق دائمًا من الربط أولاً قبل افتراض وجود خلل: إذا لم تظهر حركات جهة معينة تحت "كلاهما"، تحقق من حقل "العميل المرتبط" في صفحة تفاصيل المورد.
- اعتمد على الرمز المرجعي (VND/CUS) لا على الاسم فقط عند اختيار الجهة، خاصة في المنشآت التي قد تحتوي على عدة جهات بأسماء متشابهة أو متطابقة.
- اختر "نوع الجهة" أولًا قبل البحث عن جهة الاتصال، لأن تغييره لاحقًا يُفرغ الاختيار.
- عند استخدام تصفية متقدمة (مشروع/منتج/فرع/أصل ثابت)، لا تعتمد على الرصيد الظاهر كرصيد حقيقي شامل — فهو رصيد فرعي محسوب من الحركات المطابقة للفلتر فقط. للحصول على الرصيد الحقيقي الكامل، أزل التصفية المتقدمة (اترك حقل "نوع التصفية" فارغًا) أو استخدم "إعادة تعيين".
- استخدم زر "تصفية" دائمًا بعد أي تعديل — لا يوجد تحديث تلقائي فوري للنتائج عند مجرد تغيير الحقول.
- عند مشاركة الملف المُصدَّر (PDF/Excel) مع طرف خارجي للتسوية، تحقق من شريط معايير التصفية الظاهر أعلى التقرير/الملف لضمان أن الطرف الآخر يفهم الأساس الذي استُخرج عليه الكشف (الفترة، نوع الجهة، أي فلتر متقدم).
- إذا احتجت لمطابقة الرصيد مع مستند مصدر معيّن، استخدم رابط عمود "المرجع" للانتقال المباشر للمستند بدل البحث عنه يدويًا.
9. أسئلة شائعة (FAQ) شاملة لدعم العملاء
س: لماذا لا تظهر فواتير مبيعاتي لهذا العميل رغم أنني اخترت "كلاهما"؟
ج: تحقق أولًا أن العميل مرتبط فعليًا بحساب المورد المستخدم عبر حقل "العميل المرتبط" في صفحة تفاصيل المورد. إذا لم يكن الحقل معبّأ، لن يدمج التقرير حركات العميل مهما اخترت "كلاهما". ثانيًا، تحقق أنك اخترت السجل الصحيح من القائمة (بالرمز المرجعي VND/CUS) وليس سجلًا آخر يحمل اسمًا مشابهًا.
س: لماذا الرصيد الذي يظهر في الكشف بعد تصفيته حسب مشروع/منتج معيّن مختلف عن الرصيد الحقيقي في صفحة العميل؟
ج: هذا سلوك مُصمَّم وليس خطأ. عند تفعيل أي بُعد تصفية متقدم (مشروع، منتج، فرع/مخزن، أصل ثابت، إلخ)، يُعاد احتساب الرصيد الافتتاحي والجاري بناءً على الحركات المطابقة لهذا الفلتر فقط، وليس إجمالي الحساب. لمعرفة الرصيد الحقيقي الكامل، أزل هذه التصفية المتقدمة.
س: اخترت عميلًا برصيد صفري رغم أنني متأكد من وجود حركات معه، ما السبب؟
ج: على الأغلب اخترت السجل الخطأ من قائمة البحث (قد يوجد أكثر من سجل بنفس الاسم — عميل ومورد منفصلان، أو حتى موردان اثنان بنفس الاسم). تحقق من الرمز المرجعي (CUS.../VND...) للتأكد من اختيار السجل الصحيح، وتحقق أيضًا من الفترة الزمنية المحددة (قد تكون الحركات خارج نطاق التاريخ المختار).
س: هل يمكنني تحديد فترة نهايتها أقدم من بدايتها؟
ج: عمليًا لا، منتقي التقويم في الواجهة يمنع ذلك تلقائيًا (اختيار تاريخ جديد يعيد ضبط النطاق بدل قبول تاريخ نهاية أسبق من البداية).
س: هل يمكن تصفية الكشف حسب أكثر من منتج أو مشروع في نفس الوقت؟
ج: بحسب البُعد المختار: تصفية "المنتجات" تدعم اختيارًا متعددًا (يمكن إضافة أكثر من منتج كوسوم منفصلة)، بينما تصفية "المشاريع" (كما اختبرناها) تعمل باختيار فردي (اختيار مشروع جديد يستبدل السابق). لكن لا يمكن الجمع بين بُعدين مختلفين (مثلاً مشروع ومنتج) في نفس عملية التصفية، إذ يُختار بُعد واحد فقط من قائمة "نوع التصفية" في كل مرة.
س: بأي صيغ يمكنني تصدير التقرير؟
ج: بصيغتي PDF أو Excel (اكسل)، عبر زر "تصدير" أعلى الجدول بعد تنفيذ التصفية.
س: هل معايير التصفية تظهر في الملف المُصدَّر؟
ج: نعم، معايير التصفية المستخدمة (الفترة، نوع الجهة، أي فلتر متقدم) تظهر أعلى التقرير وتنعكس تلقائيًا في الملف المصدَّر أيضًا.
س: من يملك صلاحية الوصول لهذا التقرير؟
ج: كل مستخدم لديه أصلاً صلاحية الوصول إلى تقرير "كشف الحساب" العادي يملك تلقائيًا صلاحية الوصول لهذا التقرير الموحّد. عند إنشاء أدوار صلاحيات جديدة، يمكن للمدير تفعيل صلاحية هذا التقرير تحديدًا بشكل مستقل عن صلاحية كشف الحساب التقليدي.
س: التقرير يعرض لي رقم مرجعي بالإنجليزية أو وصف عملية غير واضح (مثل "Invoice")، هل هذا خطأ؟
ج: هذا غالبًا يعكس طريقة إدخال البيانات الأصلية من قبل المستخدم عند إنشاء المستند (مثلاً كتابة الوصف بالإنجليزية)، وليس خللًا في التقرير نفسه. يُنصح بمراجعة/تحرير المستند المصدر (عبر رابط عمود "المرجع") لتصحيح الوصف إن رغب المستخدم بذلك.
س: هل التقرير يدعم كميات كبيرة من البيانات دون بطء؟
ج: نعم، يعتمد التقرير آلية "تحميل تدريجي" للبيانات (Progressive loading) للحفاظ على أداء سلس حتى مع عدد كبير من الحركات، مع دعم ترقيم صفحات للنتائج.
س: ما الفرق بين خانة "مدين" وخانة "دائن" في هذا الكشف؟
ج: خانة "مدين" تعني زيادة في المبلغ المستحق على الجهة (مثل فاتورة مبيعات جديدة)، وخانة "دائن" تعني نقصانًا في هذا المستحق (مثل إشعار دائن أو سند قبض دفعة من الجهة). الرصيد الجاري = الرصيد السابق + مدين − دائن.
س: كيف أصل من سطر في الكشف إلى الفاتورة أو المستند الأصلي مباشرة؟
ج: انقر على قيمة عمود "المرجع" (تظهر باللون الأزرق كرابط)، وستُنقل مباشرة إلى صفحة المستند الأصلي في النظام.
10. ملخص تقني لآلية عمل الواجهة (لتوثيق سلوك الأزرار والحقول بدقة)
- تغيير "نوع الجهة" → يُفرغ حقل "جهة الاتصال" فورًا (بدون الحاجة لضغط تصفية).
- تغيير أي حقل تصفية (تاريخ، جهة، بُعد متقدم) → لا يُحدّث النتائج تلقائيًا؛ يجب الضغط على زر "تصفية" (Submit) لتفعيل التغييرات.
- اختيار بُعد في "نوع التصفية" → يُظهر مُنتقي قيمة إضافي (تسميته تتغيّر حسب البُعد، مثال: "مشروع:") يجب اختيار قيمة منه أيضًا قبل الضغط على "تصفية" لتفعيل الفلتر الفرعي فعليًا.
- زر "تصفية" (submit, أيقونة قمع) ≠ زر "إعادة تعيين" (reset، أيقونة تراجع) — الأول يُطبّق، والثاني يمسح كل شيء ويعيد الافتراضي.
- زر "تصدير" يظهر فقط بعد وجود نتائج معروضة فعليًا في الجدول (بعد تصفية ناجحة).
- رابط عمود "المرجع" هو رابط HTML قياسي (
href) يوجّه لمسار المستند الفعلي، مما يجعله قابلاً للفتح في تبويب جديد كذلك.
تم إعداد هذا المستند بالكامل استنادًا إلى اختبار مباشر وفعلي على منشأة تجريبية في نظام قيود (بيانات وهمية بالكامل)، شمل: إنشاء واستعراض بيانات موردين وعملاء حقيقيين ضمن البيئة التجريبية، اختبار جميع حقول التصفية الأساسية والمتقدمة، اختبار سيناريوهات الحدود (فترة يوم واحد، جهات متطابقة الاسم غير مرتبطة، تصفية متعددة القيم)، التحقق الرقمي من صحة حسابات الأرصدة والمجاميع، واختبار التصدير والتنقل عبر الروابط.