بتاريخ: 5 سبتمبر 20187 سنة comment_296526 بسم الله الرحمن الرحيم اخواني الاعزاء انا كنت عامل متغير عادي لكنه كان يحفظ قيمه واحده فقط الان حولت على الكورسر والفيتش لكن المشكله مازالت قائمة انا كاتب الكود التالي Declare xx number; Cursor C1 is select comp_no from comp_super where comp_super.super_no = :text_item68; Begin Open C1; Loop Fetch C1 into xx; Exit when C1%notfound; End loop; for i in (select all items_no from items where items.status=0 and items.comp_no in (xx) ) loop next_record; :tot_sem_do.item_no :=i.items_no; end loop; Close C1; End; الذي على اساس انه بيحفظ اكثر من قيمه مرجعه للمتغير xx ولكن عند عمل اللوب يبدو انه يحفظ القيمه الاولى وعندما يعمل لوب مره اخرى يحذف القيمه الاولى ويحفظ القيمه الجديده وهكذا حتى في الاخير يحفظ قيمه واحده فقط هي اخر قيمه وجدها كيف احفظ اكثر من قيمه في المتغير xx وشكرا تقديم بلاغ
بتاريخ: 5 سبتمبر 20187 سنة comment_296534 لعلك تستخدم ARRAY انظر هذا المصدر https://stackoverflow.com/questions/35884817/fetch-a-cursor-into-array دمت بخير وعافية تقديم بلاغ
بتاريخ: 6 سبتمبر 20187 سنة comment_296547 ادخل loop الثانية جواه loop الاولى Declare xx number; Cursor C1 is select comp_no from comp_super where comp_super.super_no = :text_item68; Begin Open C1; Loop Fetch C1 into xx; Exit when C1%notfound; for i in (select all items_no from items where items.status=0 and items.comp_no in (xx) ) loop next_record; :tot_sem_do.item_no :=i.items_no; end loop; End loop; Close C1; End; تم تعديل 6 سبتمبر 20187 سنة بواسطة mohamed.ramadan تقديم بلاغ
بتاريخ: 9 سبتمبر 20187 سنة كاتب الموضوع comment_296566 جزاك الله خير اخي محمود ربيع بدور دروس عن المصفوفات في واراكل واتعلمها ان شاء الله وجزاك الله خير اخي محمد رمضان وجاري التجربه وشكرا تقديم بلاغ
بتاريخ: 10 سبتمبر 20187 سنة comment_296584 لعل هذا يفيدك بخصوص الCollections عموما https://docs.oracle.com/cd/B28359_01/appdev.111/b28370/collections.htm#LNPLS005 تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.