الانتقال إلى المحتوى
View in the app

A better way to browse. Learn more.

مجموعة مستخدمي أوراكل العربية

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

مطور النماذج Form Developer 10G

Featured Replies

بتاريخ:

شكرا ليك اخى الكريم معلش انا مكنتش متابع من البدايه فى كل الاحوال جزاك الله كل خير وياريت تلم كل الداتا بتاعتك وتعملها بلود علشان افدر احملها واتابعها لان الداتا متفرقه فلو جمعتها مع بعض بيتهيالى بكون احسن وشكرا ليك وجزاك الله كل خير

  • الردود 34
  • المشاهدات 46.8k
  • البداية
  • اخر رد

أكثر المشاركين في هذا الموضوع

Most Popular Posts

  • خصائص العرض عندما نضغط علي كائن في محرر المخطط نقرة مزدوجة ستظهر نافذة الخصائص. Properties او يمكن اظهارها بالنقر بالزر الايمن علي العنصر ومن ثم نختار properties palette . لكل نوع من العناصر مجموعة ال

  • اشكر كل من رد علي الموضوع ومن دعا لي فاللهم اعطه مثل ما دعا لي وله مثله. واشكر المهندس ميهال الذي سمعت الكثير عنه من المهندس الضي الفكي الذي كان يعمل معك في اليمن الله اغفر لنا جميعا وتقبل صيامنا وقيا

  • محتويات مستعرض الكائنات هي :- النماذج Forms يحوي كائنات النموذج زكل كائناته الفرعية كبلوكات البيانات والقوادح Triggers والمنيهات Alerts والكانفاسات Canvases ووحدات البرامج (الاجراءات والدوال) Prog

بتاريخ:
  • كاتب الموضوع


الاخ
abdo_osman

انتظر ان ترفع الصورة مرة اخري. فقد اتمكن من مساعدتك اما بقية الدروس فستنشر قريبا ان شاء الله

السلام عليكم ورحمة الله وبركاته
هى ليست صورة
انما هى العنوان الذى يظهر عندما اقوم بتشغيل اى فورم
ما هى الاعدادات المطلوبة والتى تجعل عندما اطلب تشغيل اى شاشة ان تعمل كما فى الاصدارات القديمة مثل 6

ولا تعطينى هذه الرسائل العجيبة
ولك جزيل الشكر
وعذرا مرة اخرى على التاخير

اخي عبدو نماذج المطور 10g ليست مثل نماذج 6 فالاول يعمل علي المتصفحات مثل انترنت اكسبلورر او فيرفوكس. واظن ان المشكلة عندك انك لم تفم يتنزيل برنامج JInitator قم بتنزيل هذا البرنامج من الرابط التالي https://www.idems.net/jinitiator/jinit13129.exe
وارسل لي النتيجة التي ستظهر لك
واسف ان كنت تاخرت في الرد
بتاريخ:
  • كاتب الموضوع

شكرا ليك اخى الكريم معلش انا مكنتش متابع من البدايه فى كل الاحوال جزاك الله كل خير وياريت تلم كل الداتا بتاعتك وتعملها بلود علشان افدر احملها واتابعها لان الداتا متفرقه فلو جمعتها مع بعض بيتهيالى بكون احسن وشكرا ليك وجزاك الله كل خير

اخي نسبة لبعض المشاغل فلم اكمل حتي الان باقي المحاضرات اما بالنسبة للبيانات السابقة فارجو ان يقوم اخ برفعها في ملف pdf او حتي word واعد انني اذا وفقني الله فسارفعها في ملف واحد
  • بعد 2 أسابيع...
بتاريخ:
  • كاتب الموضوع

