# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > ابزارهای گزارش سازی >  Microsoft report viewer

## ساراساراسارا

چه طوری باید از Microsoft report viewerدر visual stadio به زبان C#‎ استفاده  کنم

لطف کنید خیلی فوری جوابی به من بدهید.مرسی

----------


## fateme.moosavi

سلام دوست عزیز؛ :چشمک: 
برای استفاده از report viewer اولاً باید سرویس گزارشگیری در sql فعال شده باشد و برای فعال شدن سرویس باید IIS حتماً نصب شده باشد. - ضمنا .NET Fameworke هم باید قبل از نصب sql فعال باشه.
یعنی اول ویژوال استدیو رو نصب کن و بعد اس کیو ال رو؛
اگر IIS داری و سرویس گزارش گیریت هم فعاله ، به بقیه داستان گوش بده؛

البته اگر منظورت کار با اون تو WinApp هست ، جوابتو میدونم . 
برو روی اسم پروژه رایت کلیک کن و یک آیتم جدید از نوع report انتخاب کن؛ به انتهای پروژه یک گزارش با پسوند rdlc اضافه میشه . فضایی به نام Body می بینی. از toolbox و قسمت report items یک table انتخاب کن و روی body جدول بکش. 
سمت چپ کنار منوی ابزار، یک منو به نام data source هست . برو سراغ اون و Add new Data source رو بزن . یک منو برات باز میشه، Database رو انتخاب کن . بعد new cnn رو بزن و در منوی بعد نام سرور و نام db رو انتخاب کن و ok کن؛
بعد 2بار next بزن و صبر کن تا منویی بیاد که تو بتونی آیتم های مورد نظرتو انتخاب کنی. finish رو بزن و هر آیتمی رو که خاستی ، به گزارشت اضافه کن.
حالا برو سراغ فرم و یک Microsoft report viewer و اگر تو 2005 هستی یک report viewer به فرم اضافه کن؛ از مثلث کوچک سمت راستش وارد تنظیماتش بشو و در choose ، آدرس گزارشی که ساختی رو می بینی . اون رو انتخاب کن . بعد پروژه رو اجرا کن و کلی کیف کن که بدون کریستال ریپورت و ... تونستی یه گزارش بسازی؛

ضمناً تو میتونی دریک پروژه جدید از نوع report و نه winApp یک گزارش با پسوندrdl بسازی و در آدرس زیر 
Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\ProjectItems\Rep ortProject

اون رو کپی کنی و هر وقت خواستی از اون به عنوان master استفاده کنی. روی rdl ها خیلی کارا میشه کرد . میتونی از data source هم یک master بسازی . اگر مایل بودید بفرمایید سرفرصت روش استفاده از مستر و ساخت اون رو هم میگم؛

----------


## ساراساراسارا

سلام فاطمه جانممنون از لطفتونمن یک مدل از طریقreport model درست کردم و از طریق این مدل در report builder 2 گزارش  تهیه کردم. برای استفاده از report viewer هر کار که گفتین کردم فقط برای قسمتی که table اضافه می کنم پیام خطا می دهد.لطفا توضیح دهید بعد از اضافه کردن جدول چه باید بکنم.معمولا خطا از dataset مگیرد.ضمنابرای قسمت url مسیر را میدهم ولی برای قسمت path چه باید بدم .چون اگر بدون اضافه کردن جدول اجرا کنم .اجرا می کنه اما پیام میده که مسیر را پیدا نکرده

----------


## jafari1

> اون رو کپی کنی و هر وقت خواستی از اون به عنوان master استفاده کنی. روی rdl ها خیلی کارا میشه کرد . میتونی از data source هم یک master بسازی . اگر مایل بودید بفرمایید سرفرصت روش استفاده از مستر و ساخت اون رو هم میگم؛


با سلام خدمت خانم موسوی
ضمن تشکر از زحمت شما راجع به میکروسافت رپرت 3 سوال دارم 
1- یک فرم A4 طراحی کردم که برای یک رکورد صفحه را کامل میکنه حالا میخواهم برای تعدادی از رکوردها چند صفحه چاپ بشه چگونه میشود ؟
2- آیا در میکروسافت رپورت از بانک اطلاعاتی اسکیو ال میشود تصویر هم چاپ کرد چگونه ؟
3- اگر بخواهیم گزارش مستقیما چاپ شود و در report viewer  نمایش داده نشود چه کار کنیم؟
ضمنا راجع به موضوع مورد اشاره جنابعالی در نقل قول هم اگر زحمت نیست توضیح دهید
با تشکر مجدد

----------


## fateme.moosavi

