PDA

View Full Version : گزارشگیری دینامیک با کریستال ریپورت



programmermp
شنبه 14 مرداد 1385, 10:24 صبح
با سلام

اولا چطوری می شه از بانک sql server 2005 توسط کریستال ریپورت گزارش تهیه کرد

من که جایی برای اضافه کردن فایل بانک اطلاعاتی sql server ندیدم

ثانیا چطوری می شه از توی وی بی دات نت به گزارشی که با کریستال ریپورت درست کردی

فیلدی رو اضافه بکنی یا حذف کنی در ضمن بانک اطلاعاتی نیز اس کیو ال سرور 2005 دولاپر

هست

برای مثال فیلد نام رو از گزارش حذف کنم و نام خانوادگی که در گزارش گذاشته نشده بود

رو اضافه کنم در ضمن ایا می شه در جزئیات دیگر فرم گزارش مثل خطوط ترسیمی و دیگر

جزئیات گزارش تغییراتی ایجاد کرد یا نه


اگه امکانش هست زودتر و کاملتر جواب بدید چون برای پایان نامه دانشگاه می خوام

با تشکر:تشویق:

programmermp
یک شنبه 15 مرداد 1385, 10:07 صبح
کسی نمی تونه جواب بده ؟

reza_rad
یک شنبه 15 مرداد 1385, 10:25 صبح
اولا چطوری می شه از بانک sql server 2005 توسط کریستال ریپورت گزارش تهیه کرد

من که جایی برای اضافه کردن فایل بانک اطلاعاتی sql server ندیدم

یکی از راهها اینه که دیتا ست بسازید و ازش توی ریپورت تون استفاده کنید.



ثانیا چطوری می شه از توی وی بی دات نت به گزارشی که با کریستال ریپورت درست کردی

فیلدی رو اضافه بکنی یا حذف کنی در ضمن بانک اطلاعاتی نیز اس کیو ال سرور 2005 دولاپر

هست

برای مثال فیلد نام رو از گزارش حذف کنم و نام خانوادگی که در گزارش گذاشته نشده بود

رو اضافه کنم

با استفاده از FORMULA شما می تونید بگید که در چه صورتی فیلدتون رو نشون بده یا نده... که می تونید در کنارش از parameter خا برای فرستادن طلاعات از فرمها به گزارش تون استفاده کنید.



در ضمن ایا می شه در جزئیات دیگر فرم گزارش مثل خطوط ترسیمی و دیگر

جزئیات گزارش تغییراتی ایجاد کرد یا نه


البته که میشه. هم خط ترسیم کرد . هم چارت کشید . هم رنگ ها و ... رو تنظیم کرد



اگه امکانش هست زودتر و کاملتر جواب بدید چون برای پایان نامه دانشگاه می خوام

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

programmermp
یک شنبه 15 مرداد 1385, 12:10 عصر
خیلی ممنون از جواب شما

اگه می شه یک مثالی در این مورد به خصوص کار با formul ها برای من بگذارید

ممنون می شم به خدا کارم خیلی فوری و گرنه مزاحم شما نمی شدم

بعد هم برای گزارشگیری از بانک اکسس ما یک crystal report جدید ایجاد می کردیم

و از قسمت database file نام اون رو انتخاب می کردیم و بعد هم فیلدها و ... که فکر کنم در

قسمت ویزارد اول کریستال ریپورت بود اما برای بانک sql server من در اون قسمت چیزی

ندیدم چطوری می شه این کار رو برای sql server انجام داد


با تشکر:تشویق: :تشویق: :تشویق:

reza_rad
یک شنبه 15 مرداد 1385, 12:36 عصر
اگه می شه یک مثالی در این مورد به خصوص کار با formul ها برای من بگذارید

مثال رو که کامل نمیشه اینجا گفت...
ولی یه توضیح مختصر:
فرض کن شما می خوای توی فری که داری انتخاب کنی که کدوم فیلدها رو توی ریپورت برات نشون بده و بعد ریپورت بر اساس اون بگیری
اول شما تمام فیلدهایی که لازم داری توی ریپورت ایجاد کن
بعد یک پارامتر توی ریپورت ایجاد کن
حالا برای هر فیلد توی ریپورت یک فرمول ایجاد کن و چک کن که بر اساس فلان مقدار متغیر آیا اون رو نشون بده ای نه...
طبیعیه که مقدار متغیر هم از فرم به ریپورت ات فرستاده میشه.
ضمنا توی فرمول می تونی از دستوراتی مثل IF و SELECT CASE استفاده کنی.



بعد هم برای گزارشگیری از بانک اکسس ما یک crystal report جدید ایجاد می کردیم

و از قسمت database file نام اون رو انتخاب می کردیم و بعد هم فیلدها و ... که فکر کنم در

قسمت ویزارد اول کریستال ریپورت بود اما برای بانک sql server من در اون قسمت چیزی

ندیدم چطوری می شه این کار رو برای sql server انجام داد

