الانتقال إلى المحتوى
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.

لم تظهر رسالة تفيد بعدم وجود رقم الجنسية

Featured Replies

بتاريخ:

السلام عليكم أخواني جميعا وأبارك لكم أولاً بعيد الأضحى المبارك وأيضا بظهور المنتدى بهذه الحلة الجميلة وأتمنى أن يحقق أهداف القائمين عليه ويكون كما يحب أعضاء المنتدى والزائرين كذلك .

ولكي لا أطيل لدي جدولين أحدهما للأطباء والآخر للجنسيات والحقل الرابط بينهما هو NationNum ولدي فورم للأطباء به حقول رقم الطبيب واسم الطبيب .. ورقم الجنسية سؤالي عند إدخال رقم للجنسية غير موجود في جدول الجنسيات وأقوم بالحفظ تتم العملية بنجاح ولا تظهر رسالة تفيد بأن رقم الجنسية غير موجود بجدول الجنسيات - كما هو حاصل في الأكسس - برغم أنه توجد علاقة في الفورم بين الجدولين ..

بتاريخ:

بسم الله الرحمن الرحيم


السلام عليكم ورحمة الله وبركاته،،
عند انشاء الform الجديد ستستخدم طريقة الdata block wizard وفى نفس الشاشة التى تختار منها الجدول المطلوب ستضع علامة (صح) امام خاصية
Enforce data integrity
اختيار هذه الخاصية ستكون trigger جديد اسمه when_validate_item على كل الحقول التى لها ربط مع جداول اخرى او اي constraints اخرى , هذا الtrigger به مجموعه اوامر للتأكد من صحة كود الجنسية بعد القراءة من جدول الجنسيات , وفى حالة عدم صحة الكود ستظهر لك رسالة خطأ .
المهم ان يكون هناك ربط حقيقى بين الجدولين .
اذا لم ينشئ هذا الtrigger على item رقم الجنسية معنى هذا ان الربط غير موجود بين الجدولين
مع التمنيات بالتوفيق

بتاريخ:

السلام عليكم ورحمة الله...
بالنسبه لحل للاخ amgad سيكون صحيح لو كان هناك شاشة واحده تحتوى ع الجنسية والطباء معا ولكنى اعتقد ان هناك شاشتتين واحده للجنسيات وواحده للاطباء ولذلك احسن حل هو عمل LOV فى شاشة الطباء عل حقل رقم الجنسيه او يمكن استعمال هذا الكود..
when-validate-item
declare
cnt number(4);
begin
select count(1)
into cnt
from nationality---i assumed this name
where num=:doctor.nationnum;

if(cnt=0)then --doesnot exist
meesage("رقم الجنسية غير موجود");
raise form_trigger_failure;
end if;
end;

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

أشكركما جزيل الشكر أخوي Amgad و mody على تجاوبكما السريع [move]هذه وحدها تكفي وأصبح شكل الفورم حتى الآن .. فورم واحد به بيانات جدول الأطباء وحقل رقم الجنسية من جدول الجنسيات والحقل هذا مخفي ومعمول له ربط مع رقم الجنسية من جدول الأطباء.. أيضاً موجود lov على حقل رقم الجنسية وكود للتأكد من أن رقم الجنسية موجود في حالة إدخال رقم الجنسية مباشرة بدون استخدام ال lov .
هل معنى هذا أنه يلزم استخدام الكود في حقل رقم الجنسية للتحقق من أن الرقم موجود بجدول الجنسيات ..؟

بتاريخ:

اظن انك لازم تعمل العلاقة فى الــ PL\SQL أولا بجملة Alter
ALTER TABLE Doctor ADD CONSTRAINT Nation_To_Doctor FOREIGN KEY
(NationNum ) REFERENCES Supervisor
(NationNum );

بتاريخ:

أسف ....
الجملة يوجد بة خطأ
ALTER TABLE Doctor ADD CONSTRAINT Nation_To_Doctor FOREIGN KEY
(NationNum ) REFERENCES Nationality
(NationNum );

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

مشكور أخ John سأجرب عمل الربط في sql ..

بتاريخ:

السلام عليكم

اخي الكريم يفضل ان تنشي ال cosntraint من الاصل علي الداتا بيس

ويفضل ايضا ان تتحقق من صحه البيانات من مستوي ال Forms

وذلك حتي لا يحدث traffic كبير للشبكه

المهم تستطيع ان تجبر المستخدم علي كتابه رقم من ضمن الارقام التي سوف تظهر في ال Lov

وذلك عن طريق ان تظبط خاصيه لل Item الموجوده عليه ال Lov

validation lov = true

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

حتي بدون ان تظهر ال Lov

السلام عليكم

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

جربت أخي John الطريقة التي أشرت لها فحققت النتيجة وهي عدم حفظ السجل إذا لم يكن رقم الجنسية موجوداً بجدول الجنسيات ويعطي البرنامج رسالة unable to insert record .
كذلك أخي TheFOx عملت على تجربة طريقتك وهي موفقة جداً بحيث عند إدخال رقم جنسية غير موجود بجدول الجنسيات يفتح ال lov مباشرة .حقيقة أعجز عن شكركم أخواني
TheFOx ، John ، mody ،Amgad
فقدت استفدت من مشاركاتكم جميعاً فالأجمل أن أقول لكم جزاكم الله خير ..

بتاريخ:

تحت امراك
فجملة Alter هى لعمل العلاقات فى الــ PL\SQL
ويمكنك حذف هذه العلاقة بالجملة التالية ....
alter table doctor drop CONSTRAINT Nation_To_Doctor ;
اى خدمة يا أخى فى أى سؤال أخر ...

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

مشكور أستاذي..

  • بعد 11 شهور...
بتاريخ:

تعود اخى الكريم ان تكون الخاصية Prevent Masterless Operation الى القيمة yes فهذا من شأن منع اى ادخال غير موجود فى الجدول الMaster

بتاريخ:

وهذا مختصر موضوع Master-Detail Block

mater_details.doc

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

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

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

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

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

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.