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

Job وظيفة أريده أن يتحقق منها كل دقيقة

Featured Replies

بتاريخ:

السلام عليكم

اخواني هل هذا الكود صحيح

BEGIN DBMS_SCHEDULER.CREATE_JOB(
job_name => 'update_active_state',
job_type => 'PLSQL_BLOCK',
job_action => 'UPDATE worker_tb SET ACTIVE_STATE="غير نشيط"
WHERE sysdate= REFRESH_DT+1;',
start_date => to_date('15/10/2009 09:03:00','dd/mm/yyyy hh24:mi:ss'),
repeat_interval=>'FREQUENCY=minutely',
enabled => TRUE);
END;



هذه وظيفة أريده أن يتحقق منها كل دقيقة
active_state هي حالة النشاط
REFRESH_DT تاريخ التحديث
أريده أن يقوم بالتحقق من حالة النشاط لكل عامل بحيث اذا كان تاريخ اليوم يساوي تاريخ التحديث لكل عامل + يوم واحد ( REFRESH_DT+1 ) يقوم بتحويل حالة النشاط من نشيط الى ( غير نشيط ) كما هو موضح
الكود لا يعمل
أريد أن أعرف أين هو الخطأ بالضبط
وسؤال آخر جزاكم الله كل خير وهو كيف يمكن أن أقوم بالتحكم بحجم ولون الخط ولون الخلفية في رسائل الأوراكل (messages ) ...
عاجل جدا وللضرورة ..
تحياتي

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

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

ACTIVE_STATE 	  	VARCHAR2(20)

بتاريخ:

جرب هذه الــ JOB

BEGIN DBMS_SCHEDULER.CREATE_JOB(
job_name => 'update_active_state',
job_type => 'PLSQL_BLOCK',
job_action => 'UPDATE worker_tb SET ACTIVE_STATE='غير نشيط'
WHERE sysdate= (To_Date('REFRESH_DT','dd/mm/yyyy')+1);',
start_date => to_date('15/10/2009 09:03:00','dd/mm/yyyy hh24:mi:ss'),
repeat_interval=>'FREQUENCY=minutely',
enabled => TRUE);
END;

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

job_action => 'UPDATE worker_tb SET ACTIVE_STATE='غير نشيط'
                                               *

يوجد خطأ عند سطر 4:
ORA-06550: سطر 4 ، عمود 49 :
PLS-00103: تم مواجهه الرمز "غير" عند توقع التالي: ) , * & = - + < / > at in is mod remainder not rem <an exponent (**)>
<> or != or ~= >= <= <> and or like LIKE2_ LIKE4_ LIKEC_
between || multiset member SUBMULTISET_



المشكلة هي في ' غير نشيط '

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

بتاريخ:

اعتذر عن الخطا البسيط

BEGIN DBMS_SCHEDULER.CREATE_JOB(
job_name => 'update_active_state',
job_type => 'PLSQL_BLOCK',
job_action => 'UPDATE worker_tb SET ACTIVE_STATE="غير نشيط"
WHERE sysdate= (To_Date('REFRESH_DT','dd/mm/yyyy')+1);
start_date => to_date('15/10/2009 09:03:00','dd/mm/yyyy hh24:mi:ss'),
repeat_interval=>'FREQUENCY=minutely',
enabled => TRUE);
END;

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

ERROR:
ORA-01756: لم تنته السلسلة المحاطة بعلامة اقتباس بطريقة صحيحة

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

أخي بال هل يمكن عمل أكثر من جوب ,,
لأن هذه الجوب هي الثانية وأخاف أن يكون لا ينفع عمل أكثر من جوب في الـ sql لهذا لا تعمل الجوب الثانية

بتاريخ:

السلام عليكم
جرب دي كده

