I recently finished defining and refining a report model based on a relational database. At first, I just set up my DSV and then added a report model with the “Autogenerate” option. Then came the grueling task of refining the report model that was generated…
I was using the MSDN pages which were very helpful on that subject, but it’d be fair to say that I something to add to what they suggest for inheritance. See, I was using the inheritance property for my entity and deployed my model to the server. Only thing, when I viewed my model in the report builder, I got this infinite loop… 🙁
My entity would give me itself connected to itself, and I could click on it to discover the same entity over and over and over again…
Took me a few minutes to understand that my original table was probably linking to the inherited table which was linking back to my original table and so on and so forth… So, if like me you get your entity over and over again after defining the inheritance property for it, what you need to do is this:
Go to the entity which is inheriting and hide the role to the entity it’s inhering from.
Go to the entity which is inherited and hide the role to the entity it’s inherited to.
Yep, that simple! And I know you may consider just deleting the roles entirely, but my advice is to leave them and hide them.
So that’s the way to do inheritance right in your report model.