Can SSRS perform a database write back based on specific criteria in the report output?

How can I perform an "Update database" action based on specific report output?
rhservanAsked:
Who is Participating?
 
itcoupleConnect With a Mentor Commented:
Hi

I admit I have done the same thing in the past.... several times.... I know I shouldn't :)

The way I did that was:
In scenario one:
-- I added extra column with predefined values and then I used "jump to itself" and passed parameter values
-- for the datasource I had something like that
Update myTable
Set Value = @NewValue
WHERE ID = @MyID <-- I set MyID default value to -1 so the first update (report opened first time) doesn't do anything

and then my standard SQL.
The user (SQL or Windows User) must have update/insert access to the table.
That worked fine for me.

For more complicated data modifications I have:
-- Created URL and embedeed javascript to do pop up and display asp.net page. If you type ssrs javascript window.open in google you will fine more info.

Hope that helps.
Regards
Emil

0
 
Chris LuttrellSenior Database ArchitectCommented:
Probably but what are you trying to do?  The first basic tenant of a reportng subsystem is not to modify the data.
0
 
rhservanAuthor Commented:
1. This is an environment to test 10,000 transactions a day.
2. If the datasource provides incorrect data to the report I need to flag it and send an update with the correct
information.
3. On the larger scale this will also provide debug information to the originating input to the datasource and permanently correct the problem.
0
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.

 
Ashok_PauloseCommented:
I do not think you can do any CRUD operations thru SSRS even if you are executing a stored procedure that provides the data for you report.  A simple alternate would be to run two reports:  One for the correct data and the other for incorrect data.
0
 
rhservanAuthor Commented:
Ashok,
Two reports?  I will already have the one report with the incorrect data, but unless I am able to "write back to the data source I will not have correct data for the correct data report.  PLease advise.
0
 
Ashok_PauloseCommented:
What exactly do you mean by correct data?  Do you have a business rule that is violated in your SQL or in the report that you want to report as incorrect?  You cannot write back to the datasource when using SSRS.
0
 
rhservanAuthor Commented:
Through some additonal research, although a little vague for me, but it appears the statement below can perform the update.

 based on a  parameter then I could then I could have a conditional update statement

Please advise.
0
 
Ashok_PauloseCommented:
I think there is a block in the SSRS to prevent any sort of transaction that modifies data.

I may not have understood your specific issue, but in general you can use the reports to identify the incorrect data and may be suggest a fix for the incorrect data, but the reports itself cannot make changes to the source data.
0
 
rhservanAuthor Commented:
Ashok,
Thanks for your responses. To clarify and simplify:
1. I have a datasource used in my report.
2. The datasource has provided incorrect data.
3. I flag the error(s) in the report based on conditions not met.
For an example - If data is Less than 100 then okay else error.

My research has shown me that there are two solutions as shown below:

1. you can use parameters to prompt a user for input and, if a user has the necessary permissions in the database, parameters can be passed to an INSERT query expression to insert a new record.

2. Jump to url and aspx page

IIt is not clear to me how to create either of the above.  
0
 
rhservanAuthor Commented:
itcouple, it has been crazy lately, but I am beginning to work on this problem again.  I want to test your ideas above soon.  Does javascript run by default in SSRS? Any additional info at this point would be great.  I will be working on this over the weekend. Thanks for your efforts.
0
 
itcoupleCommented:
Hi

Javascript is not really supported but you can embed some javascript in SSRS. If you use ReportViewer you can also 'grab' html code and run your javascript. I did that in the past to get nice tool tips ;)

Regards
Emil

0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.