BEGIN DBMS_SCHEDULER.CREATE_JOB(
job_name => 'update_active_state',
job_type => 'PLSQL_BLOCK',
job_action => 'begin UPDATE worker_tb SET ACTIVE_STATE="غير نشيط"
WHERE sysdate like  REFRESH_DT+1;  end;',
start_date => SYSTIMESTAMP,
repeat_interval=>'FREQUENCY=minutely ;INTERVAL=1',
enabled => TRUE);
END;
/





وسؤال آخر جزاكم الله كل خير وهو كيف يمكن أن أقوم بالتحكم بحجم ولون الخط ولون الخلفية في رسائل الأوراكل (messages ) ...


يمكنك ذلك في الalert تغير كل شيء فيه من خصائصه

موفق
بتاريخ:
  • كاتب الموضوع
السلام عليكم
جرب دي كده

BEGIN DBMS_SCHEDULER.CREATE_JOB(
job_name => 'update_active_state',
job_type => 'PLSQL_BLOCK',
job_action => 'begin UPDATE worker_tb SET ACTIVE_STATE="غير نشيط"
WHERE sysdate like  REFRESH_DT+1;  end;',
start_date => SYSTIMESTAMP,
repeat_interval=>'FREQUENCY=minutely ;INTERVAL=1',
enabled => TRUE);
END;
/





وسؤال آخر جزاكم الله كل خير وهو كيف يمكن أن أقوم بالتحكم بحجم ولون الخط ولون الخلفية في رسائل الأوراكل (messages ) ...


يمكنك ذلك في الalert تغير كل شيء فيه من خصائصه

موفق



للأسف أخي مصطفى لم ينجح الكود شكرا لكم جميعا على المساعدة قمت بحل المشكلة باستخدام جوب أخرى لا يوجد فيها ( refresh_dt+1 )
قمت بعمل عمود جديد في الجدول وقمت بتسميته ( Refresh_end) ( تاريخ نهاية التحديث ) وعن طريق الكود جعلت القيمة التي تخزن فيه هي تاريخ التحديث بالاضافة ليوم واحد فقط مبدئياً للتجربة
وجعلت التشييك كل دقيقة أيضا مبدئياً للتجربة ..
أي أن المستخدم عندما يدخل تاريخ ( 16/10/2009) فان القيمة التي تخزن في العمود هي ( 17/10/2009) وعندما يصبح تاريخ نهاية التحديث أقل من تاريخ اليوم فان الجوب تقوم بتحويل حالة النشاط الى غير نشيط.
وكانت الجوب المستخدمة كالتالي :: مع مراعات تغيير الحقول وتغيير بدء عمل الجوب

BEGIN DBMS_SCHEDULER.CREATE_JOB(
job_name => 'update_table1',
job_type => 'PLSQL_BLOCK',
job_action => 'begin UPDATE worker_tb SET active_state = active WHERE SYSDATE>REFRESH_END;end;',
start_date => to_date('15/10/2009 13:20:00','dd/mm/yyyy hh24:mi:ss'),
repeat_interval=>'FREQUENCY=MINUTELY ;INTERVAL=1',
enabled => TRUE);
END;



القيمة الموجودة في عمود active هي غير نشيط وهذه القيمة موجودة على الدوام نظرا لأن كتابة ( غير نشيط ) في الجوب لم تفلح معي فقمت بعمل عمود وتسميته active وجعلت القيمة فيه على الدوام هي ( غير نشيط ) عن طريق الكود وجعلت هذه القيمة لكل العمال بحيث أنه عندما يصبح تاريخ نهاية التحديث أقل من تاريخ اليوم فان حالة النشاط للعامل ( active_state ) حينها ستساوي القيمة الموجودة في عمود ( active ) وهي ( غير نشيط )
وهكذا تمت العملية بنجاح
الشكر الجزيل لكل من حاول مساعدتي
شكرا لكم

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

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

وشكرا لك أخي مصطفى على المساعدة الأخرى في رسائل النظام ولكن هناك مشكلة وهي أن حجم الخط لا يتغير
فما الحل ..؟

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

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

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

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

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

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.