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

Featured Replies

بتاريخ:

السلام عليكم
عملت شاشة فواتير مشتريات وفي تريجر PST_FORM_COMMIT كتبت كود يعمل UPDATE للكميه في جدول الاصناف


DECLARE
V_QTY NUMBER(30);
BEGIN
IF :STK_PRCH_BILL.POSTED = 0 THEN
BEGIN
SELECT SUM(QUANTITY) INTO V_QTY
FROM STK_PRCH_DTL
WHERE AC_YEAR = AC_YEAR
AND BRANCH_CODE = BRANCH_CODE
AND ITEM_TYPE = ITEM_TYPE
AND ITEM_CODE = ITEM_CODE
AND BARCODE = BARCODE;
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL;
END;

BEGIN
UPDATE STK_ITEMS_DTL
SET CURRENT_QTY = (NVL(CURRENT_QTY,0) + NVL( V_QTY,0))
WHERE STK_ITEMS_DTL.AC_YEAR = :STK_PRCH_DTL.AC_YEAR
AND STK_ITEMS_DTL.BRANCH_CODE = :STK_PRCH_DTL.BRANCH_CODE
AND STK_ITEMS_DTL.ITEM_TYPE = :STK_PRCH_DTL.ITEM_TYPE
AND STK_ITEMS_DTL.ITEM_CODE = :STK_PRCH_DTL.ITEM_CODE
AND STK_ITEMS_DTL.BARCODE = :STK_PRCH_DTL.BARCODE;
EXCEPTION
WHEN NO_DATA_FOUND THEN NULL;
END;
UPDATE STK_PRCH_BILL
SET POSTED = 1
WHERE AC_YEAR = AC_YEAR
AND BRANCH_CODE = BRANCH_CODE
AND P_BILL_NO = P_BILL_NO ;
ELSE
MESSAGE('BILL IS POSTED !!!');
MESSAGE('BILL IS POSTED !!!');
RAISE Form_Trigger_Failure;
END IF;
END;
هو بيعمل UPDATE بس لازم يكون فيه صنف واحد في الفاتوره واذا كان اكثر من صنف في بيرجع اكثر من قيمه داخل المتغير فيعطي ERROR
انا عارف المشكله بس مو عارف الحل اتمنى القى مساعده منكم وشكرا

بتاريخ:

السلام عليكم ورحمة الله وبركاته
ممكن تعمل loop على البلوك اللي فيها بيكتب أصناف الفاتورة
مثال:

BEGIN
Go_Block('BLOCK_NAME');
First_Record;
Loop
Update Table_name Set Qty = Value Where Code = :Code;
Exit When :System.Last_Record = 'TRUE';
Next_Record;
End Loop
Commit;
END;

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

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

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

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

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

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.