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

Using Timers

Featured Replies

بتاريخ:

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

ايه هيه وازاي نستخمدها في شغلنا
التوقيت او ضبط وقت معين اتاحته اوراكل في الفورمس بغرض صبط سلسله من العمليات عند تنفيذ امر معين او تنفيذ سلسله من الاوامر في بدايه الشغل وفتح فورم معين ده الغرض الاساسي ولكن بحصل بعض الاخطاء الي بيستخدمها بعض الناس يعني مثلا بيحاول يضبط وقت لقفل الفورم بينما اوركل بتقول ان ضبط الوقت لعمل وظائف اما علشان تظبط الكوميت او رول باك مثلا مستخدم بيكتب حاجه وساب الفورم ومعملش كوميت ولا رول باك وهوا في التعامل في يوزرس معتدمين علي الفورمه دي في تسبيت البانات اول باول فانته ممكن تعمل توقيت لحل المشكله دي ودي مشكله من ضمن المشاكل.
النعريف العلمي ليه ان التوقيت وضبطه هو عباره عن بناء برمجي (حيث مفيش اداه ممكن تبدألك بعمل وقت معين ) مشابه لي ساعه داخليه .
اوركل اتاحت لينا بعض البلت ان الي نقدر نتحكم في ضبط الوقت والتعامل معاه بسهوله زي

 
FIND_TIMER
CREATE_TIMER
SET_TIMER
DELETE_TIMER
GET_APPLICATION_PROPERTY(TIMER_NAME)



حنبدأها واحده واحده ان شاء الله

 
Find_timer


دي بترجعلي الاي دي بتاع التايمر نوع البيانات المستخدمه timer
مثلا

Declare
Timer_id timer;
Begin
Timer_id := firnd_timer( 'timer_name');
End;



create_timer


دي بتبدا باعتماد وقت والسانتكس بتاعها كلاتي

Create_timer('timer_name',timer_in_value,repeat_behavior)


التحليل
لاعتماد وقت بنبدا مع الفنكشن دي ومفيش اي ارقيومنت اختياري التلات اريقومنات لازم نحددهم
او واحد نحدد اسم التيمر والتاني وقت التايمر بالثانيه
والثانيه 1000=
بالملي سكند
By milliseconds

بعمني ان 5 ثواني 5000=
ونص دقيقه 30 ثانيه 30000=
اما الاوبشن التالت احنا بنحدد فيه اذا كنا عايزين نعمل تكرار ولا لأ
Repeat or no_repeat
مثال

Declare
tmer_id timer;
V_second number(6) := 6000 – 6 seconds
Begin
Timer_id := create_timer('start',v_second,no_repeat);
End;


اما الفنكشن
دي

Set_timer


فبيها بنعدل في الوقت الي احنا ضبطناه قبل كده او في سلوك التكرار

We can modify the interval timer or repeat behavior
والسانتكس بتاعها

Set_timer('timer_name',interval_seconds,repeat_behavior)
Set_timer(timer_id,interval_seconds,repeat_behavior)


Delete_timer


دي بتحذف الوقت اما بالاسم او بالاي دي
ويفضل ان يكون الاي دي وممن نجيبه زي مقلت ب find_timer

Get_application_property ( timer_name)


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


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

When-new-form-instance


لضبط واعتماد بدايه الوقت مثلا
والترجير ده مهم قوي علشان هوا عصب التعامل مع الوقت الي احنا ضبطينه

When-timer-expired


علي سبيل المثال لو حبينا نعمل ساعه

Declare
Timer_id timer;
V_second   number(10) := 3,600,000 – One Hour In  millisecond
Begin
Timer_id := create_timer ('Hour_clock',v_second,no_repeat);
/*
لو مححدناش سلوك التكرار حيفضل يكرر للسنه الي جايه علشان ده الافتراضي بتاعه فلازم نحدد عدم التكرار
*/
End;


