What are Docentric SSRS Replicas

Docentric SSRS replicas are copies or replicas of the built-in SSRS report designs created with Docentric designer. All data from a SSRS report is by default completely reused in the created Docentric design. Docentric designs or layouts are called report templates. These templates are just ordinary Word documents with special tags used to show report data. So, a Docentric replica of a particular SSRS report design is a Docentric template which has the same data and uses similar styles and formats as the source SSRS report design.

Docentric replicas are meant to serve as a starting point for report customization in the same way as the built-in SSRS report designs did in AX 2012, when we were customizing them with overlayering.

What are Optimized Docentric replicas

These are Docentric replicas with optimized report data source. Sometimes in the source SSRS report there is only one table which contains both header and line fields (e.g. Customer account statement, Collection letter note, etc.). This can cause difficulties when such a report is customized. This is the reason why their data source is reshaped and restructured into ‘header’ and ‘line’ records. On the other hand, in some reports such as Customer or Free text invoice, hundreds of fields are kept together in the single table instead of multiple ones, so these data are also reshaped and regrouped into meaningful sections, enabling this way much easier and faster report design.

Thus, we have optimized data sources for some reports for the sake of much easier design and maintenance.

Also note that some of reports have only Optimized replicas because otherwise it would be very hard to design and customize them. This is especially true for end-users.

Just for illustration, let’s take a look at the data source of the Sales invoice report: original SSRS vs. optimized by Docentric. You will notice that the original data source has 200+ fields in each of report line, and many fields that actually belongs to the report header.

 

How report data source is optimized for Optimized Docentric replicas

To be able to reuse original SSRS report data, Docentric AX Framework fetches the data from SSRS report RDP tables that are filled by SSRS report data provider, and serialize them into XML always in the same manner: each record from a report RDP table becomes an XML element and each field from this table becomes its XML attribute. This XML is called DDSP (Docentric Data Source Package), and both Docentric designer and document rendering engine understand it. Serialization of SSRS RDP tables to DDSP is done by the the default Docentric DSP (Data Source Provider) class called DocDataSourceProviderSrsReporting.

Optimization of report data source means nothing else but creating a custom Docentric DSP class for a particular report, by extending the base DocDataSourceProviderSrsReporting class, and changing (in this inherited class) the default way of report data serialization to the resulting XML (i.e. DDSP). This way the report data source gets reshaped.

Read more about Docentric DSP classes >>

What about custom placeholders

A custom Docentric DSP class can also be used for defining custom placeholders that will be available for use in the report print destinations. For example Purchase ID, Vendor Account and Vendor Name are custom placeholders in the case of the Purchase Order report, and you can use them in the Email body, subject or file output name.

Note that from the version 3.0.5, most of the Docentric SSRS replicas provide a certain set of custom placeholders out-of-the-box, which means that they have custom Docentric DSP classes assigned but not necessary data source reshaped (optimized). One such report is Purchase order product receipt (i.e. PurchPackingSlip.Report).

Read more about Custom Placeholders >>

How can I add some additional data to my report

Standard approach

If you want to add some additional data to your report, you can do it in the standard way: add new fields to the built-in SSRS report RDP table(s), and implement business logic within the built-in SSRS report data provider class (e.g. PurchPurchaseOrderDP for the Purchase order report). The newly added fields will be visible immediately in the regenerated DDSP file, so you can use them to customize your report further with Docentric designer.

If you use an Optimized replica (that has a custom Docentric DSP class), it can happen that you don’t see the newly added fields in the regenerated report DDSP file. For this situation please see the next question.

Docentric approach

The alternative way of adding additional data to your report is to add them without modifying the built-in SSRS report artifacts (RDP tables, DP class) through the code in a custom Docentric DSP class for this report.
Read all about this technique >>

Docentric approach enables you to add additional data in more flexible and significantly faster way. Also, upgrades of your ERP system regarding customized reports will be smoother and faster if you use this approach, since it doesn’t require modifications of the built-in report artifacts.

Hence, using a custom Docentric DSP class doesn’t mean only optimizing report data source. It also enables much faster development as well as great flexibility regarding data shaping and structuring. For example, using this approach you can easily add a sub-line for each line of a quote, or any other entity. Otherwise, you would need to create and fill an additional RDP table. You can also structure additional (and existing) data into meaningful groups, exclude unnecessary data, etc.

Why do I not see my custom data in Optimized replica

If you are using an Optimized replica (that has a custom Docentric DSP class reshaping the report data source), it can happen that you don’t see the custom fields your company has added to the built-in SSRS report RDP tables for customization purposes in the report DDSP file. In other words, you don’t see these fields in the Docentric designer when you load the regenerated DDSP file while customizing the report design (aka Docentric template), starting from its Optimized Docentric replica.

In this case please open the custom DSP class and search for all TODO tasks. One of them will suggest you where and how to handle this issue.

If you cannot solve the issue please contact us at support@docentric.com and we will gladly help you to resolve it.

How can I develop a completely new SSRS report

Custom Docentric DSP classes play the main role when developing a custom report from scratch.
Learn about developing custom reports in detail >>

From the version 3.3.0 Docentric improves built-in Print archive by adding features such as viewing of archived reports’ content and print destination settings, e.g. email messages; searching archived reports by report name, document ID (e.g. Invoice ID), source table ID (e.g. Sales/Purchase ID), Customer/Vendor account number, etc.
Learn more about improved Print archive >>

Viewing of an executed report’s print destination settings works out-of-the-box for any report saved to Print archive including those which are using the default DSP class. For all other improved Print archive‘s features in order to work you need to use custom report DSP classes which will set up so called Docentric archive contract.

Docentric replicas’ DSP classes from the version 3.3.0 already contain X++ code that sets up Docentric archive contract.

You can download the newest Docentric AX SSRS Replicas model and compare it with your version to apply those changes. Actually, it’s only few lines of code needed to set up Docentric archive contract.

Learn how to set up Docentric archive contract >>

See also

Download Docentric SSRS Replicas >>
Which Docentric SSRS Replicas are Available >>
Why to Use Docentric SSRS Replicas >>
How to Use Docentric SSRS Replicas with Free Edition >>
How to Customize Docentric SSRS Replicas >>

IN THIS ARTICLE