نمایش نتایج 1 تا 10 از 10

نام تاپیک: پیدا کردن فاصله زمانی دو تاریخ

  1. #1
    کاربر دائمی آواتار babak869
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    کرمانشاه
    پست
    1,251

    پیدا کردن فاصله زمانی دو تاریخ

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

  2. #2
    می تونید از توابع موجود در یونیت DateUtils استفاده کنید:
    DaysBetween تعداد روزهای بین دو تاریخ رو برمی گردونه و MonthsBetween هم تعداد ماههای بین دو تاریخ رو.

  3. #3
    کاربر دائمی آواتار babak869
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    کرمانشاه
    پست
    1,251
    با سلام
    ممنونم اما اگه ممکنه بیشتر توضیح بدید. یونیت DateUtils رو کجا میتونم پیدا کنم و چطور میتونم فاصله بین دو تاریخ رو از یک رکورد بانک اطلاعاتی استخراج کنم.یعنی مثلا با نوشتن نام شخص فاصله زمانی یعنی تعداد روزها (مثلا تعداد وزهای کتاب امانت برده شده) رو پیدا کنم
    متشکرم
    موفق باشید
    بابک

  4. #4
    یونیت DateUtils رو کجا میتونم پیدا کنم
    این یونیت یکی از یونیت های دلفی هست، فقط باید در قسمت uses یونیت برنامه خودتون اسمش رو اضافه کنید.
    درباره توابعی هم که در بالا بهشون اشاره کردم، می تونید به راهنمای دلفی مراجعه کنید.
    چطور میتونم فاصله بین دو تاریخ رو از یک رکورد بانک اطلاعاتی استخراج کنم.یعنی مثلا با نوشتن نام شخص فاصله زمانی یعنی تعداد روزها (مثلا تعداد وزهای کتاب امانت برده شده) رو پیدا کنم
    من که نمیدونم شما بانکتون رو چطور طراحی کردید، اما احتمالا در بانک شما فیلدی هست که تاریخ دریافت کتاب در داخلش ذخیره میشه، برای بدست آوردن تعداد روزهایی که فرد کتاب رو به امانت برده (به شرطی که تاریخ شما از نوع TDate باشه) می تونید خیلی ساده از تابع DaysBetween استفاده کنید.
    مثال:

    var
    BDate,
    DaysPassed : TDate;
    begin
    BDate := AdoTable1.FieldByName('Your_Field').AsDateTime;
    DaysPassed := DaysBetween(Now,BDate);
    end;

  5. #5
    کاربر دائمی آواتار babak869
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    کرمانشاه
    پست
    1,251
    سلام دوست عزیز
    ممنون از جوابتون.مشکل اصلی من این بود که DateUtils vرو در قسمت یوزز نمی نوشتم.فقط اگه میشه بهم بگو که چطور می تونم دیتابیس رو بین دو تاریخ مشخص فیلتر کنم مثلا دو تاریخ که در Editbox1 وEditbox2 نوشته میشه و بر اساس اون جدول فیلتر بشه.بازم متشکرم
    موفق باشید

  6. #6
    کاربر دائمی آواتار Touska
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    ایران زمین
    سن
    39
    پست
    1,988
    یا خیلی مبتدی تر :

    function TMain1.DiffDate(FDate, SDate: TDate): Word;
    begin
    Result := Trunc(SDate) - Trunc(FDate);
    end;

  7. #7
    کاربر دائمی آواتار babak869
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    کرمانشاه
    پست
    1,251
    ببخشید جناب توسکای عزیز
    این نوشته شما در جواب سوال من بود؟ چون ازش سر در نیاوردم
    اگه ممکنه کمی توضیح بدید
    متشکرم

  8. #8
    کاربر دائمی آواتار babak869
    تاریخ عضویت
    اسفند 1383
    محل زندگی
    کرمانشاه
    پست
    1,251
    ببخشید کسی نیست ما رو بیشتر کمک کنه؟
    من میخوام دیتابیس رو بین دو تاریخ دلخواه فیلتر کنم اگه دوستان راهنمایی کنند ممنون میشم
    موفق باشید
    آخرین ویرایش به وسیله babak869 : دوشنبه 17 مرداد 1384 در 13:36 عصر

  9. #9
    کاربر دائمی آواتار Touska
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    ایران زمین
    سن
    39
    پست
    1,988
    آقا این که خیلی واضح است.

    فاصله بین دو تا تاریخ رو به شما میده.

    :)

  10. #10
    کاربر دائمی آواتار Touska
    تاریخ عضویت
    مرداد 1383
    محل زندگی
    ایران زمین
    سن
    39
    پست
    1,988
    بگو پس چی می خواهی.

    می خواهی فیلتر کنی.

    اگر بانکت Sql است از AdoQurey استفاده کن.

    اگر چیز دیگری است از دستور Filter استفاده کن.

    که هردو آنها تو سایت قبلا توضیح داده شده اند.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •