بتاريخ: 26 يوليو 200916 سنة comment_164629 في عندي هذا التريجر لتحصيل الرسوم بيكتب قيمة المبلغ وبحدد نوع نوع العمله (NO DATABASE ITEM) وبياخد قيمة الدولار او الدينار بتاريخ اليوم وبقسم المبلغ على سعر العمله وبعد كده بحطها في خانة المبلغ لكن عند العمل بديني FAILURE DECLARE DOL NUMBER(6,2); DEN NUMBER(6,2); RESULT NUMBER(6,2); BEGIN SELECT DOLAR,DENAR INTO DOL,DEN FROM PRICE WHERE DATE_OF_DAY=SYSDATE; IF :INCOME.TYPE='dolar' THEN RESULT:=:INCOME.MONEY/DOL; :INCOME.COST:=RESULT; ELSE IF :INCOME.TYPE='denar' THEN RESULT:=:INCOME.MONEY/DEN; :INCOME.COST:=RESULT; ELSE RESULT:=:INCOME.MONEY; :INCOME.COST:=RESULT; END IF; END IF; END; ياريت المساعده تقديم بلاغ
بتاريخ: 26 يوليو 200916 سنة comment_164637 ممكن يكون الكود صحيح لكن كيفية التعامل الكود مع البيانات الاي في الجدول هو السبب يعني ممكن يكون السبب في السطر ده SELECT DOLAR,DENAR INTO DOL,DEN FROM PRICE WHERE DATE_OF_DAY=SYSDATE; علشان كده تتأكد أن جملة السيليكت دي مش بتجيب غير قيمة واحدة تأكد من خلال تنفيذها على السيكوال شوف النتيجة سطر واحد ولا اكترلو مكنش ده السبب حط الفورمة كاملة علشان نعرف نساعدك تقديم بلاغ
بتاريخ: 26 يوليو 200916 سنة comment_164640 السلام عليكماخي العزيز جرب غير صيغة الكود الى CURSOR لانه من المحتمل ان تكون هناك اكثر من قيمةواذا في الامكان ارسل الفورم وان شاء الله بنعرف السبب تقديم بلاغ
بتاريخ: 26 يوليو 200916 سنة comment_164641 السلام عليكمكيف يتم تخزين كلمة DOLAR & DENAR ??? تقديم بلاغ
بتاريخ: 26 يوليو 200916 سنة كاتب الموضوع comment_164650 denar او dolar عباره عن ليست ومابتتخزن no database itemالفورم مرفق income.rar تقديم بلاغ
بتاريخ: 26 يوليو 200916 سنة comment_164652 السلام عليكماخي لقد قمت بإنزال الملف ولكن للاسف العمل على 10G وانا أعمل 6Iولكن عندي فكرة وهي بدل استعمال LIST استعمل RADIO BUTTON حيث اجعل فيه قيمتينالاولى DOLAR وتأخذ الرقم 1والثانية DENAR ونأخذ القيمة 2ثم باستخدام الشرط لتحديد ما هو RADIO الفعال مثلا if :RADIO_GROUP9=1 then :txt:=INCOME.MONEY/DOL;; else :txt:=:INCOME.MONEY/DEN; end if; تم تعديل 26 يوليو 200916 سنة بواسطة malik alwadi تقديم بلاغ
بتاريخ: 26 يوليو 200916 سنة comment_164653 السلام عليكمجرب هذا الكود: DECLARE DOL NUMBER(6,2); DEN NUMBER(6,2); RESULT NUMBER(6,2); BEGIN SELECT DOLAR,DENAR INTO DOL,DEN FROM PRICE WHERE DATE_OF_DAY=SYSDATE; IF :INCOME.TYPE='dolar' THEN :INCOME.COST:=NVL(:UR_BLOCK_NAME.INCOME.MONEY,0)/NVL(DOL,0); ELSE IF :INCOME.TYPE='denar' THEN :INCOME.COST:=NVL(:UR_BLOCK_NAME.INCOME.MONEY,0)/NVL(DEN,0); ELSE :INCOME.COST:=NVL(:UR_BLOCK_NAME.INCOME.MONEY,0); END IF; END IF; END; سؤال اخر: من اين تأتي بهذه القيم SELECT DOLAR,DENAR ؟؟؟؟ تم تعديل 26 يوليو 200916 سنة بواسطة PALI.ORACLE تقديم بلاغ
بتاريخ: 27 يوليو 200916 سنة كاتب الموضوع comment_164654 dolar,denar ياتي بهم من جدول price العملات والجدول به date_of_day تاريخ ادخال العمله جربت طريقه الراديو بتن نفس المشكله وجربت كودك اخوي pali نفس الخطا تقديم بلاغ
بتاريخ: 27 يوليو 200916 سنة comment_164655 ما هو الخطا ؟ممكن تكتبه ؟؟اتوقع الخطأ من الليست ايتم...وذلك انها NON DATABASEولكن اكتب الخطأ ... تقديم بلاغ
بتاريخ: 27 يوليو 200916 سنة كاتب الموضوع comment_164658 الخطا لما اضغط على الزر UNHANDLED EXCEPTION تقديم بلاغ
بتاريخ: 27 يوليو 200916 سنة كاتب الموضوع comment_164748 المشكله تم حلها كانت في تحديد الفورمات لل sysdate شكرا لكم جميعا تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.