3.7 خصائص العلاقة لنموذج رئيسي تفاصيل
هناك عدة خصائص في نموذج رئيس - تفاصيل يمكن ان نغير فيها لتناسب السلوك الذي نريده. وللوصول اليه نفتح بلوك DEPARTMENT ونفتح العلاقة Relations المسماة DEPARTMENT_EMPLOYEE من ثم نضغط F4 لفتح لوحة الخصائص
1318918815451.jpg
هناك عدد من الخصائص المهمة.
• 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 ينفذ علي البيانات المرجئة فقط Deferred
o Yes ينفذ الاستعلام تلقائيا عندما ينتقل المستخدم لبلوك التفاصيل
o No يجب ان ينفذ الاستعلام يدويا بعد ان ينتقل المستخدم الي بلوك التفاصيل.
• Prevent Masterless operation يحدد اذا كان من حق المستخدم الاستعلام او ادراج سجلات في سجل التفاصيل اذا لم يوجد لها سجل رئيس مناظر
o Yes لن يستطيع المستخدم الاضافة او الاستعلام اذا لم يوجد سجل تفاصيل
o No يمكن للمستخدم الادراج والاستعلام حتي مع عدم وجود سجل رئيس
هذه الاعدادات تضبط اداء النموذج رئيسي – تفاصيل.
4.7 وحدات البرنامج في نموذج رئيس تفاصيل
عند انشاء نموذج رئيسي - تفاصيل ستنشأ ثلاث وحدات برنامج رئيسة
• CHECK_PACKAGE_FAILURE وهي اجراء يري اذا النموذج او جملة SQL نفذت بنجاح ام لا وهي

Procedure Check_Package_Failure IS
BEGIN
IF NOT (Form_Success) THEN
RAISE Form_Trigger_Failure;
END IF;
END;
QUERY_MASTER_DETAILS وينفذ عندما ينتقل المستخدم لبلوك التفاصيل
وهي تحوي التفاصيل التالية

PROCEDURE Query_Master_Details(rel_id Relation,detail CHAR) IS
oldmsg CHAR(2); -- Old Message Level Setting
reldef CHAR(5); -- Relation Deferred Setting
BEGIN
--
-- 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' THEN
Go_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;

EXCEPTION
WHEN 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 في جدول المعولين DEPENDENT
1- انشيء بلوك بيانات الموظفين يجوي الحقول التالية FNAME, LNAME, SSN, ADDRESS , SEX واستخدم التخطيط Form واعرض سجلا واحدا
2- انشيء بلوك البيانات للتفاصيل من جدول DEPENDENT وضمن فيه كل الحقول ولانشاء العلاقة الغ اختيار Auto-Join Data Blocks واضغط انشاء Create Relationship وانشيء العلاقة لتكون بالشكل DEPENDENT.ESSN = EMPLOYEE.SSN
3- واعرض كل الحقول في معالج المخطط ماعدا ESSN واختر له النوع Tabular كنوع للمخطط واعرض 4 سجلات بمسافة بينية 0 بين كل سجل
4- احفظ النموذج بالاسم empdepn.fmb
يجب ان يبدو النموذج كالتالي
1318918815762.png

بتاريخ:
  • كاتب الموضوع

