الانتقال إلى المحتوى
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

بتاريخ:

السلام عليكم

عندي جدول للغياب يتكون من الحقول الآتية :

رقم الموظف :

تاريخ الغياب :

الغياب :

(في حال القيمة 1 يعني غايب , وفي حال القيمة 0 يعني حاضر)

نفرض أن أحد الموظفين غاب في شهر 2  عدد 5 أيام

اليوم الأول :  05/02/2014

اليوم الثاني :  10/02/2014

اليوم الثالث : 11/02/2014

اليوم الرابع : 12/02/2014

اليوم الخامس : 22/05/2014

 

نلاحظ انه من اليوم الثاني الى اليوم الرابع أيام متتالية , والذي أريده هو عمل دالة تحسب عدد الأيام المتتالية مع امكانية احتساب اكثر من حالة للأيام المتتالية في الشهر

 

وجزاكم الله خير

بتاريخ:


 CREATE OR REPLACE FUNCTION RETURN ABSENT_DAYS (EMP_NO NUMBER ,FROM_DATE  DATE, TO_DATE DATE ) RETURN NUMBER 
 IS
  V_DAYS NUMBER ;
  V_CHECK_ABSENT NUMBER ;
  V_ABSENT_DAYS  NUMBER := 0;
  V_DATE DATE ;
  V_NUMBER  NUMBER :=1 ;
  BEGIN  
       V_DAYS := (TO_DATE-FROM_DATE ) +1;
       V_DATE := FROM_DATE ;
           FOR I IN V_DAYS LOOP 
           V_CHECK_ABSENT := 0 ; -- Sure is value not null 
           
          SELECT FLAG_ABSENT INTO  V_CHECK_ABSENT FROM TABLE_NAME WHERE TABLE_NAME.DAY=V_DATE ;
         
          V_ABSENT_DAYS :=V_ABSENT_DAYS +V_CHECK_ABSENT ;
          
           V_DATE := V_DATE+ 1 ;
           END LOOP;
           
           RETURN V_ABSENT_DAYS ;
   END ABSENT_DAYS ;
  

تم تعديل بواسطة Ahmad.Hasan

بتاريخ:
  • كاتب الموضوع

أشكرك ياغالي

راح أطبقها

بتاريخ:

SELECT FLAG_ABSENT INTO  V_CHECK_ABSENT FROM TABLE_NAME WHERE TABLE_NAME.DAY=V_DATE ;
         and emp_no= p_empno

تم تعديل بواسطة Ahmad.Hasan

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

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

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

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

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

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.