SSRS: How to Page Break between Row Grouping on uniqueidentifier? - ssrs-2008

I am developing an SSRS 2008R2 report and I have a tablix. Within this tablix there is a Row group on a uniqueidentifier field. This row grouping works correctly by showing one row per uniqueidentifier. But now I want it to page break. However, when I try to page break on this group it gives me an error since this row group is based on an uniqueidentifier field vs. other data type.

Related

Set command parameter of a subreport equal to a main report parameter

In my main report, I insert a number for column ID into the selection criteria. It grabs all relevant information where the ID matches.
Now I have a subreport that uses a COMMAND with a SQL Query. Inside, there is a WHERE clause where ID = {?PM-ID}.
How can I configure my SQL Query to pull in the specific ID value I entered into the selection Criteria of the main Report?
Try this, right click on Subreport > Change Sub reports Links
In that window you have to match the ID with the respective column in your sql query.

Crystal Reports printing multiple detail lines

In Crystal reports, I have a detail line that includes fields from multiple TSQL tables. Detail lines print twice because multiple records are returned from one of the tables. I want only the first record returned for each of the tables with fields in the detail section.
I have tried to use field formatting to suppress after RecordNumber>1 but this only suppresses the field. I have Select Distinct records selected in database options.
I am not seeing a way to do this with Crystal options or formatting. Am I wrong? The only option seems to be a TSQL command to pre-process the table.
A cheap work-around could be to set up a suppressed running total variable that resets on group change, and then, suppress the detail section if the variable RTotal is greater than 1.
However, you're likely running into issues because the tables have not been joined properly. If you don't correctly identify the relationship between SQL tables using their respective ID columns, Crystal Reports will cross join those tables--giving you duplicate rows.
You can check the Table Link. Then on the Fields Right click and Format Field. Click on Suppress Duplicate if you want to see Unique value.
Other way would be creating a group from the detail value and suppressing Details.

Crystal Reports: Need to use a summary field as part of the Record Selection Formula

I have a fairly basic report that needs to show events with a total spend of >$200K OR event attendance >60ppl. The attendance portion is no problem, as it's a simple text field in the table. The expense spend is a field that has to be summed before it can be used, coming from a separate table with multiple entries per event. I have no problem doing this in a summary field dropped in the eventID header or even using a subreport and passing a shared variable to the main report. The problem I run into is that I cannot access this summary field in the report record selection to extract the either or records. Any idea how I can do this accurately?
Create a sql-expression field for total spending:
//{%total_spending}
(
SELECT sum(Amount)
FROM Meeting_Expenses
WHERE MeetingId=Meeting.Id
)
Use fields in record-selection formula:
{Meeting.actual_attendance}>60
AND {%total_spending}>200000

Details rows inside tablix SSRS Reporting service, Records with Details rows under it

Now it is a report with a tablix in which the records are like every row has some details rows under it. and the details row can have one or more records based on the main tablix rows
To elucidate the problem, plz have a look
Did some search here and there, but not able to figure out how to accomplish this.
Sub-reports inside the tablix cell, but how will it keep the track of the current row
One thing more : Do I need to create two separate datasets for this and bind accordingly or write query as a single dataset and do some grouping ?
any ideas !
P.S: SSRS r2 environment, native mode reports for web application
You can achieve this with one Dataset and one Tablix.
The Dataset will have all the columns in the report, with multiple rows for each BIL value.
The Tablix will have four rows and one group based on BIL.
The first row will be the Tablix header row, with the main column header details.
The next two rows will be group header rows. The first row will contain the group details, BIL, No Bayar, etc. The second row will contain the detail row header details.
The last row will be the detail row which will contain the COL1 and COL2 detail values.
You will see something like this (you'll need to fill in the TextBox details as appropriate):
create report with subreport will solve your problem
you can create one report with one dataset with (BIL NoB NoW Est TotalXYZ) columns.
Now link that subreport with the BIL
Now link subreport with main report the BIL (FK)
Hope this help

SSRS no data in report

I have a single tablix on the SSRS report which fetches data from a stored procedure.
I am trying to show a meesage to the User when no data is present say, "** There is no data for this report*". I can do this easily by specifying this message in the **NoRowsMessage property of the tablix. But I want to show the headers of the tablix along with this message.
If I don't set the NoRowsMessage property, I get the headers but no message, but if I do, I get the message but no headers.
I need some help with this.
Note: I am using SSRS 2008.
Edit:
I can also put up a textbox with the relevant text message below the tablix and set it visible only if the tablix contains no rows. But I am not able to figure out as to how do I find out from the Visibility expression of the textbox whether the tablix contains any rows or not.
A tablix object is related to the underlying dataset, so if there's no data, there's no table in the output.
Other than using the NowRowsMessage property, the only other way I can think of to enforce this would be to ensure your query returns an empty value placeholder when there are now rows returned. This way you would have, in essence, a single data row.
You could then try and add a conditional expression on the table (i.e. on the Visibility property of the details row) to prevent any rows containing your placeholder from showing up.
So in your query you could have:
IF (##ROWCOUNT= 0)
BEGIN
SELECT
'[IAMEMPTY]' as [Col1]
,'[IAMEMPTY]' as [Col2]
,'[IAMEMPTY]' as [Col3]
END
And then in the Visibility property of your table's detail row:
=Iif(Fields!Col1.Value = "[IAMEMPTY]",True,False)
EDIT: Alternatively, to check if the DataSet is empty in SSRS and show a rectangle containing your message/headers (as mentioned in TooSik's comment), you could set up a rectangle with this in the Visibility expression:
=Iif(Rownumber("Dataset_Name")=0, False,True)