PDA

View Full Version : سوال: مشکل در فیلد تاریخ !



FiACKER
یک شنبه 20 اردیبهشت 1388, 13:22 عصر
سلام
بانک : sql
گزارش گیری : fastreport
برنامه نویس : Me
مشکل : fldDate

می شه بگید باید چیکار کرد که هم فرمته تاریخ رو داشته باشم و هم بتونم در برنامه ام تاریخ های شمسی رو به بانک بدم.
در گزارشم هم نیاز دارم تا بر اساس فلان تاریخ تا فلان تاریخ فیلتر و گزارشی تهیه کنم !

ایا همچین کاری می شه کرد ؟

Ahmad Chehreghani
یک شنبه 20 اردیبهشت 1388, 14:15 عصر
سلام
تاريخ را از نوع Nvarchar تعريف کنيد و توي دلفي بهش Mask بديد
توي گزارش گيري هم از MaskEdit استفاده کنيد
موفق باشيد

FiACKER
دوشنبه 21 اردیبهشت 1388, 13:14 عصر
با تشکر از جوابتون دوست عزیز
یعنی اگه من بخوام از تاریخ 1/2/88 تا تاریخ 30/2/88 فیلتر کنم . این ممکن هست !؟ ... فکر نمی کنم ! چون sql فیلد رو کارکتری در نظر می گیره و نمی تونه برام فیلتر انجام بده !

من خودم ایده ی تبدیل تاریخ شمسی به تاریخ میلادی به ذهنم رسیده !
و وقتی تاریخه مثلا 1/2/88 تا تاریخ 30/2/88 رو از کاربر گرفتم به میلادی تبدیل کنم و در بانک فیلتر رو انجام بدم !
فکر می کنم هم در خوده برنامم و هم در فست ریپورت جواب بده ... همینطوره ؟
البته هنوز هیچ اقدامی نکردم ! چون چند روزی هست که اصلا وقت نمی کنم !
تازه sqlserver ه سیستمم خراب شده ! نمی زاره من تیبلم رو ویرایش کنم ! یا کاری روش انجام بدم.

با تشکر از دوستان منتظره جوابه یه نفرم ! .... اون کیه ؟ ...

Ahmad Chehreghani
دوشنبه 21 اردیبهشت 1388, 14:01 عصر
یعنی اگه من بخوام از تاریخ 1/2/88 تا تاریخ 30/2/88 فیلتر کنم . این ممکن هست !؟ ... فکر نمی کنم ! چون sql فیلد رو کارکتری در نظر می گیره و نمی تونه برام فیلتر انجام بده !

چرا که نه!
فرض کنيد که مي خواهيد از عدد 50 تا 100 رو تو گزارشگيري بياريد، چطور اين کار رو انجام ميديد؟
حالا شما همون کار رو انجام بديد فقط فرقش اينه که بايد داخل ' يا همون کتيشن بزاريد.



(tar>='85/01/01' ) And (tar<='86/01/01' )


موفق باشيد

shahrokhkian
سه شنبه 22 اردیبهشت 1388, 10:41 صبح
اگر فیلدها را به صورت String تعریف کنید برای اینکه بعداً بتونی توی کوئری هاتون جستجوی کاملی داشته باشید باید فیلد تاریخ را به صورت کامل وارد نمایید به عنوان مثال شما به جای 1/2/88 باید بنویسی 01/02/88 وقتی ورود اطلاعات به این شکل باشه هیچ مشکلی در کوئری هاتون نخواهید داشت.

FiACKER
پنج شنبه 31 اردیبهشت 1388, 11:10 صبح
سلام
مچکر از جوابتون
از یکی از استادامون این مسئله رو پرسیدم !
گفت از تبدیل تاریخ استفاده کنی بهتره !

نظرتون چیه ؟
منتظره یه جوابه قطعی هستم !

Ahmad Chehreghani
پنج شنبه 31 اردیبهشت 1388, 11:58 صبح
از یکی از استادامون این مسئله رو پرسیدم !
گفت از تبدیل تاریخ استفاده کنی بهتره !

من تا حالا نديدم برنامه نويسي که اين کار رو انجام بده! خود منم از همون روشي که گفتم استفاده مي کنم و تا حالا باهاش به هيچ مشکلي برنخوردم.

موفق باشيد

mehdimdp
پنج شنبه 31 اردیبهشت 1388, 12:15 عصر
اگر فیلدها را به صورت String تعریف کنید برای اینکه بعداً بتونی توی کوئری هاتون جستجوی کاملی داشته باشید باید فیلد تاریخ را به صورت کامل وارد نمایید به عنوان مثال شما به جای 1/2/88 باید بنویسی 01/02/88 وقتی ورود اطلاعات به این شکل باشه هیچ مشکلی در کوئری هاتون نخواهید داشت.

منم از همين روش استفاده مي كنم.
راستش قبلا از روش تبديل استفاده مي كردم
ولي ديدم همين روش متني كاملا كارمو راه ميندازه و انجام يه سري عملياتهاي بيخودي جلوگيري ميشه