فکر کنم با گرید های 2005 کار کرده باشید. وقتی که روی صفحه یک گرید جدید ایجاد می کنید ازتون تنظیمات دیتاسورس رو می خواد
که همونجا می تونید new کنید و دیتاسورس بسازید با ویزارد... داخل همین ویزارد یکجا هست که میپرسه از چه جدولهای می خواین دیتاست داشته باشید و براتون دیتا ست رو ایجاد میکنه.
تا اینجا ربطی به ریپورت نداره
اما حالا برای ارتباط دادن ریپورت به دیتاست. روی دیتابیس اکسپرت توی ریپورت کلیک کنید و از نوع ado انتخاب کنید و مسیر دیتاست رو بهش بدید و تمام!

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

خواهش می کنم. موفق باشید.

programmermp
یک شنبه 15 مرداد 1385, 12:48 عصر
منظورتون از گرید ها همون دیتا گراید هست دیگه درسته

بعد یک نکته دیگه یعنی نمی شه بانک طراحی شده توسط sql server رو در کریستال ریپورت

انتخاب کرد ( بانک اکسس که می شد):متفکر: :متفکر:

با تشکر:تشویق: :تشویق:

reza_rad
یک شنبه 15 مرداد 1385, 12:56 عصر
منظورتون از گرید ها همون دیتا گراید هست دیگه درسته

بله...



عد یک نکته دیگه یعنی نمی شه بانک طراحی شده توسط sql server رو در کریستال ریپورت

انتخاب کرد ( بانک اکسس که می شد)

چرا میشه! گفتم که فقط همون یک راه نیست...
مثلا یک راه دیگه اینه که شما از توی database expert توی ریپورت بری و new connection رو بزنی و از نوع OLEDB(ADO) انتخاب کنی.
حالا ویزاردی ظاهر میشه که نوع دیتابیس رو میخواد بهش sql server میدی و ...

programmermp
یک شنبه 15 مرداد 1385, 13:12 عصر
مشکل همین جاست که من نمی تونم جایی برای اضافه کردن بانک sql server در قسمت

انتخاب بانک در کریستال ریپورت پیدا کنم همه نوع دیتابیس اونجا هست به جز sql server

در ضمن این فایل های بانک اطلاعاتی که در sql server ساخته می شوند با چه پسوندی

می شه اونها را در کریستال ریپورت اضافه کرد یعنی پسوند آنها چیست

من که به طور کامل گیج شدم:گیج: :گیج: :گیج: :گیج:

در ضمن اگه امکانش هست یک مثال در مورد استفاده از formula در گزارشگیری پویا

به من لینک بدید یا یک سایتی که حاوی این مثال ها هست به من معرفی کنید

با تشکر:تشویق: :تشویق: :تشویق:

reza_rad
یک شنبه 15 مرداد 1385, 13:57 عصر
شکل همین جاست که من نمی تونم جایی برای اضافه کردن بانک sql server در قسمت

انتخاب بانک در کریستال ریپورت پیدا کنم همه نوع دیتابیس اونجا هست به جز sql server


یعنی میگید این قسمتی که توی عکس های لایت شده رو ندارید!؟




در ضمن این فایل های بانک اطلاعاتی که در sql server ساخته می شوند با چه پسوندی

می شه اونها را در کریستال ریپورت اضافه کرد یعنی پسوند آنها چیست

من که به طور کامل گیج شدم

با دیتابیس sql نمی تونید اینجوری کار کنید و با فایل اضافه اش کنید. باید از روشی که گفتم بهش وصل بشید.
اما محض اطلاع پسوند فایل های دیتابیس SQL اینه :mdf



در ضمن اگه امکانش هست یک مثال در مورد استفاده از formula در گزارشگیری پویا

به من لینک بدید یا یک سایتی که حاوی این مثال ها هست به من معرفی کنید

اینها لینکهای خیلی خوبین:
http://www.vbcity.com/forums/faq.asp?fid=54&cat=Crystal+Reports
http://aspalliance.com/crystal/redir.aspx?ArticleURL=http://aspalliance.com/216

programmermp
سه شنبه 17 مرداد 1385, 11:07 صبح
با سلام و تشکر فراوان از شما

اگه اشکال نداره یک سئوال دیگه می پرسم

اگه بخواهیم برنامه رو بر روی یک سیستم دیگه اجرا و نصب کنیم تکلیف نحوه انتقال فایل

بانک اطلاعاتی sqlserver که اگه اشتباه نکنم از مسیر زیر می شه پیداش کرد چیه

X:\Microsoft SQL Server\MSSQL.1\MSSQL\Data
یعنی باید فایل بانک رو مثلا test.mdf رو به همراه فایل log که در کنارش هست هر دو رو

با هم به مسیر مشابهی مانند مسیر فوق در کامپیوتر مقصد کپی کنیم یا اینکه در هر

مسیری کپی بشه فرقی نمی کنه چون در connection string ما فقط نام سرور و نام بانک رو

مشخص می کنیم و مسیر بانک مشخص نمی شه

با تشکر:تشویق: :تشویق: :تشویق: :تشویق:

reza_rad
شنبه 21 مرداد 1385, 09:39 صبح
خواهش می کنم...:)

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

موفق باشید