This is a migrated thread and some comments may be shown as answers.

Pass Report Parameter from MVC View ?

2 Answers 517 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Mridul
Top achievements
Rank 1
Mridul asked on 11 Apr 2011, 08:51 AM
Hello all,

           I'm working on MVC application, i need to pass values to Report Parameter, i'm working on ReportConstructor to send those values onLoad overloaded method, but when i preview the report, it is not working as exacted, please let me know the steps to assign user inputs to Telrik Report parameters.

Thanks in advance.


Regards
Mridul Sharma.  

2 Answers, 1 is accepted

Sort by
0
Steve
Telerik team
answered on 12 Apr 2011, 08:36 AM
Hello Mridul,

Here is a sample:
Copy Code
<asp:Content ID="indexContent" ContentPlaceHolderID="MainContent" runat="server">
     
    <script runat="server">
         
        public override void VerifyRenderingInServerForm(Control control)
        {
            // to avoid the server form (<form runat="server">) requirement
        }
 
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
             
            // bind the report viewer
            Telerik.Reporting.Report rpt = new ClassLibrary1.Report1();
            rpt.ReportParameters["Parameter1"].Value = ViewData["reportParam"];
            ReportViewer1.Report = rpt;
        }
    </script>
    <telerik:ReportViewer runat="server" ID="ReportViewer1" />
</asp:Content>

HomeController:
Copy Code
public ActionResult Index()
        {
            ViewData["Message"] = "Welcome to ASP.NET MVC!";
            ViewData["reportParam"] = "my data";
            return View();
        }


Greetings,
Steve
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking system and vote to affect the priority of the items
0
Mridul
Top achievements
Rank 1
answered on 12 Apr 2011, 09:38 AM
Hey Steve,

Thanks for your reply.

I have implemented this functionality. I have few more question:
-> I have to pass user inputs to report and assign them to report parameters on my own button Click Event in MVC.
-> I did try to design a constructor for Report  and call that and provide user inputs and then i did call RefreshReoprt() function to get report but i'm unable to use that new constructor.
-> Please let me know how to render report with new user inputs on my own button click event.  

Have a look on Code Block: 
// Report View Code
<script runat="server">
        protected override void OnLoad(EventArgs e)
        {
            base.OnLoad(e);
            ReportViewer1.Report = new Test.Reports.Report1();
        }
        
        protected void ButtonShow_Click(object sender, EventArgs e)
        {
            ReportViewer1.Report = new Test.Reports.Report1(TextSearchName.Value);
            ReportViewer1.RefreshReport();
        }
</script>
 
 
// Constructor in Report Class
 
       // Default Constructor
       public Report1()
        {           
              InitializeComponent();
        }
 
       // Over Loaded Constructor
        public IHEPrescriptionReport(string name)
        {           
            InitializeComponent();
             
            // Assign Value to Report Parameters
            this.ReportParameters["name"].Value = name; 
             
        }


I'll appreciate any help.



Regards
Mridul Sharma  
Tags
General Discussions
Asked by
Mridul
Top achievements
Rank 1
Answers by
Steve
Telerik team
Mridul
Top achievements
Rank 1
Share this question
or