There is quite a number of Reporting Tools available these days. Each having its own unique characters and purpose. When it comes to integrating Reports and Dashboards in a Silver Essence Portal, I prefer to use Sumatra. In this post I will tell you more about why I prefer Sumatra. Also I will go into how we use it in our own Partner Portal.
Using multiple datasources
Let's not get too much into what is great about Sumatra. After all, you can find out all on the Sumatra Website. So just go there if you are not familiar with them already. One thing that is really cool, is the easy way to hook up more than 1 database. Behind our Partner Portal are a number of MS SQL databases. You might not be aware of this when using the Partner Portal, which is exactly what we aimed for. For a user it has no added value to know where data is coming from, as long as the data is there when you need it.
In the Full Editor we have done this by adding 4 OleDB Identifiers behind our Portal. Quite similar, you can hook up multiple database in one single Database in the Sumatra Server. Do note that the Sumatra Database is not an additional Database. It gives you real-time access to all the included DataSources. Just like the Essence Framework.
As you can see here, we are also using Exact Online. For our reporting we have synchronized some of the data into our local database. So using the scheduler option from the Essence framework, we make that data available for reporting with Sumatra as well.
Reporting using multiple Databases
Another thing you can see is that the Database behind this Productblog is also incorporated in our Portal and in our Sumatra Database. Great thing here is that I can go build Reports and Dashboards on all the underlying databases. But while doing so, it is invisible where the data is coming from. It simply is there when you need it. Just specify the name of the table you need, and the Sumatra Server knows from which Database the data should be collected.
Just like with the Essence framework. Where you have BaseEntities that get their data from MS SQL Server databases, OData webservices or the Exact Repository. For the one configuring the Portal, that is completely irrelevant. The way you do that is exactly the same regardless where the data is coming from.
So Sumatra gives me the possibilities I need to create dashboards on all our Databases. Take a look at this Dashboard we use to check activity on our different websites.
Here you see data from 3 different Databases, brought together real-time in 1 single Dashboard. Fully integrated in the Essence Portal.
Adding Security and Parameters
Yes, Sumatra Reports can be integrated in a Portal. And there you have some nice extra options. First of all, if you go to our Partner Portal, you will not find the mentioned Dashboard. That's because you are able to add the Portal Security rules to making Reports available. And you can even make those Reports available for external users as well. For example, you could unlock a Report in a Customer Portal.
Another nice option I use quite a lot, is sending startup Parameters to the report. And you can set the Parameters dynamically. For example, you will find a Silver Dashboard in our Partner Portal that shows information on user logins. Each Partner is allowed to use this Dashboard, but it should only show the data from that Partner. So using the startup Parameters, I can make sure that Sumatra gets the necessary information to personalize the Dashboard for the Partner.
Here you can see I have provided a startup Parameter PublisherID to the Sumatra Report. And it will be filled with the PublisherID of the logged on User.
Want to know more?
Did you get inspired and want to know more about how we use Sumatra for our Reporting Needs? Or do you want to get started using Sumatra in one of your own Portals? Drop me a note at firstname.lastname@example.org or connect on LinkedIn. Looking forward to your questions and remarks!