بتاريخ: 19 أكتوبر 201114 سنة comment_216724 السلام عليكمأنا بنيت تاسك فلو متكامل خاص بعملية عرض جدول وإجراء عملية إضافة وتعديل عليه،ومن ثم بنيت صفحة لعرض جدول بيانات الموظفين ويوجد فيها مفتاح إدخال سجل جديد وكذلك مفتاح تعديل سجلوالمفتاحان يعرضان صفحة جديدة لعملية الإضافة أو التعديل وكل شي تمام لحد الآن المشكلة هي عندما أعود من صفحة إضافة موظف جديد تتم عملية الحفظ بشكل سليم ولكن أريد أن يتم تنفيذ عملية إنعاش لبيانات الجدول الأصلية ومن ثم الانتقال إلى السجل الجديد الذي أدخلته، علما أن هذه العملية تتم بشكل صحيح في حال التعديل بينما في حال العودة من إدخال سجل جديد تظهر الرسالة التالية (خطأ: صف طريقة العرض ذو المفتاح oracle.jbo.key[-2] غير موجود في empView1iterator) يبدوا أنه يجب أن أعمل إنعاش Iterator حتى يعمل execute operation ومن ثم setCurrentRowWithKey بشكل صحيح آسف على الإطالة ولكن هذه هي مشكلتي أرجوا أن أكون شرحتها بشكل صحيح. تقديم بلاغ
بتاريخ: 19 أكتوبر 201114 سنة comment_216734 سافترض انك لما بترجع من صفحة الادخال بترجع الى فراجمنت فى نفس التاسك فلو ومبتروحش الى تاسك فلو تانى فكل اللى عليك انك بعد عملية الحفظ تعمل execute لل query يعنى على ميثود ال commit بعد الحفظ تكتب DCIteratorBinding iter = (DCIteratorBinding)bc.findIteratorBinding("yourVOIterator"); iter.executeQuery(); تقديم بلاغ
بتاريخ: 20 أكتوبر 201114 سنة كاتب الموضوع comment_216759 مشكورة أخت هالةأعتقد أنني كنت أبحث عن هذا الكود بس للأسف لم أستطع أن أشاهد النتيجة لأن الصفحات لم تعد تفتح أي البرنامج فات بالحيط، لذلك أرجو أن تساعديني لأن كل شغلي على المحك الآن،والغريب أن البرنامج كان يعمل البارحة بشكل طبيعي والآن عندما أعمل رن لصفحة الهوم تظهر الصفحة فارغة أي بيضاء ناصعة و لايوجد فيها شيء، وقد حاولت أن أحذف بعض الأشياء واضيف بعض التعديلات ولكن بدون جدوىعلماً أنني أعمل على win xp ,jdev 11.1.1.4.0 وقاعدة البيانات oracle 10g على حاسب آخر وقد أرفقت ملف integratedWebLogicServer Log وكذلك صورة للصفحة الناتجة،لذلك أرجو المساعدة العاجلة لأانوا بصراحة بدأت أكره adf integratedWebLogicServer Log.txt تقديم بلاغ
بتاريخ: 20 أكتوبر 201114 سنة comment_216762 اولا مفيش داعى للقلق لان المشاكل دى بتحصل كتير بالنسبة لمشكلتك فاعتقد انها بتتعلق بال ADF Security اللى انت عامله على الابليكيشن وتقريبا عندك بعض ال corruption فى ملف ال 'jazn-data.xml' لان فى ملف ال log بيقولك ان فى duplicate Permission متعرفه على التاسك فلو اللى اسمه punishcode.xml وبالتالى الحل انك تمسح ال System folder فى هذا المسار C:\Documents and Settings\Toshiba\Application Data\JDeveloper\system11.1.1.4.37.59.23 ده بيرجع الجى ديفيلوبر لحالته الاولى وبعدين تفتح ملف ال jazn-data.xml واعمل assign تانى لكل ال task flow وكمان ال page Definition للpermission اللى عندك واتاكد ان مفيش duplicate Permission على اى تاسك فلو تقديم بلاغ
بتاريخ: 23 أكتوبر 201114 سنة كاتب الموضوع comment_216835 مشكورة أختي هالة شكرا جزيلا عظيما فقد أنقذت حياتيلقد راجعت ملف 'jazn-data.xml' وعدلت الأخطاء وعملت رن للأبلكيشن بنجاح.ومن ثم نفذت تعليماتك مع بعض التعديلات (حيث أريد أن يعود المؤشر إلى السجل المضاف أو المعدل) وعمل التاسك فلو بنجاح والكود هو:BindingContainer bindings = getBindings(); DCIteratorBinding dcitr = (DCIteratorBinding)bindings.get("PunishmentscodesView1Iterator"); String currRowKey = dcitr.getCurrentRowKeyString(); dcitr.executeQuery(); dcitr.setCurrentRowWithKey(currRowKey);لذلك أشكرك مرة أخرى وحقق الله لك أمانيك فيما يرضيه عنك. الآن لدي تساؤل :الآن لدي تاسك فلو متكامل خاص بالتعامل مع جدول ترميز العقوبات فيه صفحة لعرض جدول ترميز العقوبات مع إمكانية الإضافة والتعديل والحذف وصفحة أخرى للقيام بادخال أو تعديل سجل ترميز عقوبة معينة ومن ثم العودة إلى الصفحة الأولى لعرض تراميز العقوبات. كما هو موضح من المرفقاتالآن السؤال هو أن هذه العملية يجب أن أكررها على جميع جداول تراميز النظام مثل ترميز المكافآت وترميز الجنسيات و....وهي سوف يكون لها نفس شكل التاسك فلو ونفس شكل الصفحتين الموجودتين ضمنه، وقد قرأت عن شيء اسمه taskflow template وبالتالي يمكن بناء عدة تاسك فلو إعتمادا عليه مع خاصية أنه سيتم تعديله آليا في حال تم تعديل taskflow template أو يمكن البناء بدون هذه الخاصية أي سيتم أخذ نسخة عن taskflow templateالمشاكل والتساؤلات الناتجة هي:في حال استخدمت خاصية التعديل الآلي عندها يظهر تاسك فلو فارغ وهو ما لم أفهمه مطلقاوفي حال لم استخدم الخاصية عندها سيتم بناء تاسك فلو نسخة مطابقة للـ taskflow template والسؤال هو هل يجب علي أن أعيد بناء صفحتي العرض والإضافة لكل جدول تراميز علما أنه كما قلت شكل هاتين الصفحتين واحد لكل شاشات التراميز. أم هل يوجد تقنيات أخرى قياسية للإعادة استخدام تاسك فلو أو الصفحات...!! أرجو أن تكون الفكرة وصلت وآسف للإطالة تقديم بلاغ
بتاريخ: 23 أكتوبر 201114 سنة comment_216857 اولا : اعادة استخدام التاسك فلو ال Task flow Template منقسمه لحاجتين Template By reference و Template By Copy ال template By reference معناه ان كل ما ال template اتغير كل التغييرات دى حتنعكس على ال task flow اللى مبنيه عليه وخللى بالك انه مفيش حاجه اسمها انه فارغ لكن محتوياته لا تظهر فى ال design time والدليل انك لو عملت task flow مبنى على task flow Template وعلمت على الاختيار update when ADF task flow template is changing يعنى by reference ونزلته فى اى صفحه ك region المحتويات دى حتظهر عندك عادى جدا ال Task flow Template By copy حيعملك نسخة من ال task flow template وبعدين تلاحظ انه مالوش اى علاقه به اى تعديلات مش حيشوفها وفى اى حالة من الحالتين انت لازم تعمل override على ال task flow Template عشان يتناسب مع العمليات الجديده يعنى مثلا createInsert اللى انت عاملها دى بتختلف مع كل جدول عندك على حسب الاتيرتور اللى بتعمل فيه insert وهكذا عادة ال task flow Template بيستخدم لعدم تكرار وضع ال input Parametrs او ال Return Values وال Exception Handler ولا يستخدم لاعادة الصفحات بالنسبة لموضوع الصفحات انت ممكن تعمل template تبنى عليه ال fragments دى بحيث تضع فقط فى كل مرة ال business Components على طول تقديم بلاغ
بتاريخ: 24 أكتوبر 201114 سنة كاتب الموضوع comment_216878 بالنسبة لموضوع الصفحات انت ممكن تعمل template تبنى عليه ال fragments دى بحيث تضع فقط فى كل مرة ال business Components على طول مشكورة أختي يعني بفهم من هل الحكي أنه من الأفضل القيام ببناء taskflow خاص بكل شاشة تراميز، وبالنسبة للصفحات فإنه يجب علي أن اقوم ببناء Two page template الأولى للعرض والثانية لإضافة والتعديل ومن ثم بناء جميع صفحات جداول التراميز اعتمادا عليهما.ولكن أيضا ينتج تساؤل:بالنسبة لمفاتيح الإضافة والتعديل والحذف الموجودة على صفحة العرض ألا أستطيع أن أضعها ضمن page template حتى لا أعيد تصميمها مع كل صفحةوكذلك الأمر بالنسبة لمفاتيح الحفظ والعودة الموجودة ضمن صفحة الإضافة والتعديل. وأخيرا لقد قرت عن شيء يدعى Declarative components فهو هو مفيد بطريقة ما للحالة التي أحتاجها.مع الشكر سلفا تقديم بلاغ
بتاريخ: 24 أكتوبر 201114 سنة comment_216904 شوف لاحظ انك هنا بتتكلم على fragments يعنى بتبقى embedded فى صفحة الصفحة دى بتستخدم ال Template اللى معمول على البرنامج وبالتالى عادة هى لا تحتاج الى template لكن لا يوجد مشكلة من تطبيق Template على ال fragment اذا كان هناك احتياج لذلك اما بالنسبة للتاسك فلو فما دام ال activities وال operations بيتغيروا فى كل مره فالافضل بناء task flow مستقل ليهم بالنسبة لمفاتيح الإضافة والتعديل والحذف الموجودة على صفحة العرض ألا أستطيع أن أضعها ضمن page template حتى لا أعيد تصميمها مع كل صفحةوكذلك الأمر بالنسبة لمفاتيح الحفظ والعودة الموجودة ضمن صفحة الإضافة والتعديل. للاسف لسه برضه بنفكر باسلوب الفورمز وعاوزين نعمل حاجة زى ال Tool Bar بتاع الفورمز هنا بيئة ويب مختلفه وكل بوتون من اللى بتقول عليهم بيشاور على Iterator مختلف ازاى عاوز توحدهم فى Tool Bar واحد علاوه على انك ممكن تعمل insert مثلا لاكتر من جدول فى الصفحه كل واحد بيشاور على فيو اوبجكت مختلف وحاجات تانيه كتير ضد موضوع ال Tool Bar ده وأخيرا لقد قرت عن شيء يدعى Declarative components فهو هو مفيد بطريقة ما للحالة التي أحتاجها اقره عن ال declarative Components وموضوع المكتبات من هنا تقديم بلاغ
بتاريخ: 25 أكتوبر 201114 سنة كاتب الموضوع comment_216916 مشكورة أخت هالة الآن أشعر أنني بدأت أدخل عالم الـ adf تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.