Tutorials/Power Apps/Generate PDF Reports from Power Apps Without Coding: Word Template Method
Power Appsintermediate

Generate PDF Reports from Power Apps Without Coding: Word Template Method

Easily create professional PDF documents from your Power Apps data using a Word template and Power Automate – without writing HTML.

NA
Narmer Abader
@narmer · Published June 3, 2026

In many business apps there is a need to generate formal documents like inspection reports, certificates, or work orders. Power Apps does not natively export to PDF, but by combining a Word document template with Power Automate you can produce polished PDFs with no HTML or CSS. This method uses content controls in Word to map fields and then fills them with data from your app. It’s straightforward, reliable, and works well for forms with a fixed layout.

Scenario: Equipment Maintenance Reports

Imagine a factory floor where technicians perform daily equipment checks. A Power Apps canvas app captures the results. When a record is saved, a PDF maintenance report is generated and emailed to the operations manager. This article walks through building that solution.

Create the SharePoint List

Start with a SharePoint list named EquipmentChecks with these columns:

  • MachineName (Single line of text)
  • CheckDate (Date and time)
  • Technician (Person or group)
  • LubricantOK (Yes/No)
  • TemperatureOK (Yes/No)
  • NoiseOK (Yes/No)
  • Comments (Multiple lines of text)

You can adjust the check columns to match your real inspection criteria.

Build the Power Apps Form

Open Power Apps Studio and create a new canvas app from blank. Add a connection to the EquipmentChecks list.

Insert an Edit form control and set its data source to the list. Layout the fields as shown below. Change the DefaultMode property of the form to FormMode.New.

Design the Word Document Template

Create a new Word document (.docx) and enable the Developer tab (Right‑click the ribbon → Customize Ribbon → check Developer).

Inside the document, write labels for each field (e.g., "Machine Name:") and insert a Plain Text Content Control next to each label. For each content control, open its Properties and set both the Title and Tag to the exact SharePoint column name (e.g., MachineName, CheckDate, Technician, LubricantOK, etc.). This mapping is critical – Power Automate uses these names to populate data.

Add page headers, footers, or your company logo as needed. Because this is a real Word document, page breaks, numbers, and headers work naturally.

Save the document to OneDrive or a SharePoint library. For this example, we will save it to the root of OneDrive.

Automate with a Power Flow

Now that the SharePoint list and Word template are ready, build an automated cloud flow that triggers whenever a new item is created in EquipmentChecks.

  1. Trigger: When an item is created – select your SharePoint list.
  2. Action: Populate a Microsoft Word Template – choose the Word document you saved. Map each field to the corresponding dynamic content from the trigger.
Premium connector

The “Populate a Microsoft Word Template” action is a premium connector. It requires a per‑user license (Power Apps per user/per app with Power Automate) or a standalone Power Automate plan. Check your organization’s licensing before deploying.

The Yes/No columns return true or false. Convert these to pass/fail using expressions. For instance, for LubricantOK:

powerfxBoolean to text expression
if(triggerOutputs()?['body/LubricantOK'], 'Pass', 'Fail')

Apply the same expression for TemperatureOK and NoiseOK.

  1. Action: Create File (to temporarily store the filled Word document) – provide the location (OneDrive or SharePoint) and the file content from the previous step.

  2. Action: Convert Word Document to PDF – point to the file created in step 3.

  3. Action: Send an Email (V2) – include the PDF as an attachment. In advanced parameters, set Attachments Name to "EquipmentCheckReport.pdf" and Attachments Content to the PDF output from step 4.

Alternatively, you can use a Create File action to save the PDF directly to a SharePoint document library instead of emailing it.

Security and Performance Notes

  • Permissions: The Power Automate flow runs under the owner’s account. Ensure the flow has write access to the Word template location and the target email or document library.
  • Licensing: As mentioned, the populate and convert actions are premium. Test with a licensed user.
  • Delegation: Not an issue here because SharePoint list triggers and actions work directly with list items.
  • File versioning: Consider enabling versioning in the target document library to avoid overwrites.

Common Mistakes and Troubleshooting

IssueLikely cause and fix
Fields not populatedContent control Tag does not exactly match the dynamic content name. Re‑check names.
PDF appears blankThe Word template may be missing content controls. Open template and verify controls are present.
Boolean shows “true”/“false”You forgot the if() expression in the populate action. Add the conversion shown above.
Flow fails with “file not found”The template path is incorrect. Use the full file path from OneDrive or SharePoint.
PDF not attached to emailEnsure you set the Attachments Content to the PDF output (not the Word file).

Final Recommendation

The Word template approach is the simplest route when you need a clean, paginated PDF with headers and footers. It requires no HTML knowledge and works with virtually any static form layout. However, if your document must contain repeating tables or images that change per row, the HTML method may be necessary. For the majority of business forms, start with Word – it’s quicker to build and easier to maintain.

References

  • Original article: Easiest Way To Generate A PDF In Power Apps (No HTML) by Matthew Devaney
  • Microsoft documentation: Populate a Microsoft Word Template (add link if known, else placeholder)
  • Microsoft documentation: Convert Word Document to PDF (add link if known, else placeholder)