الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

كيفيةعمل تقريرشهرى

Featured Replies

بتاريخ:

ارجو ن تشرحوا لى طريقة عمل تقرير شهرى واخر نصف شهرى لبرنامج مخزون وذلك لاستعراض حركة الصادر والوارد على حسب الشهر الذى اريد وهل يكون ذلك عن طريق الباريميتر وجزاك الله كل خير مع ملاحظة اننى مبتدى قى التقارير ارجو الشرح بالتفصيل

بتاريخ:

الاخ الكريم
طريقة اضافة عمل تقرير شهري ونصف شهري تعتمد على طبيعة البيانات التي تريدها فالموضوع يبدا بحساب البيانات كل شهر يعني اجمالي حساب الصادر مثلا من جدول المبيعات والوراد من جدول المشتريات خلال فترة وعادة تكون او تحسب على تاريخ الادخال في المخزون طبعا قصدي بالفترة هو ادخال شهر وسنة فقط

ولذلك يا اخي ممكن عمل هذا التقرير بعدة طرق منها المعقدة عن طريق جملة ال select statment بحيث تحضر البيان من اكثر من مكان
ومنها السهل وهي انك تجيب الحركة على الصنف وتجيب ايه الصادر والوراد وفي هذه الحالة يلزمك استخدام الفوميلا وحتشتغل كل وحده حسب الصنف
بمعنى في الكويري الرئيسية تستدعي الايتم واسمه فقط

لذلك يمكن وضع هذا الكود في جملة الكويري وعرضها

SELECT item_no,item_name from items



ثم تضع Formula في نفس المجموعة اللي يستعرض الايتم ويكون نوعها نمبر
طبعا هذه ترجع اجمالي الصادر
وتضع الكود التالي

declare
temp number;
begin 
Select Sum(nvl(amount,0)) into temp from invoices
where to_char(inv_date,'MM') =_Month
  and to_char(inv_date,'YYYY') =_Year
  and item_no=:item_no;

return(temp);
exception 
 when no_data_found then
  return(0);
end;



ثم تضع Formula في نفس المجموعة اللي يستعرض الايتم ويكون نوعها نمبر
طبعا هذه ترجع اجمالي الوارد
وتضع الكود التالي

declare
temp number;
begin 
Select Sum(nvl(amount,0)) into temp from sales
where to_char(sal_date,'MM') =_Month
  and to_char(sal_date,'YYYY') =_Year
  and item_no=:item_no;
return(temp);
exception 
 when no_data_found then
  return(0);
end;




طبعا ال :D_month و :angry:_year هو عبارة عن باراميتر
ممكن ادخاله قبل بداية التقرير

طبعا تعرض هذه الفورميلا ضمن الفيلد
هذا في حالة معرفة حركة الوارد والصادر على الايتم
وممكن تعديل الكويري الرئيسية بالتقرير اذا كنت تريد عرض الصنف الذي تم عليه الحركة في سواء صادر او وارد
بهذا الشكل

SELECT item_no,item_name from items
wher item_no in (select distinct item_no from invioce)
or item_no in (select distinct item_no from sales)



بالنسبة للتقرير النصف شهري فتحدد هنا من تاريخ الى تاريخ يعني مثلا من 01/06/2006 الى 15/06/2006 او من 16/06/2006 الى 30/06/2006

مثال

declare
temp number;
begin 
Select Sum(nvl(amount,0)) into temp from invoices
where (to_char(inv_date,'dd-mm-yyyy') between _fdate and _tdate)
  and item_no=:item_no;

return(temp);
exception 
 when no_data_found then
  return(0);
end;


حيث :(_fdate and :)_tdate هو تاريخ

هذه الفكرة بشكل عام وارجو ان تكون وضحت

  • بعد 1 شهر...
بتاريخ:
  • كاتب الموضوع

الاخ المشرف الستاذ اسامة شكرا كثيرا للمساعدة واسف على تاخر الرد وذلك بسبب بعض الظروف وجزاك الله كل خير

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.