بتاريخ: 26 يناير 201412 سنة comment_245851 السلام عليكم ورحمة الله وبركاته الكثير منا جرب التعامل مع Tabular Form وأعتقد الجميع يتذكر أول مرة تعامل فيها مع Tabular Form وكم المشاكل التي واجهها ، والكثير منا مازالت تواجهه هذه المشاكل ، إما لعدم دراية وقلة بحث أو لصعوبة الامر ، حتى أن بعض أصدقائي صرح لي يوما أنه لا يستخدم Tabular Form على الإبكس للابتعاد عن حجم مشاكله التي تأخذ منه الكثير . في هذا المقال الهام سوف أستعرض اغلب المشاكل وحلها التي تواجه مطور الابكس عند استخدامه فروم من نوع Tabualr Form . المشكلة الاولى : Tabular Form لا يقبل ب join نعم هذه حقيقه وربما مطوري الفورم بيلدر يستغربون من هذا الأمر ، وسمعنا كثيرا ان الإصدارات القادمة سوف تعالج هذا الأمر منذ إصدار فيرجن apex 4 وحتى الاصدار apex4.2.4 لم تتم معالجة هذا الأمر والسبب بالتأكيد ان الابكس لا يقبل باكثر من عملية DML على أكثر من جدول في نفس الصفحة طالما استخدمت process wizard . حل المشكلة : يمكنك التغلب على هذه المشكلة بأن تقوم بعمل view على كل الجداول التي تريدها ثم تبني Tabular Form على هذه View ، وبالتالي سيكون هناك process واحده على اكثر من جدول . المشكلة الثانية : Tabular Form لا يقبل إلا بواحد فقط على الصفحة وهذه حقيقة أخرى طالما تريد ان تستخدم Tabular Form Wizard ، وأيضا هناك وعود من مديري ابكس ان تعالج هذه المشكلة في الإصدار APEX 5 ، رغم أن مطوري الابكس ينادون بهذا الأمر من الاصدارات 3 ولم يتغير شئ ، كن بالتأكيد هناك حل . حل المشكلة : استخدام Manual Tabular Form وهو الحل المجدي والمثمر لهذه المشكلة برغم انه يؤثر كثيرا لعى أداء الصفحة خصوصا لو بها حجم بيانات كبيرة في كل فورم إلا أنه مازال الحل الأفضل ، ولا أرجح حلول أخرى نتعامل بها مع Regions بأن نغير في Template Page كلها حلول غير مجدية ولن تثمر في التعامل مع صفحة بها أكثر من فورم ، يمكننا استخدام Manual Tabular Form من خلال الشئ العبقري APEX API Item مثال على ذلك SELECT apex_item.checkbox (30, EMPNO, 'onclick="highlight_row1(this,' || ROWNUM || ')"', NULL, ':', 'f30_' || LPAD (ROWNUM, 4, '0') ) delete_checkbox, EMPNO , apex_item.hidden (31, EMPNO) apex_item.text(34,ENAME,5) ENAME FROM EMP ارجو مراجعة الرابط التالي http://docs.oracle.com/cd/E23903_01/doc/doc.41/e21676/apex_item.htm#CHDEBCCI المشكلة الثالثة : Cascade Select list لا تعمل على Tabular Form لو عندي مثلا اكثر من select list واحدة بها كل الادارات واحتاج عندما أختار إدارة معينة ان تأتي بالموظفين في هذه الإدراة بالSelect الأخرى .. كلام منطقي جدا لكن للأسف Tabular Form لا يدعم هذا الأمر على خصوصا الذين تعاملوا مع Form العادية يجدون هذا الأمر سهل جدا في التعامل مع Items لكن الامر غير مدعوم هنا في Tabular Form . حل المشكلة : هناك حلولا كثيرا جدا من بينها أن نستخدم where condition داخل manula tabular form على الليست الاخرى ، لكن الكثير منكم يريد ان يظل على Tabular Form Wizard لذا هناك حل سريع ومجدي جدا ولا يؤثر على Performance يقدمه لكم المدون والعبقري Jari يمكنك متابعته من هنا http://dbswh.webhop.net/apex/f?p=BLOG:READ:0::::ARTICLE:2003800346210117 هناك مشاكل وحلول اخرى يمكن ان نستعرضها في مواضيع اخرى عن Tabular Form مثل Get Maulti Value From Select list or POP LOV أو ربما كل هذه المشاكل تحل في الإصدار المنتظر APEX 5 دمتم بخير تقديم بلاغ
بتاريخ: 26 يناير 201412 سنة comment_245875 جزيل الشكر ..على المعلومة وعلى الإفكار التي ذكرتها حضرتك تقديم بلاغ
بتاريخ: 27 يناير 201412 سنة كاتب الموضوع comment_245929 جزيل الشكر ..على المعلومة وعلى الإفكار التي ذكرتها حضرتك شكرا للمرور تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.