الانتقال إلى المحتوى

اريد عمل view بحقول من جدولين واعمل Commit


naif224

Recommended Posts

عملت view تعتمد على جدولين ثم اضفتها الى appModule ولكن عندما اعمل commit يعطيني error ...!!!!!!!!

ارجو أن تجربها لانه يعطي error .......................


جرب اعمل view بحقول من جدولين واعمل Commit

وعطني الحل اذا سمحت

مع الشكر
naif224

رابط هذا التعليق
شارك

السلام عليكم
سبب الخطأ :
عندما تضع Create button في صفحة jsp ما يحدث في الواقع هو أن JDevloper يقوم بعمل Create method و ربطها بالحدث المسمى Create ، ودورها هو إنشاء سجل جديد new record في الـ View فقط وليس على مستوى قاعدى البيانات ، بمعنى أنها تنشئ object من الكلاس الموجود في الـ BC وبعد تعبئة البيانات والضغط على Commit يقوم بتنفيذ أمر الـ Insert الموجود داخله .

لحل المشكلة :
أنشئ BC مناسب لمتطلباتك وبناء عليه ، أنشئ ViewObject ، وداخل الـ BC قم بتحرير الأمر Insert ليقوم بعملية الـ Insert في جدولين بدلاً من جدول واحد .

طريقة أخرى ..
يمكنك هنا الاستفادة من EJB بانشاء Session bean يتعامل مع stored pros و الذي بدوره يقوم بعمل Insert .


أنا أعتذر عن الاجابات المختصرة بسبب ضيق الوقت ..

إذا استمرت المشكلة أرسل لي الخطأ بالتفصيل وان شاء الله سنصل للحل ..

بالتوفيق :D

رابط هذا التعليق
شارك

أعتذر اخوي نايف عن التأخير

حسب ما فهمت منك هو أنك تحاول من صفحة واحدة الإضافة في جدولين أحدهما مرتبط بالآخر بطريقة (Master-Details) مثل : ORDER و LINEITEM
وعند عمل Commit يحصل الخطأ التالي :

JBO-25030: Failed to find or invalidate owning entity 



لديك في مشروعك :
OrderEntity +OrderView
LineItemEntity + LineItemView
+ OrderLineitemFKAsocc + OrderLineitemFKLink

ما يحدث معك هو :
عندما تضغط على Commit يقوم الـ BC4J Framework بمحاولة إضافة الجدولين في نفس الوقت و هذا يعني أنه يحاول إنشاء الابن مع عدم وجود الأب . هذا ما يسبب الخطأ


جرب
double click on OrderLineitemFKAsocc >> property >> uncheck Composite Association
ثم اعمل run من جديد

إذا لم تفلح المحاولة فالحل الثاني بطريقة يدوية و ذلك بالتعديل على OrderLineitemFKAsocc عمل override لـ

Order.createRow();
و
Lineitem.createRow();



بانتظار الجواب ..

تم تعديل بواسطة خالد عبدالله
رابط هذا التعليق
شارك

نايف عالبركة :) والحمدلله ما اضطرينا نعدل على الـ create method كان فيها شغل كثير وحوسه

و حاضرين في اي وقت :)


احمد .. ما عملت الا الواجب :)

تحياتي

رابط هذا التعليق
شارك

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

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

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

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

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

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