بتاريخ: 12 فبراير 201412 سنة comment_246538 السلام عليكم عندي جدول للغياب يتكون من الحقول الآتية : رقم الموظف : تاريخ الغياب : الغياب : (في حال القيمة 1 يعني غايب , وفي حال القيمة 0 يعني حاضر) نفرض أن أحد الموظفين غاب في شهر 2 عدد 5 أيام اليوم الأول : 05/02/2014 اليوم الثاني : 10/02/2014 اليوم الثالث : 11/02/2014 اليوم الرابع : 12/02/2014 اليوم الخامس : 22/05/2014 نلاحظ انه من اليوم الثاني الى اليوم الرابع أيام متتالية , والذي أريده هو عمل دالة تحسب عدد الأيام المتتالية مع امكانية احتساب اكثر من حالة للأيام المتتالية في الشهر وجزاكم الله خير تقديم بلاغ
بتاريخ: 12 فبراير 201412 سنة comment_246554 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 ; تم تعديل 12 فبراير 201412 سنة بواسطة Ahmad.Hasan تقديم بلاغ
بتاريخ: 12 فبراير 201412 سنة comment_246565 SELECT FLAG_ABSENT INTO V_CHECK_ABSENT FROM TABLE_NAME WHERE TABLE_NAME.DAY=V_DATE ; and emp_no= p_empno تم تعديل 12 فبراير 201412 سنة بواسطة Ahmad.Hasan تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.