Hello,
I'm currently learning reporting services and it seems fine, but one of the things I can't figure out how to do is the equivalent of Navision's CurrReport.SHOWOUTPUT: dynamically changing the visibility of a line.
Usually there is a Visible property and one can assign an Expression to set it, however, f.e. a row in a Matrix does not have such a property.
So for example if you throw a Matrix on Item Legder Entry table, showing stock (Location in columns, Item No. in Rows, Sum(Quantity) in matrix fields) how do you tell it to don't show those lines where the total quantity is zero i.e. no stock?
0
Comments
You can change this in your query. So that you only get the data you need.
Here is a query that will do what you are asking.
Independent Consultant/Developer
blog: https://dynamicsuser.net/nav/b/ara3n
Or maybe we just have to accept that the Table and the Matrix are specialized controls for special cases and a really flexible, dynamic report should rather use the List control (which is roughly equivalent to Navision's sections).
Here is how to.
Select the whole tableRow (by clicking the gray square to the left)
In the property windows you'll find a property called Visibility. Click the + sign and in the hidden property select expression.
In the exression add this code.
the table name will be different in your case. You can find the exact value by clicking the datasets selection in the first column.
You'll have to do this to every row so that subtotals do not print as well.
Independent Consultant/Developer
blog: https://dynamicsuser.net/nav/b/ara3n
No PM,please use the forum. || May the <SOLVED>-attribute be in your title!
Independent Consultant/Developer
blog: https://dynamicsuser.net/nav/b/ara3n
but the whole reason I had to open this topic is that a MatrixRow object does not have a Visibility property - and this is strange because mostly everything does.
screenshot
Kriki,
yep, of course, I'm just trying to find the right balance between doing stuff in SQL and doing them in Reporting Services. And I think it's a right general rule that if something would be hard to add as a @parameter in a stored procedure then it belongs to the report (Actually, the advantage of this Common Table Expression-based approach is that it can be driven by a @parameter. But I still think it belongs to the report.)
For MatrixRow Objects there is not visibility property, but what you are trying to do can be changed on the textbox object.
Right click on textbox object Fields!Item_
and select edit group.
on Visibility tab Select expression and add the following code.
Independent Consultant/Developer
blog: https://dynamicsuser.net/nav/b/ara3n