Hiding empty rows from Crosstab in BIRT - birt

my problem is maybe simple but i don't get it.
i have this Crosstab :
So my idea is to hide all rows where ALL data fields ("Wert_Bezeichnung") are empty. But this is not possible easy if i get it right, because the birt renderer thinks the rows are never be empty because the left two columns ("Position" and "Bezeichnung") are never be empty. that are the row names.
Is it possible to hide the rows without touching the java code behind?
thanks in advance

As you describe the issue, it seems these empty rows are generated by the dataset itself. Double-check if property "Show empty rows" of this crosstab is unchecked.
Anyway, you should just have to add a dataset filter with an expression excluding empty rows.
Edit the main dataset of your datacube
In "Filters" tab, add a new condition
select field "Wert_Bezeichnung" and operator "Is not null"
If it doesn't work, it means these rows are loaded with something different than a null value, for example an empty string. You need to adjust the dataset filter accordingly.

Related

Google Sheets - Dynamic Cell Range For Data Validation, Specifically List Of Items Criteria

I am having some issues with specifying a dynamic cell range for a "data validation".
I'm aware you can do some tricky stuff with = "Projections!M4:M"&O2. You can update the content of cell O2 for example to 3 and the output would be Projections!M4:M3.
This makes the value "dynamic". These tricks don't seem to work in the "Cell Range:" input field in the Data Validation selection/configuration screen.
My problem is, I hate seeing drop down arrows (call me o.c.d) for rows that have no content, my number of rows will grow in the future so I don't have any other option than selecting M4:Mfills the whole 1002 rows with drop down arrows.
Has anyone worked out a trick to make dropdown arrows only show up for rows that are filled?
I'm using = COUNTA(B4:B)to get the number of rows that are filled and = "Projections!M4:M"&O2 to make the desired Projections!M4:MX string but the "Cell Range" input field in the Data validation screen doesn't accept this as valid either.
Well I didn't find a direct solution, but something that I can work with to resolve my issue which was I hate seeing drop down arrows for empty rows.
I turned a filter on for a column that will always be filled in and filtered by conditions Cell is not empty but i'd prefer a better solution.

Oracle Apex 5.1: Report column based on LOV(List of values) showing returned value not display value

I have created an interactive report with a form. In the form I have two select lists. The first select list is a list of values defined in the shared component. And the second select list is another list of values which is also defined in the shared component but this select list populates its LOV based on the selected item in the first select list.
Let the names of the select lists are:
Region.
Country(which is dependent on the selected item in Region field).
Now when I press save/create button in the form, a row is created in the report. The Region column and Country column in the report are both "Plain Text(based on List of Values)". But what I see is the Region column is showing the correct display value of the LOV but the Country column is showing the returned value of the LOV.
I want both of these columns show the display values rather than the returned value. Could anyone help me find the solution?
Are you using the same LOVs in form and interactive report? If so and in the conditional LOV (countries) you refer your form item (ex. PX_REGION) it will not work correctly in IR. Probably IR is showing the returned value because the option "show extra values" is checked.
If this is the case my suggestion is to change your IR and instead of a "Plain Text(based on List of Values)" you make it plain text and change the query to an inline query in IR query to obtain the value you want to show.
If you don't want/like to put your LOV queries in different places I suggest you to use this approach shared by Nick Buytaert
Hope this helps you solve your problem.

Stop SSRS From Hiding Columns

How do I stop SSRS from hiding a column when previewing if the column has nothing more than empty rows? I have set all columns to be fully visible, yet the report preview does not show the empty columns. I know that this is a default feature within Visual Studio that hides all empty columns by default, so how do I change it so it can show all columns no matter what. Where can I change those settings?
If you mean the preview in the query designer of the dataset:
This is only possible when writing your own MDX since the generated code always generates a SELECT NON EMPTY for the measure axis. So removing the NON EMPTY part will always show your column/measure.
If you mean the ssrs report preview:
Columns only hide when using a table matrix with a column group. In this case make sure your dataset always returns each column group at least once, regardless of your chosen filters. E.g. if using MDX this could mean removing a NON EMPTY from your row axis or using the right-click option "include empty cells".
Clarification for comment plus possible workaround:
This "hiding columns" things is no feature. If the column isn't in the result of the dataset, SSRS can't know that this value even exists, so there is no solution if using a column group except for redesigning your query.
You could work around this by not using a column group and instead of using static "hard-coded" columns which, for example, sum the values depending on your group. See the following example screenshot i made: example

Show tablix total outside of table

I have a weekly report which totals anywhere from 200 - 1000 rows of data. For my accounting people, the total is the only value of import as they simply use it for accrual purposes. I would like to either have the total appear at the top of the report or in a separate text box indicating this is the total for the report. Does anyone have a good idea on how to accomplish this?
If I understand correctly you need to get the result of some aggregate function on a tablix shown in a textbox outside the tablix.
That can be achieved by placing a textbox anywhere on the report, and in the expression for that textbox add a reference to the dataset you need to aggregate, e.g.:
=Sum(Fields!SomeValue.Value, "myDataSet")
Where SomeValue is the name of the field you need to aggregate, and myDataSet is the name of the DataSet that fieldis in.
Your question has already been answered by the other answer. Just as an alternative, you could try one more thing.
On the "details" row group(which appears by default), right click and choose "Add Total".
This will appear in a separate text box outside the report.

BIRT Reports column not spanding the whole row as desired

I am fairly new to BIRT reports.
In the BIRT reports designer I have added a 2nd row to my table which is binded to a data set. In this 2nd row I want 1 column from my data set to take up the whole row.
So what I did was to add the second row and merge all the columns in that row to form one column. I then added a text field with Dynamic HTML Text.
<VALUE-OF>row["ITEMDESCRIPTION"]</VALUE-OF>
The problem I have is that the data is not taking the whole row. It is being wrapped into only a small section of the row. I must be missing something. Can someone help me with this pls.
I'm attaching both the way the end report looks like and also the screenshot of the set up in the designer.
End Result
Designer (you can see all the rows merged in the second row of the table and in the properties i can see a colspan of 10 for that single column)
thanks
I've found out that the asnwer to this question is to make the field element inline style rather than block and also to check the No Wrapping check box for this field int he designer.

Resources