الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

دروس عن الTRIGGERS

رائج
بدأه aaab77 في 15 نوفمبر 2003 · 66 رد · 28,578 مشاهدة · في قسم لغةالاجرائات Pl/sql
مشاركة: واتساب X فيسبوك تيليجرام
#27

يعطيك العافية ثامر

جهد رائع وان شاء الله في انتظار المزيد

والله الموفق

علي احمد

مبرمج اوراكل

aaab2000@hotmail.com

#29

واصلوا ..جهد مبارك ..

بشر المشّائين في الظُلم بالنور التام يوم القيامة..

#31

مشكوووووور

#32

الصراحه الموضوع واجد مشوق ... جهد تستحقون عليه

الشكر

بارك الله فيكم ...

#33

السلام عليكم

ومشكورين على هذا المجهود الطيب .

#34

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

يا شباب بعد هذا الموضوع سوف تكون مؤهل لكي تصنع أزرار ((لكن أزرار مو عادية))

كيف يا ثامر ؟؟؟

راح أقول لكم كيف ؟؟؟

راح يكون عندك أربع ازرار ....

الزر الأول "أضافة"في هذا الزر يمكنك أن تضيف سجل وتعدل عليه عادي ...

الزر الثاني "modify" عند ضغط هذا الزر سعرض لك البيانات وتستطيع أن تعدل على هذه البيانات..

الزر الثالث "view" عند الضغط هذا الزر سوف يعرض لك البيانات ولكن لا يمكنك أن تعدل فيها ...

الزر الرابع "save" عند الضغط عليه فهو يحفظ .. ولكن يحفظ عند حدوث تغير "change"

الشاشة أو في حالة "query" الأستعلام ....

كل شيء بالمرفقات ...

**شرح الأكواد في الكومبايل

أمل أن تستفيد من هذا الموضوع

تحياتي

ثامر

THEBUTTONS.fmb

#35

مشكور اخ ثامر على المشاركات

للرفع

علي احمد

مبرمج اوراكل

aaab2000@hotmail.com

#36

السلام عليك ورحمة الله وبركاته

اولا احي جميع اعضاء المنتدى لمشاركتهم الفعالة ونع الان رجع المنتدى للحياة

ثانيا اتا سف على التاخير والسموحة .

وظيفة التريغر = تكبير شاشة Run time

مستواه = الفورم

نوعة =when_new_form instance

begin

set_window_property(forms_mdi_window,title,'مرحبا بك في الفريق العربي للبرمجة ');

set_window_property(forms_mdi_window,window_state,maximize);

set_window_property('window1',window_state,maximize);

end;

والله الموفق

max.fmb

علي احمد

مبرمج اوراكل

aaab2000@hotmail.com

#37

السلام عليكم ,,

يعطيكم العافيه على الموضوع الرائع

ارغب بتريغر يفتح لي الشاشه بدوون المنيو الموجود في الاعلى

كما ارغب بتريغر اذا وضعت قميه اكثر من اربعة ارقام لا يقبل او اذا وضعت حروف في الحقل لا يقبل

الامر الاخر

تريغر اذا وضعت مثلا سنة 2007 لا يقبل

ولكم كل الشكر والتقدير

ران

#38

احياء للموضوع من جميع المشاركين وجميع اعضاء المنتدى

ونشكر صاحب الموضوع وندعوا له ونسأل الله ان يجزيه كل الجزاء الحسن

لكم مني خالص التقدير

*********************

دروس الاكسس

قاعدة بيانات بالسي++

قاعدة بيانات اخرى بالسي++

الفريق العربي للبرمجه

*********************

كان الله في عون العبد مادام العبد في عون اخيه

#39

نحنوا نطمع المزيد

#40

جزاكم الله كل خير يا شباب

والله يوفقكم كلكم

وشكر للأخ على أحمد على بداية الشعلة لموضوعه القيم

ونود منك مواصلة التريغرات القيمة هذه

#41

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

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

كما أشكر أخي الكريم ثامر على ما قدمه أيضا

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

وجزاكم الله خيرا إخوتي جميعا

أخوكم / لؤي (أبو العبد)

#42

الف شكر على المجهود الرائع

بالتوفيق

#43

الله يعطيك العافية

على هذا الموضوع

#44

thanks alot

#45

الف شكر اخوى

#46

السلام عليكم ورحمة الله وبركاته

أخ ران