علي فرض ان عايزين نعدل الكود بتاع الساعه دي فحنكتبه بالطريقه دي

Set_timer('hour_clock',no_change, repeat);


او مثلا

Set_timer('hour_clock',5000,no_repeat)


الفرق بين التعديل الاول والتاني ان الول غيرنا في عمليه التكرار في التعديل الاول ومينفعش ان نسيب تحديد الوقت نل فلازم نكتب no_change
-------
ولو عايزين نحذفه
يبقي نسنخدم

Delete_timer('hour_clock');


ممكن نعرف اذا كان الوقت موجود ولا لأا باستخدام

If not id_null(find_timer('hour_clock' 
)then
Delete_timer('hour_clock');
End if;


ممكن علشان تختبرورا اهميه الموضوع ده انك تعمل فورما

ابدا فورم جديد وليكن اسمه timer
اعتمد كانفز كونتينت
وواحد تاني ستاكد وليكن اسمه
A
طبعا لازم تعمل داتا بلوك علشان تعرف تشوف الفورما في الرن تيم
وليكن عرض وارتفاع الكانز الاستاكد نص الكانفز الكونتينت
نعتمد تريجر

When-new-form-instance


ونكتب فيه لاتي

Declare
Timer-id  timer;
V_second number(6) := 5000 ---- 5 seconds
Begin
Timer_id := create_timer('startup',v_second,no_repeat);
Show_view('A');
End;


ونروح لتيجر تاني اسمه

When-timer-expired


علي مستوي الفورم
ونكتب التي

Begin
Hide_view('A');
End;


ونبدأ الفورما نلاحظ لو مشينا صح ان الكانفز الاستاكد يظهر لمده خمس ثواني وبعدين يختفي
اتمني اكون افدت اي حد يوضوعي ده

تحياتـــــــــــــــــــــــــــــــــــــــــــي

تم تعديل بواسطة zaeen

بتاريخ:

مشكور اخى و الى الامام

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

شكرا ليك اخي هوبا

  • بعد 3 أسابيع...
بتاريخ:

جزاك الله خير :huh:

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

مشكور أخي على الشرح الرائع
وفقك الله للمزيد

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

جزاك الله خيرا يا اخى على الشرح الوافى
بس انا طبقت اللى انت قولته ومشتغلتش معايا والفورمه اللى عملتها مرفقه ان شاء الله فلو
ممكن حد يشفها ويقولى الغلط فين وبعدين لو عايز احط الوقت فى تكت ايتم يكون ظاهر قدامى على طول ازاى بردوة
انا عاملها ب 10 جى
http://www.4shared.com/file/23920397/32180d8e/timer.html


وشكرا لكم جميعا

بتاريخ:

جزاك الله خيراً

شرح ممتاااااااااااااز

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

شكرا جدا على المجهود ولكنى لى طلب وهو ان ترفع لنا السورس كود حتى تكون الاستفادة كاملة (فورم جاهزة) وشكرا

بتاريخ:

جزاك الله خيرا.....

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

شكرا زين

وجزاك الله كل الخير

مجهود مقدر ما شاءالله

بعد دراسة الموضوع قمت بعمل مثال له وتم التفيذ جيدا في اوراكل 6i

ولكن عندما قمت به في 10g

لا ينفذ تظهر الشاشة خالية كما موضح في الصور التالي

666610967.jpg

وعند الاختيار من قائمة النافذة اي خيار (متتالي/تجانب أفقي/تجانب راسي/window1)

539026364.jpg

تظهر الشاشة كما هو موضح ادناه

546414650.jpg

الرجاء المساعدة في معرفة سبب حدوث هذه المشكلة

ملاحظة: الشاشة مرفق

MAINMENU.rar

بتاريخ:

انسى التايمر خالص في 10 جي

بيعمل traffic غير طبيعي

بتاريخ:
انسى التايمر خالص في 10 جي بيعمل traffic غير طبيعي



شكرا اخي ع الرد

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

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

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

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

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

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.