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

SEARCH

Featured Replies

بتاريخ:

مرحبآ يامبرمجين

اخوانى انا اعمل MANUAL واريد انا اعمل بحث وتم عمل ذلك بنجاح بأستخدام CURSOR ولكنى اريد انه عندما لا يجد ما ابحث عنه يعطى رساله تفيد ذلك علمآ بآنى استخدمة

EXCEPTION
WHEN NO_DATA_FOUND THEN
MESSAGE('NOT FOUND ');


ولكنها لا تعمل
ما هو الحل

ايهاب وجدى

بتاريخ:

اخي / ايهاب
السلام عليكم ورحمة الله وبركاته :
الامر انشاء الله بسيط
داخل الكود
IF ( A%FOUND ) THEN

0000
000000000
000000
0000000
00000000
ELSE
message
END IF;

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

مشكورآ اخى على اهتمامك ولكن
جربت مانصحتنى به ولكن تحدث اشياء غريبه يعنى يطلع الرساله بمجرد الضغط على الزر , لا يظهر قيمه للبجث
وأليك الكود

OPEN supp_NAME;
    if (supp_NAME%found) then
     LOOP 
     FETCH supp_NAME INTO :lec_ID,:lec_NAME,
                        :lec_date,:lec_time,
                        :lec_speaker,:CONF_ID;
                         
     END LOOP;
     else
        MESSAGE('AFSSADFSDFSDF');
          MESSAGE('AFSSADFSDFSDF');
             
  end if;
     CLOSE supp_NAME;


مع الشكر

ايهاب وجدى

بتاريخ:

اخي / ايهاب
السلام عليكم ورحمة الله وبركاته
جرب هذا


declare
cursor a is select EMPNO,ename,job,MGR,HIREDATE,sal,COMM,
DEPTNO from emp where EMPNO = :tt;

aa a%rowtype;
BEGIN
open a;
fetch a INTO aa;
if ( a%found ) then
loop

:EMPNO := aa.EMPNO;
:ename := aa.ename;
:job := aa.job;
:MGR := aa.MGR;
:HIREDATE := aa.HIREDATE;
:sal := aa.sal;
:COMM := aa.COMM;
:DEPTNO := aa.DEPTNO;
fetch a INTO aa;
exit when ( a%notfound );
end loop;
else
MESSAGE('AFSSADFSDFSDF');
MESSAGE('AFSSADFSDFSDF');
end if;
close a;
end;
بتاريخ:
مرحبآ يامبرمجين

اخوانى انا اعمل MANUAL واريد انا اعمل بحث وتم عمل ذلك بنجاح بأستخدام CURSOR ولكنى اريد انه عندما لا يجد ما ابحث عنه يعطى رساله تفيد ذلك علمآ بآنى استخدمة
EXCEPTION
WHEN NO_DATA_FOUND THEN
MESSAGE('NOT FOUND ');


ولكنها لا تعمل
ما هو الحل

ايهاب وجدى

76833[/snapback]


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

مشكور اخى محمد و جارى التجربه !!

ايهاب وجدى

بتاريخ:

الأخ الكريم
الحلول المطروحة كلها تعمل من المفترض
وانوه للأتي
EXCEPTION
WHEN NO_DATA_FOUND THEN
MESSAGE('NOT FOUND ');
تستخدم في حالة تغذية حقل او حقول بواسطة جملة
SELECT FI,F2 INTO :F1,F2 FROM TABLE NAME WHERE ....
وتكون في نهاية الكود قبل ال
END
وذلك لكي لا يقف النموذج ويتابع العمل
أما الكيرسر
فبعد فتحها نستخدم
IF CURSOR_NAME%FOUND THEN
............
OR
IF CURSOR_NAME%NOT_FOUND THEN
................
جرب وانا إضمن لك بمشيئة الله أنك ستحقق هدفك
ولك الكود لمساعدتك
المثال الاول
FUNCTION GET_LAST_BILL(SUB NUMBER) RETURN NUMBER IS
CURSOR R IS
SELECT NET_TO_PAY FROM BILLS
WHERE SUBSCRIBER = SUB
AND FOR_MONTH =GET_PREV_MONTH(NVL(GETCURRENTMONTH,TO_CHAR(SYSDATE,'YYYYMM')));
R_V R%ROWTYPE;

R_VAL NUMBER(14,2):=0.00;
BEGIN
OPEN R;
FETCH R INTO R_V;
IF R%NOTFOUND THEN
MSG....................
CLOSE R;
ELSE
R_VAL:=R_V.NET_TO_PAY;
CLOSE R;
END IF;
RETURN R_VAL;
END;

----------------------------
المثال الثاني
DECLARE
CONT NUMBER(11):=0;
RES DATE;
C NUMBER;
BEGIN
IF :PAID_METHOD = 10 THEN
SELECT COUNT(*) INTO C FROM A_MONTHLY_COMMITMENT_DETAILS
WHERE CONTRACT_SER = :SERIAL;
IF C > 0 THEN
SELECT MAX(VALUE_DATE) INTO RES FROM A_MONTHLY_COMMITMENT_DETAILS WHERE CONTRACT_SER = :SERIAL;
ELSE
SELECT ADD_MONTHS(:FIRST_PAID_DATE,:PAID_COUNT1 - 1) INTO RES FROM DUAL;
END IF;

ELSIF :PAID_METHOD = 20 THEN
SELECT MAX(CHECK_DATE) INTO RES FROM A_MONTHLY_CHECKS_DETAILS
WHERE CONTRACT_SER = :SERIAL;
ELSIF :PAID_METHOD = 30 THEN
SELECT MAX(DATE_) INTO RES FROM A_MONTHLY_CREDIT_VOUCHER
WHERE CONTRACT_SER = :SERIAL;
END IF;
MSG(' ÊÇÑíÎ ÃÎÑ ÞÓØ '||' '||TO_CHAR(RES,'DD/MM/YYYY'));
EXCEPTION
WHEN NO_DATA_FOUND THEN
NULL;
END ;
والسلام

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

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

مشكورين جميعآآآآآآآآآآآآآآآآآآآآآآآآآآ

ايهاب وجدى

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

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

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

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

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

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.