SSRS 22017 passing a parameter value to a url - report

Hi I have been trying to pass a value in to another report via a URL link, but cannot get the syntax correct, I have trawled the net and the 8 questions already in Stack and tweaked my code for each answer but cannot get it right.
I have a fully developed report that used a parameter "SALES_ORDER" you manually enter the SALES order and the report runs ok.
I have another report that is a graph of the above data with the sales order as the key to both.The graph is showing the last 10 sales orders by sales order number , when I click on the sales order number I want to be taken to the URL of the original developed report taking the sales order I clicked in in the graph so the original report uses this as the parameter.
The code for the jump to in the action box of the graph is :
="http://SERVER_NAME/Reports/report/GEMINI%20REPORTING/BY%20DEPARTMENT/PP/Manual%20Production_order_tracker_V31&rs:Command=render&SALES_ORDER="+Fields!SOPT_SALES_ORD.Value
SSRS likes the code as the graph report runs ok, I can click on the required bar for the specific sales order It then opens the correct URL page but I get the error below:
"The path of the item '/GEMINI REPORTING/BY DEPARTMENT/PP/Manual
Production_order_tracker_V31&rs:Command=render&SALES_ORDER=2900252422'
is not valid. The full path must be less than 260 characters long;
other restrictions apply. If the report server is in native mode, the
path must start with slash. (rsInvalidItemPath) Get Online Help "
The parameter in the developed report is "SALES_ORDER".
I know I could duplicate the developed report and include it in the "new project" I am working within but that then means for any change to the developed report I have to make the same changes to the one in the new project, hence wanting to hyperlink to it.
any help would be appreciated.
Thank you.
Tony King

You can use Action as Go to Report and give your Report name and Then therein you can give Parameter name and it's Value?
Screenshot for Reference

Related

Extracting table from a webpage in automation anywhere

Is there a way to extract a table from a web page in Automation Anywhere after taking certain steps using web recorder. The table does not appear directly, it appears after clicking few controls after launching the URL.
The table that I want to extract is coming after loggin in to the website and filtering using a control for search criteria.
I used web recorder to login and putting the desired search criteria in a text field and I want to extract the table now. When I use web recorder, it launches the URL again and takes me back to the login page which I dont want. I want the bot to stay on the page. Pls help.
Also, what is the significance of session name of an extracted table?
If you clicked on Advanced View, you will find at Step 5 : to run this command using an existing IE window. Try to write the URL of the page with the table and not the one of the login page.
The extracted table is to be used using variable $Table Column(Index)$ with index being the column number or column name
you can export directly using object cloning and in the selection criteria export to csv file. But we need to click on html inner text also in search criteria
An old question, but my experience has been the Extract Data/Table commands are rather poor. Not only do they only work in IE, you cannot call them as commands, they have to be called via a web recording.
Instead, I've found it much more useful to object clone the initial element, grab the DOMXPath, and variablize that. Then throw it into a loop while command and set the condition on finding at least one element (of the elements for the table you are trying to build). You can grab all sorts of useful info in the object clone command and then right that to a variable/table.
For example
//div[#id='updatable-standings']/div[1]/div[1]/div[2]/div[1]/table[1]/tbody[1]/tr[3]/td[2]/div[1]/span[2]
//div[#id='updatable-standings']/div[1]/div[1]/div[2]/div[1]/table[1]/tbody[1]/tr[4]/td[2]/div[1]/span[2]
I can create a incremental variable for {tr[3]} and call it $vTeamLoop$ and change my DOMXPath value in the Object Clone to be
//div[#id='updatable-standings']/div[1]/div[1]/div[2]/div[1]/table[1]/tbody[1]/tr[$vTeamLoop$]/td[2]/div[1]/span[2]
Ultimately, it is more steps than the Data/Table Extract command, but it is far less limited in scope.
Hope that helps.
enter code here

Spotfire Bookmarks issue

I have a dxp file published to Library (Server) having 5 dashboards.
All my filters are created using Document Properties for users to interact
with.
I did the below scenario:
Selected certain values from the Properties so that data gets filtered
in reports.
Did the same in all 5 pages
Created a bookmark
Went ahead and made some more changes to the report. Selected another
set of values/changed the time frame
Did the same ini all 5 pages
Created a bookmark.
Now when I close the Analysis and reopen it, the latest bookmark gets
applied to it by default. (I do not know if this is a feature).
When I click on the older bookmark, only first 2 pages reflect filter
values properly. Rest reflect the New one.
When I re-did this, the last 3 were showing properly. First 2 had proper
time range as well, but the product filters were wrong.
Does anything special need to be done for bookmarks?
Regards,
Subro
The latest book marks are getting applied by default because it's the state where you last saved the dxp. You can click on the first book mark, save the dxp, and this will be what the users see when they open it on a Web Player.
Additionally, You can allow the users to return to the last "view" of the analysis / where they left off if you change this setting:
Edit > Document Properties > Library (tab) > "Remember personalized view for each Web Player user"
It's hard to diagnosis the problem with the filters without seeing the dxp... but i suspect it is because of step 4, "Went ahead and made some more changes to the report". Depending on what you did, this would cause errors. Bookmarks aren't a snapshot of the memory...

SSRS Sub-Report only using default parameter to create dataset, even though parameter is successfully being passed from the main report

