sadig41 بتاريخ: 21 أغسطس 2011 تقديم بلاغ مشاركة بتاريخ: 21 أغسطس 2011 الاخوة في المنتدي السلام عليكم ورحمة اللهمازلت عضوا مبتديء في المنتدي وفي الاوراكللكن حفيت قدماي بحثا عن موارد تعليمية خصوصا عن مطور الاوراكل 10G ةمع ظهور حزمة التطوير 11g التي لم استطع تنزيلها حتي الان علي جهازي اصبح الامر وكان التقنية تريد ان تسبقنا دائما. كمحاولة لرمي حجر في البركة لتتحرك اقدم هذه المجموعة من الدروس عن مطور الاوراكل 10g اضع فيها عصارة مجهودي راجيا ان يستفيد منها الاخوة. وراجيا الثواب من الله في شهر رمضان الذي قصرنا فيه كثير ومع تباشير العشر الاواخر كل ما اريده منك دعوة بظهر الغيباخوكم sadig41المحتويات مقدمة متطلبات ادوات المطور تشغيل ادوات المطور في الوندوز شاشة باني نماذج الاوراكل الرئيسة متصفح الكائنات Object Navigator الاتصال بالقاعدة تصميم النماذج انشاء نموذج يحوي بلوك وحيد Single لآمخؤن انشاء بلوك جديد محرر المخطط Layout Editor خصائص العرض حفظ، وتوليد وتنفيذ النماذج حفظ النماذج ترجمة وبناء النموذج Compiling / Building تشغيل النموذج Running الاستعلام بالمثال Query By Example تمرين: انشاء نموذج ذو بلوك وحيد انشاء نموذج رئيسي / تفاصيل Master – Detail العلاقة رئيسي – تفاصيل خطوات انشاء النموذج رئيسي – تفاصيل انشاء البلوك الرئيس انشاء بلوك التفاصيل خصائص علاقة النموذج رئيسي تفاصيل وحدة البرنامج Program Unit في نموذج رئيسي تفاصيل توسيع نموذج رئيسي تفاصيل تمرين : انشاء نموذج رئيسي تفاصيل لائحة القيم List of Values (LOV) والحقول غير المعتمدة علي جدول انشاء لائحة قيم انشاء LOV جديدة تحديد نص استعلام LOV تحديد خصائص مخطط العمود Column Mapping ربط LOV مع عنصر اختبار LOV الحقول غير المعتمدة علي جدول اضافة عنصر جديد لبلوك موجود انشاء قادح Trigger انشاء لائحة قيم جديدة تمرين : انشاء LOV و عنصر غير معتمد علي جدول NBTF وحدات البرنامج لمطور النماذج ووحات البرنامج المخرنة انشاء اجراء Procedure في باني النماذج اضافة عنصر جديد لبلوك EMPLOYEE انشاء اجراء لحساب الشعب الاخري Department انشاء قادح لنداء الاجراء حفظ ونرجمة وتشغيل النموذج انشاء وحدة برنامج محفوظة (اجراء) في SQL*Plus اجراءات محفوظة وقوادح اضافية توليد معرف فريد او متتال باستخدام جدول توليد معرف فريد او متتال باستخدام متسلسلات الاوراكل اختبار القيود لدي العميل اضافة منبه (رسائل منبثقة) استعلام النماذج تلقائيا تجهيز العناصر بالقيم الافتراضية اضافة وظائف لازرار الاوامر تمرير الوسائط بين النماذج تمرين: الاجراءات والقوادح مباديء تقارير الاوراكل بدء اداة التقارير في الوندوز متصفح كائنات تقارير الاوراكل انشاء تقرير في باني التقارير انشاء تقرير من جدول واحد تحديد نموذج البيانات والتخطيط حفظ وتوليد وتشغيل التقرير تمرين : انشاء تقرير انشاء تقرير رئيسي تفاصيل تحديد نموذج البيانات والمخطط لتقرير رئيسي تفاصيل حفظ وتوليد وتشغيل تقرير رئيسي تفاصيل تمرين: انشاء تقرير رئيسي تفاصيل التقارير البارمترية انشاء نموذج تقارير مخصص انشاء القوائم في النماذج بنية القوائم في النماذج انشاء قائمة مخصصة واذا كان لاخ اخ او اخت سرال فانا حاضر للاجابة عليه 5 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 21 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 21 أغسطس 2011 . مقدمةفي هذه الدورة المصغرة سندرس مطور الاوراكل 10g والذي يتضمن Oracle Form 10g و Oracle Report 10g. والهدف الرئيسي هو تبيين وتقديم تعليمات واضحة لانشاء وتعديل مدخلات البيانات ونماذج الاستعلام بعدة اشكال بالاضافة الي التقارير والمخططاتنعتمد علي الاصدار 10.12.0.2 من المطور لذا اذا لم يكن المطور الذي ستطبق عليه من نفس الاصدار فقد تجد بعض الاختلافات الصغيرة لان اوراكل تعمل علي ادخال بعض التعييرات بين الاصدارات المختلفة 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 21 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 21 أغسطس 2011 .المتطلبات قبل ان تبدأ في هذه الدورة يجب ان يكون الاوراكل مهيأ Installed علي جهازك ولديك حساب للدخول. فلن نخوض في تفاصيل تنزيل الاوراكل. والنسخة المنزلة علي جهازي هي 11g. لكن ستجد في المنتديات الكثير من المواد التعليمية عن اتزيل الاوراكل كما انصحك بعدم تطبيق هذه الدورة علي الحساب System لانك ربما تضر بعض جداول النظام ولو عن طريق الخطأ. لكن يمكنك استخدام الحساب scott / tiger والافضل ان تنشيء مخطط جديد Schem حتي تطبق عليها هذا العمل. صممت الاوراكل المطور 10g كطبقة ثالثة three tier (طبقة واجهة المستخدم) مما يعني انك في حاجة لتشغيله علي خادم Server. تطبيق الخادم (Oracle Application Server (AS) او حاوية الجافا OC4J وهي التي سنستخدمها هنا) يعمل علي الخادم الثاني بينما تطبيق العميل (المنفذ بواسطة نماذج او تقارير الاوراكل) يعمل علي الجهاز الثالث (جهاز العميل). ويمكن ان يتم كل هذا العمل في جهاز واحد لكن يجتاج الجهاز لمطلوبات محددة مثلا الخدمة / التطبيق الذاكرة المستهلكة اثناء التنفيذ Oracle 11g Database 549 MB Oracle 9i Database 140 MB Oracle 10g Forms Builder 42 MB Oracle 10g Reports Builder 80 MB Oracle 10g Forms Runtime Web Launcher 12 MB OC4J Service (JAVA) 36 MB Mozilla Running Form 68 MB Oracle 10g SQL*Plus 26 MB المجموع 953 او 544 MB اذا تحتاج الي ذاكرة 1 gb او حتي اكبر اذا كنت تريد ان تحصل علي اداء جيد ايضا مطلوب منك ان تكون ملما باساسيات التعامل مع الاداة SQL*Plus وتعرف كيف تتصل بالقاعدة Connect وانشاء الجداول واداراج القيم وتعديل القيم بالجمل(INSERT, UPDATE, DELETE) بالاضافة الي الاستعلام من الجدول بالجملة SELECT تعتمد هذه الدورة علي بعض الجداول الموجودة في مخطط الطالب Student’s Schema استخدم الاداة SQL*Plus لانشاء الجداول EMPLOYEE, DEPARTMENT, DEPENDENT بالخصائص التي سنذكرها لاحقا. ملاحظة: ظهر هذا المخطط اول مرة في كتاب مبادي نظم قواعد البيانات لرامز المصري وشامكانت نافاثين EMPLOYEE Table Attribute Data Type FNAME VARCHAR(8) MINIT VARCHAR(2) LNAME VARCHAR(8) SSN NUMBER(12) BDATE DATE ADDRESS VARCHAR(30) SEX VARCHAR(1) SALARY NUMBER(7) SUPERSSN NUMBER(12) DNO NUMBER(2) DEPARTMENT Table Attribute Data Type DNAME VARCHAR(15) DNUMBER NUMBER(2) MGRSSN NUMBER(12) MGRSTARTDATE DATE DEPENDENT Table Attribute Data Type ESSN NUMBER(12) DEPENDENT_NAME VARCHAR(10) SEX VARCHAR(1) BDATE DATE RELATIONSHIP VARCHAR(10) يمكنك استخدام الشفرة التالية لبناء الجداول وادراج بعض القيم بها اولا نقوم بانشاء مستخدم جديد Sql> create user sadigtut identified by sadigtut; ثانيا نمنح المستخدم صلاحيات (في الحقيقة هي ادوار) الاتصال بالقاعدة والمصادر [/right] [/right] sql> grant connect,resource to sadigtut; ثالثا : نتصل بالقاعدة عن طريق الحساب الذي انشاناه SQL> conn sadigtut/sadigtut; رابعا نبدأ في انشاء الجداول CREATE TABLE employee (FNAME VARCHAR2(15), MINIT VARCHAR2(2), LNAME VARCHAR2(15), SSN NUMBER(12) NOT NULL, BDATE DATE, ADDRESS VARCHAR2(35), SEX VARCHAR2(1), SALARY NUMBER(7) NOT NULL, SUPERSSN NUMBER(12), DNO NUMBER(2) NOT NULL) ; ALTER TABLE employee ADD CONSTRAINT pk_employeePRIMARY KEY (ssn); CREATE TABLE DEPARTMENT (DNAME VARCHAR2(15), DNUMBER NUMBER(2) NOT NULL, MGRSSN NUMBER(12), MGRSTARTDATE DATE) ; ALTER TABLE department ADD CONSTRAINT pk_departmentPRIMARY KEY (dnumber); CREATE TABLE DEPENDENT(ESSN NUMBER(12), DEPENDENT_NAME VARCHAR2(15), SEX VARCHAR2(1), BDATE DATE, RELATIONSHIP VARCHAR2(12)) ; ALTER TABLE dependent ADD CONSTRAINT pk_dependentPRIMARY KEY (essn, dependent_name); ALTER TABLE dependent ADD CONSTRAINT fk_employeeFOREIGN KEY (essn) REFERENCES employee (ssn); ALTER TABLE employee ADD CONSTRAINT fk_departmentFOREIGN KEY (dno) REFERENCES department (dnumber); خامسا نقوم بادخال بعض القيم لهذه الجداول INSERT INTO DEPARTMENT VALUES ('RESEARCH', 5, 333445555,'22-MAY-1978') ;INSERT INTO DEPARTMENT VALUES ('ADMINISTRATION', 4, 987654321, '01-JAN-1985') ;INSERT INTO DEPARTMENT VALUES ('HEADQUARTERS', 1, 888665555,'19-JUN-1971') ;INSERT INTO EMPLOYEE VALUES('JOHN','B','SMITH',123456789,'09-JAN-1955','731 FONDREN, HOUSTON, TX', 'M',30000,333445555,5) ;INSERT INTO EMPLOYEE VALUES('FRANKLIN','T','WONG',333445555,'08-DEC-1945','638 VOSS,HOUSTON TX', 'M',40000,888665555,5) ;INSERT INTO EMPLOYEE VALUES('ALICIA','J','ZELAYA',999887777,'19-JUL-1958','3321 CASTLE, SPRING,TX', 'F',25000,987654321,4) ;INSERT INTO EMPLOYEE VALUES('JENNIFER','S','WALLACE',987654321,'20-JUN-1931','291 BERRY, BELLAIRE, TX', 'F',43000,888665555,4) ;INSERT INTO EMPLOYEE VALUES('RAMESH','K','NARAYAN',666884444,'15-SEP-1952','975 FIRE OAK, HUMBLE, TX', 'M',38000,333445555,5) ;INSERT INTO EMPLOYEE VALUES('JOYCE','A','ENGLISH',453453453,'31-JUL-1962','5631 RICE, HOUSTON, TX', 'F',25000,333445555,5);INSERT INTO EMPLOYEE VALUES('AHMAD','V','JABBAR',987987987,'29-MAR-1959','980 DALLAS, HOUSTON, TX', 'M',25000,987654321,4) ;INSERT INTO EMPLOYEE VALUES ('JAMES','E','BORG',888665555,'10-NOV-1927', '450 STONE, HOUSTON, TX', 'M',55000,NULL,1) ;INSERT INTO DEPENDENT VALUES (333445555,'ALICE','F','05-APR-1976','DAUGHTER') ;INSERT INTO DEPENDENT VALUES (333445555,'THEODORE','M','25-OCT-1973','SON') ;INSERT INTO DEPENDENT VALUES (333445555,'JOY','F','03-MAY-1948','SPOUSE');INSERT INTO DEPENDENT VALUES (123456789,'MICHAEL','M','01-JAN-1978','SON');INSERT INTO DEPENDENT VALUES (123456789,'ALICE','F','31-DEC-1978','DAUGHTER');INSERT INTO DEPENDENT VALUES (123456789,'ELIZABETH','F','05-MAY-1957','SPOUSE');INSERT INTO DEPENDENT VALUES (987654321,'ABNER','M','26-FEB-1932','SPOUSE'); سادسا نقوم بتاكيد هذه الادخالات حتي تحفظ في القاعدة والا فان باني النماذج والتقارير لن يستطيع رؤية هذه البيانات. لكن اذا اردت الخروج من الاداة SQL*Plus فستقوم هي بالحفظ تلقائيا SQL> COMMIT; والان اذا قمت بامر استعلام Select * from tab; يجب ان تكون النتيجة كاتالي:-الان حتي نتاكد من اننا قمنا بادخال كل القيم سنستخد جمل الاستعلام النتيجة الجملة 3 SQL> select count(*) from DEPARTMENT; 7 SQL> select count(*) from DEPENDENT; 8 SQL> select count(*) from EMPLOYEE; اذا لم تكن النتيجة عندك كما موضح بالجدول فهذا يعني ان عليك مراجعة القيم التي ادخلتها وان كان الامر ليس ضروريا.3.أدوات حزمة مطور الاوراكل 10Gيجوي مطور الاوراكل 10g الادوات الرئيسة التالية: مطور النماذج Forms لتصميم نماذج ادخال البيانات مطور التقارير Reports لتصميم التقارير مطور الجافا JDeveloper لتطوير تطبيقات الجافا (خارج نطاق التمارين) باني المخازن Warehouse والمستكشف Discoverer هي ادوات OLAP لانشاء مخازن البيانات Warehouse وواجهات المستخدم لـ OLAP (خارج نطاق التمارين) مصمم الاوراكل Designer هي اداة اوراكل لـCASE التي تتضمن قدرات تعديل وتوليد الكود (خارج نطاق التمارين) اذا في هذه الدورة سنغطي البندين الاولين باني النماذج وباني التقارير1.3 تشغيل المطور في بيئة الوندوزلتشغيل باني النماذج من Start-> All Programs -> Oracle Developer Suite - DevSuiteHome1 -> Forms Developer -> Form Builderلتشغيل باني التقارير من Start-> All Programs -> Oracle Developer Suite - DevSuiteHome1 -> Reports Developer -> Report Builderملحوظة بالنسبة للاخوة الذين يستخدمون نظام Linux يمكنهم تشغيل السكربت f90desm.sh لباني النماذج و rwbuilder.sh لباني التقارير4.الشاشة الرئيسة لباني نماذج الاوراكل 10gتسمي هذه الشاشة مستعرض الكائنات Object Navigator وتعرض كل عناصر النموذج: بلوكات البيانات Data blocks القوائم Menu items مكتبات المستخدم والمكتبات الجاهزة كائنات فاعدة البيانات (الجداول Tables والمناظر Views) وعموما الضغط علي + يوسع لنا شجرة العرض و – يطويها مرة اخري 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 21 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 21 أغسطس 2011 محتويات مستعرض الكائنات هي :- النماذج Forms يحوي كائنات النموذج زكل كائناته الفرعية كبلوكات البيانات والقوادح Triggers والمنيهات Alerts والكانفاسات Canvases ووحدات البرامج (الاجراءات والدوال) Program Units (Procedure and Functions) ، كما هناك الوسائط Parameters والنوافذ Windows. ويمكن فتح اكثر من نموذج في المرة الواحدة القوائم Menus يحوي كائنات القوائم وكائناتها القرعية كعناصر القائمة والوسائط ووحدات البرنامج. كم يمكن فتح اكثر من قائمة. مكتبات PL/SQL: تحوي شفرات PL/SQL سواء كانت مخزنة في القاعدة او في ملفات .plb ويمكن ان تتم مشاركة المكتبات من قبل اكثر من نموذج ومن قبل اكثر من مطور مكتبات الكائنات Object Libararies : تحوي تجميعة من الكائنات Collection (اي شيء يمكن ان يظهر علي النموذج) الوحدات المدمجة Build-in Packages : لائحة بكل الحزم (اجراءات PL/SQL) والمتاحة افتراضيا لكل النماذج والتقارير كائنات قاعدة البيانات Database Objects: لائحة بكل كائنات قاعدة البيانات (الجداول والمناظر ومكتبات PL/SQL ووحدات البرامج) والموجودة في مخطط قاعدة البيانات للمستخدم عندما ينشأ الكائن فانه سيعرض تحت القسم المناسب. كما يمكن ان تظهر قائمة سياقية منبثقة لكل كائن عند الضغط عليه بالزر الايمن للماوس2.4 الاتصال بقاعدة البياناتبعد فتح المطور يظهر صندوق حوار المعالج نحتر Cancelاول خطوة للعمل في المطور هي انشاء اتصال بقاعدة البيانات. ويتم ذلك من قائمة File نختر Connect او نضغط علي الايقونة واكتب الاسم وكلمة السر وقاعدة البيانات ولو تذكرون فان كلمة السر كانت sadigtut ايضابعدها نضغط علي الزر Connect. اذا كان اسم المستخدم او كلمة السر او قاعدة البيانات ليس صحيحا فان الصندوق سيظهر لك مرة اخري5 مصمم النماذجقاعدة البيانات القياسية تحوي دستة من الجداول التي تحوي بدورها العديد من الاعمدة ذات البيانات مختلفة الانواع. ونحن نقوم بتطوير النماذج والتقارير حتي يصبح التعامل مع هذه الجداول اسهل للمستخدم. بحيث يتعامل النموذج كنافذة لقاعدة البياناتوافتراضيا فان في مقدور النموذج ان يطلب البيانات من الجداول وان يقوم بالتعديل عليها باضافة سجل جديد الي الجدول. ويبني النموذج من بلوك بيانات او اكثر ويرتبط هذا البلوك بجدول او منظر في قاعدة البيانات. والحقول في بلوك البيانات ترتبط بعمود في الجدول في قاعدة البيانات.هذا النموذج يتكون من بلوكي بيانات واحد لجدول Employee والثاني لجدول Dependent. وقد تم ترتيب هذين البلوكين في شكل رئيسي / فرعي حيث يرتبط سجل موظف واحدة (رئيسي) بعدة سجلات من الذين يعتمدون عليه Dependent (تفاصيل).يقدم النموذج ايضا شريط قوائم Menu Bar وشريط ازرار Button Bar ويمكن استخدامهما للتنقل عبر السجلات في الكتلة وللتنقل بين البلوكات. وايضا لاجراء الايتعلامات في الجدول كادخال وتحديث وحذف السجلات ومسح النموذج بالاضافة الي الخروج. وهناك في اسفل كل نموذج شريط حالة Status Bar ليعرض التوجيهات ورسائل الاخطاء كما يحدد السجل الحالي في البلوك.نكتفي اليوم بهذه الحصيلة علي ان نواصل عدا ونتحدث عن انواع البلوكات كما ابدي استعدادي لمعاونة اي اخ علي انجاز هذه الخطوات او حتي لدراسة الاسس النظرية التي قام عليها العملكل ما ارجوه من الاخوة هو الدعاء 2 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Dream_Works بتاريخ: 21 أغسطس 2011 تقديم بلاغ مشاركة بتاريخ: 21 أغسطس 2011 أشكرك أخي الكريم ... و جعله الله في ميزان حسناتك اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 25 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 25 أغسطس 2011 يبدو ان الاخوة في الاعتكاف هذه الايام ولايدخلون المنتدي فلم احصل الا علي دعوة واحدة. عموما اكملت اعداد جزء جيد عن انشاء بلوك بيانات وحيد single data block وساقوم برفعه غدا او يوم السبت علي الاكثر ان شاء الله 2 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Amgad بتاريخ: 25 أغسطس 2011 تقديم بلاغ مشاركة بتاريخ: 25 أغسطس 2011 السلام عليكم ورحمة الله شكرا لك أخي الفاضل على هذا الجهد وهذا العطاء ... ورغبتك وحبك فى نشر العلم وتعلمه استمر وستجد الكثير من المتابعيين لسلسلة الدروس القيمة والمفيدة اللهم تقبل منا ومنكم الصيام والقيام وصالح الأعمال فى هذه الأيام المباركة جزاك الله خيرا 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
scince بتاريخ: 25 أغسطس 2011 تقديم بلاغ مشاركة بتاريخ: 25 أغسطس 2011 (معدل) مجهود عظيم جداً ويكتنفه الكثير من جوانب الابداع وسهولة تسلسل الافكار وروعة الاداء وتشكر جداً عليه واستمر في عطائك الى الاماماللهم وفق عبدك الى ماتحب وترضاه وزده في العلم والرزق اللهم امين تم تعديل 25 أغسطس 2011 بواسطة scince اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 26 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 26 أغسطس 2011 توجد اربع انواع رئيسة يمكن للنموذج ان يظهر بهابلوك واحد Single Block يحوي بلوك بيانات واحد مرتبط بجدول واحد في قاعدة البيانات بلوك واحد مع حقل بحث: يحوي بيانات من بلوك واحد مرتبطة بجدول واحد بالاضافة الي حقل او اكثر يعرض بيانات من جدول او جداول اخري كلائحة للبحث فيها http://im9.gulfup.com/2011-08-26/1314343004121.gif بلوك واحد. يحوي بيانات من جدول واحد http://im9.gulfup.com/2011-08-26/1314343004662.gif رئيسي / تفاصيل مع حقول بحث: يشبه نموذج رئيسي تفاصيل لكنه يضاف اليه حقل بحث في القسم الرئيسي و/أو في قسم التفاصيل http://im9.gulfup.com/2011-08-26/1314343004923.gif رئيسي / تفاصيل يجوي بلوكي بيانات تربط بينهما علاقة واحد لمتعدد http://im9.gulfup.com/2011-08-26/1314343004494.gif هناك المزيد من التوليفات مثل رئيسي / تفاصيل / تفاصيل بثلاث بلوكات وهكذا. لكن الاشهر والاكثر استعمالا هي هذه الاربع وهي التي سنتناولها في هذه الدورة6.انشاء وتشغيل نموذج احادي البلوكعموما بلوك البيانات في النموذج يرتبط بجدول في قاعدة البيانات. وهو ما يسمي بلوك جدولي الاساس Base Table او معتمد علي جدول. ويتم انشاء بلوك لكل جدول يعرض علي النموذج. في هذا المثال سننشيء بلوك واحد لجدول EMPLOYEEيظهر البلوك علي الكانفاس Canvas الذي يحتوي بدوره في نافذة Window. وتوجد عدة طرق للتحكم في ظهور اكثر الكانفاس واكثر من نافذة في النموذج. لكن في هذا المثال سنعمل علي التعامل مع كانفاس واحد علي نافذة واحدة.ايضا توجد اكثر من طريقة لانشاء بلوك البيانات. احداهما بالطريقة اليدوية حيث نعرف الجدول الاساسي والاعمدة ونحدد مواضعها علي النموذج وهذا امر شاق وان كنا نحتاج له احيانا. لذا قدمت لنا اوراكل معالجان Wizard لانشاء بلوكات البيانات1.معالج كتلة البيانات Data Block Wizard يقودك عبر خطوات محددة لاختيار جدول من قاعدة البيانات وتحديد الاعمدة2.معالج التخطيط Layout wizard يقودك عبر خطوات لتختر الطريقة التي تريد بها تنظيم هذه الاعمدة لتظهر علي النموذج1.6 انشاء بلوك جديدمن قائمة ادوات Tools اختر Data block wizard سيظهر الصندوق التاليhttp://im9.gulfup.com/2011-08-26/1314343004815.jpgاضغط علي الزر Next ستظهر النافذة التاليةhttp://im9.gulfup.com/2011-08-26/1314343004686.jpgمن هنا نحدد نوع بلوك البيانات هل يعتمد علي جدوا او منظر Table or view ام يعتمد علي اجراء مخزن (اي كتبناه في SQL*PLUS مثلا) Stored Procedure ونحن سنختار Table/View ثم نضغط Next لتظهر الشاشة ادناه وهي التي تمكننا من تحديد الجدول الذي نريدهhttp://im9.gulfup.com/2011-08-26/1314343004897.jpgنضغط علي Browse… لاختيار الجدول اذا لم تكن متصلا فسييسألك ان تتصل يمكن ان تكتب له sadigtut كاسم للمستخدم وكلمة سر وorcl كاسم لسلسلة الاتصال وتضعط connect اما اذا كنت متصلا فستظهر لك الشاشة التاليةhttp://im9.gulfup.com/2011-08-26/1314343004948.jpgتأكد من اختيار المربعين Current User Table ستظهر عندها الجداول اذا لم تظهر الجداول فتاكد من انك قد انشأتها اولا واذا كان محرر SQL*PLUS ما زال مفتوحا تاكد من انك بعد انشاء الجداول قد نفذت الامر Commit.اختر الجدول Employee واضغط الزر OK سيظهر لنا المعالج ومعه اسم الجدول المحدد والاعمدة المتاحة available columns ولاضافة عمود للقاعدة قم بتحديد اسمه من ثم اضغط علي الزر ذو السهم المتجه للايمن عندها ينتقل اسم العمود الي العمود الايمن المسمي Database Item سنقوم باختيار الاعمدة التالية FNAME, LNAME, SSN, BDATE, SALARY, DNOhttp://im9.gulfup.com/2011-08-26/1314343004948.jpgنضغط علي زر التالي Next سيظهر صندوق حوار يمكننا من اختيار اسم للبلوك وليكن EMPLOYEE بنفس اسم الجدولhttp://im9.gulfup.com/2011-08-26/1314343004499.jpgالان نضغط علي زر التالي Nextعندها سيظهر صندوق حوار معالج التخطيط يهنأنا باننا قد اكملنا بناء بلوك البيانات وبحيرنا بين ان نبدأ معالج التخطيط Create the block, then call the Layout wizard او اننا اصبحنا بالاحترافية اللازمة ولانريد من الاوراكل مساعدة وسنقوم بالامر يدويا Just create the data block طبعا نحن لسنا كذلك لذا نتاكد من اننا اخترنا الخيار الاول ثم نضغط انهاء Finishhttp://im9.gulfup.com/2011-08-26/13143430041210.jpg 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 26 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 26 أغسطس 2011 انشانا المرة السابقة بلوك البيانات ونريد الان انشاء مخطط له بعد ضغط زر انهاء في الشاشة السابقة سيظهر صندوق الحوار التالينضغط علي زر التالي Next هذا الصندوق يخيرنا بين ان ننشيء كانفاس جديد Canvas او ان نستخدم كانفاس موجود وبما ان هذا اول كانفاس ننشئه فلن تجد غير الخيار الاول. ثم في صندوق Type نحدد نوع الكانفاس (قد نناقشه لاحقا) وسنختار نحن الخيار content ونضغط زر التالي ليظهر صندوق الحوار التالي:سنلاحظ ان صندوق الحوار يحوي في الجانب الايسر Available Item كل الحقول المتاحة والتي اخترناها في معالج انشاء بلوك البيانات. هذه المرة سنختار كل الحقول مما يعني الضغط علي السهمين المتجهين لليمين والمحددان في الصورة اعلاه باللون الاحمر ثم نضغط زر التالينري ان الجدول هنا مقسم لاربع اعمدة العمود الاول Name به اسم الحقل كما موجود بالجدول والعمود الثاني Prompt به اسم الملصق الذي سيظهر بجانب الحقل علي النموذج وقد قمنا باجراء بعض التغييرات عليه كما تلاحظون. والعمود الثالث Width به عرض هذه الحقول علي النموذج (ليس له دخل بكمية البيانات التي يستطيع الحقل احتوائها) وقد عيرنا ايضا في قيمه قليلا والعمود الرابع Height يحدد ارتفاع الحقل.بعد الانتهاء من التغييرات نقوم بالضغط علي زر التالي. لتظهر لنا شاشة تمكننا من تحديد شكل النموذج. اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 26 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 26 أغسطس 2011 هناك شكلان يمكن للنموذج ان ياخذهما Tabular اي جدولي حيث توضع ملصقات النموذج في الاعلي وعدد من السجلات اسفلها والشكل الثاني Form يضع الملصق الي يسار الحقل او يمينه اذا كانت اعدادات النموذج علي الاتجاه من اليمين لليسار (سنعرفها لاحقا ان شاء الله). وهي التي سنختارها لهذا المثال.نضغط زر التاليسنسمي الاطار Frame title بالاسم Employee وسنختار عدد السجلات التي ستعرض 1 Record Displayed ثم سنتأكد من اختيار Display Scrollbar بعدها نضغط علي زر التالي يظهر صندوق الحوار الاخير ليهنأنا علي نجاحنا فنضغط زر انهاء Finishستنشأ كانفاس جديدة مع بلوك البيانات الجديد وتوضع عليها كل العناصر التي اضفناها في معالج المخططوفي هذه اللحظة بالذات سيظهر محرر المخطط Layout Editor وسيظهر نموذج جديد2.6 محرر المخططحتي تري النموذج الفعلي ببلوكاته وحقوله. من قائمة Tools اختر Layout Editor (هذا ان لم تظهر بالفعل)لإي محرر المخطط بامكاننا تغيير مواضع الحقول والملصقات بالضغط عليها والسحب. كما يمكن اضافة المزيد من صناديق النصوص والخطزط و الخ، اذا استخدمنا شريط الادوات الموجود الي يسار النافذة. 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 26 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 26 أغسطس 2011 العمليات الاكثر استخداما علي المحرر تتضمن نقل الحقل او ملصق الحقل عبر الضغط عليه ثم سحبه تغيير اسم الملصق بالنقر علي الايقونة من شريط الادواتثم تضغط علي الملصق. وللخروج من تحرير الملصق اضغط في اي مكان اخر اضافة نص للبلوك باختيار الاداة من شريط الادوات ثم تضغط في مساحة خالية وتكتب النص الجديد. لتغيير نوع الخط ظلل النص ومن قائمة Format اختر Font لتغيير لون الخط في الملصق استخدم الاداة لتظليل الملصق ثم اضغط علي زر لوحة لون النص لتختار لون النص الذي تريده لتغيير عرض الحقل اضغط عليه ثم اسحب من المقابض السوداء التي تظهر علي اطرافه. فقد نحتاج لتوسيع ملصق الضمان الاجتماعي واسم الاب وغيره يمكنك استخدام الاداة لتكبير النموذج والاداة ذات علامة - لتصغيره والي اللقاء في الحلقة القادمة مع خصائص العرض 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 26 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 26 أغسطس 2011 خصائص العرضعندما نضغط علي كائن في محرر المخطط نقرة مزدوجة ستظهر نافذة الخصائص. Properties او يمكن اظهارها بالنقر بالزر الايمن علي العنصر ومن ثم نختار properties palette .لكل نوع من العناصر مجموعة الخصائص المميزة له. فلو نقرنا مزدوجا علي بلوك البيانات Employee من متصفح الكائنات Object Navigator سنجد الخصائص التاليةWHERE Clause تحدد جملة الاستعلام لتنقية (فلترة) اختيار الاعمدة من الجدول بقاعدة البياناتORDER BY Clause تحدد الجملة العمود الذي سترتب البيانات علي اساسهDelete Allowed, Insert Allowed, Query Allowed and Update Allowed تغيير هذه الخصائص لعكس المفعول مثلا ضبط Delete Allowed علي القيمة False يقي المستخدم من حذف السجلات من الجدول في قاعدة البيانات باستخدام النموذج.هناك العديد من الخصائص تتحكم في الخطوط والالوان والحجم وموضع الكائنات في البلوك.4.6 حفظ وترجمة وتنفيذ النماذجيمكن ان نحفظ النموذج كملف في المسار الذي نريده. وسيحفظ النموذج كملف مصدري بالامتداد .fmb بينما الملف المترجم سيحفظ بالامتداد .fmx ساقوم انا بانشاء مسار خاص بملفات هذا التمريناذهب لقائمة Start اختر Run او اضغط علي الزر windows logo ومعه الزر Rاكتب في الصندوق الذي يظهر لك cmd واضغط علي OKتظهر نافذة الدوس نكتب الامر cd\ ونضغط Enterالان نكتب mkdir sadigdoc ونضغط Enter لانشاء المجلدالان نكتب cd sadigdoc ونضغط ونضغط Enter للدخول الي المجلدتاكدنا الان اننا انشاءنا المجلد نغلق نافذة الدوسنعود الان الي مطور النماذج لحفظ النموذج من قائمة File نختار Save ونحدد المسار من save in ليصبح sadigdoc الموجود في c وفي اسم الملف File name نكتب الاسم الذي نريده وليكن employee ثم نضغط زر Saveلايفضل استخدام مسافة في اسم النموذج2.4.6 ترجمة وبناء النماذجقبل ان يشتغل النموذج يجب ان يترجم ويبني. الترجمة تشغل مترجم PL/SQL لكل الاجراءات والقوادح الموجودة في النموذج. البناء سيكون ملف .fmx الذي يستخدم لتشغيل النموذج. وحتي نقوم بترجمة النموذج تاكد اولا انك قد حفظته ثم من قائمة Program اختر Compile Module. اذا وجدت في النموذج اخطاء (مثلا في اكواد PL/SQL او حدث تغير في مخطط قاعدة البيانات) سيظهر لك في نافذة وسينم حفظ سجل باخطاء النموذج بالامتداد .err فمثلا لو كان اسم النموذج employee سيكون ملف الاخطاء اسمه employee.err.يقوم اوراكل بترجمة النموذج تلقائيا في كل مرة تقوم بتنفيذه بالامر Run3.4.6 تشغيل النموذجتقدم اوراكل منتجاتها لتدعم مفهوم الطبقات الثلاث. قاعدة البيانات هي الطبقة الاخيرة برنامج اوراكل الحاوي للجافا OC4J طبقة ثانية ومتصفح النت (سواء موزيلا او انترنت اكسبلورر) يعمل كواجهة مستخدم. ولتشغيل النموذج لابد من تشغيل OC4J اولا بالخطوات التاليةPrograms -> Oracle Developer Suite - DevSuiteHome1 -> Forms Developer -> Start IC4J Instanceسيظهر محث الاوامر الذي يبدو كالتالييعمل OC4J افتراضيا علي البورت 8888 مما قد يتضارب مع خدمة اخري او اذا كان حائط النار يعمل علي نفذ المنفذ فقد تحتاج لبعض التعديلاتاذا استقبلت رسالة خطأ اثناء تشغيل OC4J فقد يعني هذا ان هناك مثيل اخر من خدمة OC4J يعمل علي الحاسب يمكن ببساطة ان تعيد تشغيل الجهاز.الان تستطيع تنفيذ النموذج من Program نختار Run Form ستم فتح المتصفح الافتراضي عندك وهو موزيلا في جهازي سيقوم برنامج JInitiator بتحميل النموذج الي المتصفح. اذا ظهرت لك رسالة تخبرك بخطا في اسم المستخدم فما عليك سوي ادخاله مرة اخريسيظهر لك النموذح خالي من المعلومات بالطبع لكن قم بالضغط علي الزر او من قائمة استعلام اختر تنفيذ. اعلم ان هناك الكثير من العمل علي هذا النموذج لكن لاتقلق ما الجبل الا حصاة علي حصاة وسنتطرق لها ان شاء اللهملاحظة: اذا لم تشغل OC4J فلن يعمل النموذج وقد تظهر لك رسالة الخطأ بالرقم FRM-10142. ولا تقم باغلاق نافذة Start OC4J Instance ابدا لكن يمكن ان تنزل النافذة. ايضا اذا لم تقم بتنزيل برنامج JInitator او لم تقم يتنزيل النسخة الملائمة فستظهر لك رسالة خطأ ايضااستودعكم الله مع باقي الدروس بعد عيد الفطر وكل عام وانتم بخيملحوظة اذا كان لاي اخ سؤال فيمكنه ان يسال وساكون حاضرا للاجابة 3 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 26 أغسطس 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 26 أغسطس 2011 اشكر كل من رد علي الموضوع ومن دعا لي فاللهم اعطه مثل ما دعا لي وله مثله.واشكر المهندس ميهال الذي سمعت الكثير عنه من المهندس الضي الفكي الذي كان يعمل معك في اليمنالله اغفر لنا جميعا وتقبل صيامنا وقيامنا واخلص نياتنا واغسل قلوبنا وخذنا اليك اخذ الكرام عليك 3 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
scince بتاريخ: 30 أغسطس 2011 تقديم بلاغ مشاركة بتاريخ: 30 أغسطس 2011 اشكر كل من رد علي الموضوع ومن دعا لي فاللهم اعطه مثل ما دعا لي وله مثله.واشكر المهندس ميهال الذي سمعت الكثير عنه من المهندس الضي الفكي الذي كان يعمل معك في اليمنالله اغفر لنا ميعا وتقبل صيامنا وقيامن واخلص نياتنا واغسل قلوبنا وخذنا اليك اخذ الكرام عليك شكراً لك اخي الكريم على كلامك الطيب عني ممكن تقولي من المهندس الطيب الذي ذكرنا عندك بالخير جزاه الله خير اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 3 سبتمبر 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 3 سبتمبر 2011 الاخ ميهالالضي الفكي مهندس سوداني كان يشرف علي مشروع طريق في اليمن لااذكر اسمه واظن انكم كنتم معه وقد كان يذكرك ويذكر اسهاماتك في منتدي المهندسين العرب ان لم تخني الذاكرة اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
قوقل999 بتاريخ: 6 سبتمبر 2011 تقديم بلاغ مشاركة بتاريخ: 6 سبتمبر 2011 جزاك الله خير وبارك الله فيك اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 6 سبتمبر 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 6 سبتمبر 2011 4.4.6 الاستعلام بالمثال Query by exampleكما قلنا عند تشغيل النموذج لاول مرة فان القيم لن تظهر. ويمكن ان يقوم المستخدم بادخال قيم جديدة مباشرة. لكن قد يحتاج احيانا لمعرفة القيم الموجودة مسبقا لذا عليه ان يستعلم قاعدة البيانات وهي خاصية متوفرة في اي نموذج اوراكل وستجلب لك نسخة من السجلات الموجودة في الجدول علي قاعدة البيانات. مستخدما تقنية QBE.استعلام النموذج في الاوراكل هي عملية من خطوتين. الضغط اولا علي زر الاستعلام او اختيار Enter Query من قائمة Query او حتي F11 لتحويل النموذج لنمط ادخال الاستعلام. وهكذا يمكن للمستخدم ان يتنقل في الحقول السابقة. وبالضغط علي زر الاستعلام مرة اخرة او اختيار Execute Query من قائمة Query بالطبع J او Ctrl+F11 (بعد ان تكون قد ادخلت معيارا في حقل مثلا تريد معرفة الموظفين في الشعبة 5 ما عليك الا ان تكتب 5 في الحقل DNO) نقوم بتنفيذ الاستعلام. عندها نكون قد ارسلنا الاستعلام التالي الي قاعدة البياناتSELECT fname, lname, ssn, bdate, salary, dnoFROM employeeWHERE dno = 5;ملحوظة:لمعرفة مفاتيح الاختصار المتوفرة عندك من قائمة تعليمات Help اختر مفاتيح Keyعندمت نستعلم فاننا نقوم بجلب المعلومات من قاعدة البيانات الي الذاكرة الموقتة Buffer لكتلة البيانات المرتبطة بها في النموذج.يمكنك حفظ التغييرات بالاضافة الي السجلات الجديدة في النموذج من قائمة اجراء Action اختر حفظ Save. اي سجل غير سيتم ارساله الي قاعدة البيانات بجملة UPDATE بينما سترسل السجلات الجديدة بجملة INSERT اذا حدث اي فشل اثناء تنفيذ اي من هذه الجمل فيمكن القيام باسترجاع Rolled back.اذا قرر المستخدم الخروج من النموذج من دون ان يحفظ التغييرات فسيتم اعلامه لتاكيد التغييرات commit قبل ان يخرج. او الغاءها من مسحClear Block من قائمة قطعة Block او مسح الكل Clear Form من قائمة اجراء Actionللخروج من نموذج يعمل من قائمة اجراء Action اختر خروج Exit.تحذير: لاتقم فقط باغلاق المتصفح فهذا سيجعل تطبيق الجافا JAVA Applet مما قد يؤدي الي اغلاق نموذجك (.fmx)5.6 تمرين: انشاء نموذج احادي البلوككون نموذج بسيط لجدول DEPARTMENT بالمواصفات التالية:· اختر واعرض كل الاعمدة في جدول DEPARTMENT· في معالج المخطط Layout wizard استخدم طريقة العرض جدولي Tabular واعرض 5 سجلات في النموذج مع اضافة شريط التمرير scrollbar· في محرر المخطط Layout Editor اجعل حقل DNAME اوسع قليلا ليتسع لاسماء الادارات الطويلة· غير خصائص بلوك DEPARTMENT بحيث ترتب البيانات ORDER BY وفق الحقل DNAME· احفظ النموذج تحت الاسم depart.fmbيجب ان يبدو النموذج الناتج بالشكل اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 18 سبتمبر 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 18 سبتمبر 2011 اليوم سنقوم بمناقشة موضوع مهم جدا. انشاء نماذج رئيسي تفاصيل. ورغم انه حتي الان لم يسال اخ عن اي تفصيل في الموضوع فيبدو ان الاخوة قد فهموا الموضوع بشكل جيد او ان الشرح واضح عموما لن اطيل عليكم فالي الموضوع 7 انشاء نموذج رئيسي – تفاصيل سنناقش هنا الخطوات الرئيسة لانشاء نموذج رئيسي/تفاصيل. ونموذج رئيسي / تفاصيل هو النوع من النماذج الذي يجوي بلوكي بيانات. 7.1 علاقة رئيسي تفاصيل تظهر في مخطط علاقة الكائنات كعلاقة "واحد لمتعدد" أو كما يحب أن يسميها البعض رأس باطراف. ويكون الوضع فعليا ان سجل واحد في الجدزل الرئيس يشير لسجل او لعدة سجلات من سجلات التفاصيل في جدول اخر. ومن امثلة هذه العلاقة • طلبات العملاء فيطلب عميل عدة عناصر • شعبة تحوي عدة موظفين • موظف يعول اكثر من فرد • شركة بها عدة فروع • مخزن وبه عدة اماكن للتخزين. يمكن تنفيذ العلاقة رئيسي تفاصيل في باني النماذج باستخدام بلوكي بينات. يرتبط البلوك الاول بالجدول الرئيس ويرتبط البلوك الثاني بجدول التفاصيل. ولنموذج رئيسي تفاصيل وظيفتين رئيستين • يناظر باني النماذج القيم بين البلوكين عبر سلسلة من القوادح من مستوي النموذج والبلوك (قوادح علي مستوي النموذج واخري علي مستوي البلوك) • يضمن باني النماذج ان بلوك التفاصيل سيعرض فقط البيانات المرتبطة بالسجل الحالي في البلوك الرئيس 2.7 خطوات انشاء نموذج رئيسي – تفاصيل سننشيء نموذج يتيح للمستخدم الاستعلام عن الموظفين في شعبة ما. ولربط الجدولين سنستخدم الجملة EMPLOYEE.DNO = DEPARTMENT.DNUMBER 1.2.7 انشاء البلوك الرئيس انشي نموذج جديد من File اختر جديد New واختر Form ثم سنستخدم بعد ذلك نفس الخطوات التي اتبعناها في الجزء السابق جزء انشاء نموذج مفرد او احادي البلوك لانشاء نموذج للموظفين. لكن سننشيء بلوك للشعب DEPARTMENT يحوي كل حقول DEPARTMENT وباختصار 1- من قائمة Tools اختر Data Block Wizard ثم اختر التالي 2- ابني البلوك اعتمادا علي الجدول والمنظر table/view واختر التالي 3- من Browse اختر جدول DEPARTMENT واذا لم يظهر فستظهر نافذة الاتصال واذكر كان اسم المستخدم هو sadigtut وكلمة المرور هي ايضا sadigtut بينما قاعدة البيانات عندي هي orcl 4- اختر كل الحقول من ثم اكمل انشاء بلوك البيانات وانتقل الي معالج المخطط 5- ضع بلوك بيانات الشعب في كانفاس جديدواضف كل الحقول للعرض 6- اختر النوع Form لشكل العرض 7- وليكن اسم الاطار "الشعبة" واهتر عرض سجل واحد 8- احفظ العمل بالاسم deptemp.fmb من ثم قم بتشغيل النموذج لتتاكد انه يعمل علي افضل وجه وسيبدو الامر بالشكل التالي 9- جرب الامر باستخدام الاستعلام بالمثال الذي شرحناه في اخر مشاركة وجرب معرفة الشعبة ذات الرقم 4 والشعبة التي في اسمها H عبر المعيار %H% او الشعب التي رقمها اكبر من 2 بالمعيار 2< 2.2.7 انشاء بلوك التفاصيل لدينا الان البلوك الرئيس DEPARTMENT ويمكننا الان انشاء بلوك التفاصيل EMPLOYEE وربطه بالبلوك الرئيس. يمكن اتباع التالي:- 1. عد لمتصفح الكائنات (من Tools اختر Object Navigator) 2. اضغط علي النموذج DEPTEMP واحذر ان لا تختر بدله البلوك DEPARTMENT 3. من قائمة Tools اختر Datablock Wizard 4. اختر جدول EWMPLOYEE وضمن الحقول the FNAME, LNAME, SSN, BDATE, SALARY, ,DNO اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 18 سبتمبر 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 18 سبتمبر 2011 5. ولان هناك بلوك بيانات علي الاقل في النموذج فانه في الخطوة التالية سيطالبك بانشاء علاقة بين البلوك الموجود DEPARTMENT والبلوك الذي تريد انشاءه. سيقوم المعالج بانشاء هذه العلاقة بناء علي القيود والعلاقات التي انشاءتها عند انشاء قاعدة البيانات وبناء الجداول. كما يمكنك ان تحدد العلاقة يدويا وهو ما سنفوم به في هذه الحالة. الغي اختيار الخيار Auto-join data blocks ثم اضعط زر انشاء علاقة Create Relationship ليعرض لك لائحة البلوكات المتاحة6. نختار الخيار الاول Based on a join condition من ثم نضغط زر OK7. سيظهر لنا بلوك واحد طبعا لانه كل ما نملك وهو DEPARTMENT اختره واضغط علي موافق من ثم رتب العلاقة ليكون الربط بالشكل EMPLOYEE.DNO = DEPARTMENT.DNUMBER8. سم بلوك البيانات EMPLOYEE من ثم اكمل انشاءه وانتقل لمعالج المخطط9. تاكد من انك تختار الكانفاس CANVAS4 وهو الكانفاس الذي انشاءنا عليه الكتلة السابقة كتلة الشعبة. واضف كل الحقول ما عدا الحقل DNO (سيظل حقل DNO جزء من بلوك EMPLOYEE لكن لن يظهر للمستخدم)10. اختر نوع المخطط Tabular واعرض 5 حقول بمسافة بينية 0 ثم احفظ النموذج ونفذه لتري ان كان يعمل بالشكل الصحيح سيبدو النموذج بالشكل التالي لاحظ مع اختيار شعبة جديدة في البلوك الرئيس ستتغير اسماء الموظفين في بلوك التفاصيل. وللتنقل بين بلوكين الرئيسي والتفاصيل نستخدمa. للانتقال للبلوك التالي اضغط CTRL-PageDown او من قائمة Block اختر Nextb. للانتقال الي البلوك السابق اضغط CTRL-PageUp او من قائمة Block اختر Previousوالان نتوقف الي هنا والي اللقاء في الحلقة التالية</p> 1 اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 18 سبتمبر 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 18 سبتمبر 2011 خصائص العلاقة لنموذج رئيسي تفاصيلهناك عدة خصائص في نموذج رئيس - تفاصيل يمكن ان نغير فيها لتناسب السلوك الذي نريده. وللوصول اليه نفتح بلوك DEPARTMENT ونفتح العلاقة Relations المسماة DEPARTMENT_EMPLOYEE من ثم نضغط F4 لفتح لوحة الخصائصهناك عدد من الخصائص المهمة.• Name اسم العلاقة وتتكون من اسمي البلوكين• Relation Type نوع العلاقة ارتباط Join او مرجع Ref العلاقة Join تستخدم SQL بالجملة Where. اما العلاقة Ref فتستخدم البيانات المجردة ومراجع الكائنات• Detail Data Block اسم بلوك التفاصيل• Join Condition شرط الربط بين البلوكين• Delete Record Behavior التصرف عند حذف سجل في البلوك الرئيس وكسف سيؤثر علي سجلات التفاصيل وينقسم اليo Non-isolated يحمي من حذف سجل من البلوك الرئيس اذا بيانات بلوك التفاصيل المرتبطة به موجودة في قاعدة البياناتo Isolated حذف السجل الرئيس لن يؤثر في سجلات التفاصيل في قاعدة البياناتo Cascading حذف السجل الرئيس سيحذف سجلات التفاصيل المرتيطة به مباشرة.• Coordination – Deferred (مرجأ) يحدد متي سيستعلم عن سجلات التفاصيل عندما تستعلم السجل الرئيسo Yes لن يستعلم النموذج عن سجلات التفاصيل حتي ينتقل المستخدم الي بلوك التفاصيلo No تجلب سجلات التفاصيل مباشرة عندما يختار المستخدم السجل الرئيس• Coordination – Auto-query ينفذ علي البيانات المرجئة فقط Deferredo Yes ينفذ الاستعلام تلقائيا عندما ينتقل المستخدم لبلوك التفاصيلo No يجب ان ينفذ الاستعلام يدويا بعد ان ينتقل المستخدم الي بلوك التفاصيل.• Prevent Masterless operation يحدد اذا كان من حق المستخدم الاستعلام او ادراج سجلات في سجل التفاصيل اذا لم يوجد لها سجل رئيس مناظرo Yes لن يستطيع المستخدم الاضافة او الاستعلام اذا لم يوجد سجل تفاصيلo No يمكن للمستخدم الادراج والاستعلام حتي مع عدم وجود سجل رئيسهذه الاعدادات تضبط اداء النموذج رئيسي – تفاصيل.4.7 وحدات البرنامج في نموذج رئيس تفاصيلعند انشاء نموذج رئيسي - تفاصيل ستنشأ ثلاث وحدات برنامج رئيسة• CHECK_PACKAGE_FAILURE وهي اجراء يري اذا النموذج او جملة SQL نفذت بنجاح ام لا وهيProcedure Check_Package_Failure ISBEGIN IF NOT (Form_Success) THEN RAISE Form_Trigger_Failure;END IF;END;QUERY_MASTER_DETAILS وينفذ عندما ينتقل المستخدم لبلوك التفاصيل وهي تحوي التفاصيل التاليةPROCEDURE Query_Master_Details(rel_id Relation,detail CHAR) ISoldmsg CHAR(2); -- Old Message Level Settingreldef CHAR(5); -- Relation Deferred SettingBEGIN---- Initialize Local Variable(s)--reldef := Get_Relation_Property(rel_id, DEFERRED_COORDINATION);oldmsg := :System.Message_Level;---- If NOT Deferred, Goto detail and execute the query.--IF reldef = 'FALSE' THENGo_Block(detail);Check_Package_Failure;:System.Message_Level := '10';Execute_Query;:System.Message_Level := oldmsg;ELSE---- Relation is deferred, mark the detail block as un-coordinated--Set_Block_Property(detail, COORDINATION_STATUS, NON_COORDINATED);END IF;EXCEPTIONWHEN Form_Trigger_Failure THEN:System.Message_Level := oldmsg;RAISE;END Query_Master_Details;• اخيرا CLEAR_MASTER_DETAILS ينادي في كل مرة مع كل استدعاؤ لسجل رئيس5.7 توسيع نماذج رئيس تفاصيليمكن توسيع نموذج رئيس تفاصيل باضافة مستويات من التفاصيل مثلا تحديد لائحة المستخدم بالتفاصيل التي في طلبات المستخدم. لكل طلب يوجد عدة عناصر. كتوسيع للمثال السابق نوسع المعولين DEPENDANTS لموظفين كتفاصيل لبلوك الموظفين6.7 تمرين: انشاء نموذج تفاصيلسنحاول انشاء نموذج رئيس تفاصيل للجدولين EMPLOYEE و DEPENDENTS سيكون EMPLOYEE هو الرئيس و DEPENDENTS هو بلوك التفاصيل. سيكون شرط الربط بين الجدولين عند تساوي SSN للموظفين مع ESSN في جدول المعولين DEPENDENT1- انشيء بلوك بيانات الموظفين يجوي الحقول التالية FNAME, LNAME, SSN, ADDRESS , SEX واستخدم التخطيط Form واعرض سجلا واحدا2- انشيء بلوك البيانات للتفاصيل من جدول DEPENDENT وضمن فيه كل الحقول ولانشاء العلاقة الغ اختيار Auto-Join Data Blocks واضغط انشاء Create Relationship وانشيء العلاقة لتكون بالشكل DEPENDENT.ESSN = EMPLOYEE.SSN3- واعرض كل الحقول في معالج المخطط ماعدا ESSN واختر له النوع Tabular كنوع للمخطط واعرض 4 سجلات بمسافة بينية 0 بين كل سجل4- احفظ النموذج بالاسم empdepn.fmbيجب ان يبدو النموذج كاتالي اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
abdo_osman بتاريخ: 22 سبتمبر 2011 تقديم بلاغ مشاركة بتاريخ: 22 سبتمبر 2011 مجهود رائع وفققك اللهعندما اقوم بتشغيل الشاشة تظهر لى هذه الرسالة http://127.0.0.1:2299/zuej3B7Y5HfpRrGipLdvO9inpQ6t8ARKLCgeeAfLAfVlvj5i ولا يقوم باعطائى اى مخرجاتهذا مع مستعرض الانترنت اوبرااما مع الانترنت اكسبلور 8 فلا يعمل ومن االممكن ان يتم غلفه تلقائيا ارجو الافادة ان امكن ولك جزيل الشكر اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 22 سبتمبر 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 22 سبتمبر 2011 الاخ عبدو عثمانالصورة لم تظهر لي ارجو ان تعيد رفعها في موقع صور مثل http//www.gulfup.com/ او رفعها في المرفقات اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
sadig41 بتاريخ: 24 سبتمبر 2011 كاتب الموضوع تقديم بلاغ مشاركة بتاريخ: 24 سبتمبر 2011 الاخ abdo_osmanانتظر ان ترفع الصورة مرة اخري. فقد اتمكن من مساعدتك اما بقية الدروس فستنشر قريبا ان شاء الله اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
abdo_osman بتاريخ: 26 سبتمبر 2011 تقديم بلاغ مشاركة بتاريخ: 26 سبتمبر 2011 الاخ abdo_osman انتظر ان ترفع الصورة مرة اخري. فقد اتمكن من مساعدتك اما بقية الدروس فستنشر قريبا ان شاء الله السلام عليكم ورحمة الله وبركاتههى ليست صورة انما هى العنوان الذى يظهر عندما اقوم بتشغيل اى فورم ما هى الاعدادات المطلوبة والتى تجعل عندما اطلب تشغيل اى شاشة ان تعمل كما فى الاصدارات القديمة مثل 6 ولا تعطينى هذه الرسائل العجيبةولك جزيل الشكر وعذرا مرة اخرى على التاخير اقتباس رابط هذا التعليق شارك المزيد من خيارات المشاركة
Recommended Posts
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.