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

مساعد عمل Update باستخدام Loop

Featured Replies

بتاريخ:

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

هذا هو الكود

BEGIN
FOR R IN (SELECT QTY 
FROM STORE 
WHERE ITEM_NO=:PURCHASES_D.ITEM_NO
AND STORE_ID=:PURCHASES_D.STORE_ID)

LOOP
UPDATE STORE
SET QTY=QTY+:PURCHASES_D.P_INV_AMOUNT
WHERE ITEM_NO=:PURCHASES_D.ITEM_NO
AND STORE_ID=:PURCHASES_D.STORE_ID;
NEXT_RECORD;
END LOOP;
COMMIT;
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL;
END;

تم تعديل بواسطة nan740

بتاريخ:

BEGIN
go_block('yourblock') ;
first_record ;
LOOP
UPDATE STORE
SET QTY=QTY+:PURCHASES_D.P_INV_AMOUNT
WHERE ITEM_NO=:PURCHASES_D.ITEM_NO
AND STORE_ID=:PURCHASES_D.STORE_ID;
exit when :system.last_record = 'TRUE'
NEXT_RECORD;
END LOOP;
forms_ddl('commit') ;
END;
بتاريخ:
  • كاتب الموضوع

الله يعطيك العافية بان الله حجرب وان شاء الله يشتغل

بتاريخ:

او ممكن فى post_update  لل  tabular

 

تنادى على procedsure    تكتب فيه  

 

UPDATE STORE
SET QTY
=QTY+:PURCHASES_D.P_INV_AMOUNT
WHERE ITEM_NO
=:PURCHASES_D.ITEM_NO
AND STORE_ID
=:PURCHASES_D.STORE_ID;
NEXT_RECORD;
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL
;

 

وكل ده يتنفذ من زرار حفظ 

بتاريخ:

لو محتاجه في حالة update بس , فاقتراح الاخ ربيع افضل , لكن

لا يمكن استخدام next_record فى تريجر post-update , وليس لها داعى اطلاقا حتى لو امكن استخدامها ,

ولا داعى ايضا للـ Exception

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

جربت الطريقة الاولى و لم يحدث اي ريكورد وكان الابيت ما يشتغل

بتاريخ:

نعم للاستاذ اسلام نشيل جملة next_record

 

شكرا على ملاحظتك وبالتوفيق للعضو

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

ايوه بس هذا يعمل ابديت لريكور واحد اضن اتلtabulare لازمloop

بتاريخ:

اقرا عن post-update trigger فى الهيلب

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

انا ما عندي مشكله وين اركب الكود مشكلتي كود LOOP  ما اشاغل بالكل المطاوب فقط يا اخ اسلام

بتاريخ:

يا اخى , لو قرأت عنه لفهمت .

post-update ينطلق مع كل ريكورد حدث فيه تغيير , لذا لا حاجة للـ loop .

بتاريخ:

الكود يتعمل فى ال triger    post_insert   لل tabular

 

تضع جملة update  المرتبطة بمتغير لل tabulare  وبتتنفذ تلقائيا بدون loop

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

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

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

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

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

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.