فواتير العملاء المتأخرة
الفواتير المفتوحة التي تجاوزت تاريخ استحقاقها، مع أيام التأخير ورقم هاتف العميل.
الأداة
SELECT T0.DocNum, T0.CardCode, T0.CardName, T1.Phone1, T0.DocDueDate, DATEDIFF(day, T0.DocDueDate, GETDATE()) AS DaysOverdue, T0.DocTotal - T0.PaidToDate AS OpenAmount FROM OINV T0 INNER JOIN OCRD T1 ON T0.CardCode = T1.CardCode WHERE T0.DocStatus = 'O' AND T0.CANCELED = 'N' AND T0.DocDueDate < GETDATE() ORDER BY DaysOverdue DESC
SELECT T0."DocNum", T0."CardCode", T0."CardName", T1."Phone1", T0."DocDueDate", DAYS_BETWEEN(T0."DocDueDate", CURRENT_TIMESTAMP) AS "DaysOverdue", T0."DocTotal" - T0."PaidToDate" AS "OpenAmount" FROM OINV T0 INNER JOIN OCRD T1 ON T0."CardCode" = T1."CardCode" WHERE T0."DocStatus" = 'O' AND T0."CANCELED" = 'N' AND T0."DocDueDate" < CURRENT_TIMESTAMP ORDER BY "DaysOverdue" DESC
ما الذي يجيب عنه هذا الاستعلام
يبدأ مساعد التحصيل يومه بقائمة اتصالات: أي الفواتير تجاوزت استحقاقها، وبكم يومًا، وكم المبلغ المفتوح، وبأي رقم يتصل. تظهر الفواتير الأكثر تأخرًا أولًا.
مثال على النتائج
قيم تجريبية توضيحية. أعمدتك هي نفسها؛ والأرقام تأتي من شركتك.
| DocNum | CardCode | CardName | Phone1 | DocDueDate | DaysOverdue | OpenAmount |
|---|---|---|---|---|---|---|
| 3051 | C50000 | Summit Supplies | +1 555 0142 | 2026-07-16 | 100 | 3150 |
| 3124 | C40000 | Blue Harbor Foods | +1 555 0188 | 2026-08-28 | 57 | 1800 |
| 3190 | C20000 | Acme Trading | +1 555 0101 | 2026-09-24 | 30 | 5300 |
| 3233 | C30000 | Northwind Retail | 2026-10-14 | 10 | 2450 |
SQL Server مقابل SAP HANA
تصبح DATEDIFF(day, ..., GETDATE()) هي DAYS_BETWEEN(..., CURRENT_TIMESTAMP)، ويصبح شرط التصفية DocDueDate < GETDATE() هو < CURRENT_TIMESTAMP. ويستطيع HANA الترتيب حسب الاسم المستعار المقتبس "DaysOverdue" تمامًا مثل SQL Server.
الأخطاء الشائعة وحلولها
- الفواتير المستحقة اليوم تظهر متأخرة بـ 0 يوم: تتضمن GETDATE() و CURRENT_TIMESTAMP الوقت، فتاريخ الاستحقاق اليوم عند الساعة 00:00 يكون أصغر بالفعل. قارن بالتاريخ فقط: CAST(GETDATE() AS date) في SQL Server، و CURRENT_DATE في HANA.
- عمود الهاتف فارغ لبعض العملاء: يأتي Phone1 من البيانات الرئيسية لشريك الأعمال (OCRD). إذا كان فريقك يخزن الأرقام في جهة الاتصال، فاربط OCPR عبر T0.CntctCode واستخدم حقل Cellolar أو Tel1.
استعلامات ذات صلة
مرجع الجداول: جدول OINV (فاتورة المبيعات (الرأس)) · جدول OCRD (شركاء الأعمال)
ثلاث خطوات بدون تسجيل
انسخ النسخة المناسبة
استخدم تبويب SQL Server لقواعد بيانات MS SQL، وتبويب HANA لـ SAP B1 على HANA.
افتح مولّد الاستعلامات
في SAP Business One اذهب إلى الأدوات ← الاستعلامات ← مولّد الاستعلامات (Tools → Queries → Query Generator)، والصق الاستعلام وانقر تنفيذ (Execute).
احفظ وشارك
انقر حفظ، واختر فئة، وسمِّ الاستعلام. يستطيع فريقك تشغيله من مدير الاستعلامات.
أسئلة حول هذه الأداة
كيف أشغّل استعلام «فواتير العملاء المتأخرة» في SAP Business One؟
انسخ النسخة التي تناسب قاعدة بياناتك، وافتح الأدوات ← الاستعلامات ← مولّد الاستعلامات، والصقه في مربع SQL وانقر تنفيذ. احفظه لإعادة استخدامه لاحقًا.
ما الجداول التي يستخدمها هذا الاستعلام؟
يقرأ OINV، OCRD من المخطط القياسي لـ SAP Business One. لا يحتاج إلى أي حقول معرّفة من قِبل المستخدم.
هل يمكن تحويله إلى لوحة معلومات أو تنبيه؟
نعم. نحوّل الاستعلامات إلى تقارير Crystal، أو تقارير Excel تتحدّث تلقائيًا، أو تنبيهات SAP B1، أو رسائل واتساب للمديرين.
مصممة لفرق SAP Business One
تحتاج هذا داخل SAP Business One؟
نطوّر إضافات وتقارير وتكاملات لـ SAP B1 على SQL Server و HANA. أخبرنا بما تحتاجه واحصل على سعر ثابت، عادةً خلال 24 ساعة.
