PDA

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



jeniferxp
چهارشنبه 03 بهمن 1386, 10:48 صبح
با سلام
دوستان من در سایتهای زیادی search کردم که چگونه میتونم از تاریخ شمسی در کریستال استفاده کنم ؟ اما همش گفته شده از طریق یک محیط برنامه نویسی مانند vb.net یا ...
یک فایل dll هم به نام CRUFL_PersianDate.dll که خودتون در جریانید داده شده که می بایست آن را به اسمبلی دات نت افزود و آن تاریخ شمسی در function tree مربوط به کریستال آمده و می توان در گزارش استفاده نمود .
آیا می شود بدون واسطی مانند محیط دات نت این dll را در خود نرم افزار crystal report استفاده کرد؟
چون من فقط در محیط نرم افزار crystal report کار میکنم.
ممنون می شم اگه راهنمایی کنید و بگید چطور می توان به توابع موجود در کریستال ، توابع جدید افزود.
با تشکر

sm
پنج شنبه 04 بهمن 1386, 08:30 صبح
شما باید اون فایل DLL رو روی سیستمتون رجیستر کنین.
مثال :


regsvr32 "c:\CRUFLConvertor.dll"

بعد توی Formula که میرین مطابق عکس زیر توی توابعتون اضافه میشه.

موفق باشید

jeniferxp
جمعه 05 بهمن 1386, 16:26 عصر
من موقع رجیستر با این خطا مواجه شدم مشکل از کجاست ؟
با تشکر از راهنمایی شما دوستان

jeniferxp
شنبه 06 بهمن 1386, 09:00 صبح
کسی نیست کمکم کنه؟؟؟؟؟؟؟؟؟؟؟؟

sm
شنبه 06 بهمن 1386, 09:37 صبح
نباید هم جواب بده !!!
شما باید اون دستور رو توی run ویندوز اجرا کنین.

موفق باشید

jeniferxp
شنبه 06 بهمن 1386, 12:41 عصر
از اینکه سوال منو پیگیری میکنید ممنونم
من این کار رو هم در run ویندوز انجام دادم باز با همون error مواجه شدم.
میشه بازم راهنمایی کنید.
با تشکر

sm
شنبه 06 بهمن 1386, 13:39 عصر
توی چه ویندوزی هستین ؟

sm
شنبه 06 بهمن 1386, 13:44 عصر
http://support.microsoft.com/default.aspx?scid=kb;en-us;249873

jeniferxp
شنبه 06 بهمن 1386, 19:47 عصر
ببینید دوست گرامی
من از ویندوز xp استفاده میکنم از طرفی از ورژن کریستال ریپورت 11 استفاده می کنم.
من براتون اون فایل dll رو attach میکنم میشه خودتون تستش کنید:لبخندساده:
بازهم ازکمکهاتون تشکر میکنم.

mahdi_farhani
شنبه 06 بهمن 1386, 23:13 عصر
اگر این dll به صورت Com کامپایل شده باشه میتونی از Regsvr32 استفاده کنی ، که فکر نکم به این شکل باشه .
ولی اگر با دات نت کامپایل شده باشه از gacutil میتونی استفاده کنی .

jeniferxp
یک شنبه 07 بهمن 1386, 18:11 عصر
با تشکر از شما
من باید از این دستور کجا و چگونه استفاده کنم ؟ میشه فرمتشو بگید.
در ضمن من با این دستور هم تو run امتحان کردم بیفایده بود.
نمیدونم چرا این مشکل حل شدنی نیست؟؟؟؟؟؟؟؟؟؟؟؟؟؟:افسرده:

mahdi_farhani
یک شنبه 07 بهمن 1386, 18:16 عصر
باید Command prompt خوده دات نت را باز کنی و دستور را اجرا کنی
فرمت کلی به این شکل است

gacutil -if مسیر و نام dll

jeniferxp
یک شنبه 07 بهمن 1386, 18:24 عصر
ببخشید من همان طور که گفتم از دات نت نمیخوام استفاده کنم اصلا روی سیستمم نصب نیست این دستور شما را هم در سیستمی که دات نت داشت قبلا انجام دادم درست هم اسمبلی شد ولی در کریستال ریپورت به functon ها چیز جدیدی اضافه نشد.
حالا شما برای حالتی که دات نت نداریم و راهی را پیشنهاد نمی کنید؟؟؟؟؟؟؟

mahdi_farhani
یک شنبه 07 بهمن 1386, 18:30 عصر
دوست عزیز شما حداقل برای اجرای سیستم نیاز به فریم ورک دارید ، پس این دستور وجود دارد ....
حالا چرا این مشکل پیش میاد دقیق نمیدونم به نظر من به خاطر SNK هست که در پروژه وجود داره این مشکل پیش میاد .
درضمن فکر کنم این dll فقط برای Embeded Crystal باشه . نه برای خود Crystal report

jeniferxp
یک شنبه 07 بهمن 1386, 19:10 عصر
با تشکر از شما که مشکل منو پیگیری می کنید.
کلا برای نصب کریستال ریپورت احتیاج به فریم ورک هست و من نصبش کردم
ولی چقدر خوب می شد بدون خود دان نت جواب می داد.
حالا علت اینکه تو خود دات نت جواب نمیده چیه؟
خیلی ها این سوالو کرده بودند ولی بهشون جواب نداده بودند.
باز هم ممنون.

