Every day there are little things that we find annoying with the
programs we use. Sometimes we just can't quite do what we want or
there may just be room for improvement. We could write books about it,
like Annoyances.org, but we thought this would be more constructive.
Here is what we would like Microsoft to change within SQL Server
Reporting Services.
-
ASP.NET 2 master page style report templates
We, like most of you, use letterheads and standard document
templates to ensure that every document that leaves the company is
the same. So why should this be any different with your reports?
Reporting Services does not have this functionality, which causes
a few big problems:
-
You have to copy and paste your company logo into every single
header of your existing and new reTest data source connection
-
The subscription needs an extra Name field
Microsoft SQL Reporting Services suggests all this into every
report, it is hard to make sure that everything is consistently
aligned and sized for all reports; the designer is very flexible so
it is easy to get this wrong.
Figure: Reports should copy the concept of ASP.NET 2.0 master
pages so that you can have a template master that all reports use
-
Report output CSS for specific report format
With web pages you define multiple .css to define styles for
different output devices. E.g. Screen.css, Print.css and
Mobile.css. So when someone prints the page it will say use a much
smaller font.
Is there a way this can happen in Reporting Services reports
– like when they choose to export to Pdf it formats with a
smaller font. Eg. Screen.css, Pdf.css, Excel.css, Mobile.css.
-
Add option to inherit a template (aka Master Page)
Like Master Pages in .NET 2.0, reports should be able to inherit
from a master report. When a report is added inheriting a Master
Report, it can automatically have standard header & footer.
-
-
Figure: When adding a new item in VS.NET 2005, you may choose a
master page to inherit from
-
Browser Integration for Editing Reports
Although perhaps rather difficult, when viewing a report from
ReportManager I want to be able to click a button (preferably like
the one in IE for editing pages using FrontPage) and the Report
Definition File is automatically downloaded and then opened in
Visual Studio (providing the RS client is installed).
This is already possible for editing pages directly in Frontpage
via a button in the web browser. To see how to set this up, see
our
rule on Rules to Better Websites - Development
.
-
-
Figure: Quickly editing a webpage using the browser integration
for Frontpage. Can SQL Reporting Services developers be offered
the same functionality?
In this way all employees (with sufficient privilege) can
conveniently make changes to the report when needed. To see why we
think users will be able to efficiently change web documents see
our
rules to better websites
A possible solution would be to have the report server append a
meta tag to the output html source. A browser plugin would then
detect the meta tag and allow editing of the appropriate report.
-
Query Strings
When a report is viewed either directly from the ReportServer or
via the ReportManager the querystring for the report including the
parameter values will automatically be updated after the "Preview
Report" button has been pressed.
In this way, a report with the given parameters can be easily
bookmarked or passed on using only the address in the address bar.
-
-
Figure: This report has an incomplete query string - when you
view a report the query string should automatically get
re-generated
For example, since I have used non-default parameter values, the
query string will read:
http://localhost/reportserver?%2fSSW+Exchange+Reporter%2fEmailSentItemByDate&rs:Command=Render
&DateStart=1/1/2004&DateEnd=31/1/2004
This could be an option for either the report (specified at design
time) or for the entire report server (specified at install time /
via server config files) so that they can be turned on or off (for
those with issues with privacy). See why we think query strings
are important on our
rules to better websites
It is true that if there are a large number of parameters the
query string method may not work. All software has limitations -
just put a warning messagebox when you turn it on.
-
Syntax Checker for Expression fields
-
* Fixed by Microsoft in Reporting Services 2005 *
After entering an expression into a field there should be a button
to verify the syntax within that expression. At the moment you
have to run the page to see the error. It is such a pain.
Figure below shows the expression box. Please add a button "Check
Syntax".
-
The Task List should be more interactive, add filtering and auto
shortcuts
When you use the task list to manage your SQL Reporting Services
issues (such as those generated during the import from Access) we
would like to be able to:
-
click each warning and have it take us to the place in the
report design (or at least open the relevant report).
-
As issues are resolved they are automatically removed from the
task list
-
Filter on the current file only, so that we can see only the
warnings for the report that we're working on. (If turned on).
This is the same functionality provided for coding in Visual
Studio, but doesn't work here.
-
Please add a variable Global!ExecutionTimeTaken
-
* Fixed by Microsoft in Reporting Services 2005 *
NOTE:
You can do this using an expression. See our
rule on Rules to Better Reporting Services
.
We need an easy way to see how long a report takes to execute.
Often when you add controls and grouping to a complicated page you
want a way to test the performance impact of these changes.
-
-
Figure: It is useful to show the execution time along with other
information at the bottom of your report
-
Intellisense for Expression fields
-
* Fixed by Microsoft in Reporting Services 2005 *
Use Intellisense inside expression fields to pre-empt what operation
we want to perform. Because there is still a huge number of methods
available other than what's in the pre-defined expressions panel
this would be convenient. For example using controls inside another
namespace such as System.String or a custom code function denoted
with the Code.<Function> operations.
-
Report Parameter Control - Date Pickers and Auto buttons
There is no control over the parameter input bar on the reports
viewed through the browser other than type validation and drop down
lists. We would like to see more customisation of these controls,
such as:
- Next Month / Quarter / Year
- Previous Month / Quarter / Year
We like
Peter Blum's
date picker control.
-
-
]Figure: We would like to see better date navigation controls
(like these) in Reporting Services
Besides, it would be great to have a DateRangePicker control.
Instead of picking the start date and end date in two separate
controls, we can pick the start date and end date easily in the same
control.
-
- Figure: DateRangePicker
We would also like to have such controls in
ASP.NET
.
-
The initial release of Reporting Services 2005 comes with a
"Select All" option for multi-valued parameter lists. With SP1
this has been removed because, according to Microsoft, "the
option affects performance when used with a multidimensional
data source". That's all well and good, but what if my parameter
list only has 5 or 10 values? The solution is to give the user
an option (in the form of a checkbox in the parameter
properties) to include a "Select All" option. There is a
workaround
which involves modifying your SQL query, but this is quite
tedious.
UPDATE: This was fixed by Microsoft in Reporting Services 2005
Service Pack 2 as per Brian Welcker's blog:
http://blogs.msdn.com/bwelcker/archive/2006/08/14/700189.aspx
-
-
Figure: Microsoft added and then removed the "Select All" option
from multi-valued parameter lists, but we think it's more
flexible to be given the option to show/hide this property
-
I believe that programs that have a lot of components should
have a diagnostics system. (e.g. Start | SQL Server 2000 |
Reporting Services | Diagnostics). For example, it should at
least check that the page and system is working rather than
giving a security error when you actually attempt to run a page.
For example, we installed a Yukon Beta, with a Whidbey Beta, and
the IIS settings were reconfigured but there was no indication
of a problem except by running an actual report. But having
fixed that problem, we cant be sure that it wont break on some
other functionality - a diagnostics system would tell us nothing
is wrong.
In our products (for example
SSW Code Auditor
) we implement a "Run Unit Tests" item on the help menu that will
open NUnit and run a number of tests to verify the configuration
settings are functioning.
-
User Interface: Please give me a visual indication of which tabs
are not on their defaults
For example, I should be able to see that Sorting has something in
it before I get to it I would suggest a different colour background
on the tab or even a little asterisk or marker to suggest fields of
interest. As per David Leans' suggestion, this would best be done
with the tab label being put in
bold
.
-
-
Figure 6. A value has been entered on the sorting tab so there
should be some indication
This way editing a report that someone else has designed would be
much easier as I could quickly see what fields have non-empty /
non-default properties assigned.
-
User Interface: List control grouping parameters (Inconsistency)
The grouping controls for a table control are nice in that you can
conveniently manage them with a straight forward add, edit, and
delete buttons. But why does the list box control have such a
horrible one?
-
- Figure 7. The good! Grouping on the table control.
whereas for the list box control we need to navigate to a similar
screen through the button.
|
|
|
Figure 8. The bad! Grouping on the list control
|
If this button is necessary, then tie it in with the idea above,
so that you can conveniently see whether groups are defined. Or
this could be done by having the "Edit" button disabled if no
groups exist and an additional button for "New Detail Group".
-
Charting - Flexibility to resize individual chart elements
Charting controls need to be more flexible. You cannot resize
individual elements of the chart control such as the size of the key
or the plot area. These are basic properties that we have in Excel
charts but not in SQL Reporting Services charting components.
-
Charting - Default maximum and minimum scale values for charts
Many of the properties of the charting component do not allow
expressions for their values. Some major examples include dynamic
size (so that we could base it on the number of items), the scale
(so that we can make the max scale for multiple graphs all appear
the same).
The max and min scale properties have been partially fixed in
Reporting Services 2005 - you can now use expressions in the Max
Value and Min Value fields of your charts. See our
rule on Rules to Better Reporting Services
.
I say partially, because you still have to manually set these
values on a chart and it requires a bit of a hack to do (see the
above rule). Why can't a chart automatically work out its maximum
and minimum value based on the grouping level? There should be a
default value, and an option to enter an expression.
-
-
Figure: Reporting Services will work out the maximum and minimum
values for the chart's scale - currently you have to do it
manually
-
Add an Internet Content Control for embedding HTML
Reporting Services is missing the ability to embed web pages into
its reports. For example, say you have some web pages that are
updated regularly (e.g a project page) and you want these pages to
be emailed to you weekly. It would be great to take advantage of
the Reporting Services subscription engine, but we need to be able
to embed HTML pages into RS reports to get this done.
We think that an Internet Content Control will be introduced and
it will have the ability to:
- Set the resulting HTML at the control level
- Set the CSS property
- Set the title property of the HTML page
-
Rich Textbox Control
We need a textbox control that you can format the internal
content. For example we might want to have text display like this:
This is a
bold
label with
italics
in it too.
This would be useful for building reports that are used for
invoicing or contracts that you use all the time but need to be
tailored for a specific contact.
-
Multiple Select in Parameters
-
* Fixed by Microsoft in Reporting Services 2005 *
We need a parameter type that will enable us to have a list of
values (likely from a query) such that you can select multiple
values from the list and then use the set of parameter values in
your dataset queries or report items. For example, we want to
allow our users to report on set of suppliers all at once, rather
than one at a time.
|
|
|
Figure. Add a new datatype - MultipleSelect to allow
selection of multiple parameter values from a list.
|
The resulting control displayed on the parameter bar will be a
checkbox list control.
See why
.
The parameter value would then require restrictions put onto it so
that it can only be used in aggregate or set functions within the
dataset. For example:
SELECT au_lname, state
FROM authors
WHERE state IN ('CA', 'IN', 'MD')
-
Long Running Reports - Delay reporting
If you have a report which is known to run for a long time, an
administrator will be able to select an option for the report so
that the user is notified that the report is going to take a while
to execute, and are forced to have the report returned via email.
The server can then complete processing on a background thread.
-
Select Reports to Import from Access
When you use the "Import Reports" from Access functionality, it
always imports all the reports rather than allowing you to import
just a few.
For example, the import feature within Access allows this. You
should be able to select only the reports you want.
-
-
Figure 10. Importing reports from another Access database within
Access. In SQL Reporting Services you should be able to
selectively import reports also.
-
The Task List is lost on restart of Visual Studio
The task list is a handy feature built into Visual Studio. It
provides a single point of reference for any user tasks,
compile-time warnings and errors found in your reports. In most
cases you can double-click the task to jump to the offending line
of code or control. For some reason Reporting Services does not
retain this list of errors once you close Visual Studio, so you
have to copy and paste the errors into notepad, which can be
annoying. (Note: this works for items manually created.)
When the report is first imported there are comments in the .RDL
file for each warning; however, after any changes to the reports
these disappear. We would like to see this task list retained, so
that the developer can check off tasks in the task list as they
are done.
-
-
Figure: If I close down this solution, all the task list items
related to the import process are lost.
-
Tool tips on column headings
It would be handy to show a descriptive tool tip when you move the
cursor over a column heading. This would be great because the user
could see more information about the data in a column.
Figure: it would be great to have descriptive tooltips like this
when you mouse over a heading
-
Show / hide columns
Sometimes we want to print a report with certain columns shown or
hiding. This would be great for custom reporting without having to
go back to the developers to make the change.
Figure: It would be great to have MS Access-style show/hide
columns
-
Get the XML and SQL behind a report
When I run a report, sometimes the data doesn't look right.
Instead of chasing the developer to investigate, I want to be able
to find out the SQL behind the report and run it myself using SQL
Server Management Studio. I would also like to be able to see the
XML (RDL) behind the report.
-
Embedded Images
If you create a report with an embedded image and then you delete
that image, it remains in the xml report definition, therefore
unnecessarily increasing report size. To get rid of the image, you
need to either:
-
Manually delete <EmbeddedImages></EmbeddedImages>
from xml.
-
Understand that you deleting the image control – there is
a 1:many relationship between embedded images and image controls
(you can reuse images in multiple places on the report). To
delete an embedded image, select “Report” –
“Embedded Images”.
What should happen is - when you delete an image control it asks:
"Would you also like to delete the embedded image?"
Yes / No
If you select Yes it could open this "Embedded Images" form
-
Linked Images that are deployed to a relative path don't show in
Designer
When we use images in our reports we like to make a separate
project to deploy the images to a path relative to the report
location (e.g. ./Images/logo.gif). This process is detailed more
in the
reporting services whitepaper
(under "Tip 3 - Organizing Images" at the end of the paper).
The problem is that during design time, despite the images still
being correctly in the relative path to the .rdl files, they don't
show up in the designer. Understandably the relative path won't
necessarily be correct for the deployed version to work, but if
the path is valid then the image should show.
|
|
|
Figure 11. The path on the images is correct both for
the deployed and non-deployed reports. It should show in
the designer.
|
-
Set the default zoom level
We need to be able to set the default zoom level. For example,
reports should open with the zoom level set to "Page Width" rather
than 100%.
-
Stop/start the Reporting Services service from service manager
Since reporting services is part of SQL Server, we should be able
to control the service from SQL Server Services Manager.
-
Show built-in formatting options for report controls
When you select formatting for text in a textbox or other
Reporting Services report controls, the built in formatting
options should be selectable from the list (such as C for currency
and P for percentage)
Figure: Just like when setting formatting for controls in
Access...
Figure: ...there should be built-in formatting options in the
Format property for a report control
-
Add the ability to dynamically change the title of the report
Say you have a sales report that you generate once a month and
export to a file. You want to build an archive of these reports
for comparison and to keep a history of sales. You also want to
expose this history for searching and browsing through a content
portal such as Plumtree or Microsoft SharePoint. Currently you
cannot do this with Reporting Services, as the report title is
static.
Figure: You cannot change the title in Report Manager, which
makes it hard to index, search and archive reports
Ideally there should be a
Page Title
attribute in the report properties dialog (shown below) which lets
you enter a custom title to display with the report. You should also
be able to enter an expression with parameters into the title, for
example,
{ReportName} - {Month} {Year}
.
Figure: Add a property to this table called
Title Tag
Figure: This is the HTML Title Tag you need to be able to change
These parameters should appear in the report parameters dialog so
that you can link them to fields in your data source.
Figure: You should be able to add report parameters to your
report which can then be used in an expression for the page
title
-
Version Info
Figure: Reporting Services does not have explicit version
information.
This needs:
-
Add icon to denote Required Parameters
As there is the option to allow some parameters to be left blank,
required parameters should have an icon depicting that they are
required. On reports that have many parameters, this makes it
easier for the users to distinguish between required and non
required parameters.
Figure: Blank and Null Parameters are allowed
Figure: But what RS needs is the ability to show a Required
Field Icon like in this example
-
Add MS Word to the Export list
There should be an option in the Export to file list that allows a
user to export to a Word document.
Figure: Current RS Export List
-
Add a Calender View and Gannt Chart Control - Like MS Project
There should be a calendar control (similar to that in MS Project)
that allows a user to drop Calendar related data onto it which is
automatically puts into the right place. There should also be a
Gantt chart control or a Gantt chart type option added to the
existing chart control.
Figure: RS needs the Calendar Control like MS Project
Figure: RS needs the Gantt Control like MS Project
-
Parameters - When you add a Parameter it should automatically add
a label to the designer
Too many developers forget to add their parameters to the design
of a report. Then when the user exports it to say a .pdf, they see
the report, but they dont know the parameters that gave the data
they are looking at.
When a parameter is added to a report, the labels should be
automatically added that display the parameters being used on the
report.
-
Add an AutoPostback property for parameters
Especially when there is only one parameter people dont want to
click View Report.
When a parameter is displayed (especially when using combo boxes
and multi select is not enabled), the report should automatically
refresh upon selecting a new parameter from the combo.
This would make it consistent with the ASP.NET.
-
Add option to select a Linked DataSource
There should be an option Add Linked Data Source; that is, a way
to add Linked Data Sources so that the same Data Sources can be
shared by many different report server projects.
-
A much better Matrix control
There should be a Matrix control that has Pivot Table
interactivity (like Cognos). It should allow for Drag and Drop
functionality and allow the user to drill through automatically.
While drag and drop, and auto-drill through can be seen in the
Reports Builder, a similar control should be implemented for the
Report Developers to use as well.
-
Report builder should default to a home directory
When a user creates a report using the Report Builder, the save
path currently defaults to the Report Server's root directory this
seems to be the only place you would not like users to save
reports to.
Therefore, when saving the ad-hoc reports created by Report
Builder, the save path should default to a directory such as the
Windows Username, Eg. \AdamCogan\Report1
Figure: Saving currently defaults to the Root directory... it
should default to a Username folder instead
-
Help me use Report Builder 2
I have Report Builder 2 on my PC but when I click "Report Builder"
it still opens version 1.
Why not automatically set the 'Custom Report Builder launch URL'
field
(to
http://SERVERNAME/ReportServer/ReportBuilder/ReportBuilder_2_0_0_0.application)
when I install the latest SQL Server Service Pack?
PS: It should also happen when you install the stand alone
download
http://www.microsoft.com/downloads/details.aspx?FamilyID=9f783224-9871-4eea-b1d5-f3140a253db6&displaylang=en
PPS: and make that last text box wider.
-
-
Figure: Automatically set the 'Custom Report Builder launch URL'
field so the users are using Report Builder 2 (instead of
version 1)
-
The wizard should accept style templates (aka .css files)
While using the New Report wizard, you should be able to add to
the list of Styles available in order to help to create reports
that are consistent with a company's color scheme.
I suggest adding an "Add Template" button to this wizard page and
allowing you to select an XSL Style Templates or CSS templates
against a report (just like ASP.NET).
Note: At a form level an extra property Template File needs to be
added.
Figure: This page of the wizard needs an Add Templates button to
enable you to select .xsl or .css file.
-
Auto-sizing columns
When you preview your report, sometimes it can take some time,
switching back and forth between layout and preview modes, in
order to get the column widths the right size to allow prevent
your report from looking ugly. For this reason, there should be
some functionality added to help overcome this problem.
A few implementation suggestions are:
-
In design view there could be a smart task on the table/matrix
that executes the data and works out an intelligent width.
-
You could add a multi-line property, to the cells of a
table/matrix, that defaults to true. When it is set to false it
could force the data to be on one line, and not wrap down to
another line, forcing the column to widen to accommodate the
single line of data.
-
In preview view there could be the ability to resize the columns
(as you are seeing the data) and when you switch back to design
view, you could have a messagebox asking if they would like to
save the changed column widths - this would be like an Access
datasheet.
-
Sample report showing Recursive Data
There should be a sample report added that demonstrates a report
that uses recursive data.
We suggest showing the Employees and Managers in Adventure Works,
as managers are employees too and can also have their own
managers. This should be shown using padding to achieve the visual
nesting.
-
XML Data Sources should accept XPath
While working with XML Data sources, you really should be able to
use XPath to query the data that the .xml file or webservice
returns.
This functionality would make it easier to work with XML data that
contains multiple data sets, and would make XML Datasources
generally more usable.
Figure: Entering a query into the "Query string" box for an XML
data source causes no data to be returned... it should accept
XPath
-
The NoRow property on table control should be improved to allow
more control.
In Access, we have NoData event to handle when there is no data
returned from data source, this feature has been migrated into a
NoRow property of Table control, which allow you to set a message.
Figure: NoRows property of table control in Reporting Services
Compare to Access, this is much easier to use, but we lost our
control over the message, we cannot even set our error message to
Red color. See our
Rules for Better Reporting Services.
More advanced property should be allowed for this, such as
changing color, font, etc.
-
Pagination does not work with hidden items for HTML output
We have a report which has a table with some hidden items. These
hidden items will be collapsed initially in the HTML output.
Pagination does not work for this report - all the data show in one
page. This is horrible for huge data report.
Figure: Hidden item in report
Figure: Pagination does not work with hidden item
But the pagination works if we make those items visible initially
Figure: No hidden item in report
Figure: Pagination works well with no hidden items
There's no way to have pagination and collapse work in same report.
-
Choose how IIS authenticates clients
We think that we should have the ability to choose how IIS
authenticates clients - read our Reporting Services suggestion. IIS
should be able to:
- Try Integrated authentication first
- Then use the Anonymous username (if specified)
- Then prompt for a user name and password to use.
-
No need of page break in subscription email with render format of
Web Archive
Page break is a useful feature for big report to avoid performance
issue when viewed in browsers. However for a report subscription
email (select Web Archive as Render Format in subscription
settings), page break causes redundant headers and footers and make
the email difficult to read.
Figure: Report in a subscription email
Figure: redundant report header following a page break
-
Report subscriptions are disabled if a report contains User
information e.g. User!UserID
Figure: This report footer with "User!UserID" will give problems
later when setting up subscriptions
|
From:
Daniel Hyles www.ssw.com.au
To:
James Zhou www.ssw.com.au
Cc:
Adam Cogan www.ssw.com.au
Subject:
RE:GroupHealth
Importance:
High
James,
Ever since you made changes to this report the data bound
subscription does not work. When I attempt to fix it I get
The '/WhatsUp/GroupHealth' report has user profile
dependencies and cannot be run unattended.
(rsHasUserProfileDependencies)
|
Best practise for reports is to have the User!UserID in footer as
per rule
Do you include a useful footer at the bottom of your reports?
However later when dealing with subscriptions you may get this
email:
Figure: Disabled Subscription
The fix is to remove the "User!UserID" from the footer to enable
subscriptions. In Reporting Services 2005, they have improved this
- normal subscription is enabled, but Data-driven subscription is
still disabled in this case. The behaviour should allow the report
to work and a different value entered for UserID eg."N/A"
-
Fix all inconsistent names – where different names have been
used for the same properties
I was very familiar with CanGrow and CanShrink but was not
familiar with what ‘Can increase to accommodate
contents’ was. Imagine my surprise when I find out they are
the same thing!
Figure: “Can increase to accommodate contents” is
the same as “Can Grow” – they should be named
the same
-
Schedule printing a report directly to a printer
Some senior executives do not open their email. For this reason,
it would be useful to be able to schedule for a report to be
printed directly to a printer.
Figure: Option to allow printing a report on a schedule
-
Image display
Reporting Services report doesn't support transparent image
background. When you use embedded images in the report, if the
image file's background color is "transparent", it will only
display correctly in designer (VS2005), but if you view the report
in IE, the image will have a shadow background which is bad.
Figure: Image with transparent background
Here is a workaround. You need to change the image's background to
"white" in order to remove the shadow.
Figure: Image with white background
-
Image size is not correct in subscription
Reporting Services subscription report doesn't support image
resize. In designer (VS2005), you can set the image box's "sizing"
properties as "FitProportional" to allow a large size image file
displays correctly in image box, but when we use the subscription
to send the report as an email, images display incorrectly with
its original size.
Figure: Image can't be resized
When you reply or forward the report email, images display as
their original size, report can’t apply the "sizing"
properties of image box in here.
Figure: Image with original size
Here is a workaround. In order to make the report look more
consistently, you have to change the image file size to a proper
size to fit the image into the box.
-
Add trigger in report subscription email to resend report
Reporting Services 2005's subscription can be triggered by time,
it can send a report email at a preset time. After you receive the
email, if you want RS to resend the report, you have to wait until
the subscription is triggered again.
Add a trigger in the report subscription email will make the
Reporting Services more convenient.
-
Sample Reports for Report Execution Log doesn't work properly
Created a new job for Retrieving Report Execution Log Data
successfully as per
Configure Server Management Report Samples
, then it was executed failed.
Figure: executed failed for this job;
Figure: Could not find stored procedure
'msdb.dbo.xp_sqlagent_notify' for RSExecuteLog which was created
by running Createtables.sql (under C:\Program Files\Microsoft SQL
Server\90\Samples\Reporting Services\Report Samples\Server
Management Sample Reports\Execution Log Sample Reports by
default);
It is because of missing stored procedure "dbo.xp_sqlagent_notify"
for "Report Execution Log" Database, Microsoft should make sure all
samples databases and reports works properly! And it said that this
error will be fixed in SQL Server 2005 SP2 - See
Could not find stored procedure 'msdb.dbo.xp_sqlagent_notify'
for more details.
-
Improve compatibility for Firefox
Reporting Services Reports (2005) makes beautiful reports, well it
does in IE, but the HTML is not good for some non-IE browsers (aka
Firefox). Reports are displayed in an IFRAME that's deep in nested
table land, and the IFRAME's height setting only works in IE. This
cause reports can't display correctly - the IFRAME's height defaults
to a few hundred pixels, so you only see the top 2 inches of the
report. Like this:
Figure: Reporting services report in Firefox looks terrible
Workaround: though we can fix it by adding a min-height into
ReportingServices.css file (it's found in "C:\Program
Files\Microsoft SQL Server\MSSQL.3\Reporting
Services\ReportManager\Styles\" by default):
/* Fix report IFRAME height for Firefox */
.DocMapAndReportFrame
{
min-height
:
860px
;
}
But the report still can't display in correct width even if you
added a min-width element, like this:
Figure: Reporting services report in Firefox still looks terrible
after fixed height problem
This problem still has not been fixed in SQL Server Reporting
Services 2008.
There are several ways to try to resolve this, but none can fix it
completely. (See
Reporting Services CSS-fix for Firefox
for more)
-
Add progress prompt on the Exporting Progress Form
Sometimes exporting takes forever, it should give the progress
prompt (e.g. xx% complete) on the exporting progress form, so we can
know where it is up to.
Figure: Exporting takes forever
-
Add a special data source type wrapper for Access
Many Access developers think that Access is ODBC compliant –
but not OLE DB... So we suggest:
-
Add a special wrapper called Jet over ODBC (Access) to the list
then you can just select an MDB
-
- Figure: Choosing Data Source Type
-
Make the IIS service more visible
What is required for RS to work? Well you check both services (SQL
Server and SQL Server Reporting Services) are running in SQL
Server Configuration Manager, and then you check you have all
green ticks in Reporting Services Configuration Manager. What if I
check these and Reporting Service is still not working... what
could it be?
-
-
Figure: Both services are running in SS Configuration Manager
and all green ticks in RS Configuration Manager, but RS is still
not working
The answer is IIS is not running:
-
-
Figure: IIS is not running. This should be more visible on both
the above pages
We suggest:
-
On SQL Server Configuration Manager add "SQL Server Required
Service (IIS)"
- On Reporting Services Configuration Manager add "IIS"
This makes this service more visible to users and makes it a true
one stop shop (instead of finding and using Computer Management).
-
Add back the different icon for calculated values
Unlike those in Visual Studio 2003, the icons of every kind of the
fields are the same in Visual Studio 2005. It becomes not easy for
the developers to separate the calculated values from the original
ones.
So we suggest adding back the special icon for calculated values
-
-
Figure: In VS2003, the icon of calculated values is different
from others'.
-
- Figure: In VS2005, all the icons are the same.
-
Make this error more friendly by making it visually consistent
with the SQL Server Configuration Manager
I would not normally comment on error messages, but these ones are
commonly seen.
Ideally you should not have to read the error message to be able
to fix it
As a minimum I would add the same icon and text from the SQL
Server Configuration Manager
Slightly better would be an image with a circle around the missing
reference
Ideally I would provide a link that opened the Microsoft
Management Console (aka MMC snap-ins) – I would not even
mind if it required you to allow “Active Content”
inside IE (like Index.htm on MSDN Subscription DVD)
-
-
- Same for this error message
-
Make the title of the report more descriptive
The report <title> tag needs to be more descriptive, as
non-descriptive title will reduce your Google rankings. See
Are your <title>, <h1>, and <h2> tags
descriptive?
for more information.
-
- Figure: Non-descriptive report title
We have a suggestion to make the report title more descriptive,
see
Add the ability to dynamically change the title of the report
.
-
Make every report has its own deployment path
We should be able to choose the folder that a report deploys to,
rather than having to create a separate project for each
deployment path.
-
- Each project has only one deployment folder
-
-
Reports don't have their own deployment path property, so the
reports in one project can be deployed to the same folder only.
-
Add built-in date function
There should be built-in date functions to calculate Week Ending,
Month Ending and Year Ending for a date, like
GetCurrentWeekEnding(), GetLastMonthEnding(), so we can get the
report of weeks and months easily.
The week ending function needs to consider the local culture while
calculating. In different countries, the weekend day may be not
the same. So this function should accept a parameter to load the
local information, such like User!Language or something like that.
And of course it should have a parameter to let the user set which
day of the week is the week ending day manually (e.g. Friday or
Sunday)
-
(SELECT CONVERT(char(10), DATEADD(day, - (1 * (DATEPART(weekday,
Agreement.ProjectedDepositPaymentDate) - 6)),
Agreement.ProjectedDepositPaymentDate), 103) AS Expr1) AS
ProjectedDepositPaymentDateWeekEnding
- This is how we get the week ending now
-
(SELECT GetWeekEnding(Agreement.ProjectedDepositPaymentDate)) AS
ProjectedDepositPaymentDateWeekEnding
-
using build-in functions would be efficient and more readable.
-
Help more on the expression builder
When user press OK on the expression builder:
-
- Figure: Expression builder
It should try to help more and more... E.g. Show a dialog like:
Did you refer to a control instead of a dataset?
You have used the function CountRows("Scans") that refers to a
control "Scans".
Did you instead mean the dataset "dsScans"?
"Yes - Correct this" "No - Leave it"
-
Add a lookup form to search the big table
-
It is confused for user to input an unknown value. Also, it
isn't feasible to use a combo to contain more than 30,000
records.
-
- Figure: Bad Search
-
What do you think of this suggestion
Use a ellipse button with a popup search form (better than
using a combo when you have >100 records)
One tab will do – but 4 tabs would be better
http://www.ssw.com.au/ssw/nettoolkit/02WinSearch.aspx
-
- Figure: Good Search
-
Insert dataset as a table (with totals)
-
Productivity Suggestion
Under “add” item, add right click menu
“Insert dataset as a table (with totals)”
-
Auto generate the dataset’s name to the title at the
top of table.
- Auto generate every column of dataset.
- Auto generate Totals row at the bottom of table.
-
- Figure: Insert Dataset as table
-
Report Wizard Intelligence
It is not convenient for developers to generate SQL without
intelligence in Report Wizard. They have to look for the table
name or the field name in SQL Server Management Studio and
generate SQL. If there is an intelligence in textbox or table list
in the left hand navigate, it will be much better.
-
- Figure: Report Wizard without Intellisense
The goals are to help me get to this…
-
- Figure: Report Wizard with Intellisense
-
Make long-running processes user-friendly
When your wizard has a lot of processing, allow the user to skip
that processing when appropriate. Show a status description
information above the progress bar and also allow users to cancel
the process. After processing finished, it should jump to the next
wizard.
See our rule on Rules to Better Interfaces at
SSW Rules to Better Interfaces
-
Change No Bold
UI problem – when Visibility is collapsed there is no bold
(even though the setting is not at default). So we need to see
bold when collapsed
-
- Figure: Change No Bold
-
Dataset from another report
Often you want a dataset from another report (or another project)
On the “Data” toolbar add some buttons
“Copy dataset from”
“Import from XML”
“Save as XML”
Note: Not only do I want to select a project, then report….
I want to be able to select a published report (select a server,
then report, then dataset)
-
- Figure: Selecting dataset from another report
-
Add tick to check if Reporting Service is the latest
If the version of Reporting Service can't match that of Database,
there will be a warning to let user upgrade. Can we have a tick to
say Reporting Service is the latest or where we can download the
latest version.
-
-
Figure: Version of Reporting Service can't match the Database
-
Let SharePoint work with Reporting Service easily
It is not easy for user to configurate SharePoint and Reporting
Service working together. If is much better to click one button
and they can run in the same box smoothly without knowing anything
special.
-
More information on SharePoint Integration
The “SharePoint Integration” page in Reporting Service
Configuration Manager is too simple, we need more information on
this page to tell our users:
- What will be the new functionality to add in SharePoint?
-
How to generate RS reports by using SharePoint Integrated mode?
- How to manage reports in SharePoint?
-
- Figure: Simple information in Reporting Services Manager
-
Sample in the reports document library
It is not easy for users to build report in SharePoint without
tutorial. If there are some sample reports in SharePoint, users
can refer to the samples and learn by themselves.
-
- Figure: Add sample in reports document library
-
Test data source connection
Users can create a report data source in SharePoint, but they
don't know the connection string is not correct until the report
raises error. So there should be a test button to check the
connection string.
-
- Figure: No button to test the connection string
-
The subscription needs an extra Name field
The current UI doesn’t have a name filed, make it impossible
to tell the difference between each of the subscriptions.
-
- Figure: Need to add a Name field
-
Highlight the current field in yellow in the "Diagram Pane"
Highlight the current field in yellow in the "Diagram Pane" (aka
Query By Design window) when you select a row in the "Grid Pane"
it would be so useful when you are working on an unfamiliar
database schema
-
Figure: The Diagram Pane without any highlights
-
Add a page to configure the export format
Currently, if we want to configure the export format, we have to
edit the .config file mannually. It is much better to add a
configuration page and allow users to add or remove report export
formats easily.
-
- Figure: Export Format List
-
Add a connection string builder
We really need a builder for a connection string
I can never remember the right syntax for the "Connection String"
textbox
(As a minimum it would improve the demo experience for presenters)
-
-
Figure: Building a connection string is too hard – we need
a builder
-
Allow me to report against both LINQ Data Sources (.edmx and
.dbml)
Ideally I would love to do a report based on a .dbml or .edmx file
I just select a LINQ (.dbml or .edmx) file as the datasource of a
report
Plus I would like some samples added so we have an instant demo.
-
Report Builder 2.0 - Offer the ability to report against
SharePoint
A few new ones in this list... but when will be able to select a
SharePoint list?
PS: Back in 1992 Access would not have been as popular as quickly,
without the ability for users to be able to query their data...
SharePoint Lists are the new Access (for Power Users).
-
- Figure: SharePoint list is not supported
-
Allow Vertical text writing mode to also have bottom to top
Text boxes at the moment only allow writing modes of top to
bottom. This is not always the way report viewers want to read the
report. There should be another option of bottom to top, i.e.
bt-lr.
See the images and explanation on
Rules to Better SQL Reporting Services - Use Vertical text for
Columns
-
Add parameter type for common periods
we look for common period parameter type like week, month or
quarter instead of having to specify start and end parameters of
datetime.
-
Interactive Sort does not work well with chart
We found a problem of Interactive Sort column with chart within
it:
-
- Figure: design view
-
- Figure: preview view
-
- Figure: error when sorting
-
Reports should have an easy way to email to another person
There should be an option which can make the users send the report
by email directly.It's more convenient.
-
- Figure: There should be an option "Send Email"
-
Show strikethrough in exported PDF file
When report has strikethroughs(with the TextDecoration property
set to "LineThrough"), it looks fine in Report Viewer. When export
to PDF format, the resulting document does not have the
strikethrough applied.
-
- Figure: Strikethrough works fine in Report Viewer
-
- Figure: Strikethrough doesn't work in PDF
It is a known bug that you can check on Microsoft Connect.
-
Developing - Sounds
We need a "completed" sound after rendering a slow report. The
problem is after 30 seconds of waiting you ALT+TAB to another
window and forget when it finishes.
A good example is the sound on the long process on
SSW Diagnostics
More info at
Rules to Better Interfaces - Long Process - Do you know how to
make long-running processes user-friendly?
-
-
Figure: When Developing slow reports, please play a sound once
the reports renders
-
-
Figure: SSW Diagnostic will play a sound when the report
successfully generated.
-
Give users a runtime option to increase or decrease decimals
places
In some cases, the nubmers need to be accurate and reconciliations
for the users, while in other cases, the decimal places are not
required in the report.
So we need a runtime option to add/remove decimal place.
-
-
Figure: For some users, like accountants, the decimal place is
necessary; for others, it might be not.
-
Linked Reports - No hyperlink available to Linked Report on
Property General page
Reporting Services 2005. Linked Reports, when you look at the
Properties tab it shows the path of the "parent" report and a
button to "Change Link" but there is no quick link to take you to
that parent report. You have to navigate to all the folders to get
to it.