PDA

View Full Version : سوال: چه طور از ثبت رکورد قبل از زمان مشخص جلوگیری کنیم؟



dana65
یک شنبه 28 خرداد 1391, 20:20 عصر
من برنامه ای دارم که یک رکورد در یک زمان خاص ثبت میشه اما میخوام کاری کنم که کاربر نتونه قبل از این ساعت و تاریخ رکوردی ثبت کنه با چه کدی باید این کار رو انجام بدم؟

dana65
دوشنبه 29 خرداد 1391, 07:44 صبح
فک میکنم باید بهش بگم اگر از این زمان کمتر شد ثبت نکنه اما اگه مثلا ساعت 3 ثبت صورن بگیره بعد کاربر ساعت رو بیاره روی 3:03 اون وقت چی؟

مرتضی تقدمی
دوشنبه 29 خرداد 1391, 09:14 صبح
سلام
با این اوضاع فکر نمی کنم راهی جز اینکه ساعت رو از اینترنت بصورت آنلاین بگیری وجود داشته باشه.
موفق باشید

dana65
دوشنبه 29 خرداد 1391, 12:37 عصر
سلام
با این اوضاع فکر نمی کنم راهی جز اینکه ساعت رو از اینترنت بصورت آنلاین بگیری وجود داشته باشه.
موفق باشید
این یه نرم افزاره سایت نیست ورود و خروج خودرو رو ثبت میکنه و بر اساس ساعت توقف مبلغ رو محاسبه میکنه برا همین نباید رکوردی قبل از یه ساعت خاص ثبت بشه.

Saeed_m_Farid
سه شنبه 30 خرداد 1391, 01:18 صبح
این یه نرم افزاره سایت نیست ورود و خروج خودرو رو ثبت میکنه و بر اساس ساعت توقف مبلغ رو محاسبه میکنه برا همین نباید رکوردی قبل از یه ساعت خاص ثبت بشه.
4-5 تا اگر داره جواب من :دی : اگه اسم اون ساعت خاص رو بذاریم whenTimeIsOver_ و اگه شما بخواید تو #C اینکار رو بکنید و اگه منظورتون رو درست متوجه شده باشم و اگه ساعت سیستم که برنامه روش کار میکنه قابل اطمینان و درست باشه! خیلی ساده میشه کد زیر:
private static readonly TimeSpan _whenTimeIsOver = new TimeSpan(16,25,00);
internal static bool IsTimeOver()
{
return DateTime.Now.TimeOfDay > _whenTimeIsOver;
}

شما قبل درج رکورد به نتیجه تابع IsTimeOver نگاه میکنی و درصورت درست بودن رکورد رو به بانک اطلاعاتی اضافه میکنید...
امیدوارم منظورتون همینقدر ساده بوده باشه.

barnamenevisforme
سه شنبه 30 خرداد 1391, 07:16 صبح
سلام

اگه مثلا ساعت 3 ثبت صورن بگیره بعد کاربر ساعت رو بیاره روی 3:03 اون وقت چی؟
بعضی وقت ها مجبوریم واسه اینکه کاربر نتونه ساعات برنامه رو تغییر بده تنظیماتی رو روی windows انجام بدیم.
در پنجره run عبارت gpedit.msc رو بنویسید.پنجره group policy باز میشه:بعد طبق آدرس زیر گره ها رو باز کنید و در نهایت به گزینه change the system time در سمت راست پنجره برسید.
Group policy/computer configuration/windows settings/local policies/user rights assignment/change the system time
حالا این اجازه رو مختص administrator و یا useraccont شخصی بذارید که مدیر با دستری بالاست.
اینجا چند تا سوال پیش میاد که من از اساتید میپرسم:
1-اگر پایگاه داده ما روی سیستم مجزایی باشه بهتره که زمان بر روی سیستم server گرفته بشه.چطور؟
2-با انجام تنظیماتی که گفتم چطور اجازه ویرایش group policy رو هم مختص administrator کنیم تا بقیه accountها نتونند بهش دسترسی داشته باشن؟

Felony
سه شنبه 30 خرداد 1391, 07:31 صبح
1-اگر پایگاه داده ما روی سیستم مجزایی باشه بهتره که زمان بر روی سیستم server گرفته بشه.چطور؟
اگر من بودم سمت سرور یک Trigger مینوشتم و تو اون صحت زمان رو بررسی میکردم ، یا برای درج در جدول یک SP مینوشتم و عملیات درج رو به اون SP می سپردم و تو اون SP زمان رو هم بررسی میکردم .


2-با انجام تنظیماتی که گفتم چطور اجازه ویرایش group policy رو هم مختص administrator کنیم تا بقیه accountها نتونند بهش دسترسی داشته باشن؟
خوب یوزری که قراره برنامه روش اجرا بشه رو Limit بسازید .

barnamenevisforme
سه شنبه 30 خرداد 1391, 08:06 صبح
سلام

اگر من بودم سمت سرور یک Trigger مینوشتم و تو اون صحت زمان رو بررسی میکردم .
اگه لطف کنید ممنون میشم.

خوب یوزری که قراره برنامه روش اجرا بشه رو Limit بسازید
بعضی اوقات در اتصال به شبکه دچار مشکل میشه.