سلام
یک سیستم نوبت دهی داریم به ظرفیت 20 نفر در روز ،با هر بار ثبت اطلاعات و دادن نوبت یکی از تعداد ظرفیت ها کم می شود.
می خواهم کدی بنویسم که در هر روز ساعت 8 صبح این ظرفیت به حالت اولیه برگردد.
تشکر
سلام
یک سیستم نوبت دهی داریم به ظرفیت 20 نفر در روز ،با هر بار ثبت اطلاعات و دادن نوبت یکی از تعداد ظرفیت ها کم می شود.
می خواهم کدی بنویسم که در هر روز ساعت 8 صبح این ظرفیت به حالت اولیه برگردد.
تشکر
نیازی نیست تعداد نوبت مجاز در روز رو تغییر بدی. مثلا برای امروز ، کافیه تعداد نوبت داده شده در امروز رو بدست بیاری با تعداد مجاز مقایسه کنی اگر کمتر بود نوبت بدی.
خوب در نهایت ظرفیت به اتمام خواهد رسید و باید به مقدار ظرفیت اولیه برگردد.مشکلی در کم کردن مقدار از ظرفیت کل نیست.
مثلا" حداکثر طرفیت 20 نوبت در روز در نظر گرفته شده ، امروز به 11 نفر نوبت داده شده می خواهیم در پایان وقت فعلی یا ابتدای زمان کاری بعدی این 11 به 20 تغییر کند .
منظورم اینه که نیاز نیست بعد از هر نوبت دهی عدد 20 تغییر کنه.
مثلا
یک جدول(A) برای ثبت تعداد نوبت مجاز در روز شامل id , tarikh , nobatemojaz
یک جدول(B) هم برای ثبت مشخصات نوبتهای(مشخصات شخص نوبت گیرنده) داده شده شامل id , fullname , tarikh , ...
برای اینکه ببنی نوبتی باقی مونده یا نه کافیه در جدول B تعداد رو برای یک تاریخ (مثلا امروز) محاسبه کرده با نوبت مجاز در همون تاریخ در جدول A مقایسه میکنی اگر کمتر بود نوبت جدید میدی.
این میتونه یک سناریو باشه(با فرض اینکه هر روز میتونه تعداد نوبت مجاز خاصی داشته باشه)
سلام
به این کار معمولاً Daily Cleanup میگن. شما برای این کار یه SP بنویس و به Sql Server بگو که این SP رو مثلاً ساعت 2 صبح اجرا کنه.
به همین راحتی
صبا صبوحی
سلام
SP مخفف Stored Procedure هست. شما میتونی تو Sql Server مجموعهای از فرمانها رو تحت عنوان یک SP ذخیره کنی.
بعد میتونی یه Job تعریف کنی، و بهش بگی که این SP رو اجرا کنه. و بهش زمان اجرا میدی، مثلاً ساعت 1 صبح.
کار راحتیه. فقط باید سرویس Sql Server Agent رو اگه فعال نیست، فعال کنی. Jobها هم همونتو تعریف میشن.
صبا صبوحی