PDA

View Full Version : محاسبه ی اختلاف دو تاریخ



nezhadam_pershia
سه شنبه 28 آبان 1387, 10:55 صبح
با سلام من دوتا سوال دارم:

1:چطوری می تونم از صحت تاریخ وارد شده مطمئن بشم.

2:چطوری میتونم اختلاف دو تاریخ رو بر حسب سال بدست بیارم.

البته قبل از اینکه این تاپیک رو ایجاد کنم جستجو کردم ولی چیزی پیدا نکردم.

در ضمن من برای وارد کردن تاریخ از MaskedTextBox استفاده می کنم.اگه بتونین یه کامپوننت و نحوه ی کار کردن باهاش رو هم بزارید ممنون می شم.

MH2538
سه شنبه 28 آبان 1387, 11:09 صبح
سلام
مثال
بدست آوردن اختلاف زمانی حال حاضر با مدتی قبل


private static DateTime LastReport
...
...
DateTime.Now.Subtract(LastReport)).Minutes

ms_arani
سه شنبه 28 آبان 1387, 14:10 عصر
سلام دوست عزیز،من کامپوننت فیلد تاریخ شمسی رو دارم،تا یه هفته دیگه کاملش میکنم و اینجا میذارم.

shask00l
سه شنبه 28 آبان 1387, 14:31 عصر
سلام دوست عزیز،من کامپوننت فیلد تاریخ شمسی رو دارم،تا یه هفته دیگه کاملش میکنم و اینجا میذارم.

انشا ا... مثل کامپوننت قبلی که طراحی کردید نباشه .
موفق باشید.

bah_jaf
سه شنبه 28 آبان 1387, 15:04 عصر
من با یه مقدار کد یه تابع نوشتم که تو رویداد کی پرس گذاشتم و اینجوری ورودیمو کنترل میکنم.

linux
سه شنبه 28 آبان 1387, 15:09 عصر
با سلام من دوتا سوال دارم:

1:چطوری می تونم از صحت تاریخ وارد شده مطمئن بشم.

2:چطوری میتونم اختلاف دو تاریخ رو بر حسب سال بدست بیارم.

البته قبل از اینکه این تاپیک رو ایجاد کنم جستجو کردم ولی چیزی پیدا نکردم.

در ضمن من برای وارد کردن تاریخ از MaskedTextBox استفاده می کنم.اگه بتونین یه کامپوننت و نحوه ی کار کردن باهاش رو هم بزارید ممنون می شم.

1- به سادگی!
برای سال محدوده خاصی نداریم ، برای ماه باید بین 1 تا 12 باشه
برای روز اگر ماه کوچکتر مساوی 6 بود بین 1 تا 31 و اگر ماه بین 7و11 بود روز بین 1 تا 30 و اگر ماه 12 بود اگر سال کبیسه بود بین 1 تا 30 و اگر نبود بین 1 تا 29
فکر نکنم 4 تا if نوشتن کار سختی باشه.
2- برای اختلاف دو تاریخ باید تعریف خودتان را داشته باشید.
مثلا اختلاف این 2 تاریخ چند سال هست 29/12/86 با 1/1/87؟
برای پیدا کردن اختلاف معمولا عدد برگشتی روز ، ساعت ، دقیقه یا ثانیه هست.

nezhadam_pershia
پنج شنبه 30 آبان 1387, 22:31 عصر
با سلام.
من یه کامپوننت داشتم و تو vb6 ازش استفاده می کردم حالا با وجود اینکه این کامپوننت رو به ToolBox اضافه کردم.با وجود اینکه این کامپوننت کار می کنه من نمی تونم با متد هاش کار کنم.

کامپوننت رو میزارم اینجا تا شما باهاش کار کنید و به من بگید تا چطوری ازش استفاده کنم.
این ocx رو که اضافه دو تا کامپوننت به ToolBox اضافه می شه:

1: CalText) برای گرفتن تاریخ استفاده می شود.
2:Shamsi) این شامل متدهایی برای کار با تاریخ است.

من با این خط کد تو vb6 اختلاف دو تاریخ رو بر حسب سال بدست می آوردم:


int1 = (Shamsi1.sh_DateDiff(shYear, cltTT.cltText, cltTF.cltText))

پارامتر اول نحوه ی محاسبه ی اختلاف رو می پرسه که بر حسب سال می باشد.دو پارامتر دیگر دو شیی از نوع CalText هستند که از خاصیت cltText برای بر گرداندن خاصیت تکس استفاده شده است.مقدار برگشتی تابع از نوع Integer می باشد که حاصل اختلاف می باشد.

خیلی ممنونم.