I have been working with SSRS for the last year and a half or so. Everything I know from it has been learned by trial and error and google. So hopefully I get my terminology correct, but forgive me if I say something incorrectly.
I am using Visual Studios 2015, connecting to SQL 2012 server. I'm creating an asp.net/VB web application to display SSRS reports on a local site. All of my reports up to this point have been a single report with no sub-report. If "sup-report data" was desired, I created a drill-through, using an Action, to navigate to a completely separate page. This has been working really well for all my reports, but now I would like to get a little fancier.
I have been trying to create a SSRS report that contains a sub-report. The main report contains summary information about batches of a particular product that has been run (blue and white portion of the table in the picture).
If a user wants to view more specific details about the batch, they can click on the expand/collapse button of the "Process Order" column, and a sub-report below the summary line will appear with more specific information about the batch (sub report is the light grey/dark grey table).
I configured the properties on the main report to pass the ProcessOrder value as a parameter on the sub-report and create a parameter on the sub report to accept this parameter.
You can tell that this parameter is being passed successfully because I have the respective parameter being passed and displayed just above the table (and it matches the number on the main table). As you can see from the picture, I also have the Process Order number displayed on the sub-report table itself, and this number is different than what is being passed to the report. It is showing a "1", which is the default value that I gave to the SQLDataSource control on my aspx page to build the dataset. I've tried not setting a "Default value" but then I get the following error:
“Data retrieval failed for the subreport, 'test_Sub_Report2', located at: [location on hard drive] Please check the log files for more information.”
Has anyone encountered this problem before, or can anyone give me an idea of a direction to go from here? I feel like I’m very close since I’m getting the parameter successfully passed to the sub-report, but the dataset is just not using that parameter to go get the data from SQL, and I’m not sure how to tell it to do so.
I can add more details and post more of the actual code, just let me know what you need and I will do my best to get it to you. I would have included more screenshots, but I don't have enough rep points to do so yet.
You need to go into the DataSet that populates the sub-report, and go to the Parameters tab, and map the ProcessOrder parameter of the dataset to the Variable that you pass the ProcessOrder parameter to from the main report.
I ended up figuring out the answer. I used the answer from #Lazy Coder on this question: SubReport is not working after adding parameter I was adding the parameters to the sub-report incorrectly. I did have them passed to the sub-report through the table on my main report, which was getting the parameters to the sub-report, but the sub-report was not using these values to create the data set. On my test_page.aspx.vb file I had to change my SubReportProcessing Event Handler. I needed to explicitly set the parameters values there. Since the time that I originally posted this question, I added another parameter to my stored procedure as well, subTotalTime, to correctly filter my results.
Public Sub SetSubDataSource(sender As Object, e As SubreportProcessingEventArgs)
Dim report = DirectCast(sender, LocalReport).DataSources(0)
Dim subProcessOrder = e.Parameters("subProcessOrder").Values(0)
Dim subTotalTime = e.Parameters("subTotalTime").Values(0)
SqlDataSource_PPMS_test_Sub_Page.SelectParameters(1).DefaultValue = subProcessOrder
SqlDataSource_PPMS_test_Sub_Page.SelectParameters(2).DefaultValue = subTotalTime
e.DataSources.Add(New ReportDataSource("DataSet2", SqlDataSource_PPMS_test_Sub_Page))
End Sub
SqlDataSource_PPMS_test_Sub_Page is the id of my SqlDataSource object on my aspx page.

MS Access report parameter value

How i can open a MS Access report without giving any parameter value? I do not want dialagoue box enter the parameter value, when i click on report button. I did not put any parameter value in any query and any form regarding to this report.
Thank you
Generally this means that your report has a field where its Control Source does not exist in the Report Record Source. Check the the parameter value being requested. It's quite possible that you just mis-keyed something in one of those two places..

ASP.Net Report Viewer - Same report multiple times with different parameter values

I'm currently working on an ASP.Net WebForms application that allows a user to select an item from a list, which ultimately results in a SSRS report being shown, using Report Viewer 2010 (in server mode). The report has been coded with a parameter #id to allow the report to display the correct data for the selected item.
The reports dataset can return multiple rows where some of the data is displayed in a summary area at the top (not in the header section) for example a textbox would have the expression =FIRST(Fields!Address.Value, "dsMain"). The data returned is denormalized so Address will always be the same value. Which is why using FIRST() works. And the rest of the data is shown in a Tablix with grouping applied etc.
But now I'm looking to change this so users can select multiple items and therefore effectively show the report multiple times, but shown in the same report viewer control. The main requirement is to batch print the reports, so showing it in one report view control is important to allow for one click printing of everything.
Now because I didn't design the report in the first place and because its fairly complex in its layout and the sql that is executed; the sql is geared towards running for one id and not a list of them. I'm looking for options to not have to rewrite the report or the sql.
Is it possible to give the report viewer the id parameter as a list and let the report viewer execute same report for each id passed? - I know report parameter can accept multiple values but this isn't the same since the report will unintelligently pass the first value to my stored procedure but not repeat the report for the other values. Perhaps there's a setting in the report designer that allows it to repeat if it is passed multiple values?
Can someone suggest something else to get this working? Or is my only option to extend the report and sql to accept multiple id's and effectively redesign the report?
Thanks any suggestions or help with this.
The answer is to use sub-reports.
Create a new report that takes a list of ids as a multi valued parameter.
Use that parameter as the dataset for a list control.
Have a subreport inside the list. Report inside the list is your original report.
You can then pass each element of your dataset(your list of parameters) as parameter to the your sub-report.
SSRS will repeat it as your want.

Resources