بتاريخ: 21 يوليو 200916 سنة comment_164029 السلام عليكمالساده خبراء ال developerانا بعمل report وعندى table فيه الاصناف وفيه 20 row وtable تانى فيه الرصيد وفيه 5 rowانا عايز اظهر اللى له رصيد واللى مالوش رصيد ب parameterمثلا (Y يجيب اللى له رصيد N يجيب اللى مالوش رصيد ولو مدخلتش اى حاجة يجيب الكل) تقديم بلاغ
بتاريخ: 21 يوليو 200916 سنة comment_164041 السلام عليكمممكن الأفضل انك تزود حقل في الجدول اللى عايز تجيب منه بيانات واللى له رصيد تخلي الحقل ده (Y) واللى مالوش رصيد تخلي الحقل ده (N) والشرط التالت تخليه لا يساوي (Y) ولا(N) تقديم بلاغ
بتاريخ: 22 يوليو 200916 سنة كاتب الموضوع comment_164100 السلام عليكمشكرا على الرد بس الحل ده مينفعش علشان انا مينفعش ادوز اى Filed على ال Tableارجو المساعده من خبراء ال SQL تقديم بلاغ
بتاريخ: 22 يوليو 200916 سنة comment_164119 انا مش خبير قوي بس بيايي لو تستعمل ال case في جملة ال select بتاعة ال reportو حيكون عندك 2 case وحده اذا كان ال parameter اللي حندخله Y و وحده اذا كان Nدلوقتي اذا كان y اعمل جملة ال where كالتالي الرصيد is not nullو اذا كان N اعمل جملة ال where كالتالي الرصيد is null ......ارجو من الخبراء مساعدتك و يا ريتني خبير كان قدرت اساعدكاو ممكن if statmenet يعني if _value =y اعملي جملة select معينة و اذا if _value =N اعملي جملة select معينة تقديم بلاغ
بتاريخ: 22 يوليو 200916 سنة comment_164121 ده مثال على الHR SELECT E.EMPLOYEE_ID,E.FIRST_NAME,E.LAST_NAME ,D.DEPARTMENT_ID FROM EMPLOYEES E , DEPARTMENTS D WHERE E.DEPARTMENT_ID=D.DEPARTMENT_ID AND (E.EMPLOYEE_ID =:EMP_ID OR :EMP_ID IS NULL) AND (E.SALARY =:SAL OR :SAL IS NULL ) كده بنقوله هات بيانات الموظف اللي انا هديلك رقمه ، مرتبه ، او من غير ما اديك لا رقمه ولا مرتبه ، او اديك رقمه ومش هديك مرتبه ، او اديك مرتبه ومش هديك رقمهيعني لو بصيت ال2 براميتر يجيب داتا بناءاً على ال2 براميتر طب لو بصيت واحد يجيب بناءاً عليهطب لو ما بصيتش خالص يجيب كلهبالمثل في مثالك هتعمل كده تقديم بلاغ
بتاريخ: 22 يوليو 200916 سنة comment_164145 السلام عليكم.هنفترض إن جدول الأصناف إسمه ITEMSوجدول الرصيد إسمه ONHAND_QUANTITIES المفروض إنك هاتعمل إتنين باراميترز الأول Bind Parameter وإسمه Q_FLAG والتاني lexical Parameter وإسمه QTY_AVAILABILITY أهم حاجه إن يكون نوعهم Char وحجم التاني كبير كفايه (مثلا 200)ال Bind Parameter بيكون مسبوق ب " : " أما ال Lexical Parameter بيكون مسبوق ب " & " .جملة ال SQL كالآتي: SELECT * FROM items i, quantities q &QTY_AVAILABILITY ثم في تريجر AFTER PARAMETER FORM هاتكتب الآتي: FUNCTION afterpform RETURN BOOLEAN IS BEGIN IF :q_flag IS NULL THEN :qty_availability := ' where q.item_id= i.item_id (+) '; ELSE IF UPPER (:q_flag) = 'Y' THEN :qty_availability := ' where q.item_id = i.item_id '; ELSIF UPPER (:q_flag) = 'N' THEN :qty_availability := ' where q.item_id= i.item_id (+) and q.quantity is null '; END IF; END IF; RETURN (TRUE); END; تقديم بلاغ
بتاريخ: 22 يوليو 200916 سنة كاتب الموضوع comment_164149 السلام عليكمشكرا جزيلا على روددكم الجميله و القويةانا كتب كود مختلفdecode(sadad.amm,null,'N','Y') = decode(:AM,'N','N' ,'Y','Y' ,null , decode(sadad.amm,null,'N','Y')) sadad.am حيث ان هو الرصيد:am اما parameter فهو ال Y فانا وضعت مع اللى له رصيدN ومع اللى مالوش رصيدشكرا مره تانية يا اخوانى تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.