Presenting Common Data Service data in a professionally formatted Microsoft Word document using Power Automate
As a follow-up to our previous blog, in this blog, we focus on the digital transformation of the very critical step in the release plans process – compiling the release plan from Common Data Service and presenting it in the form of a professionally formatted Word document for stakeholder review.
The need for automation
For the Microsoft Business Applications semi-annual release waves, hundreds of people, including product managers, product marketing managers, and content developers, come together to generate content in the release plan for over 35 products consisting of hundreds of features. This massive task creates a need for a humungous manual scrubbing process to ensure that:
- Product stakeholders are reviewing the release plans in the same format as the customers.
- The content is presented in a consistent structure across every product (product overview, a summary of planned features, followed by individual feature detail and their respective images).
This process takes several days for every review with the product stakeholders. When the content is revised with additional details, it requires review with the stakeholders again. These circumstances led us to believe that automation was imperative to scale.
Dynamics out-of-box report generation through Word Templates
The first option that we considered for document generation was the out of the box (OOB) document generation functionality within Dynamics 365: Word Templates. With this feature, we can create a Word template and apply it to the content in CDS. While the functionality allows us to export the content easily and quickly into a Word document for offline review, it currently has some limitations for our business scenario.
- Lack of custom filters. The Word Template functionality helps to generate a Word document that includes every record for the selected entity (and its related records) such as Release plan. We needed to output a subset of release plans based on a set of criteria (e.g., for a specific release wave, based on flags such as “ready to disclose,” “reviewed by the teams,” etc.). Inability to filter led to a follow-up activity of manually removing sections of data that should not be a part of the review.
- Inability to organize content by sections for easy readability. For the release plan, we needed a vertical hierarchy of headers and subheaders at various levels to arrange the content and make a large amount of information easily consumable. The OOB capability offered straightforward tabular formatting of data for repeated content. This allowed us to generate a table of all release plans for a product. However, we could not create different sections with a summary and a table for each product.
- Cannot convert Markdown to HTML. Product Managers enter the content in Markdown format, and the formatting tags appear in the Word document with no possibility of converting to HTML. This limitation required additional time to clean up the content before showing it to the executives.
- No image support. Images such as screenshots are very critical for the creation of walkthroughs of features. These images had to be manually added after document generation.
Generation of Release Plans using Power Automate
With Power Automate, we can generate the release plan at one click and in a way that overcame the limitations that we experienced with the out of the box document generation. Following are some features that applied very well to our scenario
- Applying custom filters. The Power Automate document generation could set the parameters and flags to determine what data needs to be published in the report.
- Organizing content by section. As shown below, the release plan is organized by sections for each product for easy readability (this example pertains to one product only)
- Exec Summary (overview)
- What’s new and planned (capabilities)
- Table of specific features for the capabilities
- Formatting of summary content. The bulleted list enabled effective communication and helped to identify critical points efficiently.
- Images: Images that are stored in the CDS app are retrieved in the Flow and appended to the release plans.
Document generation on demand
The product stakeholder can easily create a subset of their release plan document for a specific product, timeframe, or any other custom filters. This approach helps the product stakeholder generate a near-final look and feel of the content for a thorough offline review.
When one of the options (All features/Features ready to disclose) is selected, the system will show the following prompt, and the requestor will receive the document over the email.
Limitations with Power Automate
While Power Automate enabled us to get very close to our destination, the following are some limitations that we encountered.
- Unlike the OOB Word templates, the Flow is the background process, and the Word document output is not immediate. The Word document will be sent over the email based on the number of products selected, the number of release plans in each product, and the number of images in each release plan. In our scenario, the document generation takes 45 minutes to generate a 400+ page release plan document for all the 35+ products with 100+ images. This limitation may not apply if you don’t have a lot of images.
- Due to limited functionality with the Microsoft Word connector, we relied on the SharePoint connector to create and retrieve the Word document. Due to the Word connector limitation, the Table of Contents must be generated manually in Word after the document is generated.
Things to know
- We use an HTML template to generate the release plan content using Power Automate. The HTML content output will be stored in a Word document in .doc format. This gives us the flexibility to generate highly polished Word documents.
For the broader community, we uploaded the Power Automate solution along with a template in GitHub as part of our Release Planner solution. We also provided step-by-step instructions to install & configure the solution to generate a Word document from the Release Planner app.