بتاريخ: 28 نوفمبر 201114 سنة comment_218079 السلام عليكمالأخوة الأعزاء أرجو المساعدة في المشكلة الغريبة التالية:أنا لدي جدولين لترميز المؤهلات العلمية ضمن علاقة رئيسي/فرعي وهما بسيطان ويتضمن الجدول الرئيسي على حقل يدعى isused وهو من نوع محرفي يأخذ القيمة (T,F) ويستخدم لجعل الترميز المدخل فعال أو غير فعال،ويوجد مثل هذا الحقل ضمن الجدول الفرعي (أي يوجد فيه حقل يدعى isused أيضاً) ويستخدم لنفس الغرض. الآن عندما أقوم بسحب data control الخاص بالجدول الرئيسي وجعل نوعه table ويكون حقل isused له من نوع Checkbox ومن ثم أقوم بتشغيل الصفحة تظهر المشكلة التالية:عندما أقوم بتغيير قيمة checkbox تظهر الرسالة أن السمة الخاصة بالعنصر غير محددة، لذلك اجتهدت وقمت بسحب العنصر isused لوحده إلى الجدول الخاص به وجعلت نوعه هو selectBooleanCheckbox ففتح لي نافذة تدعى edit boolean binding حيث قمت من خلالها بتحديد قيمة select state = T و قيمة unselect state = F.وعملت تشغيل للصفحة وتم تعديل checkbox بشكل صحيح ،وسؤالي هو هل هذه هي الطريقة الصحيحة لجعل أحد حقول table من نوع checkbox وإذا كان كذلك فلماذا عندما أقوم بنفس الخطوات بالنسبة للجدول الفرعي الموجود على نفس الصفحة تحدث المشلكلة التالية وهي:عندما أقوم بتعديل checkbox لأحد سجلات الجدول الرئيسي يتم تعديل checkbox لجميع سجلات الجدول الفرعي المتعلقة به بنفس القيمة.أي كأن النظام لا يميز بين checkbox الخاص بالجدول الرئيسي و checkbox الخاص بالجدول الفرعي ويعتبرهم أنه نفس الحقل، علما أنه لكل منهما iterator خاص به وهو نفس iterator الجدول المتعلق به. هل من المعقول أن السبب هو لأنهما لديهما نفس الاسم وهو isused ؟؟؟!!علما أنه تم جعل هذين الحقلين من نوع inputText بدل selectBooleanCheckbox ومن ثم قمت بتغيير قيمة حقل inputText من T إلى F سواء للجدول الرئيسي أو الفرعي ولم يحدث هذا التداخل مطلقا أي عملت الصفحة بشكل صحيح تماما. وبالتالي المشكلة محصورة بعمل حقل selectBooleanCheckbox ضمن table أرجو المساعدةولكم الشكر سلفا تقديم بلاغ
بتاريخ: 29 نوفمبر 201114 سنة كاتب الموضوع comment_218104 شو ياخبراء adf وين مشاركاتكمما تعودت عليكم هيك تقديم بلاغ
بتاريخ: 29 نوفمبر 201114 سنة كاتب الموضوع comment_218114 أنا تقريبا قرأت جميع الحلول الخاصة بعملية جعل أحد حقول الجدول المحرفية من نوع checkboxووجدت أن أفضلها وأسرعها هو الحل الموجود ضمن هذا اللينك:http://bsurnida.blogspot.com/2009/02/adf-11g-checkbox-demo-select-one.htmlوهو حل صحيح تماماولكن المشكلة في حال كان للجدول المعروض جدول فرعي آخر مرتبط بهعندها تظهر النتائج الغريبة لعمل checkbox التي تحدثت عنها أرجو المساعدة من الخبراء. تقديم بلاغ
بتاريخ: 1 ديسمبر 201114 سنة كاتب الموضوع comment_218173 شو الأخبارحتى أنتم قاطعتونا anyway thanks ...I have found the solutionIF WE HAVE SAME CHECK BOX FIELD NAME IN THE SAME PAGE,WE MUST RENAME ONE OF THEMRegards تقديم بلاغ
بتاريخ: 2 ديسمبر 201114 سنة comment_218196 مشكلة الـ checkbox أنه له طريقة مخصصة للتعريف لأنه يتم تحديد تعريفه داخل page definition ويتم ارتباطه بالحقل الأصلي من خلال الخاصية binds ولذلك يجب التأكد من أن الخاصية binds هي المختلفة وليس اسم الحقل تقديم بلاغ
بتاريخ: 4 ديسمبر 201114 سنة كاتب الموضوع comment_218239 مشكلة الـ checkbox أنه له طريقة مخصصة للتعريف لأنه يتم تحديد تعريفه داخل page definition ويتم ارتباطه بالحقل الأصلي من خلال الخاصية binds ولذلك يجب التأكد من أن الخاصية binds هي المختلفة وليس اسم الحقل في الحقيقة يا أخ مصطفى أنا متأكد من أن binds مختلفة تماما، ولكن الغريب أنه يبقى اسم AttrNames الخاص بالـ button يحمل نفس الاسم وبالتالي يحدث نتائج غير متوقعة وأنا متأكد من هذا الكلام علما أنني أستخدم 11.1.1.4.0 jdev <button IterBinding="CenterkindView1Iterator" id="Isused" DTSupportsMRU="false" StaticList="true"> <AttrNames> <Item Value="Isused"/> </AttrNames> <ValueList> <Item Value="T"/> <Item Value="F"/> </ValueList> </button>فالبرغم من أنه يتم تغيير id و binds إلا أنه لا يتم تغيير item value تقديم بلاغ
بتاريخ: 4 ديسمبر 201114 سنة comment_218246 سبب هذه المشكلة هو عدم الفهم الصحيح لمعاني القيم فالطبيعي أن اسم AttrNames الخاص بالـ button يحمل نفس الاسم لأنه يشير إلى اسم الحقل ، وطالما كان اسم الحقل واحداً إذن يبقى هذا الاسم واحداً.ما يجب التأكد منه هو هذا السطر<button IterBinding="CenterkindView1Iterator" id="Isused"حيث يجب أن تحمل الخاصية id قيمة مختلفة ويجب أن تكون صفحة الـ JSP تشير إلى هذا الـ id. احتمال كبير أن الأداتين في الصفحة يشيران إلى نفس قيمة الـ id وبالتالي تحدث المشكلة تقديم بلاغ
بتاريخ: 5 ديسمبر 201114 سنة كاتب الموضوع comment_218270 ما يجب التأكد منه هو هذا السطر<button IterBinding="CenterkindView1Iterator" id="Isused" بالنسبة للـ id الخاص IterBinding فهو يأخذ قيمته بشكل افتراضي وهي مختلفة عن id العنصر الآخر (حيث يقوم بالترقيم Isused1) وهي نفس قيمة Binds، وحتى لو أردت أن أجعله يحمل نفس قيمة id لحقل button الثاني فسيعطيني خطأ في ترجمة الصفحة بسبب تكرار id. في الحقيقة يا أخ مصطفى أنا لم تحل عندي المشكلة إلا بعد أن قمت بعمل rename لحقول Isused ضمن view object الخاصة بالجداول التي لها علاقات master/detail. تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.