Skip to main content

Elevate Attachments


Overview

The Elevate Attachments extension enhances Microsoft Dynamics 365 Business Central by allowing you to attach multiple additional documents to outgoing emails. Out of the box, Business Central only allows a single report attachment per email. Elevate Attachments removes this limitation by letting you bundle extra report layouts and uploaded files into reusable Attachment Groups, which are then linked to document report selections for customers and vendors.

When an email is sent from Business Central (e.g. a posted sales invoice), Elevate Attachments automatically includes all the additional reports and files configured in the linked Attachment Group — alongside the standard document attachment.

Additionally, Elevate Attachments includes a powerful Attachment Generation feature that lets you define templates to dynamically generate data-driven file attachments (HTML, CSV, XML, JSON, or PDF) from any table in Business Central. These generated files can be included alongside report layouts and static files in your Attachment Groups.

Elevate Attachments also adds a Send Email with Attachments action to the Customer List, Customer Card, and Vendor List pages, letting you send a standalone email with any Attachment Group's contents at any time — independently of any document workflow.


Key Concepts

ConceptDescription
Attachment GroupA collection of additional report layouts, file attachments, and/or generated attachments. You create these once and reuse them across customers or vendors.
Attachment ReportA report layout added to an Attachment Group. When an email is sent, the report is rendered using the selected layout and attached in its native format (Excel, Word, or PDF).
File AttachmentA static file (e.g. PDF, image, spreadsheet) uploaded to an Attachment Group. The file is attached to every email sent using that group.
Attachment GenerationA dynamically generated file attachment based on a template. Templates can pull data from any Business Central table and output it as HTML, CSV, XML, JSON, or PDF.
Attachment Generation TemplateA reusable definition that specifies how to build a generated attachment — including source table, columns, filters, grouping, styling, and output format.
Attachment Group CodeThe code field added to Customer/Vendor Report Selections, global Report Selection pages (Sales, Purchase & Warehouse), and the Customer/Vendor Card. Links a document layout or a customer/vendor record to an Attachment Group.

Supported Document Types

Elevate Attachments works with the following Business Central document types:

Sales

Document TypeReport Selection Usage
Sales OrderS.Order
Sales Invoice (unposted)Pro Forma S. Invoice
Posted Sales InvoiceS.Invoice
Posted Sales Credit MemoS.Cr.Memo
Customer StatementC.Statement

Purchasing

Document TypeReport Selection Usage
Purchase OrderP.Order
Posted Purchase InvoiceP.Invoice
Posted Purchase Credit MemoP.Cr.Memo

Warehouse

Document TypeReport Selection Usage
Warehouse documentsAs configured in Report Selection - Warehouse

Setup Guide

Step 1: Create an Attachment Group

  1. Use the Tell Me search (Alt+Q) and search for Attachment Groups.
  2. The Attachment Groups list page opens.

Attachment Groups list

  1. Click + New to create a new line.
  2. Enter a Code (up to 20 characters, e.g. SALES-STD) and a descriptive Name (e.g. "Standard Sales Attachments").
  3. Repeat to create as many groups as you need (e.g. one per customer segment, one per document type, etc.).

Attachment Groups Fields

FieldDescription
CodeA unique code identifying the Attachment Group (up to 20 characters).
NameA descriptive name for the Attachment Group.

Step 2: Add Reports and Files to the Group

  1. From the Attachment Groups list, select the group you want to configure.

  2. Click the Group Attachments action in the action bar (or the Process menu).

  3. The Group Attachments page opens, showing three sections:

    • Reports — additional report layouts to render and attach.
    • Files — static files to attach.
    • Attachment Generation — dynamically generated file attachments based on templates.

    Group Attachments page

Adding a Report Layout

  1. In the Reports section, click the Add from Report Layout List action.

    Add from report layout list

  2. A lookup opens showing all available report layouts.

  3. Select the desired report layout and click OK.

  4. The report's Report ID, Name, Runtime Package ID, and Layout Format are populated automatically.

  5. Repeat to add more report layouts as needed.

Note: Reports are rendered and attached in the format matching their layout type — Excel layouts produce .xlsx files, Word layouts produce .docx files, and RDLC layouts produce .pdf files.

Attachment Reports Fields
FieldDescription
Report IDThe ID of the report to render and attach.
NameThe name of the report.
Runtime Package IDThe runtime package ID identifying the specific report layout to use.
Layout FormatThe format of the report layout (RDLC, Word, Excel, or External).

Adding a File Attachment

  1. In the Files section, click the Add Attachment action.

    Add Attachment Action

  2. A file browser dialog opens — select the file you want to upload (e.g. a PDF terms & conditions document, a price list, etc.).

  3. The file is uploaded and stored in Business Central. The File Name column displays the uploaded file.

  4. Repeat to add more files as needed.

  5. To preview or view details of an uploaded file, click on the File Name value — this opens the Document Attachment Details page.

