بتاريخ: 27 أكتوبر 201411 سنة comment_256144 السلام عليكم يوجد معي اثنين بلوك الاول يحتوي على حقلين من تاريخ والحقل الثاني الى تاريخ والبلوك الثاني يحتوي على زار احتساب التواريخ والحقل الثاني التواريخ المطلوب: اريد عند الظغط على زار احتساب التواريخ يقوم البرنامج بادخل التواريخ مابين التاريخيين الموجوده في البلوك الاول الى البلوك الثاني في حقل التواريخ ارجوا المساعدة العاجلة مرفق صورة توضحيه للشكل المطلوب تقديم بلاغ
بتاريخ: 27 أكتوبر 201411 سنة comment_256145 when button pressed declare counter number := 1 ; begin go_block('second_block') ; first_record ; loop :second_block.item_name := :first_block.from_date + counter next_record ; counter := counter + 1 ; exit when second_block.item_name > :first_block.to_date ; end loop ; end ; -- not tested بس الفكرة صح ان شاء الله تم تعديل 28 أكتوبر 201411 سنة بواسطة ميسم الكرام تقديم بلاغ
بتاريخ: 28 أكتوبر 201411 سنة comment_256155 وعليكم السلام اتوقع ان الحل في استخدام LOOP لإحضار اكبر تاريخ MAX وأصغر تاريخ MIN وبهذا تكون القيمتين من أصغر تاريخ الى أكبر تاريخ تقديم بلاغ
بتاريخ: 29 أكتوبر 201411 سنة كاتب الموضوع comment_256218 اخي اسلام الكود لايقوم باحتساب بشكل صحيح ويعطي اكثر من سنة وليس بين الفترة المحدده يامهندسب افيدونا تقديم بلاغ
بتاريخ: 29 أكتوبر 201411 سنة comment_256220 انا قلتلك not tested انا اديتك الفكرة , والفكرة صح باذن الله , اظبط الدنيا انت بقى وبعدين ازاي هيدي اكتر من سنة ؟ تم تعديل 29 أكتوبر 201411 سنة بواسطة eslam elbyaly تقديم بلاغ
بتاريخ: 30 أكتوبر 201411 سنة comment_256222 جرب الكود التالي ..أعطاني نتيجة في نافذة الـ SQl لكن حقيقة الأمر لم أجربه كود في نافذة الديفيلوبر لإني لم أثبت الديفيلوبر على الجهاز لدي select to_date('01/09/2014','dd/mm/yyyy') + rownum -1 from all_objects where rownum <= to_date('1/11/2014','dd/mm/yyyy')-to_date('01/09/2014','dd/mm/yyyy')+1 أو بعد التعويض بدل التاريخ بإسم الحقل بداية التاريخ ونهاية التاريخ المراد الحساب له وإجراء بعض التعديلات عليه أضافة الى ما ذكرت ..يعني تقوم بإضافة into الحقل المراد ان تظهر النتيجة به لإني كما ذكرت الديفيلوبر غير مثبت لدي على الجهاز select to_date(:start_date,'dd/mm/yyyy') + rownum -1 from all_objects where rownum <= to_date(:end_date,'dd/mm/yyyy')-to_date(:start_date,'dd/mm/yyyy')+1 تقديم بلاغ
بتاريخ: 30 أكتوبر 201411 سنة comment_256233 القف يا كبير الكود ده شغال ان شاء الله و TESTED declare counter number := 1 ; X NUMBER ; begin go_block('b2') ; first_record ; X := (:TO_DATE - :FROM_DATE) ; loop :from_to_dates := :from_date + counter ; next_record ; counter := counter + 1 ; exit when COUNTER > (X - 1) ; end loop ; end ; تم تعديل 30 أكتوبر 201411 سنة بواسطة ميسم الكرام تقديم بلاغ
بتاريخ: 30 أكتوبر 201411 سنة كاتب الموضوع comment_256239 مشكور اخي اسلام وايضا الاخت ميسم تم تطبيق الكود وقمت باجراء عليها تعديلات بسيطة والا مشى الحال معي declare counter number := 1 ; X NUMBER ; begin go_block('second') ; first_record ; X := (:t2 - :t1) ; loop :t3 := :t1 + counter ; next_record ; counter := counter + 1 ; exit when COUNTER > (X ) ; end loop ; first_record ; :t3:= :t1; end ; تم تعديل 30 أكتوبر 201411 سنة بواسطة ميسم الكرام تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.