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

نام تاپیک: گزارش از تاریخ ........... تا تاریخ .............

  1. #1
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران
    پست
    101

    گزارش از تاریخ ........... تا تاریخ .............

    سلام به همگی

    من یک برنامه با دلفی و بانک اکسس نوشتم که نیاز به یک گزارش در یک بازه زمانی داره مثلاً فروش از تاریخ تا تاریخ ،
    فیلد تاریخ را هم به صورت کارکتری گرفته ام (12/12/1382) ولی هرکار میکنم نمیتونم رکوردها رو در اون بازه زمانی فیلتر کنم یا انتخاب کنم لطفا به من بگید چکار کنم ؟؟؟ :(

  2. #2
    باید تاریخ رو از نوع کارکتری به نوی تاریخ تبدیل کنی .

    مثلا با StrToDate میتونی یک رشته استرینگ رو به نوع Date تبدیل کنی . در مجموع کار شما از پایه مشکل داره نباید تاریخ رو کارکتری طراحی میکردی .

    موفق باشی .

  3. #3
    باید یه توصیه هم بکنم :

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

    توی سایت http://www.farsicomponents.com میتونی قابلیتهاشو چک کنی و یه نسخه نمایشی دریافت کنی .

    موفق باشی .

  4. #4
    سلام
    من از توابع آقای DelphiArea استفاده میکنم و مشکلی ندارم. شما هم امتحان کنید. 8)
    موفق باشی

  5. #5
    با سلام

    در این مورد بحث خوبی داشتیم.
    تو قسمت access می تونید پیدا کنید مبحث تاریخ و لاغیر...

  6. #6
    می تونید یک فیلد محاسباتی در اکسس تعریف کنید که رشته رابه
    عدد تبدیل کند مثلا
    "10/10/1381" را به 13811010 تبدیل کند حال می توانید با این فیلد کار کنید

  7. #7
    اگر دوست داشتید این کامپوننت تاریخ رو هم ببین ... یکی از توابع ان تفریق و دیگر اشتراک و اجتماع و غیره است
    Www.JavanSoft.com

  8. #8
    کاربر دائمی آواتار SReza1
    تاریخ عضویت
    تیر 1382
    محل زندگی
    کنار تعدادی تراریوم و کاکتوس!
    پست
    702
    آقا gladiator
    مطمئنی راهی که شما میگی بهترین راهه؟؟؟؟؟ :?:
    آیا همه روشها رو دیدی؟

  9. #9
    تقریبا

    شما این کامپوننت رو دیدی ؟ من قصد تبلیغ کردن ندارم ولی واقعا کامل و بی دردسره .

  10. #10
    کاربر دائمی
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران
    پست
    101
    آخرش من نفهمیدم چه کار کنم چون من برنامه را نوشتم و به استفاده کننده تحویل دادم و حالا میخواهم گزارشهایش را طراحی کنم :wink:

  11. #11
    من برنامه را نوشتم و به استفاده کننده تحویل دادم و حالا میخواهم گزارشهایش را طراحی کنم
    پس به خدا توکل کن :mrgreen:

  12. #12
    مهمان
    دوست عزیز
    تا جایی که من میدونم توی دلفی میتونیم دو تا رشته رو با هم مقایسه کوچکتر و بزرگتر و یا مساوی بکنیم
    به عنوان مثال رشته 'ali' از رشته 'morteza' کوچکتر است یعنی در حقیقت رشته به یک عدد که محصول کد تک تک کاراکتر های رشته است در یک مقایسه تبدیل میشه .
    من اینو در دستور رنج در table و query استفاده کردم جواب داده
    ......................................
    به امید روزی که ایران از نظر کامپیوتر به خدایی برسد . با تلاش تمام برنامه نویسان و علاقه مندان به کامپیوتر در این مرزو بوم

  13. #13
    نقل قول نوشته شده توسط dadvand
    دوست عزیز
    تا جایی که من میدونم توی دلفی میتونیم دو تا رشته رو با هم مقایسه کوچکتر و بزرگتر و یا مساوی بکنیم
    دوست عزیز شما فکر می کنید برای تاریخ 10/9/1382 و 10/11/1382 چه جوابی می دهد؟
    چون اگر با این راه حل می شد دلفی خود از این راه استفاده می کرد
    و چون این ساختار برای میلادی طراحی شده تنها راه که به نظر من می رسد آن است که در بالا
    اشاره کردم
    ویا ساختاری شبیه تاریخ دلفی برای شمسی طراحی کنیم که من در حال انجام آن هستم

    و به امید روزی که ....

  14. #14
    یکی از توابعی که در کامپوننت تاریخ اینجانب تابعی بنام CompleateDate است که با در یافت یک تاریخ فارسی معادل صحیح انر برمی گرداند مثلا
    82/1/1 به 1382/01/01
    1382/01/1 به 1382/01/01
    از این راه می توانید کلیه مقایسه ها را انجام دهید

  15. #15
    کاربر دائمی
    تاریخ عضویت
    تیر 1382
    محل زندگی
    ایران-سیرجان
    پست
    273
    من از این روش استفاده می کنم
    البته از اساتید محترم هم خواهشمندم که اگه ممکنه نظر خودشونو بدن 8)
    در کنار هر تاریخ یک فیلد از نوع عددی دارم که با روش زیر مقدار آنرا پر می کنم

    dday1:=y*366+(m-1)*31+d;
    if m>7 then
    dday1:=dday1-(m-7);

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

  16. #16
    سعید جون این روش فکر میکنم برای فیلتر کردن یه خورده مشکل باشه .

    چرا که این دوستمون میخواد تاریخهای خاصی رو فیلتر کنه . مثلا از اول شهریور ماه تا 7 شهریور ماه . توی روش شما باید هر تاریخی رو اول به یک عدد تبدیل کرد که توی فیلتر کردن یه خورده مشکل میشه .

    البته این نظر منه .
    موفق باشید .

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

  17. #17
    کاربر دائمی
    تاریخ عضویت
    تیر 1382
    محل زندگی
    ایران-سیرجان
    پست
    273
    نقل قول نوشته شده توسط gladiator
    سعید جون این روش فکر میکنم برای فیلتر کردن یه خورده مشکل باشه .

    چرا که این دوستمون میخواد تاریخهای خاصی رو فیلتر کنه . مثلا از اول شهریور ماه تا 7 شهریور ماه . توی روش شما باید هر تاریخی رو اول به یک عدد تبدیل کرد که توی فیلتر کردن یه خورده مشکل میشه .

    البته این نظر منه .
    موفق باشید .

    روشی که آقای وکیلی اشاره کرده هم بد چیزی نیست . خیلی هم جالبه .
    گلادیاتور جان سلام
    از ارسال نظرتان متشکرم
    می شه بگین تو فیلتر چه مشکلی پیش میاد؟

  18. #18
    مهمان
    نقل قول نوشته شده توسط omidsm
    نقل قول نوشته شده توسط dadvand
    دوست عزیز
    تا جایی که من میدونم توی دلفی میتونیم دو تا رشته رو با هم مقایسه کوچکتر و بزرگتر و یا مساوی بکنیم
    دوست عزیز شما فکر می کنید برای تاریخ 10/9/1382 و 10/11/1382 چه جوابی می دهد؟
    چون اگر با این راه حل می شد دلفی خود از این راه استفاده می کرد
    و چون این ساختار برای میلادی طراحی شده تنها راه که به نظر من می رسد آن است که در بالا
    اشاره کردم
    ویا ساختاری شبیه تاریخ دلفی برای شمسی طراحی کنیم که من در حال انجام آن هستم

    و به امید روزی که ....
    .............
    سلام دوست عزیز
    اگه تاریخ رو به صورت 10/09/1382 وارد کنی مقایسه رو درست انجام میده
    .. به امید روزی که ایران از نظر کامپیوتر خدایی کند . با همت همه برنامه نویسان و علاقه مندان به کامپیوتر

  19. #19
    یکی دیگر از توابع همان کامپوننت تابع تبدیل یک تاریخ به معادل عددی با توجه به فرمت صحیح ان است

  20. #20
    آقا سعید با سلام

    من چون برای تاریخ فارسی با اون کامپوننت تاریخ فارسی آقای رحیمی کار میکنم یکم تنبل و تن پرور شدم :mrgreen:

    با روش شما باید اول یک رنج تاریخ که مشخص میشه به عدد تبدیل بشه و بعد فیلتر ولی با اون کامپوننت هیچ کار خاصی لازم نیست و فقط 2 خط فیلتر ساده مینویسی و تمام . توی برنامه نویسی هم هر چی کار کمتری انجام بدی و نتیجه بهتری بگیری هنر کردی :mrgreen: و از نظر وقت و انرژی هم صرفه جویی کردی .

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

    موفق باشی .

  21. #21
    سلام
    مقایسه دو رشته از سمت چپ انجام میشه و هیچ مشکلی نداره.سال در سمت چپ و ماه و روز به ترتیب.کافیه در روشی که استفاده میکنیم برای تاریخها الگوی خاصی رو همیشه رعایت کنیم مثلا برای ماه دو کاراکتر رو در نظر بگیریم که برج نهم به این صورت نوشته میشه( 09) و نه (9) و یا سال دویستو یک رو بنویسیم 0201 (چهار کاراکتر). با این روش ثبت تاریخ بصورت کاراکتری هیچ مشکلی در مقایسه نخواهد داشت.
    در ضمن استفاده از StrtoDate کار جالبی برای تاریخ شمسی نیست. چون کنترل صحت روی تاریخ انجام میشه. مثلا روز 31 ام از برج اردیبهشت رو امتحان کنید و اکسپشن رو ببینید.

  22. #22
    کاربر دائمی
    تاریخ عضویت
    خرداد 1382
    محل زندگی
    l8026070@yahoo.com
    پست
    282
    با سلام
    عزیز من یه فیلد دیگه اضافه کن و به صورت محاسبه ای از تاریخی که شخص بصورت فارسی وارد کرده میلادیش رو بریز توش بعد هم از اون اسفاده کن.
    والسلام.
    در مورد تغییر تاریخ فارسی به میلادی و معکوس هم که کامپوننت مثل ... ریخته بشین جمعش کن.
    قربانت.

  23. #23
    کاربر دائمی
    تاریخ عضویت
    تیر 1382
    محل زندگی
    ایران-سیرجان
    پست
    273
    نقل قول نوشته شده توسط gladiator
    آقا سعید با سلام

    من چون برای تاریخ فارسی با اون کامپوننت تاریخ فارسی آقای رحیمی کار میکنم یکم تنبل و تن پرور شدم :mrgreen:

    با روش شما باید اول یک رنج تاریخ که مشخص میشه به عدد تبدیل بشه و بعد فیلتر ولی با اون کامپوننت هیچ کار خاصی لازم نیست و فقط 2 خط فیلتر ساده مینویسی و تمام . توی برنامه نویسی هم هر چی کار کمتری انجام بدی و نتیجه بهتری بگیری هنر کردی :mrgreen: و از نظر وقت و انرژی هم صرفه جویی کردی .

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

    موفق باشی .
    گلادیاتور جان سلام
    شما درست میگین
    اما جناب SyntaxCheck هم روش خوبی رو گفتند. اینطور نیست :?:

  24. #24
    سعید جون

    سینتکس چک که کارش حرف نداره ٬ ما خیلی مخلصشیم .

    و همچنین بقیه برو بچه های سایت .

    موفق باشید .

  25. #25
    مهمان
    من نمیفهمم شما سر چی دارین بحث میکنین :?:
    این کوری که نوشتم یک ساله که داره واسه یه برنامه گزارش درست میکنه هنوز هم error نداده
    select * from table1 where date between date1 and date2

    date1 ,date2 دو تاریخ به فرمت yyyy/mm/dd هستند و date هم از نوع string
    ضمنن اگه از دیتابیس dbisam استفاده کنین تاریخ فارسی رو کاملا ساپورت میکنه

  26. #26
    اسانترین را برای شما اینس که یک تابع بنوسی که اعداد کوچکتر از 10 را دورقمی کنه (1 به 01 تبدیل بشه و ...) در اینصورت مقایسه رشته ای هم جواب خواهد داد.نوشتن تابع هم سخت نیست و برای اینکه بعد از این اطلاعات درست وارد بشه موقع ذخیره این تبدیل را انجام بده .

    -------------------------------------------------------------------------------
    خدا مارا از شر زبان فارسی و تاریخ فارسی محفوظ نگه دارد .

  27. #27
    این کامپوننت های که میگین از کجا میشه گیر آورد؟ :?:

  28. #28
    کاربر دائمی آواتار arshia_
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    ایران-شهر فرزانگان( بروجرد )
    پست
    1,226
    می تونید یک فیلد محاسباتی در اکسس تعریف کنید که رشته رابه
    عدد تبدیل کند مثلا
    "10/10/1381" را به 13811010 تبدیل کند حال می توانید با این فیلد کار کنید
    _________________
    چطور میشه اینکارو انجام داد آیا تابعی برای این کار داریم یا باید به صورت دستی اونو انجام بدیم؟؟

  29. #29
    سلام به همه دوستان

    چطور میشود یک دکمه برای فیلتر کردن شرط خاص یا چند شرطی بر روی فیلدهای از نوع رشته درست کرد
    16/10/83

  30. #30
    سلام به همه دوستان

    چطور میشود یک دکمه برای فیلتر کردن شرط خاص یا چند شرطی بر روی فیلدهای از نوع رشته درست کرد
    16/10/83

  31. #31
    منم به یه مشکل بر خوردم که نیاز دارم مثلا تاریخ 16/10/83 را به 16-10- 83 تبدیل کنم. اگه ممکنه برام حلش کنین.

  32. #32
    کاربر دائمی آواتار computer-mag
    تاریخ عضویت
    بهمن 1385
    محل زندگی
    شهر گنبدهای فیروزه ای
    پست
    163
    نقل قول نوشته شده توسط arkiaaa مشاهده تاپیک
    منم به یه مشکل بر خوردم که نیاز دارم مثلا تاریخ 16/10/83 را به 16-10- 83 تبدیل کنم. اگه ممکنه برام حلش کنین.
    خوب مشکلی که نیست!شما باید توی رشتت دنبال / بگردیو هر جا / دیدی اون رو حذف کنیو جاش - بزاری! همین کار خاص دیگه ایهم نم یخواد!

  33. #33
    من خودم بارها تاریخ رو به صورت رشته با هم مقایسه کردم و همیشه هم درست جواب داده.
    پس بهتره دنبال مشکل تو یه جای دیگه از برنامتون بگردید. نه توی مقایسه رشته ها

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

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