الانتقال إلى المحتوى

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


الأوائل

Recommended Posts

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

ولكي لا أطيل لدي جدولين أحدهما للأطباء والآخر للجنسيات والحقل الرابط بينهما هو 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 );

رابط هذا التعليق
شارك

السلام عليكم

اخي الكريم يفضل ان تنشي ال 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

رابط هذا التعليق
شارك

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

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

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

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   تمت استعادة المحتوى السابق الخاص بك.   مسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

جاري التحميل
×
×
  • أضف...

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

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