والان ننتقل لجزء مهم اخر وهو LOV
8.لائحة القيم LOV وحقول الجداول غير المعتمدة علي قاعدة Non-Base
ليس من السهل للمستخدم ان يتذكر الاكواد والارقام عندما يقوم بادخال البيانات الي النموذج. فمصلا في نموذج الموظف فليس من السهل تذكر ارقام كل الشعب اذا احتجنا لادخال بيانات موظف جديد.
احد الحلول لهذه المشكلة هي ان ننشيء لائحة من القيم للمستخدم عندما ينتقل لحقل رقم الشعبة DNO شيء يشبه القائمة المنسدلة لكننا في لغة الاوراكل نسميها لائحة القيم LOV. سنعتمد علي نموذج الموظفين الذي انشأناه سابقا.
اولا: اغلق كل النماذج المفتوحة اذا وجدت نماذج مفتوحة من ملف File اغلاق Close
ثانيا: افتح نموذج الموظف من قائمة ملف File اختر فتح Open واختر الملف employee.fmb
تعتمد Lov علي Record group وهو استعلام يعيد مجموعة من السجلات يمكن ان نهيء بها قائمة LOV او حتي البلوكات. وعندما ينتقل المستخدم الي حقل مرتبط مع LOV فيمكن نداء LOV باستخدام المفتاح F9 ينفذ عندها الاستعلام المرتبط مع مجموعة السجل وتظهر النتيجة في نافذة منبثقة. وبمجرد ان يختار المستخدم قيمةمن اللائحة فان القيمة او القيم ستعود للنموذج وتوضع في الحقل او الحقول المناسبة. نجن نريد انشاء LOV للحقل DNO
1.8 انشاء لائحة قيم LOV
سنحتاج لاربع خطوات اساسية
1.1.8 انشاء كائن LOV جديد
اضغط علي عقدة LOV في متصفح الكائنات. من ثم من قائمة Edit احتر انشاء Create سيظهر صندوق حوار يسألك ان كنت تريد انشاء LOV يدويا Build a new LOV Manually ام تريد استخدام المعالج Use the LOV Wizard وهو الخيار الذي سنختاره بالطبع J ومن ثم نضغط علي OK
131891881563.jpg
يظهر صندوق الحوار الذي يسألنا تم كنا نريد انشاء مجموعة سجل جديدة ام نريد ان نبني علي مجموعة سجل موجودة طبعا الخيار الوحيد المتاح هو انشاء مجموعة سجل جديدة New Record Group based on a query نتاكد من اختيارها ثم نضغط التالي Next
1318918815154.jpg
تظهر الشاشة ادناه وفيه نحدد الاستعلام الذي نريده فنكتب
SELECT dnumber FROM department
1318918815455.png
والان نضغط التالي Next. في الخطوة التالية نحدد الاعمدة في مجموعة السجل التي سنعود لها لتستخدم من قبل LOV. سنستخدم في مثالنا DNUMBER لذا اختر هذا الحقل وانقله للجانب الايمن LOV columns ثم اضغط التالي Next
1318918815186.jpg
والان علينا ان نحدد خصائص العرض لاعمدة LOV وايضا لنربط عناصر LOV مع حقل علي النموذج. اضغط علي حقل DNUMBER ثم اضغط الزر Look up return Item من ثم حدد الحقل EMPLOYEE.DNO واضغط زر OK
1318918816687.jpg
سيصبح شكل المعالج كالتالي
1318918816268.png
وحدد الان عدد السجلات التي سيعيدها لك كل مرة في Retrieve ولتكن 20
وفي الخطوة الاخيرة فان LOV تعيد اعمدة وتربط بحقول معينة في النموذج من الخطوة السابقة ففي هذه الخطوة نريد ان نربط LOV بعنصر محدد علي النموذج أي العنصر الذي سيتم نداء LOV منه وليكن EMPLOYEE.DNO
1318918816979.png
والان نضغط علي انهاء Finish
13189188162410.png
ستجد انه تم انشاء LOV جديد بالاسم LOV6 كما تم انشاء مجموعة سجل record group بالاسم LOV6 ايضا
قم بالحفظ Save ثم الترجمة Compile من ثم نفذ النموذج وعندما تقوم بادخال بينات جديدة ومع وصولك للحقل الشعبة DNO لاحظ انه في اسفل النموذج يشريط الحالة Status bar سيظهر كلمة قائمة القيم List of Values يمكن ان نستدعاه بالضغط علي ctrl + L او من قائمة تعليمات Help اختر مفاتيح Keys لتعرف توليفة مفاتيح الاختصار لقائمة القيم

  • بعد 1 سنة...
بتاريخ:

كلام مفيد قوي
بارك الله

بتاريخ:

مشكووووور يا باش مهندس

بتاريخ:

محتويات مستعرض الكائنات هي :-
  1. النماذج Forms يحوي كائنات النموذج زكل كائناته الفرعية كبلوكات البيانات والقوادح Triggers والمنيهات Alerts والكانفاسات Canvases ووحدات البرامج (الاجراءات والدوال) Program Units (Procedure and Functions) ، كما هناك الوسائط Parameters والنوافذ Windows. ويمكن فتح اكثر من نموذج في المرة الواحدة
  2. القوائم Menus يحوي كائنات القوائم وكائناتها القرعية كعناصر القائمة والوسائط ووحدات البرنامج. كم يمكن فتح اكثر من قائمة.
  3. مكتبات PL/SQL: تحوي شفرات PL/SQL سواء كانت مخزنة في القاعدة او في ملفات .plb ويمكن ان تتم مشاركة المكتبات من قبل اكثر من نموذج ومن قبل اكثر من مطور
  4. مكتبات الكائنات Object Libararies : تحوي تجميعة من الكائنات Collection (اي شيء يمكن ان يظهر علي النموذج)
  5. الوحدات المدمجة Build-in Packages : لائحة بكل الحزم (اجراءات PL/SQL) والمتاحة افتراضيا لكل النماذج والتقارير
  6. كائنات قاعدة البيانات Database Objects: لائحة بكل كائنات قاعدة البيانات (الجداول والمناظر ومكتبات PL/SQL ووحدات البرامج) والموجودة في مخطط قاعدة البيانات للمستخدم


