PDA

View Full Version : سوال: مقایسه دو تاریخ میلادی و نمایش تعداد روز باقیمانده



si6arp
جمعه 28 مرداد 1390, 00:23 صبح
با سلام خدمت دوستان محترم
من یه سیستم اکانتینگ دارم که تاریخ شروع اکانت ها به صورت زیر است :
2011-05-02
Day-Month-Year

حال زمانی که کاربر وارد اکانت خود میشه میخوام تعداد روز های باقیمانده نسبت به نوع اکانت خود را که به صورت یک ماهه / سه ماهه / شش ماهه و یک ساله هست رو به کاربر نشون بده

الان حدود یک ماه که درگیر این موضوع هستم :ناراحت:. اگه اساتید لطف کنن یکم کمکم کنن ممنون میشم.
با تشکر فراوان:لبخندساده:

ramin149
جمعه 28 مرداد 1390, 11:22 صبح
این تابع اختلاف دو تاریخ میلادی را به شما برمیگرداند - تاریخ ورودی و خروجی از نوع عددی که باید به صورت زیر وارد کنید 02052011


public int Difference2Date(int dateForm, int dateTo)
{
string MonthForm = dateForm.ToString().Substring(4, 1);
MonthForm += dateForm.ToString().Substring(5, 1);
string DaysForm = dateForm.ToString().Substring(6, 1);
DaysForm += dateForm.ToString().Substring(7, 1);
string yearsForm = dateForm.ToString().Substring(0, 1);
yearsForm += dateForm.ToString().Substring(1, 1);
yearsForm += dateForm.ToString().Substring(2, 1);
yearsForm += dateForm.ToString().Substring(3, 1);
//////////////////////////////////////////////////////////////
string MonthTo = dateTo.ToString().Substring(4, 1);
MonthTo += dateTo.ToString().Substring(5, 1);
string DaysTo = dateTo.ToString().Substring(6, 1);
DaysTo += dateTo.ToString().Substring(7, 1);
string yearsTo = dateTo.ToString().Substring(0, 1);
yearsTo += dateTo.ToString().Substring(1, 1);
yearsTo += dateTo.ToString().Substring(2, 1);
yearsTo += dateTo.ToString().Substring(3, 1);
//////////////////////////////////////////////////////////////
DateTime t1 = new DateTime(int.Parse(yearsForm), int.Parse(MonthForm), int.Parse(DaysForm), 0, 0, 0, 0);
DateTime t2 = new DateTime(int.Parse(yearsTo), int.Parse(MonthTo), int.Parse(DaysTo), 0, 0, 0, 0);
TimeSpan t = t2 - t1;
string TS = t.ToString();
if (TS.Length == 10)
{
return int.Parse(TS.ToString().Substring(0, 1));
}
else if (TS.Length == 11)
{
return int.Parse(TS.ToString().Substring(0, 2));
}
else
{
return int.Parse(TS.ToString().Substring(0, 1));
}
}

si6arp
شنبه 29 مرداد 1390, 02:33 صبح
ممنون ramin149 جان ولی تاریخ باید به اینصورت وارد شود
20110502

دوستان من طریقه تعریف JOB در MSSQL 2005 رو بلد نیستم . فرضا میخوام یه اسکریپت select هر 24 ساعت یک بار اجرا شده و در نهایت به خروجی های اسکریپ یک ایمیل ارسال کنه . (خروجی های من همشون ایمیل هستند)

دسترسی کامل به سرور و SQLSERVER هم دارم.
در این مورد هم اگه کسی اطلاعات داره دریغ نکنه خواهشا"
با سپاس فراوان