تقرير أعمار ذمم العملاء (AR Aging)
رصيد الفواتير المفتوحة لكل عميل في فئات 0–30 و31–60 و61–90 وأكثر من 90 يومًا حسب تاريخ الاستحقاق.
الأداة
SELECT T0.CardCode, T0.CardName, SUM(CASE WHEN DATEDIFF(day, T0.DocDueDate, GETDATE()) <= 30 THEN T0.DocTotal - T0.PaidToDate ELSE 0 END) AS Days0to30, SUM(CASE WHEN DATEDIFF(day, T0.DocDueDate, GETDATE()) BETWEEN 31 AND 60 THEN T0.DocTotal - T0.PaidToDate ELSE 0 END) AS Days31to60, SUM(CASE WHEN DATEDIFF(day, T0.DocDueDate, GETDATE()) BETWEEN 61 AND 90 THEN T0.DocTotal - T0.PaidToDate ELSE 0 END) AS Days61to90, SUM(CASE WHEN DATEDIFF(day, T0.DocDueDate, GETDATE()) > 90 THEN T0.DocTotal - T0.PaidToDate ELSE 0 END) AS Over90, SUM(T0.DocTotal - T0.PaidToDate) AS TotalOpen FROM OINV T0 WHERE T0.DocStatus = 'O' AND T0.CANCELED = 'N' GROUP BY T0.CardCode, T0.CardName ORDER BY TotalOpen DESC
SELECT T0."CardCode", T0."CardName", SUM(CASE WHEN DAYS_BETWEEN(T0."DocDueDate", CURRENT_TIMESTAMP) <= 30 THEN T0."DocTotal" - T0."PaidToDate" ELSE 0 END) AS "Days0to30", SUM(CASE WHEN DAYS_BETWEEN(T0."DocDueDate", CURRENT_TIMESTAMP) BETWEEN 31 AND 60 THEN T0."DocTotal" - T0."PaidToDate" ELSE 0 END) AS "Days31to60", SUM(CASE WHEN DAYS_BETWEEN(T0."DocDueDate", CURRENT_TIMESTAMP) BETWEEN 61 AND 90 THEN T0."DocTotal" - T0."PaidToDate" ELSE 0 END) AS "Days61to90", SUM(CASE WHEN DAYS_BETWEEN(T0."DocDueDate", CURRENT_TIMESTAMP) > 90 THEN T0."DocTotal" - T0."PaidToDate" ELSE 0 END) AS "Over90", SUM(T0."DocTotal" - T0."PaidToDate") AS "TotalOpen" FROM OINV T0 WHERE T0."DocStatus" = 'O' AND T0."CANCELED" = 'N' GROUP BY T0."CardCode", T0."CardName" ORDER BY "TotalOpen" DESC
ما الذي يجيب عنه هذا الاستعلام
يعدّ مراقب الائتمان قائمة التحصيل الأسبوعية، ويريد المدير المالي معرفة حجم أموال العملاء المتأخرة لأكثر من 60 أو 90 يومًا. يقسّم هذا الاستعلام رصيد الفواتير المفتوحة لكل عميل إلى فئات عمرية حسب تاريخ الاستحقاق.
مثال على النتائج
قيم تجريبية توضيحية. أعمدتك هي نفسها؛ والأرقام تأتي من شركتك.
| CardCode | CardName | Days0to30 | Days31to60 | Days61to90 | Over90 | TotalOpen |
|---|---|---|---|---|---|---|
| C20000 | Acme Trading | 12400 | 5300 | 0 | 2100 | 19800 |
| C30000 | Northwind Retail | 8750 | 0 | 3200 | 0 | 11950 |
| C40000 | Blue Harbor Foods | 2500 | 1800 | 0 | 4600 | 8900 |
| C50000 | Summit Supplies | 0 | 0 | 0 | 3150 | 3150 |
SQL Server مقابل SAP HANA
تصبح كل DATEDIFF(day, T0.DocDueDate, GETDATE()) هي DAYS_BETWEEN(T0."DocDueDate", CURRENT_TIMESTAMP). ترتيب المعاملات نفسه (البداية، النهاية)، فالنتيجة الموجبة ما زالت تعني تجاوز الاستحقاق، ولا تتغير حدود الفئات.
الأخطاء الشائعة وحلولها
- الإجماليات لا تطابق التقرير القياسي لأعمار ذمم العملاء: يقرأ هذا الاستعلام فواتير المبيعات المفتوحة فقط. لا تُطرح الإشعارات الدائنة المفتوحة والدفعات المقدمة والدفعات تحت الحساب، لذلك قد يكون التقرير القياسي أقل.
- الفواتير غير المستحقة بعد تقع في فئة 0-30: الفواتير غير المستحقة تعطي عدد أيام سالبًا، وهو ما يطابق الشرط <= 30. أضف فئة منفصلة NotDue (الأيام <= 0) إذا أردت فصلها.
- المبالغ تبدو خاطئة لعملاء العملات الأجنبية: DocTotal و PaidToDate بالعملة المحلية. استخدم DocTotalFC - PaidFC لحساب الأعمار بعملة المستند.
استعلامات ذات صلة
مرجع الجداول: جدول OINV (فاتورة المبيعات (الرأس))
ثلاث خطوات بدون تسجيل
انسخ النسخة المناسبة
استخدم تبويب SQL Server لقواعد بيانات MS SQL، وتبويب HANA لـ SAP B1 على HANA.
افتح مولّد الاستعلامات
في SAP Business One اذهب إلى الأدوات ← الاستعلامات ← مولّد الاستعلامات (Tools → Queries → Query Generator)، والصق الاستعلام وانقر تنفيذ (Execute).
احفظ وشارك
انقر حفظ، واختر فئة، وسمِّ الاستعلام. يستطيع فريقك تشغيله من مدير الاستعلامات.
أسئلة حول هذه الأداة
كيف أشغّل استعلام «تقرير أعمار ذمم العملاء (AR Aging)» في SAP Business One؟
انسخ النسخة التي تناسب قاعدة بياناتك، وافتح الأدوات ← الاستعلامات ← مولّد الاستعلامات، والصقه في مربع SQL وانقر تنفيذ. احفظه لإعادة استخدامه لاحقًا.
ما الجداول التي يستخدمها هذا الاستعلام؟
يقرأ OINV من المخطط القياسي لـ SAP Business One. لا يحتاج إلى أي حقول معرّفة من قِبل المستخدم.
هل يمكن تحويله إلى لوحة معلومات أو تنبيه؟
نعم. نحوّل الاستعلامات إلى تقارير Crystal، أو تقارير Excel تتحدّث تلقائيًا، أو تنبيهات SAP B1، أو رسائل واتساب للمديرين.
مصممة لفرق SAP Business One
تحتاج هذا داخل SAP Business One؟
نطوّر إضافات وتقارير وتكاملات لـ SAP B1 على SQL Server و HANA. أخبرنا بما تحتاجه واحصل على سعر ثابت، عادةً خلال 24 ساعة.