File Attachments Fields
FieldDescription
File NameThe name of the uploaded file. Click to open the Document Attachment Details page.

Adding an Attachment Generation Entry

Prerequisite: You must first create an Attachment Generation Template before you can add one to a group. See Attachment Generation Templates for full details on creating and configuring templates.

  1. In the Attachment Generation section, select a Template Code from the lookup. Only templates marked as Enabled are available for selection.

Attachment Generations

  1. Optionally set a File Name — if left blank, the template description (or code if blank) is used. Supports tokens such as {No.}, {Date}, and {Group} — see File Name Tokens.
  2. Choose the desired Output Format (HTML, CSV, XML, JSON, PDF, or PDF (Word Layout)). The correct file extension is added automatically. See Word Output — Limitations for details on the Word layout option.
  3. Optionally override the HTML Layout or Document Layout for this specific entry.
  4. Use the Runtime Filters action to configure which source table fields should be filtered at send time.

Runtime Filters

  1. Repeat to add more generated attachments as needed.
Attachment Generation Attachments Fields
FieldDescription
Template CodeThe Attachment Generation template to generate and attach. Only enabled templates can be selected.
Template DescriptionThe description of the linked template (read-only).
File NameThe output file name. If blank, the template description (or code) is used. The correct file extension is added automatically. Supports tokens: {No.}, {Date} (YYYYMMDD), {Group} — see File Name Tokens.
Output FormatThe output file format: HTML (styled table), CSV (comma-separated values), XML (structured data), JSON, PDF, or PDF (Word Layout). The PDF (Word Layout) option renders using dedicated Word layout reports — see Word Output — Limitations.
HTML LayoutOverrides the template's default HTML layout for this entry: Columns (standard table) or Row Per Column (each field as its own row).
Document LayoutOverrides the template's default document layout for PDF and Word output: Auto (selects Fixed Column for up to 7 columns, Row Per Column for more), Fixed Column, or Row Per Column.
IncludeWhether to include this attachment when sending the email. Can be toggled at send time via the Select Attachments dialog.

Removing Attachments

  • To remove a report layout, select the line in the Reports section and press Delete or use the Delete Line action.
  • To remove a file, select the line in the Files section and press Delete. The underlying stored document is automatically cleaned up.
  • To remove a generated attachment, select the line in the Attachment Generation section and press Delete.

You can link Attachment Groups at two levels:

Option A: Customer/Vendor-Specific (Document Layouts)

This is the most common approach — it lets you configure different attachment groups per customer or vendor.

  1. Open the Customer Card (or Vendor Card) for the relevant customer/vendor.
  2. Navigate to Related > Document Layouts.
  3. On the report selection line for the relevant usage (e.g. Invoice, Order, Credit Memo, Statement), you will see a new Attachment Group Code field (added by Elevate Attachments).
  4. Set the Attachment Group Code to the group you created earlier.

Attachment Group Code on Customer Document Layout

  1. When an email is sent for that document type for this customer/vendor, the additional reports and files from the Attachment Group will be included.

Option B: Global Report Selections (All Customers/Vendors)

Use this approach if you want the same attachments for all customers or all vendors.

  1. Search for Report Selection - Sales, Report Selection - Purchase, or Report Selection - Warehouse using Tell Me.
  2. On the relevant usage line, you will see the Attachment Group Code field.
  3. Set the Attachment Group Code to your desired Attachment Group.

Report Selection - Sales

Important: Customer/Vendor-specific document layouts take priority. If a customer has their own document layout configured with an Attachment Group, that will be used instead of the global report selection setting.


Sending Ad-hoc Emails

Elevate Attachments also supports sending standalone emails with attachments outside of any document workflow. See Sending Ad-hoc Emails for details.


Attachment Generation Templates

Attachment Generation is a powerful feature that lets you define templates to dynamically generate data-driven file attachments (HTML, CSV, XML, JSON, or PDF) from any table in Business Central. See Attachment Generation Templates for the full reference.


Pages Reference