تقريبا هذي بعض المتطلبات اللتي طلبتها

و أرجوا أن تعذرني

حاولت أن أرفق لك الملف لكن محاولتي بائت بالفشل ولكن إليك هذه الخطوات

لعمل TEXT_ITEM لأربع خانات

بعد عمل التكست

كلك بالزر الايمن ثم تختارSMART TRIGGER

ثم تختار الحدث POST-TEXT-ITEM

بعد ذلك تكتب هذا الكود

IF LENGTH(:A)>4 THEN

MESSAGE('الرسالة التي تريدها أن تظهر');

END IF;

GO_ITEM('A');

بالنسبة للـــ المنيو الموجود بالأعلى

تستطيع أن تخفيه بدون حدث وذلك كاتالي

تذهب إلى MODULE

ثم تنقر عليه لتفتح لك الخصائص ثم تذهب إلى خاصية

MENU MODEL

وتزيل الملاحظة التي بجانبها ثم شغل الشاشة ستلاحظ أن المنيو قد أختفت

بالنسبة لطلباتك الأخرى مثل عام 2007 و أنه إذا وضعت حروف لايقبل

لم تحظر ذهني هذه الأفكار و أنشالله إذا قمت بحلها سأرسلها لك

أرجوا من الكل أن يدعوا لي بالتوفيق

والسلا خير ختام

تم تعديل هذه المشاركة بواسطة ثامر في 9 سبتمبر 2005 في 16:12

#47

السلام عليكم ورحمة الله وبركاته

بصراحة موضوع ممتاز ومفيد لنا جميعا "خصوصا انا"

انا عندي فكر واريد ان احولها إلى تريقر هل ممكن ؟

فكرتي كالأتي:

كل موظف يستحق إجازة 30 يوم في السنة وتحسب 2.5 في الشهر 2.5 * 12 شهر = 30 يوم

كلو الكلام

طيب كل موظف يختلف عن الأخر بتاريخ التعيين مثلا :

الموظف محمد تاريخ تعيينه 1/5/1425 معنى ذلك انه في تاريخ 1/6 يستحق اجازة مقدارها يومين ونصف 2.5 وفي تاريخ 1/7 يستحق اجازة اخرى مقدارها 2.5

تضاف إلى الرصيد السابق الذي هو 2.5 فتصبح 5 ايام

الموظف عبدالله تاريخ تعيينه 5/7/1427 معنى ذلك انه في تاريخ 5/8يستحق اجازة مقدارها يومين ونصف 2.5 وفي تاريخ 5/9 يستحق اجازة اخرى مقدارها 2.5

تضاف إلى الرصيد السابق الذي هو 2.5 فتصبح 5 ايام وهكذا

كيف احول الفكرة هذة إلى ترقر في الداتابيس بحيث يتم عمل الترقر تلقائياً لكل الموظفين من غير تدخل سوى من الأفراد او من المؤسسات " صار خطاب سياسي هههههههه

انا حاولت اجد حل للمشكة في كل مكان لكن أغسلو ايدكم

بعض المنتديات المتخصصة تحذف مشاركتي او موضوعي الذي يتحدث على هذة المشكلة

اتمنى انهي مشروعي على ايديكم

وشكراً

#48

ما تريد تنفيذه لا تستطيع تحقيقه بواسطة Trigger و إنما تستطيع تحقيقه بواسطة إجرائية procedure يتم وضعها ضمن Jop بحيث يتم تنفيذها تلقائياً كل يوم بحيث تقوم بإضافة الرصيد 2.5 إلى كل موظف مضى على تعيينه مدة شهر ....

#49
RuN كتب:
السلام عليكم ,,

يعطيكم العافيه على الموضوع الرائع

ارغب بتريغر يفتح لي الشاشه بدوون المنيو الموجود في الاعلى

كما ارغب بتريغر اذا وضعت قميه اكثر من اربعة ارقام لا يقبل او اذا وضعت حروف في الحقل لا يقبل

الامر الاخر

تريغر اذا وضعت مثلا سنة 2007 لا يقبل

ولكم كل الشكر والتقدير

ران

طبعاً أخي الكريم في البداية المعذرة على الرد على هذا الموضوع بعد شهر من تاريخه :lol: ، لأنني لم أكن أعلم بوجود منتدى للأوراكل في الفريق العربي أما الحل فإنه بسيط جداً .

