hanyelbana بتاريخ: 27 يوليو 2011 تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 (معدل) أخوكم مبرمج من 12 سنة ، عديت على كل حاجة ولأن تخصصي مطور نت فبداية من HTMLJavaScriptcssaspphpjspasp.netc#.netvb.netoracle databaseoracle forms&reportsoracle apps HR consultantjavaحتى إني إشتغلت بال JSF أول ما ظهرت لكن مكملتش لأني تحولت للعمل الخاص وركزت على الشغل بالـ phpالمهم قررت أخيرا العمل بال ADF والتركيز عليهاوسعدت جدا بدورة الباشمهندس مصطفى ماجد في المنتدى هنا واستفدت منها كتيرولأني متفرغ الآن للتركيز على الـ ADFفقد قررت تفريق حلقات هذه الدورة وشرحها بالنص والصور التوضيحيةوهذا طبعاً لن يتم إلا بموافقة المهندس مصطفىولذلك أنا أنتظر موافقته حتى أشرع في تفريغ الفيديوهات بتسلسلهافي إنتظار موافقة حضرتك يا باشمهندس * تنويه : لأني لا أملك قواعد البيانات المستخدمة في الفيديو .. فسأقوم بإستخدام جداول إسكيمة HR الجاهزة في قواعد بيانات أوراكل- فهل تمشي يا باشمهندس ؟ تم تعديل 27 يوليو 2011 بواسطة hanyelbana 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sd4it بتاريخ: 27 يوليو 2011 تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 لا مشاكل ويمكنك استخدام أي قاعدة بيانات اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
New_Boy بتاريخ: 27 يوليو 2011 تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 السلام عليكم ورحمة الله وبركاته ماشاء الله عليك يابشمهندس ... نحن بالانتظار والله الموفق اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 27 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 إذا على بركة الله بسم الله الرحمن الرحيم كل ما نحتاجه من أدوات : 1- أي قواعد بيانات .. سأستخدم هنا Oracle 11g لأننا سنستخدم جداول HR التى تأتي مع قواعد البيانات وكذلك تأتي نفس الجداول مع نسخة Oracle 10g ex 2- JDeveloper ويمكنكم تنزيله من هنا http://www.oracle.co...oads/index.html وهو كامل ومجاني من شركة أوراكل وسنستخدم أحدث نسخة وهي JDeveloper Studio 11.1.2.0.0 سنبدأ بإذن الله من نقطة تشغيل البرنامج وسنأخذها من شروحات موقع أوراكل لأنها لم تسجل في الفيديو 1- نقوم بتشغيل البرنامج من قائمة start 2- ستظهر لنا قائمة اختيار الـ Role ومنها يمكننا تحديد البيئة التى سنعمل عليها مثلا كمطوري قواعد بيانات أو مطوري جافا وميزتها أنها تقلل حجم الأدوات الظاهرة وتعطيك ما تحتاجه على حسب إختيارك هنا . نحن سنختار Studio Developer وهو يحتوى على كل الأدوات وهو الإختيار الإفتراضي. 3- عند التشغيل ستظهر لنا شاشة البداية لتعطيك بعض المساعدة قم بإغلاقها عن طريق OK 4- نقوم الآن بإنشاء أبلكيشن جديد - والأبلكيشن Application هو المحتوى الكبير الذي نضيف بداخله المشاريع Projects وذلك بالنقر على New Application من لوحة الأبلكيشن في أقصى أعلى يسار الشاشة - وفيها ستجد تطبيقاتك ومشاريعك منظمة في تنسيق شجري 5- عندها ستخرج لك شاشة New Gallery وستشاهدها كثيرا عندما تريد إنشاء أي شيء جديد في البرنامج قم باختيار Fusion Web Application (ADF) وهو عبارة عن تطبيق ADF للويب يتكون من مشروعين أحدهم للكود الخلفي للمبرمجين يعني والآخر للواجهة للمصممين يعني - وكله بيشيله المبرمج في الآخر اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 27 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 6- نسمي الأبلكيشن بتاعنا HRSystem ثم نحدد مسار حفظ الملفات ثم نضع demo كبادئة للأسماء كعملية تنظيمية أو لا نضعها سيان 7- ثم ستأتي خطوات إنشاء المشروعين كما أسلفنا .. نقوم بإنشائهما بالمسميات الإفتراضية كما في الصور التالية اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 27 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 8- وعندها ستظهر أمامنا الشاشة بهذا الشكل سنجد أمامنا قائمة مقترحة من البرنامج لبناء التطبيق .. أحنا حنبدأ من تاني خطوة وهي الكونكشن من الداتا بيز ثم نضغط على Create a Database Connection وعندها ستظهر لك شاشة إنشاء الكونكشن وهي شاشة مهمة ، نقف عندها شوية أول حاجة حنحط اسم الكونكشن - أي إسم هنا حنحط HRConn ثم نوع الكونكشن ، وده حيختلف حسب قواعد البيانات المستخدمة عاندك مثلا Sql Server MySql DB2 واحنا هنا حنستخدم Oracle - بنحط اليوزر نيم والباس ورد بتاع قاعدة البيانات وهي هنا username : hr password : hr أو زي ما هو موجود عاندك .. لكن ده هو الإفتراضي للأوراكل بنحط معلومات سيرفر الداتا بيز لو قواعد البيانات على نفس السيرفر بنسيب المعلومات الإفتراضية زي ما هي ولو على سيرفر تاني بنحط الـ IP بتاع السيرفر التاني ثم بنحددال SID بتاع قاعدة البيانات في الأوراكل 10g xe بيكون XE لكن معانا هنا مع ال 11g العادية بيكون الإفتراضي orcl نضغط Test Connection للتجربه ولو طلعلك success! يبقى مبروك عليك .. كسبت كونكشن OK - نقفل الـ Connect to a Database اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
eslam elbyaly بتاريخ: 27 يوليو 2011 تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 السلام عليكم ورحمة الله وبركاته , انا بصراحة يا بشمهندس مش شايف اي فايدة للي هتعمله ده , انا اعرف ان النص يدعم بالصور , والنص والصور تدعم بالفيديو , لكن يبقي عندك فيديو وترجع تاني تعمله لنص وصور (غريبة) وملهاش اي فايدة وضياع وقت جااااامد , انا اعرف ان الناس كلها بتزحف عشان تلاقي فيديو , ع العموم ربنا يوفقك , السلام عليكم ورحمة الله وبركاته اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 27 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 قم باختيار Done من القائمة التى بجوار الكونكشن علشان تعلم انك خلصت الخطوة دي نذهب الآن للخطوة 3 وهي الـ Build Business Services وهي عبارة عن إنشاء لمجموعة من الأوبجكتس تحاكي الجداول المختارة فلدينا Entity Objects وهي تمثل صفوف البيانات في الجدول فكل صف في الجدول يمثل أوبجكت جديد ولدينا Associations للربط بين هذه الأوبجكتز وكذلك لدينا View Objects وهي تمثل أداة الإختيار والتعديل والحذف من البيانات وكأنها تمثل ال SQL queries ولدينا View Links للربط بين هذه الأبجكتز ومصاحب لها Read Only View وهي التي لها صلاحية القراءة فقط وليس لها حق التعديل وفي النهاية يقدم لنا الوزرد خيار أن ينشأ لنا application module وهو عبارة عن برنامج جافا لعرض البيانات المختارة واختبار عمل الموديول كل هذا ستجده مشروح باللغة الإنجليزية في الصورة التالية اضغط الآن على Go to Substeps لفتح الخطوات اضغط على أول خطوة Create Entity Objects and Associations والتى سياخذنا معها الوزرد إلى كل الخطوات التالية انقر مرة أخرى على زر Create Entity Objects and Associations - قم باختيار المشروع Model لنضع بداخله ما سنقوم بإنشائه من أوبجكتز اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 27 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 (معدل) - قم باختيار الكونكشن المنشأ مسبقا HRConn - قم باختيار الجداول المستخدمة والتى يمكن التعديل عليها ، ودع الجداول التى ستستخدم للقراءة فقط في الخطوات التالية - اضغط زر Query ليعرض لك كل الجداول المتاعة عن طريق الكونكشن الحالي لتختار منها - نقوم باختيار الجدولين DEPARTMENTS و EMPLOYEES ليقوم الوزرد بإنشاء updatable entity objects منهما - ثم نقوم بإختيار نفس الجدولين مرة أخرى ليقوم الوزرد بإنشاء Updatable View Objects منهما - ثم نقوم باختيار جدول JOBS ليصنع منه الوزرد Read-Only View تم تعديل 27 يوليو 2011 بواسطة hanyelbana اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 27 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 وأخيرا شاشة Application Module يمكنك تغيير الإسم أو تركه كما هو - والآن يمكنك التأشير على Create Entity Objects and Associations بـ Done - والآن قم بالضغط على زر Close Step 3 لإغلاق كامل الخطوات والتى أنهيناها خلال الوزرد - وعلم على العملية كلها بـ Done - قم الآن بعمل ريت كليك على AppModule ثم قم باختيار Run من القائمة لتشغيل برنامج الجافا واختبار ما قمنا بعمله اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 27 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 27 يوليو 2011 - بعد تشغيل البرنامج - دبل كلك على EmpDeptFkLink1 للتجربه - حاول تقلب عن طريق الأسهو وشاهد سجلات الماستر وسجلات الديتيلز المرتبطة بها. - يمكنك كذلك تحديد السجلات المعروضة عن طريق أيكونة Specify View Criteria إللي عملة زي المنظار - ثم تحديد أي قيمة .. مثلا 1700 في خانة LocationID - وعندها ستجد أن سجلات هذا اللوكيشن فقط هي التي تعرض . - وعندها أيضا نكون إنتهينا من المقدمة وندخل إن شاء الله فيما هو آت في الفيديوهات. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
King Oracle بتاريخ: 28 يوليو 2011 تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 اخي الغالي شرح رائع جدا ومييز بارك الله بك يا الغالي .. يا ريت تضع لنا رابط الفيديوهات ... تابع الشرح على بركة الله اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 28 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 الفيديوهات في هذا الموضوع من المنتدى وهو موضوع مثبتhttp://www.araboug.org/ib/index.php?showtopic=46875 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 28 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 - على بركة الله نبدأ في إنشاء صفحة جديدة - أول شيء نعمل ريت كلك على مشروع الواجههة وهو ViewController ثم نختار New - حتظهرلنا قائمة New Gallery زي ما أحنا عارفين - نختار منها JSP/Facelets المنبثقة من Web Tier في القائمة اليسرى - ثم نختار ـاول إختيار وهو Page من القائمة اليمنى - نكتب اسم الصفحة زي ما نحب .. احنا في الصفحة دي بإذن الله حنشرح إزاي نعمل فاليديشن على أي حقل مدخلات أو مخرجات ، يعني مثلا نحدد عدد الحروف المدخلة ، حد معين من الأرقام ... إلخ - حنسمي الصفحة validation.jsf وباقي الخيارات كما في الصورة - من الـ Component Palette وتحت Text and Selection حنضغط على Input Text لإضافته في الصفحة ، أو نقوم بسحبه ووضعه في الصفحة - ليظهر لنا بهذا الشكل في الصفحة 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 28 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 - الآن نعمل ريت كليك على حقل النص إللي لسة ضايفينه في الصفحة ونختار Go to Properties وهي أسهل طريقة للوصول لخصائص أي شيء على الصفحة إن كانت لوحة الخصائص غير ظاهرة أمامك - الآن سنتعلم أول فاليديشن وهو هل هذا الحقل مطلوب ( أي لابد من إدخاله ) أم لا ( يعني دخله أو لا براحتك ) ، بعد أن تجعله True ستجد أن نقطة خضراء ظهرت بجوار العنوان Required لتعطيك دلالة أن القيمة تم تغييرها . - الجميل في هذه الخاصية عندما يتم ربط الحقول مع جداول قواعد البيانات كما سنرى فيما بعد بإذن الله ، أنها تأخذ حالة مطلوب أو لا من قاعدة البيانات آليا على حسب إعدادات قاعدة البيانات نفسها . - سنلاحظ على حقل النص أنه أضيف له علامة النجمة التى ترمز أنه مطلوب - نلاحظ جزء مهم من الشاشة وسنستخدمه كثيرا وهي لوحة الإستركشر وهي الجزء الذي سيفصل لك كل عنصر موجود في الشاشة ، وبإختيار وتعليم الجزء منها كأنك علمت عليه في الشاشة ، والأهم أنها يظهر بها العناصر التى لا تظهر في الشاشة مثل عناصر الفاليديشن كما سنرى ( فاليديشن مطلوب أو غير مطلوب تعتبر من خصائص حقل الإدخال ولا تعتبر عنصر فاليديشن منفصل ) - نذهب الآن إلى لوحة العناصر ثم نفتح جزء الـ Operations الذي يحتوى على عناصر الفاليديشن ، لاحظ أن لدينا 7 عناصر يمثلهم 4 أيكونات مختلفة - عناصر الـ Length بأيكونة وهي تمثل عدد الحروف المدخلة - عناصر الـ Range بأيكونة وهي تمثل حدود الأرقام المدخلة من 0 إلى 100 مثلا - عناصر الـ Date بأيكونة وهي تمثل تحديد التاريخ - عنصر الـ Regular Expression بأيكونة وهي تمثل وضع شكل معين للمدخلات بأيدينا هيا نشرح هذه العناصر واحد واحد 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 28 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 - الآن نختار حقل الإدخال من الصفحة أو من لوحة الإستركشر ، ثم نختار validateLength من لوحة العناصر أو نسحبها إلى حقل الإدخال - عندها ستجد أن عنصر الفاليديشن ظهر بأيكونته المميزة في لوحة الإستركشر ، رغم أن حقل الإدخال في الصفحة لم يتغير ، وتلك هي ميزة التعامل مل لوحة الإستركشر - الآن قم بالنقر المزدوج على العنصر في لوحة الإستركشر لتظهر لك لوحة حصائصه في أقصى اليمين ، ومنها يمكنك وضع حدود عدد الحروف المسموحة هنا وضعنا أنها لا تقل عن 6 حروف ، يعني 6 ماش لكن 5 مثلا مينفعش ، ولا تزيد عن 12 يعني 12 ماشي ولكن 13 مينفعش - إعمل ريت كلك على الصفحة ثم Run لتعمل الصفحة على البروزر .. قد تأخذ وقت في أول مرة .. وستجد أنك عندما تضع المؤشر على حقل إدخال النص سيعطيك مساعدة قبل أن تكتب أي شيء بما يجب إدخاله في هذا الحقل - حاول الآن كتابة 3 حروف فقط ثم النقر خارج حقل الإدخال ، ستجد رسالة خطأ تملء العين - قم الآن بإدخال كلمة من 6 إلى 12 حرف وانقر خارج الحقل وستجد أنه قبلها ( ملحوظة المسافة تعتبر حرف ) اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 28 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 - الآن نأتي لثاني فاليديشن وهو validate Byte Lenght وهو المسؤول عن تحديد حجم النص المدخل بالبايت ، كما هو معلوم ان طريقة تكويد النصوص مبنية على اللغة الإنجليزية فالحرف الإنجليزي يمثل 1 بايت والحروف في اللغات الأخرى تحسب على حسب تعقيد تكويدها فالحرف في اللغة العربية تحت تكويد UTF-8 يحسب بـ 2 بايت وحروف اللغة اليابانية تحسب بـ 3 بايت ، فأنت في هذا الفاليديشن بتحط طريقة التكويد إللي حتحسب عليها وبتحط أقصى عدد للبيتات المدخلة ، وهذه الميزة مفيدة جدا في تطوير برامج الـ SMS حيث أنك نحدد الرسالة بـ 140 بايت مثلا ، فلو المستخدم حيدخل إنجليزي يبقى حيسمحله حتى 140 حرف ولو حيدخل عربي حيسمحله حتى 70 حرف عربي لأن المحاسبة تكون على قدر المساحة التى تستخدمها الرسالة. - هنا نحن تركنا لك وضع حقل نص جديد ، ثم تضع عليه الفاليديشن ، ثم هذه هي خصائص الفاليديشن - نأتي الآن إلى الـ Validate Long Range وهي لتحديد الأرقام الصحيحة من إلى ، وهذه هي خصائص الفاليديشن. - ولكن لو مدخلاتك تشمل كسور عشرية مثل الراتب فعليك إستخدام Validate Double Range وهذه هي خصائص الفاليديشن - نأتي الآن لنوع مهم وهو Validate Regular Expression وهنا أنت تضع الباترن أو شكل المدخلات كما تريد ، نحن هنا نريد إدخال رقم التأمينات الإجتماعية ، وهذا الرقم له شكل خاص كالتالي : 111-222-333 ، نحن هنا سننشأ حقل نص جديد ونضع عليه الفاليديشن وفي الخصائص سنضع الباترن : حيث أن [0-9] يمثل أي رقم من 0 إلى 9 ، يعني الرمز دة يمثل رقم ، وبعد ما حطينا 3 رموز منه حطينا شارطة كما هو مطلوب - وهكذا ... ممكن كمان نفس القصة نستخدمها في إدخال أرقام التليفونات بالطريقة التى تحلو لنا - ننتقل الآن إلى إدخال التاريخ وتحديده ، نقوم بوضع عنصر إدخال تاريخ من قائمة العناصر من الجزء Text and Selection اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 28 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 - عندما تضع العنصر في الصفحة ستجده كما في الشكل ، وهو الشكل المميز للأيكونة التى تفتح النتيجة لإختيار التاريخ منها ثم وضعه في حقل النص - الآن حاول إضافة فاليديشن Validate Date Time Range على حقل التاريخ ومن خصائصه حدد تاريخ البداية والنهاية لتسمح للمستخدم للإختيار بينهما * ملحوظة إبدأ بتاريخ أقدم ثم تاريخ أحدث ولا تعكس التواريخ - نأتي الآن لآخر فاليديشن وهو Validate Date Restriction وهو المسؤول عن منع المستخدم من إختيار شهور معينه في السنة أو أيام معينة من الإسبوع يمكنك عمل ذلك بوضع الأيام أو الشهور الممنوعة في الخصائص ، وكذلك يمكنك منع إختيار أيام محددة ولكن ذلك يحتاج إلى بعض البرمجة ، سنعرج عليها فيما بعد بإذن الله اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Hala Salem بتاريخ: 28 يوليو 2011 تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 الاخ / hanyelbana جهد فعلا مشكور عليه ورغم ان الفيديوهات دى موجوده فعلا صوت وصوره وشرح عملى الا ان من الممكن يبقى فيه ناس معندهاش وقت للتحميل او لمشاهدة الفيديوهات كلها وبالتالى يقدروا يقروها اثناء تصفح المنتدى وبكده الاستفاده بالدروس دى حتبقى اكتر وخاصة لو فتحت جزء للنقاش والاسئله لى تعليقين على الشرح الى الان : اولا: وانت بتعمل create للصفحه اخترت Facelets معنى كده ان الصفحه حتبقى فيها JSF 2 Facelets tag وليس صفحه JSPX عاديه ثانيا: طبعا موضوع عمل ال Validation على مستوى الصفحه دى للاغراض التعليميه فقط لان فى المشاريع الضخمه مش حنلف على كل صفحه فى المشروع ونضع ال Validators جوه كل input Text ولكن احنا بنعمل كل ال Validations بتاعتنا على مستوى ال Entity Object مره واحده بس فى الابليكيشن ( والانتيتى فيها كل ال Validation دى واكثر ) وكل View Object حنرميه فى الصفحه مبنى على الانتيتى دى حيبقى كل ال attributes اللى فيه فيها ال validation اللى عملتها Go on بقى اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 28 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 Partial Page Refresh وهو يعني التحديث الجزئي للصفحة يعني الجزء المتغير فقط هو إللي يعمل refresh أو submit مش الصفحة كلها ودة هو مختصر تقنية الأجاكسولكن هنا ستصنعها بدون معرفتك للأجاكس وبتغيرات بسيطةسنفترض أن لدينا راديو جروب بها خيارين ، كلما يغير المستخدم الخيار يشعر بذلك حقل إخراج نص ويطبع قيمة الخيار الحاليوسنضع بوسط الصفحة حقل إدخال نص ونجعله مطلوب فقط للتأكد أنه لا يحدث تحديث كامل للصفحة عند تغير الخيارات قم الآن بإدراج هذه المتطلبات في صفحة جديدة ، نحن هنا أنشأنا صفحة جديدة باسم ppr.jsf وقمنا بإدراج العناصر في الصفحة - قم الآن بجعل حقل إدخال النص مطلوب لتظهر معه النجمة * وستظهر معك الصفحة كما يلي - أول خطوة هي جعل الخاصية AutoSubmit في الـ Radio Group بـ True يعني أي تغيير في القيمة حيعمل أوتو سبميت لوحده - لاحظ اسم الـ ID - الخطوة الثانية نأخذ الـ ID للـ Radio ونضعه في خاصية PartialTriggers في حقل النص Output Text - وحاول أيضا أن تتذكر الـ ID الخاص به لأننا سنستخدمه الآن - بقيت آخر خطوة وهي كتابة الكود للشيء الذي نريده أن يحدث عند تغيير القيمة - نحن هنا نريد حقل النص أن يعرض القيمة الجديدة - دبل كليك على ملف الجافا الذي أنشأ مع الصفحة لنفتحه ونعدل فيه اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 28 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 28 يوليو 2011 - ستظهر لك صفحة كود الجافا والذي نسمية ال bean - مفروض أنك نختار العنصر إللي حتعمل عليه الحدث وهو هنا الراديو من قائمة Components وتختار الحدث إللي حتعمله عليه من Events ومفروض هنا نختار valueChangeListener وهو زي متابع بيتابع تغير القيمة - مفروض البرنامج يحطلك كود الميثود دي ويخليك تكتب جواها إللي حيحصل لما تتغير القيمة - لكن هو معايا بيديني الخطأ دة .. مش عارف دة غلط عاندي ولا في النسخة الجديدة من الـ Jdeveloper - المهم حكتب الكود بإيدي - وهي عبارة عن ميثود بتاخد براميتر valueChangeEvent إللي مفروض حدث التغيير - جوا الميثود حنخلق أوبجكت جديد أسمه newValue ونحط فيه القيمة الجديدة - وناخد الـ ID بتاع حقل النص ونعمله set بالقيمة الجديدة - وعند تنفيذ الصفحة حنلاقيها بالصورة دي اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 29 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 29 يوليو 2011 - تصور أنك تريد حقل النص بدون عنوان .. ستقول سهلة سأقوم بمسح محتويات خانة ال Label .. ولكن هكذا ستخسره مع رسائل الخطا ، والبديل أن تجعل الخاصية Simple بـ True وهي ستجعله لا يظهر مع حقل إدخال النص مع الإحتفاظ به - والآن نعود للتعرف على بعض العناصر الجاهزة والمفيدة والتى تأني مع الـ ADF - Input Number Spinbox ليجعل المستخدم يزيد أو ينقص في الرقم المدخل - Slider يجعل المستخدم يختار الرقم المراد بطريقة جرافيك - وكذلك Slider - Range يجعله يختار مدى معين من الأرقام من - إلى - وهذا هو الشكل في الصفحة - وهذا هو الشكل عند التطبيق - نأتي الآن لعناصر التاريخ .. وهو عنصر إدخال التاريخ عن طريق النتيجة المعروف وهو Input Date - ولكن هناك شكل جديد وهو Choose Date وهو عبارة عن نتيجة مفتوحة تختار منها مباشرة ثم يذهب الإختيار لعنصر Input Date اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 29 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 29 يوليو 2011 - وهذا هو شكل العناصر في الصفحة ، - ولكن لابد من ربط النتيجة المفتوحة بعنصر إدخال التاريخ قبلها ليعرض ما نختاره بصورة آلي ، ولكي نفعل ذلك نضع الـ ID للنتيجة والتى هي عنصر Choose Date في خانة ChooseId الموجودة في خصائص عنصر إدخال التاريخ الذي نريد ربطه - وهذه هي النتيجة على المتصفح - نأتي الآن لعناصر جديدة وهي: - إختيار اللون Input Color - عنصر الإختيار من متعدد Shuttle - عنصر الإختيار من متعدد Shuttle مع وجود ميزة ترتيب العناصر المختارة - وهذه هي النتيجة على المتصفح اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 31 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 31 يوليو 2011 - نأتي الآن لموضوع مهم وجميل في نفس الوقت وهو القوائم المرتبطة على بعضها أو Cascading list of values - هيا نبدأ - هدفنا هنا هو عرض جدول العنوان للموظفين Location بحيث عندما نختار الدوله من قائمة ، تمتلء قائمة أخرى تحتها بكل المدن الموجودة في قواعد البيانات لتلك الدولة ، علما أن هناك جدول للدولة به رقم ID واسم الدولة ، ورقم الدولة موجود في جدول اللوكيشن للربط ، والمدينة موجودة داخل جدول اللوكيشن كعنصر مفرد وليس لها جدول . - أولا سنجعل ال ADF يصنع لنا بيزنس كومبوننت من جدولي اللوكيشن والكانتري - نختار الجدولين كما صنعنا في البداية مع جداول الموظفين والأقسام لنصنع منهما أنتتي أوبجكت - ثم نختارهم مرة أخرى لنصنع منهما فيو أوبجكت - بعد الإنتهاء نختار الفيو الخاص بجدول اللوكيشن ثم نختار منه الـ CountryId ونصنع لها List of Values - نختار مصدر البيانات للقائمة اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
hanyelbana بتاريخ: 31 يوليو 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 31 يوليو 2011 - نقوم باختيار الكانتري فيو ليكون مصدر قائمة الدول في الفيو الخاص باللوكيشن - لا ننسى أن نذهب بعدها للتبويب UI Hints لتحديد البيانات التى ستظهر في قائمة الدول ، وبالطبع سنختار هنا CountryName - نحدد الـ List Attribute بـ CountryId ليكون هو الحلقة الواصلة بين فيو اللوكيشن وفيو الكانتري - الآن سنقوم بإنشاء فيو أوبجكت جديد يجمع لنا المدن لتكون تكتل منفصل عن الفيو الأم وهو فيو اللوكيشن وعندها يسهل عرضها كقائمة داخل فيو اللوكيشن - نحدد اسم الفيو وليكن Cities_In_Country ونحدد نوع مصدر الداتا بـ SQL query اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.