PageTypeDescription
Attachment GroupsListCreate and manage Attachment Groups. Searchable via Tell Me.
Group AttachmentsListView and manage the reports, files, and generated attachments within a specific Attachment Group. Opened from the Attachment Groups list.
Attachment ReportsList PartThe reports sub-section within Group Attachments. Shows Report ID, Name, Runtime Package ID, and Layout Format.
File AttachmentsList PartThe files sub-section within Group Attachments. Shows file names with drill-down to view file details.
Attachment Generation AttachmentsList PartThe generated attachments sub-section within Group Attachments. Shows Template Code, Template Description, File Name, Output Format, HTML Layout, PDF Layout, and Include.
Attachment Generation TemplatesListCreate and manage Attachment Generation Templates. Searchable via Tell Me.
Attachment Generation Template CardCardConfigure a single template including columns, rows, cells, source table filters, runtime filters, and styling.
ColumnsList PartDefine the columns for a template (subpage of the Template Card).
RowsList PartDefine the rows for a Manual template (subpage of the Template Card).
Attachment Generation CellsListConfigure individual cell values for Manual templates. Opened via the Edit Cells action.
Column Relation SetupCardConfigure how a column links to a related table: set relation table, display field, join fields, and additional filters. Includes a Save as Preset action.
Column FiltersListDefine per-column source table filters. Opened via the Column Filters action on the Columns subpart.
Relation PresetsWorksheetCreate and manage named relation presets at the template level. Opened via the Relation Presets action on the Columns subpart.
Relation Preset CardCardConfigure a single relation preset including its join fields and additional filters.
Source Table FiltersList PartDefine static filters on the source table for Data Source templates.
Runtime FiltersListDefine fields whose filter values are supplied at runtime. Opened via the Runtime Filters action on the Attachment Generation section.
File Name TokensListView the tokens available for use in the File Name field ({No.}, {Date}, {Group}).
Select AttachmentsDialogPresented when sending emails; allows you to choose which attachments to include and review runtime filter values.
OutputDialogDisplays generated output for preview or copy purposes.
Enter Email AddressDialogPrompts for an email address when using the Send via Email action.

Fields Added to Standard Pages

Elevate Attachments adds the Attachment Group Code field to the following standard Business Central pages:

PageLocation
Customer CardAfter the "E-Mail" field
Vendor CardAfter the "E-Mail" field
Customer Document LayoutsAfter the "Email Attachment Layout" field
Vendor Document LayoutsAfter the "Email Attachment Layout" field
Report Selection - SalesAfter the "Email Body Layout Code" field
Report Selection - PurchaseAfter the "Email Body Layout Code" field
Report Selection - WarehouseAfter the "Report ID" field

Note: You can personalise the page to move the column as needed.


Permissions

The extension includes a permission set that grants full access to all Elevate Attachments objects. Ensure users who need to configure or use Elevate Attachments have the ElevateAttach_ELA_EQL permission set (captioned "Elevate Attachments") assigned, or have equivalent permissions to the following objects:

Object TypeObjectAccess
Table DataAttachment GroupRead, Insert, Modify, Delete
Table DataAttachment ReportRead, Insert, Modify, Delete
Table DataFile AttachmentRead, Insert, Modify, Delete
Table DataGroup AttachmentRead, Insert, Modify, Delete
Table DataAttachment Generation TemplateRead, Insert, Modify, Delete
Table DataAttachment Generation ColumnRead, Insert, Modify, Delete
Table DataAttachment Generation RowRead, Insert, Modify, Delete
Table DataAttachment Generation CellRead, Insert, Modify, Delete
Table DataCol RelationRead, Insert, Modify, Delete
Table DataAG AttachmentRead, Insert, Modify, Delete
Table DataAG Source FilterRead, Insert, Modify, Delete
Table DataAG Runtime FilterRead, Insert, Modify, Delete
Table DataColumn FilterRead, Insert, Modify, Delete
Table DataCol Relation FilterRead, Insert, Modify, Delete
Table DataRelation PresetRead, Insert, Modify, Delete
Table DataRelation Preset FilterRead, Insert, Modify, Delete
Table DataPreset Col RelationRead, Insert, Modify, Delete
Table DataPDF BufferRead, Insert, Modify, Delete
Table DataPDF Matrix BufferRead, Insert, Modify, Delete
PagesAll Elevate Attachments pagesExecute
CodeunitsAll Elevate Attachments codeunitsExecute
ReportsPDF Output, PDF Matrix Output, Word Output, Word Matrix OutputExecute

Frequently Asked Questions

Q: Can I use the same Attachment Group for multiple customers? A: Yes. Attachment Groups are reusable. You can assign the same group code to as many customer or vendor document layouts as you like.

Q: What file types can I upload as file attachments? A: Any file type supported by Business Central's Document Attachment functionality (e.g. PDF, XLSX, DOCX, PNG, JPG, etc.).

Q: What format are additional report attachments saved in? A: Reports are attached in the format matching their layout type: Excel layouts produce .xlsx files, Word layouts produce .docx files, and RDLC layouts produce .pdf files.

Q: What happens if no Attachment Group is assigned? A: Nothing changes — Business Central sends emails exactly as it does without the extension. Elevate Attachments only activates when an Attachment Group Code is present on the active report selection.

