Reporting Services Parameters Not In Correct Order
Jan 17, 2007
Hi,
SQL Server Reporting Services 2005.
I have 13 parameters, ordered correctly within the Report Parameter screen.
When displayed in the Preview tab they are all ordered correctly, but when viewed in the application the first 4 are at the top but ordered incorrectly. The remainder are ordered correctly.
I have tried reordering, saving, deploying, viewing and then doing the same but in the correct order without any success.
Please can someone suggest how I can get the parameters to appear in the correct order within the application?
Hi, We are in the process of replacing our Microsoft Access(.adp)/SQL2000 based reporting tool to ReportingServices/SQL2000 one. Our development team would be in charge of converting the existing Access based reports to Reporting Service format and and any new reports thereafter. Keeping that in mind which of the existing version(Standard, Enterprise, Developer) of Reporting Services would best suit our environment? The final picture would be something like all the reports will be residing on the Reporting server and it will be accessed by clients with the help of a custom reporting application(made in .net) that calls these reports based on user level permissions to these reports. Will this be possible by using a Standard edition of RS?
I have been using this query inside the package that I created to load data into cube. From this cube I am fetching records for my cascaded parameterized report. The issue here is one of the employee is showing under different team manager and site manager. This team manager has left the company and now the employee is back to its previous team manager. here is the code:
Truncate table CallCenterEmployee.dbo.tblCube_Staff; GO Insert Into CallCenterEmployee.dbo.tblCube_Staff SELECT Â Â dbo.tblStaff.Emp_N , CONVERT(varchar, dbo.tblStaff.Emp_N) + CONVERT(varchar, tblDate.ID) AS SurrogateKey , dbo.tblStaff.StaffId , dbo.tblStaff.First_M , dbo.tblStaff.Last_M
In the report, I am using Format(field,"dd-MMM-yyyy"), but somehow the result comes out recognizing my month as day and my day as month. How do I fix this?
ie. my report date is 11/06/2015, the result shows 11-Jun-2015 instead of 06-Nov-2015.
I get this error : [rsRuntimeErrorInExpression] The Value expression for the textrun ‘Textbox34.Paragraphs[0].TextRuns[0]’ contains an error: Input string was not in a correct format.
When i put this Expression in new field that i called C:
Parameter 1 = Date Period ex. 20081102 Parameter 2 = Start Date ex. 11/02/2008 Parameter 3 = End Date ex. 12/02/2008 Parameter 4 = Description ex. Period 20081102
For Parameter 2 and 3 it will have available values in a Date Range ex. for Period 20081102 it will have a date range for Parameter 2 = from 10/02/2008 - 12/02/2008 for Parameter 3 it will have from 11/02/2008 - 12/02/2008
The process flow goes like this:
1. I'll select value from parameter 1 2. Automatically parameter 2,3 and 4 should display corresponding values. 3. It works well on first try 4. if i'll try selecting another value for Parameter 1, 5. As expected it should display again the corresponding values for the 3 parameters but Parameter 2 is retaining the value for the previous Parameter.
Why is it happening? Does it have something to do with the date range? How does the sequencing for RS happens? This scenario happens when date ranges for each Date Period have common values.
I'm trying to create reports in RS2005 using AS2000 as my data source. I understand that if I use RS2005 on AS2000, I wont be able to enjoy the OLAP based parameters as in using AS2005. Does anyone know an easy way to easily use Parameters in RS2005 while still using AS2000?
My requirement for the parameter is multivalue parameter with a text box. for example when user enters aa15 it need to include product aa15. when the user enters aa15, aa16, zz15 than it needs to include all the three products. the last case is when the user enters AA** than i need to inclued all the products start with AA. when i use default multivalue parameter with data source analytical services than i am getting a drop down box. I dont want that. I need a text box where user can enter the value. 1. In sql we have a like key word to query . for example select * from product where product like "AA%". what is equavalent mdx query to get such results ? 2.How to impliment the multivalue parameters without using dropdown box?
I've run into something that really isn't a problem - I corrected the issue with a CTE solution - but, it did raise a question.
I was developing a report and, when I previewed it, I got an error that a parameter was dependent upon the value of another parameter - no forward dependencies allowed.
But, another parameter that used the exact same SQL code - just different fields - works fine.
So, here's the list of parameters;
CurDate is derived by; DECLARE @CurDate AS date SET @CurDate = ( SELECT MAX(Load_Date) FROM Census_Rpt_Final )
The parameter that gives me the problem is PCPName. It is a list of names derived by the following;
SELECT DISTINCT UPPER(PCP_Name) AS [PCP Name] FROM Census_Rpt_Final WHERE Load_Date = @CurDate ORDER BY [PCP Name];
So, OK, fine, I can understand the error. But, MemberName is derived by;
SELECT DISTINCT RTRIM(UPPER(Member_LName)) + ', ' + RTRIM(UPPER(Member_Fname)) AS [Member Name] FROM Census_Rpt_Final WHERE Load_Date = @CurDate ORDER BY [Member Name];
And, it works fine. No Foward Dependency problem at all.
So, my question becomes one of precedence. I see, in the list of parameters, that PCPName precedes CurDate which precedes MemberName. Is the problem because, when it hits PCPName, CurDate has yet to be defined, but when it hits MemberName, CurDate has been defined?
Is SSRS one-pass compiler or multi-pass? My guess is that it's a one-pass, because of the error I'm getting. As I said, I've corrected the problem using;
WITH Date_of_Most_Recent_Census AS ( SELECT MAX(Load_Date) AS [CurDate]
[Code] ....
Removing the parameter reference from the code, but it made me curious as to why one worked and the other didn't.
Any body plese tell me How to set the Parameters at the time or report design and how to use that parameter to call report from web application.Suppose i want to display report depend on Prodid(field in table). And Suppose i want to display report between dates.
I have ony query in my dataset at design time with parameters. I am getting the correct data when i pass parameters. Supose,i dont pass any parameters,I need Total data. Now how can i write other query in my Data set. Regards
We are implementing one SQL Server 2005 Reporting services for my client. I want to know, is there any possibilty to keep track the parameters at SQL Reporting sever side, which i am sending it from my UI.
I have created a report that sharing  two datasets  for displaying the data. This datasets are using Stored procedure for execution of the report.One of the stored procedure using Order by clause and returning the data.But on running the report , the report viewer displays the unsorted data of the filed. But if we run the stored procedure directly from the sql server , it will return the sorted data.
I am trying to figure how to programmatically pass parameters to the report in SQL Reporting Services using web service API and then send this report to the printer. I found code in C# on how to print and it does work very well. I am hoping to add report parameters to this module. Any ideas, samples or help would really be appreciated.
here is the code for printing
using System; using System.Drawing; using System.Drawing.Imaging; using System.Drawing.Printing; using System.IO; using System.Web.Services.Protocols; using PrintReport.reportserver; using System.Runtime.InteropServices; // For Marshal.Copy
namespace PrintReport { /// <summary> /// A simple console application that demonstrates one way to /// print Reporting Services reports to a printer. /// </summary> class app { /// <summary> /// The main entry point for the application. /// </summary> [STAThread] static void Main(string[] args) { PrintExample pe = new PrintExample(); // The name of the printer should be added here; // this could be a local or network printer. pe.PrintReport(@"\jacc-fs120S2500 PCL IT"); } }
class PrintExample { ReportingService rs; private byte[][] m_renderedReport; private Graphics.EnumerateMetafileProc m_delegate = null; private MemoryStream m_currentPageStream; private Metafile m_metafile = null; int m_numberOfPages; private int m_currentPrintingPage; private int m_lastPrintingPage;
public PrintExample() { // Create proxy object and authenticate Console.WriteLine("Authenticating to the Web service..."); rs = new ReportingService(); rs.Credentials = System.Net.CredentialCache.DefaultCredentials; }
// Build device info based on the start page deviceInfo = String.Format(@"<DeviceInfo><OutputFormat>{0}</OutputFormat></DeviceInfo>", "emf");
//Exectute the report and get page count. try { // Renders the first page of the report and returns streamIDs for // subsequent pages firstPage = rs.Render( reportPath, format, null, deviceInfo, null, null, null, out encoding, out mimeType, out reportHistoryParameters, out warnings, out streamIDs);
// The total number of pages of the report is 1 + the streamIDs m_numberOfPages = streamIDs.Length + 1; pages = new Byte[m_numberOfPages][];
// The first page was already rendered pages[0] = firstPage;
for (int pageIndex = 1; pageIndex < m_numberOfPages; pageIndex++) { // Build device info based on start page deviceInfo = String.Format(@"<DeviceInfo><OutputFormat>{0}</OutputFormat><StartPage>{1}</StartPage></DeviceInfo>", "emf", pageIndex+1); pages[pageIndex] = rs.Render( reportPath, format, null, deviceInfo, null, null, null, out encoding, out mimeType, out reportHistoryParameters, out warnings, out streamIDs); } }
private void pd_PrintPage(object sender, PrintPageEventArgs ev) { ev.HasMorePages = false; if (m_currentPrintingPage <= m_lastPrintingPage && MoveToPage(m_currentPrintingPage)) { // Draw the page ReportDrawPage(ev.Graphics); // If the next page is less than or equal to the last page, // print another page. if (++m_currentPrintingPage <= m_lastPrintingPage) ev.HasMorePages = true; } }
// Method to draw the current emf memory stream private void ReportDrawPage(Graphics g) { if(null == m_currentPageStream || 0 == m_currentPageStream.Length || null ==m_metafile) return; lock(this) { // Set the metafile delegate. int width = m_metafile.Width; int height= m_metafile.Height; m_delegate = new Graphics.EnumerateMetafileProc(MetafileCallback); // Draw in the rectangle Point destPoint = new Point(0, 0); g.EnumerateMetafile(m_metafile,destPoint , m_delegate); // Clean up m_delegate = null; } }
private bool MoveToPage(Int32 page) { // Check to make sure that the current page exists in // the array list if(null == this.RenderedReport[m_currentPrintingPage-1]) return false; // Set current page stream equal to the rendered page m_currentPageStream = new MemoryStream(this.RenderedReport[m_currentPrintingPage-1]); // Set its postion to start. m_currentPageStream.Position = 0; // Initialize the metafile if(null != m_metafile) { m_metafile.Dispose(); m_metafile = null; } // Load the metafile image for this page m_metafile = new Metafile((Stream)m_currentPageStream); return true; }
private bool MetafileCallback( EmfPlusRecordType recordType, int flags, int dataSize, IntPtr data, PlayRecordCallback callbackData) { byte[] dataArray = null; // Dance around unmanaged code. if (data != IntPtr.Zero) { // Copy the unmanaged record to a managed byte buffer // that can be used by PlayRecord. dataArray = new byte[dataSize]; Marshal.Copy(data, dataArray, 0, dataSize); } // play the record. m_metafile.PlayRecord(recordType, flags, dataSize, dataArray);
return true; }
public byte[][] RenderedReport { get { return m_renderedReport; } set { m_renderedReport = value; } } } }
I'm just setting up Reporting Services for our company and it's a great product, no doubt about it. However, I've come across a problem I can't solve and I wonder if any of you can help.
I've produced a sales report and I want my users to be able to enter a list of sales periods to include on the report. For example, the user might want to view the report for periods 10,11,13,14 and 17 and exclude periods 12,15 and 16. Obviously, the underlying query will probably involve an IN() clause but I'm struggling to think of a way that the user might be able to enter these parameters.
The most obvious way might be by typing in a comma separated string, but I don't know how to then put those values into the query.
Not sure if I will be able to get the answer I need on this forum but hopefully I will!
We have a previous report that uses the code:
AND T1."Decision_Date" BETWEEN '2005-07-01 00:00:00.000' AND '2006-06-30 00:00:00.000' AND T1."Decision_Type_Description"
With this the report was run with the "static" dates, the new report (in MS reporting services) requires that the user be able to enter in the start date range and the end date range.
I have come up with something like: (T1."Decision_Date" = @Start_Year) AND (T1."Decision_Date" = @End_Year)
I am creating a drill through that will go out and find the correctreport out of 27 that equal my 2 parameters NAME_ID and DETAIL_ID.Does anyone out there have any ideas for me? I can make it conect to 1report. I do not know how to make it search for the correct report
Hi all. I can pass parameters from my front end(C#.net) to my reports(in Business Intelligence Project). I want the reverse of it. I want to pass parameter from my report to my windows application project.
i am trying to generate a report based on 3 parameters age, location, ethnciity
every thing works fine in data and layout tab, when i run the preview tab, it give me the option to input paramaters and then when i hit veiw report, it shows processing report.... (indefinite) time.
i tried executing the query in data tab, it takes less than a sec.
When creating a Reporting Services report and declaring local variables as part of your query in a dataset there is sometimes a problem. When you hit run in the Data section and the €œDefine Query Parameters€? box pops up, all the variables are not there. Sometimes when you go to properties (€¦) of that dataset the parameters are gone. Is this a bug? This is happening both in RS2000 and 2005. Thanks
I'm trying to create report with datasource as a cube. I'm able to connect to datasource to pull data with a single parameter. But, I'm unable to succeed in the following scenario: I have a dimension "Period" as Paremeter. The Period dimension has a hierarchy as year- quarter- month. So, I would like to create a drilldown parameter for period as year - quarter - month.
I have an asp.net app that is calling a reporting service url. on that url I pass two parameters as query strings. In the Report I defined the query string parameters in the Report Parameters. I then want these two parameters to be passed to the stored procedure in the report. How can I make this happen? The parameters seem to get to the Report but I can't seem to get them mapped to the stored proc. In the data set I defined the stored procs parameters and mapped them to the corresponding Report Parameters but still no go.
I'm assuming there's something fundamental I'm missing here about passing parameters to reporting services.
1 report but different departments run this report with different parameters. Atm I have copied this report for the 4 departments and adjusted the default parameters accordingly (highly inefficient). Isn't there a way to just have one report and that I can adjust the default parameters in code based on user or group ?
Can we have more than 2 parameters displayed in a single row on report (when browsed using web browser). The parameters BY DEFAULT - seems to be lined up in an array of 2 columns, and N rows - which gets frustrating because so much of space is left blank (gray space just left of <View Report> button and to the right of parameters line-up).
How can we have more than 2 parameters displayed in one single row ? As this will help the actual report content to take up more space on the screen than the parametes taking up almost 1/2 of the screen.
I have a Start Date and End Date parameter in my SSRS report. Â The results are off by 1 day. Â For example if I enter 4/2/2015 and 4/20/2015 it will return a few results from 4/1/2015 to 4/19/2015.
Member [Measures].[Measure3] As [Measures].[Value Rent Period Receipts] Member [Measures].[Measure4] As (([Measures].[Value Rent Period Receipts]*-1)/[Measures].[Value Rent Period Debit])
There are two parameters; the value of lag passed to the LastPeriods function, and tenancy types passed in the where clause
I have a third parameter I would like to use called FirstDate and this I would like to pass to the LastPeriods function as the second argument
FirstDate is a value from my Time dimension, something like [Time].[Fiscal Time].[Sep. 15]
When editing the query to: -
Member [Measures].[Measure3] As [Measures].[Value Rent Period Receipts] Member [Measures].[Measure4] As (([Measures].[Value Rent Period Receipts]*-1)/[Measures].[Value Rent Period Debit]) Select {[Measures].[Measure1] ,[Measures].[Measure2]
[Code] ....
The code errors. I have tried all sorts of formats such as  LastPeriods(@LagMonths,[@FirstDate]) and LastPeriods(@LagMonths,[Time].[Fiscal Time].[@FirstDate]), but nothing works
I am using SSRS 2008 with a SQL Server 2008 R2. It's been many years since i have used SSRS but i have used this and some other reporting tools in the past.I have created a cascading parameters where upon selecting 'ALL' or one of the other values in parameter A , the other values gets displayed in paramter B which is working in the Report builder. i am handling this in the dataset  query where i handle that through a case statement ( something like WHERE 1 = (CASE WHEN @Prm_A = 'ALL' THEN 1 END) OR  column_X= ( CASE WHEN  @Prm_A <>'ALL' THEN   @Prm_A END ).Also tried WHERE @Prm_A = 'ALL' OR column_X=  @Prm_A
This seems to work in the report builder on my machine or when i run it by editing the report on the web, but when i publish it on the report server, i don't see that behavior, meaning it does not cascade. I also tried to simplify it by making the query simple(WHERE column_X= Â @Prm_A ), Â but it still would not cascade on the web.Â
Is there any way to pass a dataset parameter in RS 2000? Basicly, I have some data in my web page and want to print it. But I don't want to create another page to pass parameters to RS. I want to print the page as it is with the data already in the page, so if there is a way I can send the data through a dataset to the report directly, would be great. Is there?
The census is from an outside group and what I do is massage it for our internal databases and reports to our care managers.
The report starts out by returning only those entries that were received in the last report from the outside vendor and I filter each of the parameters by using a WITH statement and an INNER JOIN, as follows;
WITH Date_of_Most_Recent_Census AS ( SELECT MAX(Load_Date) AS [CurDate] FROM Census_Rpt_Final )
[Code] ...
The default is for all parameters to start out with all possible values for the current load date. But, I need to be able to filter the available - and default - values for each parameter based upon the selection of the other parameters.
So, the Load Date is built in by use of the CTE that is a part of all the parameters. But, I need the report to allow the end user to select from each of the others, but limiting what is avaliable for selection based upon the settings of the other parameters.
For example, the second parameter is the Report Type. It can be either "Hospital," or "SNF." But, not all Clinics, Care Managers or PCPs may have an entry in both types. So, if the user selects, say, "Hospital," all the parameters would alter their available and default values such that they only include options where the census shows they are a "Hospital" entry.But, not all Clinics in the most recent census may have both report types. So, if the end user selects a particular clinic, it would also recalculate the available and default values for Report Type, as well as those beneath it on the list. And, likewise for the remainder of the parameters.
My initial thought was to add WHERE statements to the datasets controlling each parameter, but SSRS keeps asking me to define the parameters when I click out of the dataset's properties. Now, I know that SSRS is a single pass process - and, I'll cross the bridge on adjusting parameters defined earlier in the list when I come to it - but I thought that parameters lower in the list would update, since they'd have their values defined.For instance, the Clinic parameter is after Report Type, so the code I used to set up Clinic was;
WITH Date_of_Most_Recent_Census AS ( SELECT MAX(Load_Date) AS [CurDate] FROM Census_Rpt_Final ) SELECT DISTINCT
[code]....
But, this asks me to define @ReportType, even though it precedes Clinic on the parameter list.