Advent Calendar Door 4: Generating reports from SharePoint data
Generating reports from SharePoint data
Creating reports of SharePoint data has always been somewhat difficult. We have been trying different approaches during all these years with SharePoint, such as using SQL Server Reporting Services, or creating dashboards with Performance Point or in recent times with PowerBI.
In today’s skybow Advent Calendar, we will see how skybow Solution Studio takes another approach, and offers an incredibly simple and easy to use document generation, where creating real-time reports becomes a very easy and intuitive operation.
You will need to create an action in Action Links, and to choose the “Generate Document” action type.
You will need to choose the report template (explained below), if you are building a report for a whole list (setting custom query or choosing an existing list view is supported), or a single item, which might contain master-detail relation, which means subitems from a related detail list.
The next you need to do is to set if the report, when it runs, should be offered to download via browser UI, or should it be saved in a document library in the same site. The filename can be “calculated” using skybow Expression Language.
In this example, I will create a report for a single list item (“Purchase Order”) with multiple items inside that Order. So, I have two list – “Orders”, which holds the data about Purchase Orders itself, and “Requests”, which holds the data about single items in that order, and where all the items have a lookup to the “Orders” list.
I will crate my template in Microsoft Word, as a normal docx file, and style it as I prefer. On the place where I want real data to appear, I will insert the placeholders, the same way I would do in skybow Expression Language. Even the syntax is the same, so yes, you can use calculation formulas directly in the report template, and these formulas will be calculated and resolved at the time of report generation.
If I want to include the detail data (from the “Requests” list, in my case), I will need to use as special place holder called “loop”. Every placeholder between placeholders [[loop Requests]] and [[end loop]] will take its data from the Requests list, which holds the items from the Purchase Order. On that way, we can easily create master/detail reports, with design done in Microsoft Word and style it just as we want.
The result from such a report template would look like:
As you see we have created a fully functional report based on SharePoint data within minutes - that's what skybow Solution Studio can do for you! Full video tutorial can be found here: https://youtu.be/lbdIx8TJChs