با عرض سلام؛
در مورد سوال اولتون بايد يک گزارش پويا بنويسيد؛ نحوه نوشتنش رو هم با کريستال بلدم و دارم روي ssrs هم کار مي کنم ، هر وقت جواب گرفتم ، مي گم!
2 - بله تصوير و هرچيز ديگه هم ميشه گذاشت ولي بايد باهاش کار کنيد و کتاب الکترنيک هم دراين رابطه است؛ من تاحالا نذاشتم؛
3 - اون توضيحاتي که دادم - درمورد ساخت rdlc بود که تو فرم با report viewer فراخواني ميشه . پس ميشه!

توضيح نقل قول:


- گزارش مورد نظر خود را بسازيد. اين گزارش بايد شامل قسمتهايي باشد که در تمام گزارشات شما تکرار ميشود. مثلا اگر در تمام گزارشات شما Header و Footer مورد نياز است، ميتوانيد اين کار را در قالب خود طراحي کنيد.
- فايل rdl ساخته شده را با نام مورد نظر در آدرس زير کپي کنيد:
D:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies\ProjectItems\Rep  ortProject
- Visual Studio را باز کنيد و يک پروژه Report بسازيد.
- پس از ساخته شدن پروژه روي پوشه Reports راست کليک کنيد و گزينه Add و سپس New Item را انتخاب کنيد. در ديالوگ باز شده بايد يک قالب با نام موردنظر خود ببينيد. آن راانتخاب کنيد.
در گزارش جديد بايد تغييراتي که از قبل داده ايد را ببينيد.

 - از اين روش شما براي ساختن قالب براي Data Source ها هم ميتوانيد استفاده کنيد.

موفق باشيد؛

----------


## jafari1

> با عرض سلام؛
> در مورد سوال اولتون بايد يک گزارش پويا بنويسيد؛ نحوه نوشتنش رو هم با کريستال بلدم و دارم روي ssrs هم کار مي کنم ، هر وقت جواب گرفتم ، مي گم!
> 2 - بله تصوير و هرچيز ديگه هم ميشه گذاشت ولي بايد باهاش کار کنيد و کتاب الکترنيک هم دراين رابطه است؛ من تاحالا نذاشتم؛
> 3 - اون توضيحاتي که دادم - درمورد ساخت rdlc بود که تو فرم با report viewer فراخواني ميشه . پس ميشه!


ضمن سلام و تشکر
اگر بیشتر توضبیح دهید متشکر میشوم چون هیچکدام از حالات فوق انجام نشد

----------


## pazooki_s

براي تاريخ شمسي بايد جيكار كرد؟

----------


## ebrahim1988

سلام
من ميخوام با كد نويسي واسه گزارش،منبع(data source) تعيين كنم نه اينكه بصورت ويزاردي( از مثلث کوچک سمت راست...)(چون ميخوام روي دستور نمايش شرط اعمال كنم(where))
حالا بايد چكار كنم؟
در ضمن منظور من فقط microsoft report viewer است نه crystal report
شما رو بخدا سريعتر چون يه پروژه دارم كه بايد تحويل مشتري بدم فقط همين جا رو مشكل دارم
ممنون

----------


## lastmory

برای تبدیل تاریخ شمسی به قمری:

Public Shared Function GetPersianDate(ByVal d As Date) As String
        Dim p As New System.Globalization.PersianCalendar
        Return p.GetYear(d) & "/" & p.GetMonth(d) & "/" & p.GetDayOfMonth(d)
    End Function

----------


## lastmory

میتونی یه functionطراحی کنی.که یه datasetبرگردونه.از databaseاطلاعات بگیره.با یه table functionتوی databaseارتباط برقرار میکنه.هر شرطی هم که بخوای میتونی بزاری.بعدش باید dataset رو وصل کنی به report viewer.اگه متوجه نشدی addکن منو توضیح بدم بهت.morteza.aryafar

----------


## lastmory

راجع به active reporter اطلاعات میخوام.ممنونم:)

----------


## jalehak

> میتونی یه functionطراحی کنی.که یه datasetبرگردونه.از databaseاطلاعات بگیره.با یه table functionتوی databaseارتباط برقرار میکنه.هر شرطی هم که بخوای میتونی بزاری.بعدش باید dataset رو وصل کنی به report viewer.اگه متوجه نشدی addکن منو توضیح بدم بهت.morteza.aryafar



سلام دوستان من هم این مشکل رو دارم من نه به صورت دیتا ست بلکه توی یک رشته کوئری مو ذخیره کردم حالا اون رو چطوری تو اس کیو ال ذخخیره کنم؟ چطوری نتیجه کوئری رو تو ریپرتر ببینم؟
ممنون میشم راهنمایی کنید
خیلی مهمه

----------

