I'm trying to create an analysis based on errors, so I hope I have little to no value in this analysis but I need a column selector to switch between different measures which can have an error.
When I switch to a measure which doesn't contain any errors, I get a nice 'no results' message but also my column selector disappears. How do you keep this even when the analysis results in 'no results' or maybe another way to work around this.
Thanks!
a) "Back" in the browser :-)
b) "Clear My Customization" in a dashboard context
c) Instead of a column selector, you can move that logic to a dashboard prompt which switches out the measure in the analysis itself. Since the prompt isn't in-line with the analysis code but a stand-alone object it will stay unaffected by "No results".
You'd say '"Measure"."#{vMeasureSelection}{Count}" in the analysis column formula and then have the presentation variable value from a prompt passed in there.
Related
I need help with Power BI utility of Bookmarking.
Suppose, i have a power bi report embedded in a website and based on RLS and roles, it is filtered to a specific user. So if the dashboard does not contain any data for a particular user, all my visuals tend to show "blanks". And i feel it is not an elegant way to show this scenario.
So i figured adding a "Card" that says "No Data available" to the report page and was fiddling around with trying to bring this forward or backwards and i didnt have success with it.
I was thinking along the route of having bookmarked page with card visual selected first in the tab order. But i am stuck trying to make the bookmarked page come up when a role that has no data in the dashboard is picked up.
I know i must use a Measure to get it done. I would really appreciate if someone is getting an idea to help me out.
Also, to the above scenario i mentioned, if there is any other solution that can be applied, i would like to know about it too.
Welcome to SOF!
You can create a measure to handle the blank values.
For example, the below measure checks if the value is blank and attests your requirement of "No Data Available" and if not blank displays the actual number.
NewMeasure= IF(CALCULATE(DISTINCTCOUNT(Clients[fldPersonID]), FILTER(Clients, Clients[Has Paid= 1)) = BLANK(), "No Data Available", CALCULATE(DISTINCTCOUNT(Clients[fldPersonID]), FILTER(Clients, Clients[Has Paid=] = 1)))
Let me know how you go. Good luck!
I navigate between different dashboard pages via action links.
I have on top of all the pages a dashboard prompt which contains a division as a dimension to filter on. This division has different roles so I have 3 aliases for it. However I don't want the end consumer to bother with these different roles, that's why I pass through the value of the division via a presentation variable.
But sometimes the value doesn't appear in the prompt but the analysis beneath it filters on the correct value (so the passing through seems to work okay. And sometimes it does work correctly.
I can't seem to figure out the difference from when it works and when it doesn't. I have the scope of all my dashboardprompts on 'dashboard' and actions from 'navigate to bi content' is also on 'dashboard'.
I don't pass through the value of the dimension via the presentation variable but I am using the 'is prompted' option. So this looks like the value is indeed in my prompt but just doesn't show up.
Has anyone else have had this problem and can help me solve this?
Thanks!
We have a weird reporting inconsistency between two Report Suites in Omniture's SiteCatalyst. Currently we have a conversion variable that is tracking keyword values that are coming from search engines using crossVisitParticipation and channelManager plugins.
When we run the Traffic Source" report that shows "Search Keyword - All" broken down by the conversion variable one report always shows "N/A" values and the the other doesn't. Somehow one report suite is not relating the search engines report to my conversion variable and the other is. Any idea why?
Here are some screenshots:
Report with "N/A"
Link http://i48.tinypic.com/1zwi4b9.png
Report with Actual Values
Link http://i46.tinypic.com/egbnmh.png
I've seen this before too. I really suggest you just call Omniture client care. So many things in SiteCatalyst are configurable by Omniture, I am sure that it is the way your setup is configured to give this kind of result in your reports.
I've long thought (but never practiced for some reason) that a dropdown menu that is dynamically generated and only contains one item, should automatically select that item. This would opposed to the typical approach that I've observed where a blank entry is made at the top and you still have to interact with the menu to make the single available selection.
An example is when I login to my online banking and select "View Paper Statements". I've only got one account so the next step in the process is to present me with a dropdown where I have to select that single account to proceed. In this case, by implementing the solution above, it would take one less click to select the account and proceed to viewing it. Even better in this case would be to eliminate the dropdown menu step altogether and go right to the statement.
Can you think of a case where auto-select of a single item would produce undesirable results?
Can you think of a case where auto-select of a single item would produce undesirable results?
Yes - any case where the user has the option not to select any option.
In your bank account example, pre-selecting the only value makes sense. But if you have e.g. some kind of form where users can provide voluntary information, they will need the possiblity to leave that field blank or otherwise give a possible incorrect answer.
So it really should depend on the nature of the data in that dropdown whether pre-selection is a good idea or not.
I completely agree, in the case you describe. But there are times where you want to force the user to make a selection actively -- e.g., when the value of the field is somehow optional or additive.
In your case, without selecting an account, there's probably no useful way to proceed, so automatic selection does make sense. But for example, an application I'm working on allows the user to specify a number of descriptive fields (movie metadata, basically -- title, release year, genre, etc.), many of which are optional, and some of them are represented by drop-down menus. Allowing the user to leave the default selection blank lets him tell us, effectively, "I don't want to use this field," so we leave it blank, and the data remains clean.
Just one example, although you're right -- in your case, I can see how that'd be annoying. :)
If there is truly only one possibility you shouldn't ask a user to decide between Option A. (Bad grammar to illustrate the point)
If the field can be left blank, it's not an option with a single answer. Instead you have a choice between Option A "meaningful data" and Option B "".
Iif list has blank option but the form does not allow that to be blank, it's a choice between Option A. (Bad grammar to illustrate the point)
Sometimes you want the user to explicitly select an option, even when it's the only option. If the option is selected automatically, the user may never even realise it, even though they may not be happy with the result.
For example, I'm reviewing my savings account on my internet bank site. Then I go to set up a payment. As it happens, I'm not allowed to make payments from my savings account, so the payment form automatically selects my only other account. If I don't notice this then I will end up making the payment from my other account when I was expecting to use my savings account. If I had known, I wouldn't have made the payment at all.
Perhaps this is slightly contrived. But unless you can be certain that the user will be happy with the (only) choice, you should ensure that they choose it explicitly.
I agree. If there's only one item in the dropdown and it's required that the user select something, then just default to the single item. I can't think of any negative effects of this (but I'm certainly not a UI expert)
What I like to do in this instance depends on a few factors.
If the dropdown is a required field and ends up with only one item due to dynamic generation, I try to avoid displaying it as a dropdown entirely. I end up showing it as an uneditable text field instead (or not displaying it at all if it isn't necessary). Why make it even look like it's a choice when it isn't?
If the dropdown is not required, then it makes total sense to display a blank choice in addition to the single value.
If it's REQ and there's a single record/value .. I'd try and change the control to a Display field rather than the Drop Down.
I'm new to SSRS, so I apologize if this question is too simple:
I have a report which accepts a parameter called "Amount". I want to constrain valid inputs to currency values >= 0, and pop open an error message if the user enters improper values.
I don't want to validate inputs in my stored procedure and throw exceptions, because SSRS displays a very generic "Query execution failed for 'someTable'" message to users who access the report from another machine, and my business does not want to turn on the "Enable Remote Errors" flag.
How do I add input validation to report parameters and notify users of bad input?
Yes, I've googled around, but haven't had much luck. Thanks in advance :)
Okay, how about this?
All you have in SSRS, really, is the SQL query and expressions in report fields.
Perhaps you could add a big, red text box at the top of the report for your error message, and give it an expression like '=IIf(Parameters!Amount.Value < 0, "Error: Invalid Amount", "")'.
Then go to your table's "Hidden" property and give it the expression "=Parameters!Amount.Value < 0"
You could also add into your query's where clause and add "AND #Amount >= 0" so you aren't fetching from the database when there's an error.
It's possible to make report parameters in SSRS that are based on a particular list or a lookup query but I don't think you can apply a regex or something like that.
Instead you might consider separating your report into two panels, one which displays your report and one which displays an error and then you create an assembly with a function in it that validates the parameters for the report before it is run. If the validate parameters function is successful you hide the error panel and show the report panel, if not you do the opposite.
I don't think there's a whole lot you can do in the reporting tool itself. It's pretty rudimentary.
However, you can provide an ASP.net web interface or a form that you can use to ask the users for the parameter values in any format .NET allows, and use the ReportViewer control to display the report. It sounds daunting, but it's actually pretty straight-forward, particularly if you already have a project you can build on.
Microsoft gives tutorials for using the ReportViewer controls.