In the last article, we dealt with creating the report data, now we'll move on to the creation of layouts for that data. If you remember we were using the Demo application that comes as a default with Apex. I have to admit, I am no Apex expert and I have made an assumption here that those of you reading this are familiar with the Apex product and how to create applications, pages, regions, objects, etc ... if you're not, then just a take a step back and go build some intefaces. Apex really is a very fast environment to build in and very easy to pick up.
We were in the 'Shared Components' area of our application, now we go into the 'Report Layouts' area and create a new layout.
As you can see there are 3 choices:
Generic Columns (XSL-FO)
This option is going to take the column headers, widths and other attributes from the Report Region that it is held in. The UI for the layout shows pure XSL-FO code which can be a little daunting. But the Apex folks have done a nice job of allowing you to either get stuck into the XSLFO or to just manipulate the various substitution variables. Such as:
Takes a little finding but the 'Print Attributes' tab for the hosting Report Region is where you can specifiy the various attributes.
Named Columns (RTF)
Here you can name your layout and then upload the RTF template you want associated. This method requires that you use the 'Export Report as XML' link I mentioned in the last entry to get some sample XML down to your desktop. You can then use the MSWord plugin to help build the template. There is a link to get the download on the Apex 'Create Report Layout' page.
Named Columns (XSL-FO)
Similar to the RTF templates you can upload raw XSLFO templates. This method, of course can be used when you are using something like Apache FOP for formatting rather than BIP - but we're not going to go there are we :o)
It should be noted here that the templates and report definitions are managed wholly by Apex and are not stored on the BIP server at all. If you take a look at the architecture diagram on the previous article, you'll see the 'Converter Servlet' sitting in the BI Publisher server. This a new piece of functionality for the BIP server that will serve up the output document based on the XML data, layout template and requested format.
Once the templates are loaded you now need to be able to access the report from a page, there are a couple of options with some caveats ... we'll get to that next.
Dimitri left a comment, thankfully with a link to his APEX/BIP integration article, check it out here:
Well worth the read!