SSRS - Print Grouped value on each page - reporting-services

Made a report that displays a bunch of invoices based on date range and InvoiceNumber. User can get all invoices in the range or select individual invoices. Each invoice is displayed on a new page (grouped on invoicenumber with page break).
Problem I am having is I want the invoice number displayed on each invoice. Because one of the parameters for the report is the invoice number, I had to supply available values. I tried to get them from the main dataset, but I get an invalid report parameter dependancy errorsaying InvoiceNumber has a default value that depends on the report parameter 'invoiceNumber'.
So I created a second data set with just the invoicenumbers and that got rid of the error, but then I got an ambiguous field reference error on my InvoiceNumber field due to the 2 datasets with invoicenumber. I added first(fields!InvoiceNumber.Value, 'dataset1') but now it displays the same invoice number on each page (obviouxly because of the First().
So How do i get the invoice number for each invoice to display on each page?

A good way to handle this type of scenario is to take advantage of the scope that groups provide.
Create a table with one cell.
Set the cell to be grouped by invoice number.
Insert a rectangle into the cell.
Make the cell fill the entire page and place everything else inside it.
Now any tables or textboxes on the page are naturally scoped to the invoice for each page without having to worry about individual filters. In other words, =First(Fields!InvoiceNumber.Value, "dataset1") will give the correct invoice number on each page.

Related

In SSRS is there a way to use newspaper columns and still have a new page per group?

My dataset is grouped by customer then itemtype and then the details are the itemcodes and descriptions.
I am using the Newspaper column setting so that the list of items continues on to the right side of the page instead of moving on to the next page.
My problem is that I want to start a brand new page for each customer. Since SSRS treats each column as a page break, I get a page where one column belongs to one customer and the next column belongs to another.
I have tried the page break setting on the different group and the tablix properties to try and force a double page break to happen with no luck. I have also tried to drop a rectangle into the table and use the page break setting there, also no luck.
Any help would be appreciated.
Thanks,
Jessica
I've not used the multi-column layout so I can;t directly comment on that but what you could potentially do is use a subreport.
If the following does not help, post a sample of your data and your current report design and I'll post a full answer.
In short, create a report that only handles a single customer, so it will need to have a parameter passed into it that identifies each customer such as a CustomerID.
Once you have the report working with a single customer, create another report.
On this report create a dataset that just contains a list of customers you want to report on (so a list of CustomerID's for example).
Add a table to the report and remove all but a single "cell". Expand this cell to be roughly the width of your subreport (it does not have to be exact).
Set the dataset property of this table to the dataset containing your list of customers.
In the remaning cell, right-click then Insert >> Subreport. This will fill the cell with a subreport control. Right-click the subreport control and set the subreport to be the sub-report we created earlier that handles 1 customer. In the parameters, set the CustomerID parameter to the field from your customer list dataset.
Finally, right-click the 'details' rowgroup and set page breaks to 'between each instance'.
This will generate one subreport per customer and put a page break between each.

[SSRS][SharePoint] How to avoid display the elements when counting on a group by tablix?

New to SSRS, we asked me to create a simple report on SSRS, linked to a Sharepoint List.
The Report consists of a tablix with two columns: Client and the number of orders they passed.
The first column is only containing the sharepoint field "Client Name", and the report generate automatically a list of Clients based on the content of the Sharepoint List. The Column is also used as a group by to the Tablix, to group the results by Client Name.
My second column is an expression :
=Count(Fields!ID.Value, "Client")
The column is working nearly accordingly to my willing : the report displays the number of orders by client in the list, but... When a client has more than one order, the count is displayed the same number of times.
How can i prevent that? I tried a Running Value solution, or only count.. But if the results are not the right one, the same problem is occuring : The report tablix have as much rows than elements list.
Picture for helping, because my english is far for perfect.
Image of the multiples rows
You can set client column in group expression in Details section. Check below screen shot, It will help you.

How to show current row grouping value in multi column rdlc report

I am creating a three column rdlc report where I need to show current running value of a field on which rows are grouped. This running value I need to display in header of report. So whenever the field value changes it must reflect in the header.
https://www.dropbox.com/s/sazx2o31z6xui0u/Capture.PNG?dl=0
https://www.dropbox.com/s/m8ekpffhnf7veiq/Capture1.PNG?dl=0
In above two images notice that as the type of therapy changed for clients, the name of current therapy is changed in the header. These all clients are grouped on therapy name.
This is the template what I got. I need to create rdlc reports like this but I dont know how to access current row grouping value in report header. Though I have created three column layout but still not able to access this grouping value in header.
Any solution?

SSRS Report - Subgroup Totals

I have an SSRS report that is currently pulling a single dataset. This dataset contains records of inventory we have. Each record is a separate asset.
I want my report to group by a certain field, and then subgroup by certain criteria that are determined with a couple different fields. Basically there is one parent group, and three adjacent subgroups. My grouping functionality is working correctly, however I am finding it difficult to add totals to each of the adjacent subgroups. When I add a total, it is totaling the specific field within the scope of the entire dataset, instead of limiting the total to just that subgroup.
How can I add totals per field within subgroup?
EDIT: Added sample data and explanation:
You can ignore the function code field, that is what I am using to group on the parent group.
asset number,description,first year,acquisition cost,function code
190,random asset,2008,5000,100
193,random asset45,2008,56000,100
197,random asset26,2014,3000,100
191,random asset27,2014,7000,100
192,random asset36,2013,15000,100
I can't seem to attach screenshots, so here goes..
In the report you can see three subgroups; Assets, AssetAdditions, AssetDeletions. In the tablix, you can see where these groups are positioned. You can also see a row directly beneath the group that is supposed to total the subgroup at the end. However, for some reason the scope is only taking into account the entire dataset. I have tried to modify the expression in the Sum function [Sum(acq_cost), "Assets"], adding in the scope parameter but then it does not allow me to even run the report. It yells at me saying that "Assets" is an invalid scope.
The easiest way I have done this in 2012 VS is to have it return as part of the data set and have it sum up the value.
For instance if you have a quantity for inventory, and you have a subset where you only want the total quantity for that set, you add another column to your dataset called TotalSetQuantity and the subtotal field will have the expression =SUM(Fields!TotalSetQuantity.Value) rather than =SUM(Fields!Quantity.Value).
You can try iif statements within your report like =sum(iif(Fields!ColA.Value=1,Fields!Quantity.Value,0) but I had some troubles getting that to work.
Hope that helps, I ran into this issue this past week and the first option worked like a charm for me.

SSRS 2008 R2 - Repeat textbox/table on all pages

I have a report in SSRS which basically contains a table of dates and blank columns for users to print and then manually write data into.
The report has a #FromDate and a #ToDate parameter as well as a #Location parameter.
The #FromDate and #ToDate parameters are used to populate a table with dates and is grouped per week (Mon to Sun) with a few extra columns that are blank for manually writing data. Above this table there is a textbox containing employee name.
What I am trying to do is to get the employee name to change for every page according to the #Location parameter. So if a location has 10 employees I need 10 pages with the different employees names at the top so 1 page per employee. The main table with the dates should repeat but the data will be exact on each page, basically the only thing that will be changing is the employee name at the top of the report.
Currently I have tried creating a table with just a header and adding the employeename field into the header but it only returns the 1st employee within the dataset and only returns 1 page when there should be 26.
What would be the best way to achieve this? It seems simple enough in theory but can't get it to do what I need.
A rough outline:
Create a subreport that shows your calendar. It will take the two date parameters.
Create a parent report.
The dataset in the parent should return a list of Employees for the selected location.
Create a table for that dataset, and put two detail rows in that table. The first will just have Employee name.
Test at this point and see that you just get a list of employees.
Place your subreport in the second detail row, and set the parameters to be handed through.
Change the properties of the detail group to have a page break between instances.
If you let us know what isn't working for you, we can give more specific advice.