Solved

How can I pass parameters using MYSQL and MS Reporting Services

Posted on 2009-05-11
3
1,778 Views
Last Modified: 2012-05-06
Normally when I create a report using Microsoft Reporting Services connected to a SQL 2005 database, I declare the parameters in the beginning of the code as follows:

Declare @Start datetime, @End datetime
Begin

Later in the code I then use:
Where tablename.date >= @Start and tablename.date<= @End

Now I'm connecting to an older MYSQL version 4.? database but I keep getting an error about syntax in the first line when I try declaring the parameter. I know the query works without the parameters but I don't know how to pass parameters in MYSQL. I could not find much help on this online either. The vendor I'm working with is using this MYSQL db so I have very limited control over what I can do on that database and/or server.

I really thought I was over the hump just getting MSRS to work with MYSQL but now this - any help is greatly appreciated.

Thanks
0
Comment
Question by:DOHMH
3 Comments
 
LVL 9

Assisted Solution

by:Hwkranger
Hwkranger earned 100 total points
ID: 24358585
I'm not 100% certain on this, since I use MSSQL for everything, but I used to do MYSQL

Instead of declaring your variables inside of the SQL, just use them and hook them in SSRS to variables declared in SSRS.  I think you can do it that way, and SSRS will pass the variable values instead of the variables for you.
0
 
LVL 11

Accepted Solution

by:
shorak earned 400 total points
ID: 24362023
I think with reporting services, you have to use un-named parameters when using databases other than MS SQL.

I'm not sure if using global variables will work. What you may have to do is go down your mysql script and replace the @start and @end with ? and then in your  edit dataset properties in reporting services, select the parameters tab and map each ? to the correct corresponding report parameter that you have setup in the report.

In your script, delete the variable declaration part and then replace

Where tablename.date >= @Start and tablename.date<= @End with
Where tablename.date >= ? and tablename.date<= ?

In your edit dataset dialog box in reporting services, go to the Parameters tab and and you should see two rows, the first column will have ? in both rows and the other column will have something like =Parameters!Parameter1.value
Use the dropdown in that cell to select the correct report parameter. Do this to both rows. You will have to go to the report parameters screen and delete any unwanted report parameters that has been automatically created and you should be done.

Rob
0
 

Author Closing Comment

by:DOHMH
ID: 31580237
Thanks for Hwkranger for getting me thinking of how to do this and shorak for giving me the specifics. Just a note that I had to enter the ? because they were not already populated in the parameters tab.
0

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

As a database administrator, you may need to audit your table(s) to determine whether the data types are optimal for your real-world data needs.  This Article is intended to be a resource for such a task. Preface The other day, I was involved …
It is helpful to note: This is a cosmetic update and is not required, but should help your reports look better for your boss.  This issue has manifested itself in SSRS version 3.0 is where I have seen this behavior in.  And this behavior is only see…
Exchange organizations may use the Journaling Agent of the Transport Service to archive messages going through Exchange. However, if the Transport Service is integrated with some email content management application (such as an antispam), the admini…

679 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question