ma1246
پنج شنبه 22 فروردین 1387, 09:20 صبح
سلام
من امروز اتفاقی تو سایت بودم که دیدم خیلی ها با این تاریخ فارسی در کریستال ریپورت مشکل دارن . بخاطر همین راهی که خودم استفاده می کنم بهتون می گم که نیازی به هیچ DLL یا کامپوننتی هم نیست امیدوارم بکارتون بیاد.
البته DataBase شما حتما باید SQLServer باشه .
برای این کار من یک Function تو محیط SQL نوشتم که این کار رو برام انجام میده. نام این Func که بصورت یک Query بعد از اینکه اجرا شد به لیست توابع مقیم SQL اضافه میشه . بعد دیگه کاری ندارید . فقط کافی نام Func رو قبل از فیلد تاریخی خود بکار ببرید .
مثلا :
در کریستال ریپورت بعد از انتخاب جدول و فیلدهای مورد نیاز به شما یک Query می ده (Select) که میتونید اونو تغییر بدین . به این صورت :
Select StudentCode,FName,Family,FatherName,Miladi2Shamsi (BirthDate) From Student
در واقع تابع Miladi2Shamsi تاریخ شما رو به شمسی تبدیل میکنه .

هر کی خواست Email بزنه : Majidco18@yahoo.com
bye

ali_mp64
دوشنبه 16 اردیبهشت 1387, 23:28 عصر
ممنون از راهنمائي همه دوستان

AbbasZ
پنج شنبه 03 مرداد 1387, 11:33 صبح
جناب فرهانی سلام
از مقاله ای که گذاشتید متشکرم
من از gacutil _if برای اضافه کردن به اسمبلیها استفاده کردم و در اسمبلیها نیز همان فایل crufl_Persiandate.dll را مشاهده کردم ولی وقتی در کریستال ریپورت میروم در قسمت Additional Function(u2lcom.dll) نمی آید لطفا مرا راهنمایی کنید

sabet2009
پنج شنبه 17 بهمن 1387, 07:48 صبح
ماهم هنوز مشکل داریم برادران چرا در لیست نمیاد این تابع ؟

sabet2009
جمعه 18 بهمن 1387, 07:38 صبح
Symptom

UFL created in C#, Visual Studio .NET 2005 is not visible in the Crystal Reports Designer under the Formula Editor.



Cause

The UFL was not placed in GAC. Nor was the UFL registered by the regasm.exe utility.


Resolution


1) Ensure CR designer is not running



2) GAC the dll:



a) Copy the crufl_vb_crypto.dll into c:\program files\business objects\common\3.5\bin



b) Go to the .NET command prompt



c) Type c:\program files\business objects\common\3.5\bin gacutil -i crufl_myUFL.dll







This should give you a message; Assembly successfully added to the cache.





3) Register the UFL by the regasm.exe utility. At the .NET command prompt type:



c:\program files\business objects\common\3.5\bin regasm crufl_myUFL.dll







The following link to the Developer Library contains more detailed information:



https://boc.sdn.sap.com/node/8510

vba_hadi
یک شنبه 21 شهریور 1389, 15:11 عصر
سلام دوستان.
خیلی سرچ کردم ولی به نتیجه و جواب مناسب نرسیدم.
من میخوام در گزارشم تاریخ میلادی را به شمسی تبدیل کنم
جایی خوندم که CRUFL_PersianDate.Dll را به اسمبلی های ویندوز اضافه کنم. این کار را هم با موفقیت انجام دادم.بعد خواستم در کریستال ریپورت فرمول نویسی کنم ولی در Functions کریستال ریپورت Visual Basic UFLs (u2lcom.dll) را نمیبینم. علت چیست؟
خیلی ضروری و فوریه:عصبانی++:

mpggcobol
یک شنبه 21 شهریور 1389, 18:53 عصر
من خودم به شخصه تاریخ ها رو فارسی شده bind می کنم مشکلی هم ندارم
کافیست از یک تابع فارسی ساز در دیتابیس خود استفاذه کنید و با آن select بزنید

vba_hadi
دوشنبه 22 شهریور 1389, 11:20 صبح
دوست عزیز ممنون ولی اگه تاریخ را فارسی ذخیره کنم که دیگه سوال نمیکردم.
مشکل من اینه که اگه تاریخ ذخیره شده در بانک اطلاعاتی میلادی باشه چطور به شمسی تبدیل کنم که سوال قبلمو پوشش بده؟

mpggcobol
چهارشنبه 24 شهریور 1389, 20:09 عصر
من که نگفتم فارسی دخیره کنید گفتم به فارسی تبدیل کنید
تابع هم تو همین فروم هست

e.Rezaei
شنبه 24 مهر 1389, 15:46 عصر
سلام
من يه راه ساده تر به ذهنم مي رسه شما مي توني تاريخ سيستمو بگيري با تابع معروف تبديل تاريخ ميلادي به شمسي تبديلش كني و بعد به عنوان يك پارامتر براي كريستال ريپورت بفرستي