Q: Can I use Elevate Attachments with both Sales and Purchase documents? A: Yes. The extension supports Sales, Purchase, and Warehouse document types.

Q: Can I send an ad-hoc email to a customer or vendor without it being triggered by a document? A: Yes. Use the Send Email with Attachments action on the Customer List, Customer Card, or Vendor List pages. If the record has an Attachment Group Code set on the Customer or Vendor Card, that group is used automatically. Otherwise, you are prompted to choose one. The record's No. is passed as the {No.} runtime filter token for any generated attachments in the group.

Q: Can I set a default Attachment Group for a specific customer or vendor? A: Yes. Open the Customer Card or Vendor Card and set the Attachment Group Code field (shown after the E-Mail field). This is used as the default when the Send Email with Attachments action is triggered from that record.

Q: Do I need to do anything special when sending emails? A: No. Once configured, Elevate Attachments works automatically in the background. When you send a document email through Business Central's standard process, the additional attachments are included without any extra steps. If generated attachments with runtime filters are configured, you may see a dialog to review filter values.

Q: What output formats are available for generated attachments? A: Attachment Generation Templates support six output formats: HTML (styled table), CSV (comma-separated values), XML (structured data), JSON, PDF, and PDF (Word Layout). The PDF (Word Layout) option renders using dedicated Word layout reports with fixed styling — see Word Output — Limitations for details. You choose the format per attachment entry in the Attachment Group.

Q: What is the difference between Manual and Data Source template types? A: Manual templates let you define each row and cell individually — useful for fixed-format or summary attachments. Data Source templates automatically generate rows by querying a specified Business Central table — useful for dynamic, data-driven attachments like line item lists or ledger entry summaries.

Q: Can I preview a generated attachment before sending? A: Yes. Use the Download HTML with Filters, Download Word with Filters, Download CSV with Filters, or the equivalent action for your desired output format on the Attachment Generation Template Card to generate and download the output without sending an email.

Q: What is the difference between PDF and PDF (Word Layout)? A: PDF renders using RDLC report layouts with full styling support (custom fonts, colours, alternating rows). PDF (Word Layout) renders using dedicated Word layout reports with fixed styling (bold blue labels, grey separators). PDF (Word Layout) is recommended when you prefer Word-style formatting for email attachments. To download an editable Word (.docx) document, use the Download Word with Filters action on the Template Card. See Word Output — Limitations for full details.

Q: What are Runtime Filters? A: Runtime Filters are template filters whose values are determined at the time of sending rather than being hard-coded. For example, you might configure a runtime filter on Document No. using {No.} as the default value so the generated attachment automatically includes only data related to the document being emailed.

Q: What are Relation Presets? A: Relation Presets let you save a related table configuration (relation table, join field mappings, and additional filters) as a named preset at the template level. Once created, you can apply the same preset to multiple columns without reconfiguring each one. Use the Save as Preset action on the Column Relation Setup card to create a preset from an existing column configuration.

Q: What are Column Filters? A: Column Filters restrict source table records for a specific column only, independently of the template-level Source Table Filters. They are useful when different columns need to pull values from the same source table but with different filtering criteria.

Q: What are File Name Tokens? A: File Name Tokens are placeholders in the File Name field of an Attachment Generation entry that are replaced with real values at generation time. Available tokens are {No.} (the record's identifier), {Date} (today's date in YYYYMMDD format), and {Group} (the attachment group code).

Q: Does the template need to be Enabled before I can use it? A: Yes. A template must have the Enabled field set to true before it can be added to an Attachment Group. This prevents accidentally using incomplete or draft templates.


Troubleshooting

IssueResolution
Additional attachments are not appearing on emailsVerify that the Attachment Group Code is set on the correct report selection line (either customer-specific document layouts or global report selections).
"Record not found" error when sending an emailEnsure the report layout referenced in the Attachment Group still exists. If a layout was deleted or renamed, remove it from the group and re-add it.
File attachment is missing from emailConfirm the file was uploaded successfully by clicking the file name in the Group Attachments page to view its details.
Error when sending email with an Attachment Group reportThe Report ID of each report in the Attachment Group must match the Report ID configured on the document layout / report selection line. Even if the usage (e.g. Invoice) is the same, using a different Report ID in the Attachment Group will cause an error. Remove the mismatched report from the group and re-add it using the correct Report ID.
Generated attachment is empty or missing dataCheck the Source Table Filters, Column Filters, and Runtime Filters on the template. Ensure the filters match records in the source table. Use the Download HTML with Filters action to test.
Template is not available in the lookupEnsure the Enabled field on the template is set to true. Only enabled templates appear in the Template Code lookup on the Attachment Generation section.
User cannot access Attachment Groups pageEnsure the user has the ElevateAttach_ELA_EQL permission set assigned, or equivalent permissions.