بتاريخ: 10 مارس 201610 سنة comment_272298 لدي شاشة فيها بلوكين من نوع |DATA_BASE فعندما اعيد قيمة من الLOV واريد ان استعرض بموجب القيمة الراجعه لا يعمل الكود اما عندما استعرض بموجب قيمة من البلوك الثاني يستعرض بيانات واليكم الكوديين الموجودين كالتالي هذا الكود يعمل بشكل صحيح في حدث WHEN MOUSE CLICK SET_BLOCK_PROPERTY('ITEM',DEFAULT_WHERE,'ITEM_CODE=:ITEM1.ITEM_CODE');GO_BLOCK('ITEM');EXECUTE_QUERY; اما هذا الكود عند الضغط على الزر WHEN BUTTON BRESSED لا يعمل والكود كالتالي DECLARE X BOOLEAN; W VARCHAR2(20);BEGIN ------------GO_BLOCK('ITEM');X:=SHOW_LOV('LOV_ITEM'); W:=:ITEM.ITEM_CODE; IF X THEN SET_BLOCK_PROPERTY('ITEM',DEFAULT_WHERE,'ITEM_CODE='||W);EXECUTE_QUERY(NO_COMMIT); END IF;END; يطلعلي رقم الخطأ FRM-40505 افيدوني جزاكم الله خيرا تقديم بلاغ
بتاريخ: 10 مارس 201610 سنة comment_272308 طيب سؤال الـــLOV يتم استعراضها من جدول في الdata base تقديم بلاغ
بتاريخ: 11 مارس 201610 سنة comment_272311 الدالة EXECUTE_QUERY . لا تاخد براميتر NO_COMMIT تقديم بلاغ
بتاريخ: 12 مارس 201610 سنة comment_272337 أعتقد والله أعلم أن المشكلة في الكود W:=:ITEM.ITEM_CODE; فهنا W لم تأخذ قيمة لأن المستخدم لسه لم يقم بالاختيار من LOV وبالتالي فإن قيمتها ستكون NULL يمكن ان تجرب طباعة قيمة w داخل جملة IF مثلا بكتابة الكود message(w); لذلك جرب الحل التالية :/ أكيد أنك قمت بربط استعلام الـ LOV بالعنصر ITEM1.ITEM_CODE إذاً 1. عند الضغط على الزر في WHEN BUTTON BRESSED أكتب التالي DECLARE X BOOLEAN := true; BEGIN X:=SHOW_LOV('LOV_ITEM'); END; الكود السابق لعرض الـ LOV يمكن الاستعاضة عنه بالضغط على F9 لعرض الـ LOV 2. قم بعمل تريجر POST-CHANGE للعنصر ITEM1.ITEM_CODE أكتب فيه التالي : SET_BLOCK_PROPERTY('ITEM',DEFAULT_WHERE,'ITEM_CODE=:ITEM1.ITEM_CODE'); GO_BLOCK('ITEM'); EXECUTE_QUERY; وبهذا ستيم عرض جميع البيانات في البلوك ITEM بمجرد تغيير قيمة العنصر ITEM1.ITM_CODE وفقاً لما سيختاره المستخدم بعد عرض LOV ، أتمنى أكون أفدتك ، ومتشوق لسماع ردك تم تعديل 12 مارس 201610 سنة بواسطة Faisal Matari تقديم بلاغ
بتاريخ: 12 مارس 201610 سنة كاتب الموضوع comment_272341 بالنسبة لأمر NO COMMIT لاخفاء الرساله اللي تطلع من الاوراكل هل تريد الحفظ او لا تقديم بلاغ
بتاريخ: 12 مارس 201610 سنة كاتب الموضوع comment_272342 اخي Faisal Matari جربت الكود اللي انت كاتبة ماضبط معي يوقف عند الtexet اللي كتبنا الكود فيه في حدث post_chang ولا يخرج دون ان يعمل استعلام اما بالنسبة لطباعة القيمة العائدة للتكست عندما اطبع قيمة w يطبع قيمة بمعنى تعود القيمة الة الtext من ال lov تم تعديل 12 مارس 201610 سنة بواسطة ashrafyemen تقديم بلاغ
بتاريخ: 12 مارس 201610 سنة كاتب الموضوع comment_272343 اخ talal ezz بالنسبة ل lov تاخذ البيانات من قاعدة البيانات تقديم بلاغ
بتاريخ: 12 مارس 201610 سنة comment_272352 execute_query مش بتاخد باراميتر اسمه no_commit ابدا يا باشا . لو مش عايز تشوف الرسالة اعمل clear_block(no_validate) ; تقديم بلاغ
بتاريخ: 12 مارس 201610 سنة كاتب الموضوع comment_272353 مع احترامي لك اخي العزيز ESLAM ELBYALY ولأفكارك التي نستفيد منها دائما انا متأكد 100% واستخدمها دائما هذه فائدتها تخفي الرساله اللي نطلع من الاوراكل الي تقول هل تريد حفظ التغيرات على الحقول انشاء الله تضيفها الى افكارك تم تعديل 12 مارس 201610 سنة بواسطة ashrafyemen تقديم بلاغ
بتاريخ: 12 مارس 201610 سنة كاتب الموضوع comment_272354 الحمد لله احتلت المشكلة معي والحل كان كالتالي القيمة العائدة من الLOV من نوع VARCHAR لذلك يجب ان تضيف اربع تنصيصات للقيمه العائدة من الLOV عندما تكون من نوع DATE OR VARCHAR2 DECLARE X BOOLEAN; W VARCHAR2(100); N NUMBER;BEGINX:=SHOW_LOV('LOV_ITEM',50,50); W:=''''||:ITEM.ITEM_CODE||'''';IF X THEN MESSAGE(W);MESSAGE(W);GO_BLOCK('ITEM');SET_BLOCK_PROPERTY('ITEM',DEFAULT_WHERE,'ITEM_CODE='||W);EXECUTE_QUERY(NO_COMMIT);END IF;END; تم تعديل 12 مارس 201610 سنة بواسطة ashrafyemen تقديم بلاغ
بتاريخ: 12 مارس 201610 سنة comment_272359 طيب هى عموما مش موجودة في الهيلب , بس شكرا ع المعلومة تقديم بلاغ
بتاريخ: 13 مارس 201610 سنة كاتب الموضوع comment_272376 لا شكر على واجب اخي العزيز ESLAM ELBAYALY هنا تكمن الفائدة من المنتديات بتبادل الافكار والمعارف تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.