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

## kheybar

دوستان گرامی ، در سایت جستجو کردم و مطالبی که در این رابطه نوشته شده بود را دیدم . کلا همه موارد انتقال مطالب از باک به کریستال ریپورت است . یا نهایتا استفاده از برخی کدها برای تعیین مکان مقادیر مورد نظر شما در Print priview و بعد از تایید ارسال آن به پرینتر.
ولی مشکل اینجاست که من میخواهم در کریستال ریپورت Text Object قرار داده و از داخل فرم به آن مقدار ارسال کنم. یا آن را Set کنم. 
یعنی اینکه بعد از اینکه در کریستال ریپورت طفحه را به صورت کامل طراحی کردم مقادیر را از داخل فرم به آن ارسال کنم. حالا  اگر در این رابطه اطلاعات دارید لطفا من را در جریان قرار دهید.
جسارتا اگر از دست من ناراحت نشوید : من میتوانم هزینه این آموزش را نیز پرداخت  کنم. باتشکر فراوان.

----------


## saghari

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

YourReport.SetParameterValue(0, Parameter1)

دستور بالا مقدار 0 را به پارامتر 1 ارسال میکند.

----------


## kheybar

با سلام و تشکر . دوست عزیز من به صورتی که در زیر آمده است از کد شما استفاده کردم.

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Me.CrystalReport11.SetParameterValue(0, "mytext")
    End Sub
ولی متاسفانه با مشکل زیر روبرو هستم. لطفا من را راهنمایی کنید.

در ضمن تصویر کریستال ریپورت رو هم براتون میزارم تا ببینید. یک آبجکت تکست داخل صفحه است که پراپرتی آن را نمیدانم باید چه طور تنظیم کنم.

----------


## saghari

با سلام
به پیوست یک نمونه کوچک براتون گذاشتم. موفق باشید
UseParameter.zip

----------


## mosavi_M_K

با سلام
من برنامه شما را دانلود كردم ولي در كد برنامه اسمي از نام پارامتر آورده نشده. ولي برنامه در ست اجرا ميشه علت چيست؟

----------


## mostafaaa

به جای اسم index پارامتر رو قرار دادن.
 CrystalReport1.SetParameterValue(0, Me.TextBox1.Text)

----------


## kablayi

سلام ...
دوست عزیز اگر با دقت بشتری جستجو میکردید به جواب میرسیدید ...
https://barnamenevis.org/showthread.php?t=122936
اول یه پارامتر رو روی صفحه گزارش میزاری (با نام دلخواهمثلا ParamName) ... بعد از کد زیر رو برای مقدار دهی ، در فرم لود فرمی که کریستال ریپورت ویوور رو در اون گذاشتی بنویس ...

Dim rptdoc As New CrystalDecisions.CrystalReports.Engine.ReportDocum  ent
strpath = Application.StartupPath & "\report.rpt"
rptdoc.Load(strpath)
rptdoc.SetParameterValue("ParamName", "برنامه نویس")
CrystalReportViewer1.ReportSource = rptdoc


البته جای عبارت "برنامه نویس" میتونید از مقدار یه تکست باکس و یا لیبل هم استفاده کنید ...
هر چند تا parameter توی گزارش گذاشته باشی میتونی از این روش اونارو مقدار دهی کنی ...

----------


## shirkoo1394

You have to use a parameter fields of Crystal report for this....
1.Open Field Explorer window in Crystal report.
2.Go to Parameter Fields.
3.Right Click on "Parameter Fields" Click on "New"
4.In the pop-up window give a Name for your parameter and give its Data Type.Name is mytextBoxValue and Data Type is String.
5.A parameter field[mytextBoxValue] will be added under Parameter Fields...Drag this field to your report and place where you want to show your textbox value.
6.Now in the code behind file write the following code to pass your TextBox value to this Crystal report parameter field.Dim txtValue As String=TextBox1.Text
Dim myReport As New CrystalReport1
myReport .SetParameterValue("mytextBoxValue", txtValue )

آدرس صفحه : http://stackoverflow.com/questions/1...ual-basic-2005

----------

