Rows Are Duplicated in WEBI Report - sql

WEBI Report is created with a structure, so I cannot modify the cells one by one but I need that.
I use [Things] where ([Things]="Thing") etc. in cells. However it looks like this, the rows are duplicated for a reason:
but i want this:
any help is appreciated.
ps: i cannot give the actual data cause its a customer's report.

In your example case, it's not obvious what you want because your starting data is not clear. It's also not obvious where the #MULTIVALUE sits in the block, i.e. as a sub total. If it is a subtotal, then it suggests that [Quantity] is not defined as a measure. If that is the case, =Sum( whatever is in the multivalue cell ) will fix that, assuming it is a number and not text held as a number. If it's text, then create a new variable, called say, NumericQuantity, as =ToNumber([Quantity]) and use that instead.
Without knowing the actual structure of the block, that's the best advice that I can offer.

Related

How to add a field to a report that has groups

I need to add a field to a SSRS report. I tried modifying the dataset (query) but the results prouduced insane results, with zipcodes showing up in the name fields and names showing up in a datetime field. I suspect it is because of the groups but I don't understand how they work. The Dataset is created by 4 selects. The first 3 insert into temp tables and the fourth pulls from it. I suspect that I will have to re-write the query but it would be nice if I could use it as is with modifications. Either way I need to understand the groups.
I read
Data Region Cells, Data Region and Understanding Groups. Aside from the fact that they use terms specific to SSRS without defining them they are so undetailed I doubt many people who do not already understand SSRS can get anything out of them.
I did not write this report but I must modify it. I understand SQL well. Not so much with SSRS.
Can anyone explain how to find out what the Row Groups mean? Mine look like this:
Here is the tablix

How can I incorporate entitlements with over 50,000 data points in SSRS Report?

In my SSRS report I am attempting to incorporate entitlements. If a user puts a specific person ID in the parameter, I'd like to be able to compare it against the up to 50,000 ids they are entitled to use and to put up an error message if not.
The available values feature only allows me to use a dropdown, which is incovenient for so many ids. What are my options?
A drop down would be very inconvenient for that many choices. Is it possible to break them down by a category or something like that? You could then create cascading parameters to make the list easier to deal with.
Otherwise it would have to be a free text field. Depending on the complexity of the report contents you could handle it a couple of ways.
If it is a very simple report with just a tablix you can set the no data row value to your error message.
If it is more complex you can display the error message using two rectangles. The first one would simply contain a text box with the error message in it. Then put the actual report comments in the second box. Control the visibility of these rectangles based on an expression that checks the number of rows returned by the dataset or some other indication that the input was invalid. You may even need to create a second dataset to check for input validity if there isn't a reliable way to use your normal query.

Get concrete value in Pentaho Report Designer

Let me explain my problem,
in Pentaho Report Designer I want to build such a report, where I have one data set, i.e. one request to database
SELECT code, name FROM EMPLOYEES
and show result of this request not in the form of list, but put every result in appropriate place. i.e. like in below picture
Where field "code" is unique, just one result can be put into red label in picture.
How can I do this in Pentaho Report Designer?
I can solve this problem by creating 3 data set, for each of caption. But what if captions like this will be much more, creating requests for each of this caption will not be so effective.
Hope I could explain my question.
I don't know if I got it right, but If you want to use the values returned by your query, you could create a new formula called "your_formula":
=MULTIVALUEQUERY("name_of_your_query")
This will give you an array with the result of the query. Then you could use another formula to get the 1st result of the array. For example:
=ARRAYLEFT([your_formula])
and get the first result of your query. This way let you use your_formula as parameter. This means you can drag and drop it on your report and use it.
I hope it helps.
Regards,
Tatan.

crystal report for work operations

I have a problem during creating a crystal report which will show a part of one manufacturing process.
So, I need your help....
I have a four different components that forms a one bigger component (or product). Every of this small components pass through different production operations, but the same component don't pass through all production production operations.
And, I need a crystal report which shows every article (component) with a number of finished component in each operation.
Here is the example of SQL result (ordery by operations):
so, you can see that article with articleID = '29183' is going through first and last operation... also, articleID = '17275' is going through the second and last operation... I think that is all clear from the picture...
And, all I need is report that this will show in the columns like this:
In the report, I made a group by ArticleID, so the article (component) appears only in one row... And after that, I need a values in columns (columns for operations) which correspond to every article...
Very thanks... I try this solve for a few days, but I don't know how to solve this... I tried crosstabs, dictionaries, lists but nothing helps me
You've already grouped by Article ID so that each article has its own single line, so that's a good start. Now, you just need to separate the 3 operations with 3 formulas and aggregate them to the group level.
For example, the formula for the first operation would look like:
//If row is a "first operation" then display the finished data element
if {table.Operation}="first operation" then {table.Finished}
Then to display in the Group Footer you could just use a max() summary function on the formula you just created.

Create a report that could be one page or two, depending on what field was modified

In an alternate application, the user has the ability to update their address and phone number. When these are changed, three fields will update: Old Value, New Value, and Field Changed. If the Field Changed was the address, I need to create two report pages - one with the old address and one with the new. However, if the Field Changed was the phone number, I only need to create one report page for the current address.
My initial plan was to do a Union that would have one record with the Old Value and another with the New Value. This should work when only the Address has changed. However, it won't whenever the Phone Number has changed. I assume I need to do some sort of case statement, but I'm not really sure if this is the right approach. Sorry if the data is a little confusing (I didn't design the data structure. This was provided by our professor's assistant). If you need more information, I'll try to provide it.
I'm not looking for exact SQL, but I am wondering if I'm approaching this the correct way.
What do you mean by a 1 or 2 page report? Are you outputting to a CSV, PDF, XLSX or something eles?
If you need to do this through "pure" sql I would recommend a stored procedure that is given a value stating whether it's the address or phone number that is being updated. It can then do the update and you can simply do an if statement which determines which report to run and return.
I'd recommend handling it programatically if possible. Have your code run the sql update and then call the appropriate function within your code to get the report you need. You can then easily re-use the code for that report in other ways.