08-06-18, 07:05 PM
أخوي hglogtd
الموضوع ليس بالصعب , ولكن تحتاج إلى معرفة بعض الأمور , في الـ SQL SERVER
أولاً العمل سيكون في قاعدة البيانات فقط .
البرنامج لن نقوم بعمل أي شيء فية نهائياً , ولا حتى نافذة واحدة , لأن عملية إرسال الرسائل يجب أن تكون بشكل أوتوماتيكي , بدون تدخل البشر فيها.
الطريقة :
1 - زرع إجراء CLR من نوع ( SQL CLR Stored Procedure ) , على شكل ملف خارجي . مكتوب بلغة الـ VB.NET
وظيفتة إرسال الرسالة حسب المعطيات التي ستمرر له . ويقوم بإرجاع النتيجة , نجح الإرسال أم لا , وهناك رقم يرجع من الشركة , يحدد حالت الإرسال , بالنجاح أن بالفشل.
2 - إنشاء إجراء عادي ( SQL Stored Procedure )
وظيفة التحقق من السجلات حسب الذي ستحددة أنت لاحقاً.
أكيد سيكون هناك حقل تاريخ للبحث عن السجل.
إذا وجد سجل يحتوي على تاريخ يساوي 24 ساعة أو أقل , يقوم بجلب بيانات العميل
ثم يمرر المعطيات بإستدعاء الإجراء الأول ( CLR Stored Procedure ) الذي سيرسل الرسالة للعميل.
إذا نجح الإرسال يقوم بتحديث سجل العميل في حقل خاص بأن الرسالة تمت بنجاح. حتى لا يقوم بإرسال رسالة مرة أخرى.
وإذا لم يجب سجلات للإرسال . ينتهي الإجراء بدون حدوث شيء. في إنتظار الإستدعاء في اليوم التالي.
3 - عمل ( SQL Server Agent - JOB )
وظيفة هذا الـ JOB هو إستدعاء الإجراء ( SQL Stored Procedure ) الذي سيقوم بالتحقق.
الفائدة من هذا الـ JOB هو أن يتم تحديد موعد لإشعال الحدث تلقائياً في الفترة أو الوقت الذي تحددة أنت .
مرة واحدة أم بشكل متكرر , وتحدد عدد مرات التكرار والفترة الزمنية بين كل إستدعاء والآخر.
نحن سنقوم بجعل هذا الـ JOB يحدث كل يوم مرة واحدة وفي وقت تحددة أنت .
هذا هو ترتيب العمل الذي سيحدث.
إذا وجدت أن هذا العمل مناسب , أرسل لي على الخاص بيانات المشروع . وشرح الطريقة سيكون هنا في هذا الموضوع.
الموضوع ليس بالصعب , ولكن تحتاج إلى معرفة بعض الأمور , في الـ SQL SERVER
أولاً العمل سيكون في قاعدة البيانات فقط .
البرنامج لن نقوم بعمل أي شيء فية نهائياً , ولا حتى نافذة واحدة , لأن عملية إرسال الرسائل يجب أن تكون بشكل أوتوماتيكي , بدون تدخل البشر فيها.
الطريقة :
1 - زرع إجراء CLR من نوع ( SQL CLR Stored Procedure ) , على شكل ملف خارجي . مكتوب بلغة الـ VB.NET
وظيفتة إرسال الرسالة حسب المعطيات التي ستمرر له . ويقوم بإرجاع النتيجة , نجح الإرسال أم لا , وهناك رقم يرجع من الشركة , يحدد حالت الإرسال , بالنجاح أن بالفشل.
2 - إنشاء إجراء عادي ( SQL Stored Procedure )
وظيفة التحقق من السجلات حسب الذي ستحددة أنت لاحقاً.
أكيد سيكون هناك حقل تاريخ للبحث عن السجل.
إذا وجد سجل يحتوي على تاريخ يساوي 24 ساعة أو أقل , يقوم بجلب بيانات العميل
ثم يمرر المعطيات بإستدعاء الإجراء الأول ( CLR Stored Procedure ) الذي سيرسل الرسالة للعميل.
إذا نجح الإرسال يقوم بتحديث سجل العميل في حقل خاص بأن الرسالة تمت بنجاح. حتى لا يقوم بإرسال رسالة مرة أخرى.
وإذا لم يجب سجلات للإرسال . ينتهي الإجراء بدون حدوث شيء. في إنتظار الإستدعاء في اليوم التالي.
3 - عمل ( SQL Server Agent - JOB )
وظيفة هذا الـ JOB هو إستدعاء الإجراء ( SQL Stored Procedure ) الذي سيقوم بالتحقق.
الفائدة من هذا الـ JOB هو أن يتم تحديد موعد لإشعال الحدث تلقائياً في الفترة أو الوقت الذي تحددة أنت .
مرة واحدة أم بشكل متكرر , وتحدد عدد مرات التكرار والفترة الزمنية بين كل إستدعاء والآخر.
نحن سنقوم بجعل هذا الـ JOB يحدث كل يوم مرة واحدة وفي وقت تحددة أنت .
هذا هو ترتيب العمل الذي سيحدث.
إذا وجدت أن هذا العمل مناسب , أرسل لي على الخاص بيانات المشروع . وشرح الطريقة سيكون هنا في هذا الموضوع.
