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

Parameter Null Value

Featured Replies

بتاريخ:

انا عملت ريبورت به بابراميتر , فانا عاوز اذا لم ادخل البارميتر اجيب لي كل البيانات مثلاً جدول الموظفين والادارات كتبت عملت :
SELECT ALL EMP.EMPNO, EMP.ENAME, DEPT.DNAME
FROM EMP, DEPT
WHERE (DEPT.DEPTNO = EMP.DEPTNO)
and (( EMP.EMPNO=:empno) or (:empno=null))

هو بينفذ الجزء الاول , يعني لو ممرت له قيمة ولكنه لا ينفذ الجزء الثاني في حال عدم تمرير قيمة
الرجاء المساعدة
وهل يوجد خطأ في جملة استرجاع البيانات في حال عدم تمرير قيمة الحاصة في جملة select
?????

بتاريخ:

انا عملت ريبورت به بابراميتر , فانا عاوز اذا لم ادخل البارميتر اجيب لي كل البيانات مثلاً جدول الموظفين والادارات

السلام عليكم ورحمة الله وبركاته
استخدم اي كود من التالي ( الاثنين يؤدوا نفس الوظيفة )
SELECT ALL EMP.EMPNO, EMP.ENAME, DEPT.DNAME
FROM EMP, DEPT
WHERE (DEPT.DEPTNO = EMP.DEPTNO)
AND EMP.EMPNO=NVL(:EMPNO,EMP.EMPNO)


أو

SELECT ALL EMP.EMPNO, EMP.ENAME, DEPT.DNAME
FROM EMP, DEPT
WHERE (DEPT.DEPTNO = EMP.DEPTNO)
AND EMP.EMPNO=(CASE WHEN :EMPNO IS NULL THEN EMP.EMPNO ELSE :EMPNO END)


بالتوفيق

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

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


انا عملت ريبورت به بابراميتر , فانا عاوز اذا لم ادخل البارميتر اجيب لي كل البيانات مثلاً جدول الموظفين والادارات

السلام عليكم ورحمة الله وبركاته
استخدم اي كود من التالي ( الاثنين يؤدوا نفس الوظيفة )
SELECT ALL EMP.EMPNO, EMP.ENAME, DEPT.DNAME
FROM EMP, DEPT
WHERE (DEPT.DEPTNO = EMP.DEPTNO)
AND EMP.EMPNO=NVL(:EMPNO,EMP.EMPNO)


أو

SELECT ALL EMP.EMPNO, EMP.ENAME, DEPT.DNAME
FROM EMP, DEPT
WHERE (DEPT.DEPTNO = EMP.DEPTNO)
AND EMP.EMPNO=(CASE WHEN :EMPNO IS NULL THEN EMP.EMPNO ELSE :EMPNO END)


بالتوفيق



طيب لو كان عندي عدد كبير من البارميترات واريد في حالة عدم الادخال لاي واحد يقوم التقرير بارجاع كل البيانات
طيف تتم المعالجة ؟؟
بتاريخ:

استخدم نفس الطريقة لكل باراميتر

AND TABLENAME.COLUMN=NVL(:PARAMTER,TABLENAME.COLUMN)


أو

AND TABLENAME.COLUMN=(CASE WHEN :PARAMETER IS NULL THEN TABLENAME.COLUMN ELSE :PARAMETER END)

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

  • بعد 3 شهور...
بتاريخ:

بارك الله فيك وزادك من علمه

  • بعد 6 سنة...
بتاريخ:

واذا كان تاريخ لايعرض باقي السجلات التي لم يتم ادخال حقل التاريخ 

AND TO_CHAR(ADVISOR.DAT_TAIN,'YYYY/MM/DD')between
    TO_CHAR(NVL(:D1,ADVISOR.DAT_TAIN),'YYYY/MM/DD')
    AND TO_CHAR(NVL(:D2,ADVISOR.DAT_TAIN),'YYYY/MM/DD')

 

  • بعد 4 شهور...
بتاريخ:

SELECT ALL EMP.EMPNO, EMP.ENAME, DEPT.DNAME
FROM EMP, DEPT
WHERE (DEPT.DEPTNO = EMP.DEPTNO)
and ( EMP.EMPNO=:empno or :empno IS null)

 

جرب كدا .... وان شاء الله تنجح

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

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

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

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

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

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.