عندما ينشأ الكائن فانه سيعرض تحت القسم المناسب. كما يمكن ان تظهر قائمة سياقية منبثقة لكل كائن عند الضغط عليه بالزر الايمن للماوس
2.4 الاتصال بقاعدة البيانات
بعد فتح المطور يظهر صندوق حوار المعالج نحتر Cancel
اول خطوة للعمل في المطور هي انشاء اتصال بقاعدة البيانات. ويتم ذلك من قائمة File نختر Connect او نضغط علي الايقونة 1313909715633.png
واكتب الاسم وكلمة السر وقاعدة البيانات ولو تذكرون فان كلمة السر كانت sadigtut ايضا
131390971524.png
بعدها نضغط علي الزر Connect. اذا كان اسم المستخدم او كلمة السر او قاعدة البيانات ليس صحيحا فان الصندوق سيظهر لك مرة اخري
5 مصمم النماذج
قاعدة البيانات القياسية تحوي دستة من الجداول التي تحوي بدورها العديد من الاعمدة ذات البيانات مختلفة الانواع. ونحن نقوم بتطوير النماذج والتقارير حتي يصبح التعامل مع هذه الجداول اسهل للمستخدم. بحيث يتعامل النموذج كنافذة لقاعدة البيانات
وافتراضيا فان في مقدور النموذج ان يطلب البيانات من الجداول وان يقوم بالتعديل عليها باضافة سجل جديد الي الجدول. ويبني النموذج من بلوك بيانات او اكثر ويرتبط هذا البلوك بجدول او منظر في قاعدة البيانات. والحقول في بلوك البيانات ترتبط بعمود في الجدول في قاعدة البيانات.
1313909715855.png
هذا النموذج يتكون من بلوكي بيانات واحد لجدول Employee والثاني لجدول Dependent. وقد تم ترتيب هذين البلوكين في شكل رئيسي / فرعي حيث يرتبط سجل موظف واحدة (رئيسي) بعدة سجلات من الذين يعتمدون عليه Dependent (تفاصيل).
يقدم النموذج ايضا شريط قوائم Menu Bar وشريط ازرار Button Bar ويمكن استخدامهما للتنقل عبر السجلات في الكتلة وللتنقل بين البلوكات. وايضا لاجراء الايتعلامات في الجدول كادخال وتحديث وحذف السجلات ومسح النموذج بالاضافة الي الخروج. وهناك في اسفل كل نموذج شريط حالة Status Bar ليعرض التوجيهات ورسائل الاخطاء كما يحدد السجل الحالي في البلوك.
نكتفي اليوم بهذه الحصيلة علي ان نواصل عدا ونتحدث عن انواع البلوكات
كما ابدي استعدادي لمعاونة اي اخ علي انجاز هذه الخطوات او حتي لدراسة الاسس النظرية التي قام عليها العمل
كل ما ارجوه من الاخوة هو الدعاء


نشكر لك هذا العمل الرائع
بتاريخ:

..................................................الله عليك وايد استفدت منك ....................................................

  • بعد 4 سنة...
بتاريخ:

رائع فعلاً ...

انضم إلى المناقشة

يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.

زائر
أضف رد على هذا الموضوع...

برجاء الإنتباه

بإستخدامك للموقع فأنت تتعهد بالموافقة على هذه البنود: سياسة الخصوصية

Account

Navigation

البحث

إعداد إشعارات المتصفح الفورية

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.