أولاً تحدد الحقل اللي أنت وضعته في النموذج وتضغط على F4 أي خصائص تذهب إلى خصائص الحقل وخاصية DataType تختار نوع البيانات التي تريدها في الحقل إما تاريخ أو رقم أو نص ... إلخ .

أما بالنسبة لا يقبل أكثر من أربعة حروف فإنها بسيطة من خاصية Maximum Length تكتب الرقم 4 .

أما الأخيرة فإنها تتم بتريجر وتضيف تريجر على مستوى الحقل من النوع (Post-Text-Item)

وتكتب فيه :

if :text_item4 = 2007 then 
	:text_item4 := '';
	message('This Filed Value Can''t be 2007');
	message('This Filed Value Can''t be 2007');
end if;

:unsure:

:s

:blink:

نرجو الإفادة للجميع .

سلطان الحارثي كتب:
السلام عليكم ورحمة الله وبركاته

بصراحة موضوع ممتاز ومفيد لنا جميعا "خصوصا انا"

انا عندي فكر واريد ان احولها إلى تريقر هل ممكن ؟

فكرتي كالأتي:

كل موظف يستحق إجازة 30 يوم في السنة وتحسب 2.5 في الشهر 2.5 * 12 شهر = 30 يوم

كلو الكلام

طيب كل موظف يختلف عن الأخر بتاريخ التعيين مثلا :

الموظف محمد تاريخ تعيينه 1/5/1425 معنى ذلك انه في تاريخ 1/6 يستحق اجازة مقدارها يومين ونصف 2.5 وفي تاريخ 1/7 يستحق اجازة اخرى مقدارها 2.5

تضاف إلى الرصيد السابق الذي هو 2.5 فتصبح 5 ايام

الموظف عبدالله تاريخ تعيينه 5/7/1427 معنى ذلك انه في تاريخ 5/8يستحق اجازة مقدارها يومين ونصف 2.5 وفي تاريخ 5/9 يستحق اجازة اخرى مقدارها 2.5

تضاف إلى الرصيد السابق الذي هو 2.5 فتصبح 5 ايام وهكذا

كيف احول الفكرة هذة إلى ترقر في الداتابيس بحيث يتم عمل الترقر تلقائياً لكل الموظفين من غير تدخل سوى من الأفراد او من المؤسسات " صار خطاب سياسي هههههههه

انا حاولت اجد حل للمشكة في كل مكان لكن أغسلو ايدكم

بعض المنتديات المتخصصة تحذف مشاركتي او موضوعي الذي يتحدث على هذة المشكلة

اتمنى انهي مشروعي على ايديكم

وشكراً

مرةً أخرى اعتذر عن الرد بعد مرور شهر من تاريخ الموضوع :P

أخي الكريم أنا عملت مرة برنامج بالآكسس وأكون معاك صريح في شاشة إعطاء الإجازات كنت أقوم بالتالي .

قائمة ليختار منها إسم الموظف .

وعند إختيار الموظف وضعت تريجر يقوم بالتالي :

سأكتب الخوارزمية طبعاً أو خوارزمية بالعربي :D

1- يقوم بحساب عدد سنوات الخدمة لنفس الموظف وذلك بحساب HireDate-Sysdate ،بالأيام طبعاً ويضعها في متغير .

2- يقوم بحساب عدد أيام الإجازات التي أخذها هذا الموظف ويضعها في متغيير .

3- من عدد سنوات الخدمة مثلاً سنتين وإحنا الآن في الثالث يقوم بحساب برقم الشهر وينقص من عدد الأيام الكلي عدد الأجازات التي أخذها الموظف . ويطلع الناتج على اساس أنه هو رصيد الإجازات التي يستحقها الموظف الآن .

فكرة أرجو أنها تعمل معاك .

#50

اولا موضوع مهم وفعال جدا

ثانيا نتمني من المسئول عن هذا القسم الاستمرار فى شرح التريجرات كى تستمر فعالية واهميةالموضوع

وشكرا

وميجا

عايز تتعلم الاوراكل من تحت الصفر بطريقة مبتكرة وجديدة ؟ يبقى تدخل هنا

/index.php?showtopic=252439

لو محتاج أى استفسار بخصوص أوراكل ديفولبر ؛ أو عايز

تعمل مشروعك الدراسي أو فى العمل بأوراكل اذا راسلنى على الخاص

OCA - OCP

Instructor & Oracle Developers

مواضيع مشابهة