----------------------------------------------------------------------------------------------------
Version 3.5.0 Change Log
----------------------------------------------------------------------------------------------------
- Print from common journals - Free Edition:
  Printing reports directly from common journal forms is now supported:
  >> Print journal: Print a single selected journal interactively, with or without using Print management.
  >> Print in bulk and batch: Print multiple journals, with or without using Print management – either interactively or in batch.
     > Use the 'Records to include' filter (button 'Print range') or select multiple records directly in the journal form (button 'Print selected') to choose which journals to print.
     > Printing can be performed with or without using Print management settings.
     > Printing can also be performed in batch.
  >> When printing a single or multiple journals without using Print management, the user is prompted to configure ad-hoc print destination settings, including the target report template and print destination.  
  >> Currently supported journals and reports:
     > Customer invoice journal: Sales invoice and Free text invoice reports.
     > Project invoice journals: all Project invoices reports.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-print-management/d365-print-management-improvements-overview/

- Send reports to SFTP - Full Edition:
  Sending reports to SFTP server endpoints is now supported via Docentric File print destination > Send to SFTP.
  >> SFTP settings, a new setup form, has been introduced with the following options:
     > Configure SFTP server endpoints, which define remote SFTP connection details, including the SFTP server hostname, port, and authentication credentials (username + password or private key).
     > Credentials can be stored either in the database or in Azure Key Vault.
     > When storing credentials in the database, specify either a password or a private key, depending on the selected authentication type.
       - For key-based authentication, provide the private key from your SSH key pair (public/private keys) in a text-based format (PEM, OpenSSH, or PKCS#8), Base64-encoded and enclosed with delimiters.
       - Alternatively, upload the private key file by selecting Upload private key to store it in the database.
     > Advanced parameters such as connection timeout and proxy settings (when connecting through a proxy server) are also supported.
     > The remote folder is not part of SFTP settings but is configured when printing a report.
  >> A new 'Send to SFTP' tab has been added to the Print destination settings form > Docentric File print destination, where you can configure:
     > The desired SFTP server endpoint, previously configured in SFTP settings.
     > Remote folder path: The target folder path on the SFTP server, e.g. /uploads/@COMPANYID@/invoices. This path is relative to the SFTP user’s root folder if such is configured on the SFTP server; otherwise, it is relative to the root folder of the local disk.
     > Overwrite file if exists: If turned off, and a file with the same name already exists, the output file will not be saved.
     > Create non-existing folders: Automatically create each folder in the specified folder path that does not exist.
  Learn more: https://ax.docentric.com/send-reports-to-an-sftp-server-in-d365fo
 
- Print archive cleanup job - Free Edition:
  A new Print archive cleanup job has been introduced to delete records from the Print archive.
  >> A new 'Print archive cleanup' menu item, which opens the Print archive cleanup job dialog, has been added to Organization administration > Inquiries and reports > Print archive. It is not added to Common > Inquiries > Print archive, because that form shows only reports archived by the current user.
  >> Security: Users without the System administrator role can access this menu item by being assigned the new 'Maintain Print archive for all users' duty (DocPrintArchiveAllMaintain).
  >> Which Print archive records to delete can be configured using the Records to include filter. This filter is pre-populated based on the current selection and filters in the Print archive grid.
  >> Deletion can be performed either interactively or in batch.
  >> Whether the corresponding archived report documents - attached to the deleted records and stored in Azure Storage or SharePoint - are also deleted depends on the setting configured under 'General > Document removal options' of the Document type used for archiving.
  >> Storing information about deleted records and/or archived report documents is possible through code customization by subscribing to the DocPrintArchiveCleanupService.processDeletingRecord delegate.
  >> A soft limit of 10,000 records per job prevents performance issues. If exceeded, a confirmation dialog is displayed before continuing.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-improved-print-archive/#print-archive-cleanup 

- Document routing - Full and Free Edition:
  >> Suppress document routing: Added a new option to prevent document routing to network printers.
     > The option is available in the Docentric AX parameters form, under Document routing > General settings.
     > When the Suppress option is selected, the name of the printer to which the document would otherwise be routed and printed is logged in the Infolog.
     > Suppressing document routing applies:
       - to printing reports to network printers via DRA, as well as printing reports as PDFs via DRA, in both cloud and on-premises environments when using the Docentric Printer print destination.
       - to printing Warehouse labels based on Docentric templates to network printers, including License plate labels, Wave labels, Custom labels, and Container labels.
     > The Suppress option is automatically enabled when an environment change is detected (for example, when refreshing a UAT database from production). This prevents accidental printing to real printers. If environment change detection is turned off, suppression will not be enabled automatically.
     > Suppressing document routing can be useful in UAT environments (for example, after migrating the production database) or when testing printer token configurations (for example, to verify which values are resolved at runtime) and other print settings.
  >> Document routing history cleanup job: Added new buttons in Docentric AX parameters to provide quick access to the Document routing history cleanup job and to create it if it does not already exist.
     Three buttons have been added under Docentric AX parameters > Document routing > Document routing history:
     > Document routing status: Opens the Document routing status form.
     > Cleanup job > Go to job: Opens the Batch job form filtered to the Document routing history cleanup job.
     > Cleanup job > Create job: Creates the Document routing history cleanup job if it does not already exist.
  >> Added new delegates in the Docentric API for controlling the execution flow of printing PDF documents via Document Routing Agent (DRA) or to network printers (for on-premises D365FO installations).
     These delegates enable modification of printing settings or integration with third-party printing solutions (for example, follow-me printing).
     > DocReportRunDelegates::beforeRoutingPdfDocument: Triggered in the Docentric execution pipeline before the generated PDF is routed to the printer.
     > DocReportRunDelegates::pdfDocumentRouting: Triggered in custom printing scenarios when DocPrintManager::sendPdfDocumentToDocumentRouter() is called from X++ code to print a PDF document (either a generated report or an attachment).
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-how-to-set-up-docentric-ax-parameters/#document-routing 

- General - Full and Free Edition:
  >> An action link 'Add report to Docentric report setup' has been added to the Infolog message that appears when a report is executed with the 'Discover report technical name' option enabled in User options > Account > Docentric settings. The action link is displayed when the printed report is not yet registered in the Docentric report setup. Clicking the link automatically registers the report.
  >> Docentric now supports emailing without specifying 'To' recipients:
     > Any email message can now be sent to 'Cc' or 'Bcc' recipients without specifying 'To' when using the Docentric emailing framework.
     > Any report can be configured to be emailed to 'Cc' or 'Bcc' recipients without specifying 'To' when using the Docentric Email print destination. Validation of email recipients has been updated in the DocPrintDestSettingsEmail.validate() method to ensure that 'To', 'Cc', and 'Bcc' fields are configured correctly and to prevent invalid combinations.
     > The Batch email sending status form (SysOutgoingEmailTable), enhanced by Docentric, has been adjusted accordingly.
  >> Improved Collections process automation emailing: A new data entity, Docentric Email Template Sending Settings (DocCustAutomationSysEmailSystemTableEntity), has been introduced.
     > Enables export and import of Email sending settings per System email template.
     > Based on a 1:1 related table with SysEmailSystemTable used in the Collections process setup.
     > Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-data-management/d365-import-export-email-templates/
  >> SharePoint Extended Security: Added a new drop-down menu 'Access mode' to the 'Test access for SharePoint server' form (DocSharePointTestAccess). The menu lets you select the access mode, which determines the type of SharePoint authorization token returned. The following options are available:
     > None: The default system access mode is used.
     > Interactive with UI context: Uses a static token obtained from the currently signed-in D365FO user session (requested from the browser through a modal pop-up).
     > Interactive without UI context: Uses an On-Behalf-Of token for the current user without depending on the UI session. Intended for user-triggered background (asynchronous) operations, such as validation of SharePoint libraries in the SharePoint settings form in the Docentric report setup.
     > Non-interactive (batch): Uses an app-only token obtained through the application's Microsoft Entra identity. Intended for unattended batch executions.
     > Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-security/d365-sharepoint-extended-security/#test-access-to-sharepoint-url

- System and Utilities - Free Edition:
  >> The following functionalities of the Docentric Query Browser are now applied to the standard 'Advanced filter or sort' form, available under 'Options > Page options' on every form in D365FO:
     > Preview data returned by the edited query.
     > Copy the SQL statement of the query to the clipboard.
     > View details of the query data sources (table join mode, selected fields, etc.).
     > By default, these functionalities are visible to all users.
     > A new setting, DisableImprovementsOfAdvancedFilterOrSort, has been added to the DocSystemSetting table, which allows you to hide these functionalities if needed.
     > Learn more: https://ax.docentric.com/docentric-query-browser/ 
  >> Improved Docentric Label Browser:
     > Added support for copying multiple labels to the clipboard. Previously, copying was limited to a single label.
     > Renamed context menu options on the main grid (accessible via right click): 'Copy Global label ID' to 'Copy marked labels' and 'Search Global label ID' to 'Search label'.
     > Learn more: https://ax.docentric.com/docentric-label-browser/


********************
    FIXES
********************
- General:
  >> Improved eInvoice attachments: Fixed an issue where journals were not annulled correctly and eInvoice attachments were mishandled when printing to Docentric print destinations, especially when multiple extensions of the DocumentAttachment.run() method were present. The fix was implemented in the run() method of the DocumentAttachment_DC_Extension class.
  >> Improved Print archive: Fixed an issue where downloading an archived report document from the Print archive on common journal forms sometimes referred to the wrong journal record. This occurred when a journal record was only highlighted, not explicitly selected, when clicking, for example, Invoice > Docentric > Print archive > Download on the Invoice journal form. The same behavior occurred in the Detailed view of journal forms, where records are highlighted by default.
  >> Print management preview: Fixed an issue where using the Print management preview functionality generated the document using a Docentric template instead of the SSRS report design configured in the Print management setup.

- Emailing:
  >> Fixed an issue with emailing reports using the Docentric Email print destination, where emails could not be downloaded from the Docentric Report Viewer when both 'Email without report' and 'Preview before print?' were enabled.
  >> Fixed an issue with the 'Restart send' button on the 'Batch email sending status' form. Users with 'Update access' can now use this button (previously, higher permissions were required).

- System and Utilities:
  >> Docentric Application Insights: Increased the error message size limit from 1024 to 4096 characters to prevent truncation when sending messages to Application Insights.
  >> Internal Azure Blob storage: Improved error handling when temporarily saving to internal Azure Blob storage in the DocFileMngHelper::sendFileToTempStorage() and DocFileMngHelper::sendFileToTempStoreGetResult() methods. Errors from .NET were previously swallowed, making troubleshooting difficult.
     > The method DocFileMngHelper::SendFileToTempStore_GetResult() was renamed to DocFileMngHelper::sendFileToTempStoreGetResult() to align with Docentric naming conventions.
     > Added filename validation for invalid characters when sending files to internal Azure Blob storage in the DocFileMngHelper::sendFileToTempStoreGetResult() method.
     > Added sanitization of the pound symbol (#) in internal Azure Blob storage URLs, by replacing it with its percent-encoded value (%23). This prevents HTTP 403/409 errors caused by unencoded # characters.

- Docentric Designer and Document Generator:
  >> Corrected barcode generation in the Docentric Document Generator. Code 128 barcodes created with concat() and non-numeric GS1-128 Application Identifiers (e.g., ñ400, ñ90) are now handled correctly.
  >> Fixed an issue where invalid characters in record or field names caused errors when serializing Docentric Data Source Package (DDSP) files in the CBD and SSRS pipelines. Validation has been improved, invalid characters are now automatically replaced with underscores, and two helper methods (ensureValidXmlName() and isXmlNameValid()) were added to the DocGlobalHelper class.


----------------------------------------------------------------------------------------------------
Version 3.4.9 Change Log
----------------------------------------------------------------------------------------------------
- Improved License plate labels - Full and Free Edition:
  >> Label layout data sources (LLDS) are now supported for Docentric report templates for License plate labels (Default Docentric report: DocWHSLicensePlateLabel.Report, DSP class: DocWHSLicensePlateLabelDSP or its child, Warehouse label type: License plate label).
     > Different LLDSs can be set per template for the same report, and when an LLDS is set on a template, it takes precedence over the data source generated by the parent report's DSP class (or the ER model mapping if it is configured on the report and the template is ER-based).
     > The Label Layout Data Source form is extended to support, in addition to system queries, the configuration of Docentric data source queries. Only those LLDSs with a configured and active Docentric DS query can be used to design Docentric templates.
     > Docentric DS queries in LLDSs are configured using the improved built-in Query form (SysQueryForm), which we named Docentric Query Browser. From the LLDS form, Docentric Query Browser is opened in a special mode: with a fixed query root data source - the License plate label table, without the Aggregate, Group by and Having tabs, and with the option to view and change the names of query data sources.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-warehouse-labels/d365-improved-license-plate-labels/d365-how-to-add-additional-data-to-license-plate-labels/#configure-data-source-via-llds
  >> Added support for Fallback printers in Document routing setup for unresolved printers in the Dynamics printer selection flow when printing license plate labels using Docentric.
     > In D365FO v10.0.41, MS introduced a combobox 'Use specified printer' with the options 'Always' and 'As fallback printer' in the Document routing printers grid. The same combobox is added to the Docentric Document routing printers grid, however it can be used starting from D365FO v10.0.41.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-warehouse-labels/d365-improved-license-plate-labels/d365-label-layouts-and-dynamic-printer-selection/#dynamic-printer-selection
  >> You can now configure page orientation when printing license plate labels based on Docentric templates.
     > Configure Orientation in Docentric Document routing printers, or when printing license plate labels without Document routing setup (Print label > Print without setup (Docentric)).
     > If you select the Default option for Orientation (and not Portrait or Landscape), the orientation configured for the printer in the system will be used, which was the only option until this version.

- Docentric Query Browser - Free Edition:
  Docentric Query Browser is the Query form (SysQueryForm) extended by Docentric to support building AX queries from scratch with a Visual Studio-like experience and a Preview option.
  Functionalities:
  >> Use the Aggregate, Group by and Having options with fields from any query data source.
  >> Configure Join mode (shown as Join mode name): InnerJoin, OuterJoin, ExistsJoin, NoExistsJoin for nested query data sources (tables, data entities, views or maps). This also enables advanced filtering and sorting by fields from the added tables.
  >> For each data source, configure which table fields and display methods to include in the query results. The Dynamic fields option is also supported.
  >> Preview query results in a tabular view.
  >> On the Joins tab, both localized and technical names of the tables, selected table fields and display methods are shown, as well as join types and data source names, to improve user experience. You can also change the names of data sources.
  >> (3.4.9.1) Allow copying the SQL statement of the query to the clipboard, which can then be executed directly in SQL Server.
  >> (3.4.9.1) Allow export/import of queries to facilitate the exchange of queries between environments and users.
  >> (3.4.9.1) Display an indicator (*) near the form caption if the query settings have been changed and not saved.
  >> Limitations comparing to building a query in VS: not supported adding child data sources without existing table relations and having multiple root data sources.
  >> Added query prompt options to control the usage of the added functionalities when opening SysQueryForm extended by Docentric:
     > Enable Docentric improvements (which switches off all added functionalities)
     > Allow selection of fields for data sources
     > Allow selection of display methods for data sources
     > Allow changing the table join mode between data sources
     > Allow changing data source names
     > Allow preview of data returned by the edited query
     > (3.4.9.1) Allow export/import of the query
  >> The form is used for editing Docentric DS queries in Label layout data sources.
  >> The form can be opened with all available functionalities except renaming data sources from Docentric Table Browser, by clicking the Docentric Query Browser button. This enables you to configure a query with the current table as the query root data source and instantly preview the query results.
  >> (3.4.9.1) Added the 'Docentric Query Browser' menu item to the 'Options > Page options' action tab on all forms:
     > By default, the menu item is visible only to users assigned the System administrator role.
     > To allow users without the System administrator role to access the menu item, the new DocSysQueryForm privilege should be added to a security role assigned to those users.
     > To control the visibility of the menu item for specific forms, users, roles, companies, etc., extend the canDisplayDocSysQueryFormMenuButton() method in the DocSysQueryFormOptionsExtender class with custom logic in X++.
     > A new setting, DisableDocSysQueryFormMenuButtonDisplay, has been added to the DocSystemSetting table. This setting allows you to hide the menu item across all forms in the system and overrides all other visibility controls, including security and code customizations.
  Learn more: https://ax.docentric.com/docentric-query-browser/

- Docentric Label Browser - Free Edition:
  Docentric Label Browser provides advanced search of system labels within D365FO with a Visual Studio-like experience.
  Functionalities:
  >> Search for labels by Label ID (e.g. @SYS12345 or Budget), Global label ID (e.g. @SYS12345 or @Proj:Budget) or a label translation in any of the currently selected languages in the search bar. Search results also include labels added by customization.
  >> The search bar, consisting of a search box, find options and language selection, allows users to refine their queries. When the Search button is clicked, the grid below is populated with the corresponding search results.
  >> Find options: Starts with, Contains, Contains all words, Exact match.
  >> Context menu options (accessible with the right click):
     > Copy Global label ID: copies Global label ID of the selected label to clipboard.
     > Search Global label ID: performs a search by Global label ID of the selected label, for the selected languages in the search bar, and with Exact match as Find options; useful for checking translations in different languages or finding missing ones.
  >> Comparison with Label Search in VS:
     > Labels are not editable.
     > The Find References option is not supported.
     > Better performance and overall user experience than Label Search in VS.
  >> Docentric Label Browser, accessible from the Docentric AX workspace and the User-defined labels form, helps you find existing or missing translations before creating a user-defined label, whether based on a system label or not.
  >> The form can also be opened from Docentric Table Browser, by clicking the Docentric Label Browser button.
  Learn more: https://ax.docentric.com/docentric-label-browser/

- Improved Collections process automation emailing - Free Edition:
  Docentric improves Collections process automation emailing with:
  >> Improved System email templates for Collection process automation: you can design email body in a rich HTML editor with placeholders, and in addition to the OOTB placeholders configured for Collections process automations (in the Email template map table/form), you have the option of adding additional custom placeholders that also support dynamic images and tables.
  >> Improved emailing process configured per System email template: this brings you the ability to send emails via Batch email sending status and using (Docentric) email distributor batch, with the corresponding open invoices as email attachments, retrieved from configurable invoice sources with fallback options.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-emailing-and-alerts/d365-improved-collections-process-automation-emailing/

- Improved eInvoice attachments - Free Edition:
  The eInvoice attachment field of type boolean is added to the DocuRef table extension and as a checkbox to the Attachments form (DocuView). The following applies:
  >> It is visible only for the attachments of the Customer and Project invoice journal records and turned on, if the current attachment (the DocuRef table record) is a PDF invoice report (for invoices-related journals) or PDF collection letter report (for collection letter journal). The document has been attached to the journal record through the report execution process if the eInvoice attachment option (configured on the corresponding customer) was turned on.
  >> This flag is being set for SSRS, ER and Docentric report designs and print destinations starting from this version 3.4.9. However, the flag will appear as turned off for eInvoice attachments generated earlier. To turn it on (or off), use the Turn on/off eInvoice attachment button. Only one eInvoice attachment can exist per journal record.

- Emailing and Attachments - Free Edition:
  >> You can now send emails without attached report output file by using Docentric email print destination.
     > This can be a useful scenario when you want to take advantage of the printing process (e.g. in the combination with the posting process or Print management) and use the email body with placeholders to convey the meaningful information to the recipients.
     > The new setting is configurable on the Print destination settings form > Email > Attachment (the 'Email without report' checkbox), and visible in Print archive (the 'Email without report' field).
     > When archiving sent emails without a report attached, the report is still generated as a PDF document and saved in Print archive (i.e. to the location configured in the Document type used for archiving).
  Learn more: https://ax.docentric.com/email-collection-letters-without-attached-report-in-d365fo/
  >> Added an option configurable per user (in User Options > Account > Docentric Settings) to open Attachments of any record in tabular view (added 'Default attachment view' combo box offers a choice between 'Details view (built-in)' and 'Table view (Docentric)').
  >> On the All attachments form (DocAllAttachments), the button 'Open attachment' is renamed to 'Go to attachment'.
  >> On the Attachments detail form (DocReportAttachmentDetail), the button 'Open attachment' is renamed to 'View by attachment'.

- General - Full and Free Edition:
  >> Introduced a new setting 'Use query DS names' in Docentric report setup > Data source generation options, which affects the naming of data records when creating a DDSP for query-based reports. If it is turned off (the default setting), the table names are used as data record names, otherwise the query data source names are used.
  >> Docentric SharePoint extended security: If the feature 'Upgrade SharePoint User Authentication', delivered by Microsoft in D365FO v10.0.40, is enabled, Integrated SharePoint authorization type, a feature of Docentric SharePoint extended security, is not supported for user impersonation anymore, including fine-grained security. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-security/d365-sharepoint-extended-security/
  >> Improved search performance by adding indexes on Docentric fields to:
     > Print archive (the DocPrintJobHeader table): DocumentDateIdx (DocumentDate), DocumentIdIdx (DocumentId) and JournalIdx (JournalRecId, JournalType).
     > Batch email sending status (SysOutgoingEmailTable.Extension_DC): AccountIdx (AccountNum_DC, CompanyId_DC, AccountType_DC, CreatedDateTime, EmailItemId) and RecipientIdx (Recipient, CreatedDateTime, EmailItemId).
  >> Added a Help button that opens the corresponding how-to manual to the following forms:
     > Document routing and Document routing > Test setup
     > Docentric AX parameters > Licensing
  >> (3.4.9.1) Azure storage access: Starting with version 10.0.41, Microsoft is introducing Entra ID authentication to enhance security for accessing internal D365FO Azure storage, replacing the previously used account key-based authentication. This also results in restricted access to internal Azure Blob storage and denied access to Azure Files.
     Impact on Docentric:
     > No impact on Docentric report templates stored in internal D365FO Azure Blob storage.
     > Saving reports to internal D365FO Azure Blob storage and Azure Files via Docentric File print destination is deprecated. While saving to Azure Blob storage is expected to function, saving to Azure Files will no longer work due to the security changes introduced by Microsoft.
     > Action Required: Please transition to saving reports to external Azure storage.
  Learn more: https://ax.docentric.com/microsoft-enhances-security-and-restricts-access-to-d365fo-azure-storage/
  >> (3.4.9.1) Docentric APIs now support creating anonymous, shareable URLs for blobs in internal D365FO Azure Blob storage using Microsoft-managed access with a User Delegation Key (e.g. RBAC-limited access with a managed identity). These shareable URLs are valid for a maximum of 7 days, while account key-based authentication (now deprecated for internal D365FO Azure Blob storage but still valid for external Azure Blob storage) supports longer validity periods for shareable URLs.
  >> (3.4.9.1) Implemented faster SharePoint folder selection with improved search and navigation in Docentric SharePoint APIs:
     > Now handles large document libraries more efficiently.
     > Utilizes Full-Text Search with Keyword Queries for faster, scalable results.
     > Fixed: Methods DocSharePointHelperV2::getFolderItems() and DocSharePointHelperV3::getFolderItems() now correctly return files, in addition to folder items, when requested.
  >> (3.4.9.1) A new context menu option, 'Copy selected placeholders' (accessible via right-click), has been added to the Report placeholders form (DocReportPlaceholderList) and the Label placeholders form (DocLabelPlaceholderList), allowing users to copy selected placeholders to the clipboard.

- Docentric Designer and Document Generator - Full Edition:
  >> (3.4.9.2) Electronic signature now supports the use of EC (Elliptic Curve) certificates. Compared to RSA, EC certificates are smaller and provide equivalent security. The following algorithms are supported:
     > ECDSA with SHA-256
     > ECDSA with SHA-256K
     > ECDSA with SHA-384
     > ECDSA with SHA-512
  >> (3.4.9.2) Electronic signature appearance is enhanced with a configurable time zone. Previously, the AOS server time was used by default. The following new options are now available and can be configured on the setup form:
     > Server time zone (default)
     > Company time zone
     > User time zone
     > Explicitly defined (where the user selects a fixed time zone).

- System and Utilities - Full and Free Edition:
  >> Docentric Application Insights:
     > The upgrade procedure, which runs on every Docentric AX version upgrade, is updated to turn on the 'Send diagnostics data to Docentric' option in Docentric AX Parameters > Diagnostics. When turned on, diagnostics and usage data are collected and sent to Docentric Application Insights. This will help us detect and resolve issues faster, improve performance, features and user experience. We respect your privacy. Read in 'Docentric AX Privacy Policy' how we deliver on that promise.
     > New information is added to Application Insights telemetry: Whether the Docentric report templates used are based on a Label layout data source (IsTemplateLLDSBased).
  >> Added the new Aptos font family to AOT resources, supporting out-of-the-box document generation (aligning with the new MS Office default font that replaced the previous Calibri font):
     > Aptos (Regular, Bold, Italic, Bold Italic)
     > Aptos Black (Regular, Regular, Italic, Italic)
     > Aptos Display (Regular, Bold, Italic, Bold Italic)
     > Aptos ExtraBold (Regular, Regular, Italic, Italic)
     > Aptos Light (Regular, Italic)
     > Aptos Mono (Regular, Bold, Italic, Bold Italic)
     > Aptos Narrow (Regular, Bold, Italic, Bold Italic)
     > Aptos SemiBold (Regular, Italic)
     > Aptos Serif (Regular, Bold, Italic, Bold Italic)


********************
    FIXES
********************
- General:
  >> Print archive: Fixed an issue where attachments linked to a Print archive record were not deleted when the record itself was deleted.
  >> User-defined placeholders and Custom placeholders: Fixed a rare issue with processing User-defined and Custom placeholders that depended on the design-time DDSP (e.g. count(PurchOrderLines_Tax) for PurchPurchaseOrder.Report) when the 'Generate DDSP when report runs' option was enabled. In such cases, these placeholders could resolve to invalid values.
  >> User-defined placeholders: Fixed a bug where user-defined placeholders were not handled and resolved when used in the Tag field in Additional attachment rules in Docentric Email print destination.
  >> Improved error handling when accessing D365FO Azure storage (Azure Blob storage and Azure Files) by adding additional diagnostics messages.
  >> (3.4.9.1) Fixed an issue where canceling the upload of a report template file, whose filename already exists for another template of the same report, resulted in the existing template file being attached to the current template.
  >> (3.4.9.1) Print Management Setup: Fixed a potential bug that could prevent Print Management settings from opening when a user selects a setting under any document node, causing the form to become unresponsive and the AOS to crash. This bug would only occur if multiple customizations of this form were present in the environment.
  >> (3.4.9.1) DDSP generation: Fixed the generation of the design-time DDSP for query-based SSRS reports when the query did not return any data, causing the data schema not to be created in the DDSP.
  >> (3.4.9.1) Resolved the issue with the non-working lookup for the fields Languange and Category on the fast tab 'Docentric metadata settings' in the Attachments (DocuView) form.
  >> (3.4.9.1) SharePoint authentication: Fixed an issue that occurred when using the Integrated SharePoint authorization type with the 'Upgrade SharePoint user authentication' feature turned on and the OnBehalfOf authentication flow in D365FO v10.0.40 or later. The OnBehalfOf flow is used when D365FO runs code outside the UI context, such as in asynchronous operations (e.g., SysOperations Framework calling SysOperationSandbox::callStaticMethod()). This bug affected validation of document libraries configured in the Docentric report setup > Settings > Print destinations > SharePoint settings form.
  >> (3.4.9.2) Azure storage access: Fixed an issue where some customers experienced problems accessing Docentric report templates stored in internal D365FO Azure Blob storage.
  >> (3.4.9.2) Added a reference to the Ledger model in the Docentric AX Extension model to resolve compilation errors in D365FO v10.0.44 environments.
  >> (3.4.9.2) Increased field sizes to support full formatting options and results for User-defined placeholders and Electronic signature appearances (Numbers, DateTimes, etc.).
     > DocFormatString EDT size increased from 10 to 80 characters.
     > DocFormatStringSample EDT size increased from 20 to 100 characters.
  >> (3.4.9.2) Resolved a PDF conversion failure in Electronic reporting in D365FO v10.0.44 environments caused by incompatible Aspose.Pdf and Aspose.Words dependencies when Docentric is installed.
  >> (3.4.9.2) Fixed the cleanup logic of the encrypted field containing Azure storage connection string in the Azure storage accounts table when an environment change is detected.
  >> (3.4.9.2) Fixed the validation logic for the maximum retention hours used by the Document routing history cleanup batch job.
  >> (3.4.9.2) Fixed the issue with the missing permission to open an attachment (the DocuRef form) in the 'All attachments' form (DocAllAtachments) and in the 'View in grid' form (DocReportAttachmentDetail). In some cases, the record to which the attachment is linked was not properly set, resulting in the current user appearing to not have sufficient permission to open it.

- (3.4.9.1) Email tokens:
  >> Fixed an issue in the algorithm for resolving email tokens for delivery addresses. The problem occurred when the email token @DLV_Invoice@ was used in the 'To' field in the Docentric Email print destination, and there was only one email contact with the specified purpose in the delivery address, but it was marked as primary.
     The algorithm is now fixed to search for the email with the specified purpose in all email contacts of the selected delivery address, regardless of whether it is marked as primary or not.
  >> When a journal is posted, the reference to the current version of the delivery address is saved in the journal. If the delivery address is updated, a new version is created, and the previous version is marked as non-effective. When printing the journal using email tokens for the delivery address (e.g., @DLV@ or @DLV_Invoice@), the email tokens were not resolved if the journal references a non-effective delivery address.
     The token resolution process has been corrected to ensure that the selected delivery address is retrieved, regardless of its effectiveness.

- Collections process automation emailing:
  >> (3.4.9.1) Collections process setup: The 'Business Document' lookup for the built-in 'Email' action type has been updated to offer all System email templates, regardless of whether the 'Use Docentric email editor' option is enabled. System email templates based on the DocCustAutomationETH class, or any class that inherits from it, are excluded from the lookup.

- Docentric Designer and Document Generator:
  >> Fixed a problem where merging PDFs with multiple digital signatures resulted in an invalid PDF file. 
  >> A new PDF merging method has been introduced, addressing edge cases involving corrupt PDFs and those protected with an owner password.
  >> (3.4.9.1) Added support for <sub> and <sup> HTML tags (subscript and superscript) within HTML documents used as Subdocuments (bound to the Subdocument tagging element) in Docentric templates.
  >> (3.4.9.1) Report Engine now honors section breaks, ensuring sections start on the specified even or odd pages when generating non-Word formats (e.g., PDF, JPEG, PNG, etc.).


----------------------------------------------------------------------------------------------------
Version 3.4.8 Change Log
----------------------------------------------------------------------------------------------------
- Saving to external Azure Storage - Full Edition:
  >> In addition to full access to resources within external Azure storage accounts (via access keys), Azure RBAC authorization is now supported for enhanced security.
     Azure RBAC is an authorization system with role-based access (via app secret) that provides fine-grained access management for Azure resources such as blob containers and file shares.
  >> Role-based access (via app secret) to resources within external Azure storage accounts is configured via custom connection strings in the 'Azure storage accounts' setup, which can be generated with the help of the new 'Generate connection string' utility.
  >> The 'Test Connection' button is replaced with the 'Refresh' button, which validates and tests Azure Storage connection string across all records in the 'Azure storage accounts' setup.
  >> Fixed an issue with selecting and displaying the Key Vault connection string when switching legal entities in the 'Azure storage accounts' setup.
     Additionally, only Azure Storage accounts associated with 'DAT' and the current legal entity are displayed on the Print destination settings form.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-security/d365-azure-storage-accounts-security/

- Print management improvements - Free Edition:
  >> Print management utilities
     > Diagnostics: Improved search for invalid or missing email contacts (primary/purpose) of customers and vendors by adding an option to configure which customers and vendors to search (by setting up the 'Records to include' filter).
       So far, search for missing or invalid email contacts has been performed for all customers and vendors, which can be a long-running task. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-print-management/d365-print-management-utilities/#diagnostics
     > Added the 'Print management utilities' menu item to the 'Organization administration' module under the 'Docentric AX' menu.
  >> Print management setup
     > Added missing system buttons 'Back' (Close) and 'Save' to the form action pane. Learn more: https://ax.docentric.com/add-the-back-and-save-buttons-to-print-management-setup/
     > Added custom buttons 'Print management utilities' (navigates to the Print management utilities form) and 'Help' (navigates to https://ax.docentric.com/d365fo-print-management-settings-per-module/).

- Emailing - Free Edition:
  >> Introduced new email token @QuoteEmail@ for the reports: PSAQuotations, SalesQuotation and SalesQuotationConfirmation.
  >> Introduced new email token @OrderEmail@ for the SalesQuotation and SalesQuotationConfirmation reports, as these reports can contain a reference to the sales order.
     Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/report-emailing-capabilities/d365-additional-email-tokens/
  >> Email distributor cleanup job deletes those outgoing emails from the 'Batch email sending status' table which match the input parameters and configured criteria ('Records to include').
     For the input parameters 'Created date and time' and 'Latest status change date time', the Relative data range type is added. This enables users to choose the relative range for these parameters in addition to the fixed 'From' and 'To' date time values.
     Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-emailing-and-alerts/d365-improved-email-processing/#email-distributor-cleanup
  >> The 'Copy Formatting' and 'Remove Format' buttons are added to the toolbar of Docentric email body editor in the maximized view.
     The editor is used in the Print destination settings form > Docentric Email print destination, Docentric report setup > Email templates, and Organization/System email templates.
  >> (3.4.8.4) CID images are now embedded as inline attachments (Attachments with Content disposition type: Inline) instead of using Linked resources added to Alternate Views of Email Messages. This resulted in (1) rendering CID images as inline images in the email body for majority of email clients including Gmail and Fax, which has not been the case before, and (2) CID images supported by all email providers (SMTP, Exchange, Graph) for both Docentric and built-in emailing.
  >> (3.4.8.4) Extended the 'Attachment details' grid on the built-in Email history form with a new 'Content disposition type' column for better understanding of the difference between embedded images and attached files of the logged outgoing emails. For regular email attachments, the new column is populated with the value 'Attachment', while for CID images it is populated with 'Inline'.
  >> (3.4.8.4) The 'Test Connection' button is now enabled for Microsoft Graph email provider in Docentric AX parameters > Emailing > Default email sender account > Test.

- Print archive improvements - Free Edition:
  >> Supported saving proforma reports in Print archive, with the option to turn archiving a proforma on or off on the Print destination settings form for the reports supporting a proforma scenario.
     > The 'Archive proforma?' checkbox is added to the Print destination settings form > Options > More... for the reports supporting proformas: Sales-, Purch- and Project- related reports.
     > The 'Is proforma' field is added to the Print archive form.
     > The following proforma reports are supported for archiving:
       - SalesInvoice.Report           -> Customer invoice
       - SalesPackingSlip.Report       -> Sales order packing slip
       - SalesConfirm.Report           -> Sales order confirmation
       - AgreementConfirmation.Report  -> Sales/purchase agreement confirmation
       - VendInvoiceDocument.Report    -> Purchase order invoice
       - PurchPackingSlip.Report       -> Purchase order product receipt
       - PurchReceiptsList.Report      -> Purchase order receipts list
       - PurchPurchaseOrder.Report     -> Purchase order (confirmation)
       - PSAProjInvoice.Report         -> Project invoice without billing rules (also Credit note)
       - FreeTextInvoice.Report        -> Free text invoice
       - PSAContractLineInvoice.Report -> Project invoice with billing rules
     Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-improved-print-archive/d365-print-archive-saving-settings/#archiving-proforma-reports
  >> Added two fields to the Print archive form showing archived PDF and Non-PDF report filenames:
     > 'PDF report filename' is always populated with the filename of the archived report document.
     > 'Non-PDF report filename' is populated with the original report filename, if the archived report was printed in the format different from PDF (e.g. MS Word or Excel).
  >> When saving a report to Print archive configured as a secondary print destination, the report caption (which can also be configured in Docentric report setup) is now included in the infolog success message.

- Docentric Viewer - Free Edition:
  >> Print to network printers: Supported the 'Print as PDF' option for routing documents to Adobe Acrobat Reader (when DRA runs as a desktop app) or the local file system (when DRA runs as a service).
     Placeholders in the fields 'Print as PDF > Output PDF filename' and 'Select printer > Printer name' are supported.

- Improved License plate labels - Full and Free Edition:
  >> Replaced the existing model 'Docentric AX License Plate Labels' with a new model 'Docentric AX Warehouse Labels', with all artifacts moved to the new model. The model installation scripts have been updated.
  >> Supported License plate labels based on new Label layouts (shipped with D365FO version 10.0.36) including:
     > Document routing setup lines (Document routing printers) with additional matching criteria consisting of multiple Mobile device users and a condition Query.
     > Testing of Document routing setup, without printing labels to physical printers, including Dynamic printer selection resolution.
     > Reprinting of labels from D365FO app, with or without using Document routing setup, supporting Dynamic printer selection.
  >> Supported Dynamic printer selection (shipped with D365FO version 10.0.36) for Document routing using Docentric templates (Docentric Document routing printers) including:
     > Testing of Document routing setup, without printing labels to physical printers.
     > Reprinting of labels from D365FO app using Document routing setup.
     Docentric report templates assigned to a report with the DocWHSLicensePlateLabelDSP class (or a class inheriting from it) are now marked as Warehouse labels, which are ZPL-based in D365FO, and support configuration of Printer stock type.
     Printer stock type typically represents the size and type of paper a label template requires when printed. As with the Label layouts of type License plate labels, if set for Docentric templates, it can be used for Dynamic printer selection in Document routing.
  >> Updated License plate labels SSRS and CBD ready-made Docentric report templates with new labels (printed date, license plate and batch number) and missing default design-time preview languages.
  >> Updated License plate labels ER CBD model and model mapping resources, by setting new prerequisites for Docentric AX core models version 3.4.8, Docentric AX Warehouse Labels model version 3.4.8, and D365FO version 10.0.36.
  >> Resolved an issue in the Language lookup where the selection or input didn't correctly match a line in the lookup table for Docentric Document Routing Printers lines, leading to no result being selected.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-warehouse-labels/d365-improved-license-plate-labels/d365-label-layouts-and-dynamic-printer-selection/

- Docentric Designer and Document Generator - Full Edition:
  >> Added support for colored underline text style, honoring MS Word's underline setting with a different color than the text color.
  >> Improved 'Live Preview' in Docentric Designer, now accurately rendering text with non-default character spacing, kerning, or horizontally scaled text.
  >> Document generation performance boost: Improved speed when generating large documents with numerous translations. Label translations are now efficiently cached.

- System and Utilities - Full and Free Edition:
  >> The security artifacts for Docentric AX Essentials (common permissions required to access Docentric improved print destination controls) have been reorganized by moving the entry points associated with the Docentric AX model from the existing DocentricAXEssentials privilege (defined in the Docentric AX Extension model) into the new DocentricAXEssentialsBase privilege (defined in the Docentric AX model).
     For this purpose, a new duty DocentricAXEssentials with the extension DocentricAXEssentials.Extension_DCX was introduced, which now includes both of the mentioned privileges. The new duty was added to the existing role extension SystemUser.Extension_DC, which was also moved from the DocentricAXExtension model to the DocentricAX model. 
  >> Transitioned from using third-party NuGet dependencies to custom-built assemblies to enhance compatibility and stability within D365FO, mitigating assembly conflicts (i.e. assembly hell). Introduced lazy loading for these libraries to speed up the startup process of Docentric AX.
  >> Developers can now disable environment change detection and prevent actions upon environment change when debugging the database of another environment. To disable environment change detection, add the web.config key <add key="Docentric.DetectEnvironmentChanged" value="false" /> in the 'configuration > appSettings' section. More details at: https://learn.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/database/dbmovement-scenario-debugdiag.
  >> Changed telemetry data format and content sent to Application Insights from the Docentric AX diagnostics:
     > Telemetry data format for the installed custom models is changed from a single-line string to a structured JSON array format.
       Each item in the array now includes, in addition to Model name, Model display name and Version, also Model publisher.
     > Telemetry data format for the D365FO User count is changed from a single-line string to a structured JSON format.
       Additionally, User count now also includes Device users (e.g. Device users for Warehouse and Retail).
  >> Improved Docentric Table Browser (the DocTableBrowser form):
     > Editing and deleting records in all tables is now supported for system administrators in the development environments.
     > Records in the Docentric trace table (DocTraceTable) can now be deleted in all environments.
     Learn more: https://ax.docentric.com/improved-d365fo-table-browser/
  >> (3.4.8.4) Send additional telemetry data to Docentric Application Insights per report execution to track usage of the following features:
     > SaveProformaToArchive: Save proforma report to Print archive (Yes/No).
     > SaveToAzureExternalAccountWithRBAC: Save report to the Azure storage account secured with Role-based access control (Yes/No).
     > OpenEmailBeforeSending: Download email with attached report to be sent manually, e.g. using Outlook (Yes/No).
     > EmailProcessingMode: Email report synchronously or by using email processing, i.e. Batch email sending status (Synchronous/Email Processing).
     > UseAdditionalEmailSenderAccount: Email report using a non-default sender account for the current email provider (Yes/No).
     > NumberOfUserDefPlaceholders: Number of user-defined placeholders configured for the executing report.
     > NumberOfUserDefLabels: Number of user-defined labels configured for the executing report.
     > NumberOfTemplates: Number of the report templates configured for the executing report.
     > NumberOfEmailTemplates: Number of the email templates configured for the executing report.
     > NumberOfEmailTokenRedirections: Number of the email token redirections configured for the executing report.


********************
    FIXES
********************
- General:
  >> (3.4.8.1) Workflow email notifications: Fixed the creation of the URL link to the workflow entity stored in the %LinkToBusinessData% and %EntityUrl% placeholders. The link was not created correctly if the workflow is Organization-wide.
  >> (3.4.8.2) Fixed bug when zipping files from X++ customizations by using Docentric APIs.
  >> (3.4.8.2) Fixed bug related to loading .NET assemblies for Azure Blob Storage, Azure Key Vault and Application Insights. The bug appeared mainly in the environments with D365FO v10.0.38 or lower, with installed Docentric v3.4.8.
  >> (3.4.8.3) Fixed a possible null pointer exception during instantiating the Docentric Context Menu framework during form initialization. In rare cases, an instance of the FormRun class might return a null instance of the FormDesign class.

- Accessing D365FO Azure storage (Azure Blob storage and Azure Files):
  >> (3.4.8.4) Supported Microsoft's end of support for sharing storage account connection strings via public API in D365FO version 10.0.40 and later, by changing the way of accessing D365FO Azure storage. Check the official update from Microsoft for more details: https://portal.changepilot.cloud/MC869863

- System and Utilities:
  >> (3.4.8.2) Supported SharePoint legacy authentication implemented in a new way in 10.0.40 D365FO Preview Version. However, the legacy authentication doesn't work - there is a bug in the standard code, and we fixed it but only for Docentric functionalities related to SharePoint.

- Docentric Designer and Document Generator:
  >> Fixed an issue where generating signed or PDF/A documents randomly resulted in PDFs with incorrect stream length, affecting ISO 19005-2:2011 (Section 6.1.7 - Stream Objects) compliance.
  >> Concatenation of PDF documents via Docentric APIs now supports transferring hyperlinks, document-named links, file links, watermarks, stamps, embedded files and strikeouts from the original documents to the newly created document.
  >> (3.4.8.5) JPEG and TIFF images with an EXIF orientation tag were not rendered correctly when using the Image tagging element in Docentric Designer. Docentric Generator ignored the tag, causing such images to be rendered without rotation as configured via the tag.

- Emailing:
  >> Fixed an issue where a remote SMTP server terminated a cached long-running session, resulting in the email not being sent. The retry and reconnection policy is now updated to depend on the SMTP status code and specific terms within the exception message.
  >> Fixed Email Delivery Receipt issue: The delivery notification settings were not correctly passed to the SMTP client, which resulted in the failure to send back delivery receipts from the destination SMTP server.
  >> (3.4.8.3) Fixed a security warning 'CKEditor 4.16.1 version is not secure' in the Docentric email body editor, by upgrading the underlaying CKEditor control from version 4.16.1 to 4.22.1.
  >> (3.4.8.3) Adjusted Docentric emailing framework due to Microsoft's announcement that Exchange email provider will be deprecated as of September 25, 2024.
  >> (3.4.8.3) Fixed an issue in D365FO version 10.0.40 where sending emails using Exchange email provider failed. This is caused by incorrect assemblies being loaded for the System.Text.Json namespace.

- Print management:
  >> Print management utilities: The filtering by 'Show module' is fixed for user languages other than 'en-us'. The comparison between the module selected in the filter and the modules in the grid was done by label translations, which is a language-dependent approach resulting in an empty grid.
  >> Print management utilities: Fixed display issues for the 'Do not print' field in the grid, linking it correctly to the 'Suspend printing' field for this document in the Print management setup form.
  >> Added missing fields for the SSRS Printer print destination settings (Orientation, Print on both sides, Collated, Print all pages, From page, To page) to Docentric Print Management Data Entity.

- Print archive:
  >> Fixed an issue where the setting 'On Delete=Cascade' in the DocPrintJobHeader table caused the unintended deletion of all related records in Print archive upon deletion in the related tables (such as SalesTable and CustTable).
     > The 'On Delete' setting has been change from 'Cascade' to 'None' for all related tables in the DocPrintJobHeader table, except for the relationship to the built-in PrintJobHeader table.
  >> (3.4.8.1) Fixed a bug related to saving reports in Print archive improved by Docentric, where placeholders weren't resolved in the target print destination settings, email attachments weren't archived and outgoing emails failed to be downloaded from Print archive.
     The bug was introduced in (3.4.7.3) as a side-effect of fixing another bug occurred when the same print destination settings were reused when printing multiple documents in a single report run, e.g. when printing invoices through 'Open customer invoices > Document > Print > Range'.
  >> (3.4.8.1) Rollback of the changes introduced in (3.4.4), which caused that emails could not be recreated and downloaded from Print archive if the archived report or an additional email attachment was not in the PDF output format.
  >> (3.4.8.1) Renamed field and parm method for Saving proforma reports to Print archive in the following classes: DocSrsPrintReportSettings, DocPrintReportSettings and DocReportRunContext.
     The old field name and parm method: allowPrintArchiveForProforma and parmAllowPrintArchiveForProforma(). The new field name and parm method: saveProformaToArchive and parmSaveProformaToArchive().

- Docentric report setup:
  >> Fixed an issue with importing the Docentric report setup data as XML through Tools > Import/Export > Import setup data, where the existing default report templates were overwritten (the update scenario).
  >> Fixed an issue where deleting a report from Docentric report setup removed all records from Print archive related to the deleting report (cascade deletion). The Print archive records now remain intact.


----------------------------------------------------------------------------------------------------
Version 3.4.7 Change Log
----------------------------------------------------------------------------------------------------
- Print management utilities - Free Edition:
  >> Filter, sort and search all Print management settings including overrides for a legal entity in a single grid (tabular view) within a specialized form.
  >> Update Print management settings one-by-one. For bulk update, Docentric Print Management Data Entity (part of Free Edition) can be used.
  >> Find customers and vendors with invalid or no email contacts (primary/purposes) to clean up and consolidate email addresses in the database.

- Print management utilities - Full Edition:
  >> Bulk update and delete of selected Print management settings, including overrides. Note that while bulk update is supported via Docentric Print Management Data Entity, bulk delete is not.
  >> Review or revert changes before saving to the database by using 2-steps submit process.
  >> Learn more on Print management utilities: https://ax.docentric.com/d365-how-to-manuals/d365-print-management/d365-print-management-utilities/

- Improved alert rules - Free Edition:
  >> A new feature 'Create alert in a single click' enables you to create an alert rule for a data field with the right-click on a form control bound to this field. Learn more: https://ax.docentric.com/create-alert-in-a-single-click-in-d365fo/
  >> Added a new custom menu context option Create a custom alert using a new framework for adding custom menu context options (the DocContextMenuDefinitionBase and DocContextMenuManager classes).

- Docentric Viewer - Free Edition:
  >> Added printing to network printers, including printing to preconfigured user default printers and supporting user- favorite and allowed printers and report restricted printers.
  >> Improved quality of printing to local printers, by supporting native PDF printing in common web browsers.
     > Supported browsers: Chrome, Edge and Opera. Firefox and other browsers will continue to use PDF.js printing, i.e. rendering PDF pages as images.
     > A new setting, DisableDocentricReportViewerNativePdfPrinting, has been added to the DocSystemSetting table, allowing you to disable native PDF printing system-wide if needed.
  >> Report PDF Viewer (PDF.js) is upgraded to the 3.10.111 version.
  >> Enhanced user experience in Docentric Viewer with real-time progress messages for large PDF prints as well as Word and Excel downloads.

- Emailing - Free Edition:
  >> The 'Retry schedule' menu item added to the Docentric AX parameters and Batch email sending status forms.
  >> Added support for implementing custom email providers by subscribing to 2 new delegates:
     > DocEmailMngHelper::sendEmailMsgUsingEmailProviderDelegate(): to be used to implement a custom emailing pipeline and abort the Docentric emailing pipeline.
     > DocEmailMngHelper::sendEmailMsgUsingCustomEmailProviderDelegate(): to be used to implement a custom email provider without aborting the Docentric emailing pipeline.
  >> Added method DocEmailMngHelper::replaceCIDWithBase64EmbeddedImages() that replaces embedded CID images with Base64 encoded images in the provided email message. Can be used to emails with CID images to be sent via D365FO Exchange email provider. Learn more: https://ax.docentric.com/support-images-in-outgoing-emails-in-d365fo/
  >> (3.4.7.2) Added support for the Microsoft Graph email provider introduced in the D365FO version 10.0.38.

- DDSP generation:
  >> Supported placeholders in the DDSP output filename, for both 'Generate DS' print destination and 'Generate DDSP alongside report execution' option.
  >> Added the ability to escape or remove invalid characters from the generated DDSP. This option can be configured for each report in Docentric report setup > Generation options > the General tab > the 'ASCII control characters handling' combobox. Previously, report generation failed if invalid characters were present.

- General:
  >> Supported download of disabled report templates in Docentric report setup.
  >> Changed the 'Show/hide preview' button for turning on/off instant document preview to be multiselect on the Print archive, Attachments and All attachments forms.
  >> Added the Help button to Expression designer in User-defined placeholder setup, which navigates to the XPath Expressions how-to manual: https://ax.docentric.com/how-to-manuals/template-design/docentric-ax-template-designer/xpath-expressions/

- System and Utilities:
  >> Added support for converting PDF to EMF in X++ via method DocDocumentHelper::convertPdf2Emf(). PDF to EMF Conversion APIs are now part of Free Edition. See example: https://ax.docentric.com/print-d365fo-reports-merged-with-attachments-to-network-printers/
  >> Extended the Form information form (FormControlPersonalization) with a new control 'Field label ID', which shows Label ID of the data field bound to the currently selected form control. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-multilingual-print-settings/#discover-label-id


********************
    FIXES
********************
- General:
  >> The CoC extension for the SrsReportRunController.runReport and SrsReportRunPrinter.printReport methods has been replaced with a pre-event handler so that these methods are not visible in the call stack of later SSRS pipeline execution.
     When MS support finds any custom code in the error call stack, they often refuse to help our customers (even for apparent errors in the standard).
  >> Removed the displayReportRunException() method from the SrsReportRunController_DC_Extension class.
  >> Tracing: Fixed bug for the trace category PRINTMGMT - when this category was enabled, it changed the current Email print destination settings (caused by resolving email tokens), which in rare cases causes that generated reports (e.g. Customer account statement with multiple customers defined as criteria) are sent to the wrong recipients.
  >> User-defined placeholders: Fixed the evaluation of XPath expressions containing some of the XPath functions (e.g. data-source) because an incorrect XML element (e.g. the root node of the argument representing a data source) was passed to the XPathExecutor object that is used to evaluate XPath expressions.
  >> Improved diagnostics: Prevented the unhandled exception in Docentric Generator 'Invalid or unsupported culture' by throwing an error message when the dsLanguageId field in the DocDataSourceProvederParams class is set to an empty string and as such sent to Docentric Generator.
  >> Improved diagnostics: Fixed displaying the message for removed invalid email addresses, although all email addresses are valid. 
  >> Print Management Data Entities: Support Transaction overrides for Project invoice proposal and Project contract.
  >> (3.4.7.1) Fixed a bug where a combination of the Docentric AX Administrator, Docentric AX Power User and Docentric AX Template Editor security roles assigned to a user resulted in some fields in the Docentric AX parameters and Docentric AX reports forms not being editable.
  >> (3.4.7.1) Fixed a bug related to sending alert emails with Docentric. Microsoft made changes to the APIs for creating alert emails starting with the D365FO version 10.0.37, which resulted in the sending alert emails with Docentric no longer working. 
  >> (3.4.7.2) Fixed an issue that occurred when a report was printed via the Print archive print destination and the document type used for archiving refers to a SharePoint library for which the report metadata is configured. The PDF file was not updated with the metadata.
  >> (3.4.7.2) When the maximum number of documents printed to the screen is reached, the remaining documents are printed to the SSRS File print destination.
     In this case, we need to redirect the printing to the Docentric File print destination when Docentric Viewer and the template are used to preview the documents.
     To achieve this we have extended the changeDestination() method of the PrintMgmtReportRun class.
  >> (3.4.7.3) Fixed a bug related to alerts targeting a user group: alert notifications stopped being created for members of the user group configured in alert rules. The bug was caused by hotfix 3.4.7.1, which fixed an issue with alert emails not being sent with Docentric.
  >> (3.4.7.3) Fixed a bug that occurred when the same print destination settings were reused when printing multiple documents in a single report run, e.g. when printing invoices through 'Open customer invoices > Document > Print > Range'.
  >> (3.4.7.3) Fixed a bug that occurred when converting PDF documents with custom fonts into EMF and PDF/A formats using the Aspose.PDF library. In Docentric 3.4.7 version, PDF to EMF conversion is used behind the 'Print to network printers' functionality in Docentric Viewer, while PDF to PDF/A conversion is used for PDF documents generated by SSRS Reporting Services.

- The Print destination settings form:
  >> The 'Needed Permission' property for the Placeholders button in the SRSPrintDestinationSettingsForm form extension has been changed from 'Delete' to 'None' to make the button visible to all users (i.e. users with the System user role).
  >> Fixed a bug when using additional email tokens. If a user uses a Delivery address purpose that does not have an email address assigned and then switches to a Delivery address purpose that does have an email address, the error message is displaying until the URL is not reloaded.
  >> Fixed error messages for validating email addresses in the Cc and Bcc fields on closing the Print destination settings form.
  
- Docentric Designer and Document Generator:
  >> Fixed a bug that could cause an exception in the Live Preview pane when a template or preview data contained text with specific characters.

- Emailing:
  >> (3.4.7.1) Fixed a bug when printing a report via Docentric Email print destination configured to use an email template with image placeholders and generating the DDSP alongside the report execution. The bug was caused by adding the same image placeholder twice to the placeholder map.
  >> (3.4.7.2) Fixed an issue with duplication of additional email attachments when DDSP is generated alongside report execution.

- System and Utilities:
  >> (3.4.7.1) Fixed a bug which can occasionally happen at startup of D365FO when the system detects hostname change and runs some preventive actions including clearing encrypted fields. If some X++ exception happens in this process transaction is aborted and changed hostname is not saved, so the process runs again at the next startup.

- Docentric PDF Viewer:
  >> (3.4.7.2) Fixed an issue where PDF file download with special characters in filenames (e.g., #, %) defaulted to "document.pdf". The PDF is now downloaded with the original filename including special characters.
  >> (3.4.7.2) Fixed a problem where download buttons for Word and Excel were disabled for filenames containing special characters such as "#" or "%".
  >> (3.4.7.2) Replaced the button images for Download PDF, Word, and Excel, enhancing the visual interface.
  >> (3.4.7.2) Fixed the display of Download PDF, Word, and Excel button icons to ensure proper visibility when the web browser is set to "Dark mode". Icons are now optimized for visibility and compatibility across both light and dark browser modes.
  >> (3.4.7.2) Fixed an issue where the drill-through links in reports generated as PDF documents when using SSRS report designs were not working.


----------------------------------------------------------------------------------------------------
Version 3.4.6 Change Log
----------------------------------------------------------------------------------------------------
- PDF/A Compliance - Full Edition:
  >> Generating PDF documents as PDF/A-compliant is supported by both Docentric Generator and SSRS Reporting Services. 
  >> Supported PDF/A standard versions: PDF/A-1, PDF/A-2 and PDF/A-3.
  >> Supported PDF/A conformance levels: a, b and u. Specifically: PDF/A-1a, PDF/A-1b, PDF/A-2a, PDF/A-2b, PDF/A-2u, PDF/A-3a, PDF/A-3b, PDF/A-3u.
  >> The use of custom fonts is supported.
  >> When generating PDF documents using Docentric print destinations, you can now configure PDF/A conformance level directly on the Print destinations settings form > Options, i.e. per report execution.
  >> PDF/A conformance level is applicable for all Docentric print destinations supporting PDF output format: File, Email, Print archive, Screen, Printer > Save as PDF.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/output-file-formats/pdf-a-compliance/

- Attachments improvements - Free Edition:
  >> Instant attachment preview is now available for the Docentric forms with tabular view of attachments: (1) Attachments (DocuView) > View in grid and (2) Organization administration > Docentric AX > Attachments > All attachments, so you can view the attachment content while browsing through attachments without having to download or open them. All attachment types (Files, Notes, URLs) are supported.
  >> Added Docentric metadata settings within a new tab to the forms: (1) Attachments (DocuView) > Deleted attachments (DocuDeletedDocuments) and (2) System administration > Inquiries > Deleted attachments (DocuDeletedDocumentsListDetails).
  >> Added the 'Go to origin' button to the (1) System administration > Inquiries > Document history (DocuHistoryList) and (2) System administration > Inquiries > Deleted attachments (DocuDeletedDocumentsList) forms, which opens the source record of the table to which the selected attachment is attached.

- Docentric AX parameters:
  >> Added the 'Environment settings' setup in Docentric AX parameters > Diagnostics for configuring custom Environment names per Environment domain URL, which are used for diagnostic purposes, as Report and Email template placeholders, and in email notifications such as License subscription expirations and Renewal requests.
  >> @USEREMAIL@ can be now used interchangeably with @CURRENT_USER_EMAIL@ as a placeholder in the 'Email sender display name' field when configuring 'Default email sender account' in Docentric AX parameters > Emailing.

- Report Standard placeholders and Print archive - Free Edition:
  >> Added new Report Standard placeholders available for use in print settings and Docentric report setup:
     > Environment name (@ENVNAME@): The custom name of the current environment as configured in Docentric AX parameters > Diagnostics > Environment settings - Environment name.
     > Environment domain name (@ENVDOMAINNAME@): Fully qualified domain name of the current environment, e.g. exampleaos.cloud.test.dynamics.com.
     > Environment type (@ENVTYPE@): Deployment type of the current environment, e.g. Cloud/OnPrem.
     > Environment mode (@ENVMODE@): The type of the of the current environment (Production, Test or Development) as configured in Docentric AX parameters > Diagnostics > Environment settings - Environment mode.
  >> Saving to Print archive: Besides configuring Document type for archiving per company in Docentric AX parameters and per report in Docentric report setup, you can now configure Document type for archiving per report execution, by selecting it directly on the Print destination settings form. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-improved-print-archive/d365-print-archive-document-types/#print-archive-document-type-per-report-execution

- Emailing - Free Edition:
  >> Docentric SMTP Email Provider improvement: Introduced maximum number of sent messages using the same connection. This configuration is helpful when using a custom SMTP email provider for mass emailing such as SendGrid to avoid hitting the provider's limitations.
  >> When emailing a report using Docentric, you can now programmatically remove invalid email addresses from the To, CC and BCC fields during report execution, by subscribing to a new delegate DocPrintDestSettingsEmail.removeInvalidEmailAddressesDelegate().This way, you can prevent email sending failure that would otherwise occur. Learn more: https://ax.docentric.com/forum/t/how-to-clean-invalid-email-addresses-when-emailing-reports-using-docentric/596
  >> Organization and System email templates: Introduced Standard placeholders: Environment name (@ENVNAME@), Environment domain name (@ENVDOMAINNAME@), Environment type (@ENVTYPE@), Environment mode (@ENVMODE@), with the same meaning as the corresponding Report Standard placeholders.

- Misc:
  >> The Project invoice journal V2 form (ProjInvoiceJournalV2) now supports the Print management preview and Print archive > Download/View functionalities.
  >> Licensing: Added Environment name and Environment mode configured in Docentric AX parameters > Diagnostics > Environment settings to the email footer of the License subscription expiration and Renewal request notifications.

- Docentric Designer and Document Generator - Full Edition:
  >> Supported PDF/A compliance, please check above.
  >> PDF signing now supports all crypto standards (CMS - Cryptographic Message Syntax and CADES - CMS Advanced Electronic Signatures).

- Supported via Docentric APIs - Full Edition:
  >> Conversion PDF to PDF/A.
  >> Conversion PDF to EMF.
  >> Conversion PDF to JPG, PNG, GIF, TIFF.
  >> Additional TIFF format options for Color Depth and Compression Quality.
  >> (3.4.6.1) Added support for converting the report from Word to HTML format.


********************
    FIXES
********************
- General:
  >> Fixed bug for alert emails: Email notifications for alerts that are generated when a record is deleted were always failing to be sent to the configured recipients when using Docentric for emailing, due to an unhandled exception.
  >> Fixed assembly load errors by initializing Docentric.AX.dll at startup (per each AOS, DB Sync sessions excluded).
  >> Fixed a license validation error in high-load environments by ensuring that the license is checked after it is loaded.
  >> Fixed a bug that occurred when a file was saved to Attachments with the 'Replace existing' option turned on. A new attachment file was created in the storage location instead of replacing the existing file. The bug appeared for both Azure Blob storage and SharePoint based document types. 
  >> (3.4.6.1) Fixed bug for Standard placeholders: Fixed evaluation of standard placeholders that return a date or datetime value as a string to support the Arabic calendar.
  >> (3.4.6.2) Fixed an issue causing authorization errors when sending emails via the standard Exchange email pipeline due to incompatibility with Microsoft.IdentityModel.* assemblies.
 
- Emailing:
  >> Fixed bug for Report Email templates: When the 'Use only print destinations' option was turned on in Docentric report setup for a report, none of the configured Email templates couldn't been selected on the Print destination settings form and used for emailing of this report. 
  >> Fixed bug with resolving of the 'Delivery address primary contact' custom email token (@DLV@).
  >> Fixed bug for Docentric Email Body editor (the custom control): Saving changes in the Source mode (HTML) didn't work occasionally.

- Docentric Designer and Document Generator:
  >> Fixed a randomly occurring error in document generation 'Index was outside the bounds of the array'.


----------------------------------------------------------------------------------------------------
Version 3.4.5 Change Log
----------------------------------------------------------------------------------------------------
- Improved alert rules - Free Edition:
  >> Configure conditional alert rules by using the built-in Query form when creating or editing them.
  >> Show alert rule system fields such as Primary and Alert table names on the Manage my alerts / Alert rule form.
  >> Open the related alert notifications (the Notification list form) from the Manage my alerts / Alert rule form.
  >> Target a user group: Configure a user group whose members will also be alerted when the alert rule event occurs.
  >> View in grid: A tabular view of alert rules for easier filtering and sorting as well as bulk delete.
  >> Advanced filtering supporting targeted user groups.
  >> The new role Docentric AX Alert Administrator is introduced to allow management of alert rules in the same way as the System administrator role.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-emailing-and-alerts/d365-improved-alert-rules/

- Alert summary emails - Full Edition:
  >> Send periodic summary emails containing all alert notifications based on the alert rules marked to be included in the summary emails to each of the recipients configured on these alert rules.
  >> Alert summary emails are sent by the Alert summary email distributor job. Multiple jobs can be configured to run at once for specific alert rules, alert tables, date and time period, email recipients, etc.
  >> Summary emails are based on System email templates and can be designed using rich HTML editor with placeholders. The default System email template is provided as AOT resource (DocAlertSummaryEmailBodyHTM) and it is automatically loaded in the setup.
  >> Summary emails can be sent synchronously or by using Email distributor batch.
  >> The Cc and Bcc recipients are supported as well as placeholders in the To, Cc, Bcc fields. OOTB placeholders: %USERGROUP_XXX% and %USER_XXX%. 
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-emailing-and-alerts/d365-alert-summary-emails/

- Attachments improvements - Free Edition:
  >> Docentric metadata settings including Category, Tags, Language and Active period are now supported not only for attachment of type Files but also for Notes and URLs.
  >> On the Attachments (DocuView) form, the button 'Docentric settings' is renamed to 'View in grid'.
  >> The View in grid form now supports adding attachments of all types (Files, Notes, URLs), custom filters and downloading attachment files.
  >> A new form 'All attachments' is added, listing out all attachments across a company on flat, with View, Open, Edit and Download options. Learn more on the security: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-security/d365-security-for-non-reporting-features/#improved-attachments-security
  >> Downloading multiple attachment files at once is now supported on both View in grid and All attachments forms: as separate files, as a ZIP file or as a merged single PDF file.

- Print archive improvements - Free Edition:
  >> Instant document preview: Added document preview window to Print archive so you can now view the archived reports while browsing through Print archive without having to download them.
  >> Added the Document type field to the Print archive form so you can quickly check where a report is archived (SharePoint, Azure Blob storage).
  >> Added the Print archive > Download and View buttons to common journals for downloading/viewing the archived reports from/in Print archive. Supported journals:
     > Sales invoice (the CustInvoiceJournal form)
     > Free text invoice (the CustInvoiceJournal form)
     > Purchase order confirmations (the VendPurchOrderJournal form)
     > Sales order confirmations (the CustConfirmJournal form)
     > Project invoice (the ProjInvoiceJournal and ProjInvoiceListPage forms)
     > Sales quotation (the CustQuotationJournal form)
     > Sales quotation confirmations (the CustQuotationConfirmationJournal form)
     > Packing slip (the CustPackingSlipJournal form) 
  Learn more: https://ax.docentric.com/view-and-download-archived-d365fo-reports-directly-from-a-journal/
	 
- Licensing:
  >> Subscription expiration notifications: Users with security roles configured in Docentric AX parameters > Licensing will receive email notifications only if they are enabled in the System administration > Users form.
  >> The 'Sends periodic notifications that Docentric license subscription is about to expire' batch job is replaced with a process automation background process 'Docentric license subscription expiration notifier', which results in creating the same batch job(s).
  >> Improved license warning messages for the Warehouse Labels Product Add-On.
  >> Added environment information (LCS Environment ID and host name) to License renewal request emails and License expiration reminder emails.

- Misc:
  >> Added the 'Show selected templates for' multi-selection combobox in Docentric AX parameters > Security, where you can configure for which print destinations to display the selected template ID next to the target destination on the report print dialogs and Print management setup.
  >> Azure storage accounts setup: Added support for storage account connection strings stored in Azure Key Vault using secrets from the built-in Key Vault parameters setup.
  >> Improved secret and certificate validation on the Key Vault parameters form:
     > Added the Test secret button that validates a secret or certificate stored in Azure Key Vault (for example, if a secret or certificate exists, if a certificate has expired or issued in the future, if a certificate is tampered or revoked, etc.).
  >> HTML Email body editor: Unit of measure is now shown in the Font Size dropdown.
  >> Alert emails: Added support for sending alert emails based on email templates without message or body configured in the setup. In this case the built-in email layout is used.
  >> Docentric Email print destination > Additional attachment rules: Added Item variants as Additional attachments source, which enables loading documents attached to the released item variants related to the journal lines.

- Docentric Designer and Document Generator:
  >> /

- System and Utilities:
  >> Introduced tracing (i.e. dumping) of report execution files when not running in batch, by adding new Trace parameters:
     > TraceDDSP: If enabled, the runtime DDSP file is downloaded in browser.
     > TraceDocentricTemplate: If enabled, used Docentric template is downloaded in browser.
     > TraceGeneratedDocument: If enabled, the generated report is downloaded in browser.
     > Added an additional Trace parameter TraceGeneratedDocumentInMemory to enable dumping of report execution files when printing to Docentric Memory destination.
     Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-logging-and-diagnostics/tracing/
  >> Added the Upgrade log (DocUpgradeLog) form to view the database upgrade change log. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-logging-and-diagnostics/d365-diagnostic-console/
  >> Improved Docentric Table Browser (the DocTableBrowser form):
     > Added additional technical information to DocTableBrowser (Table Id, Field Id and SQL name).
     > Added the All tables (DocTableDetails) form to search tables based on Table Id, Table Name or SQL Name.


********************
    FIXES 
********************
- General:
  >> Fixed bug on Docentric report setup: When loading System templates (e.g. first load on a clean environment or reloading the templates) causes 'Object reference not set to an instance of object.' and does not position a user to the first invalid report.
  >> Fixed bug for User-defined placeholders: The Expression field in the User-defined placeholders form does not correctly format the value in the Details and Grid views.
  >> (3.4.5.1) Fixed DRA printers registration bug on environments with copied database (printers are deleted at database export).
  >> (3.4.5.1) More robust (post-)DB Sync code handling also scenarios where infrastructure properties cannot be read.

- Emailing:
  >> Email Body editor (the custom control) causes UI crash in 10.0.30 when closing or saving from HTML source mode.
  >> Batch email sending status form: Fixed bug when updating the changed fields in the table. The error was caused by the additional data source added to the form by Microsoft, which should remain read-only.

- Docentric Designer and Document Generator:
  >> Fixed bug with Visual Format Override when using Table Column Visibility property. When the report engine marks a table column for removal due to the Visual Format Override rule resulting in 'false', the table column might not get removed.
  >> Fixed an issue that could, in rare cases, cause wrong calculated numbers of paragraphs with auto-numbering.


----------------------------------------------------------------------------------------------------
Version 3.4.4 Change Log
----------------------------------------------------------------------------------------------------
- Improved License plate labels - Free Edition:
  >> Simplify Document routing setup by using additional conditions such as multiple warehouse users for target printers and ZPL layouts.
  >> Test Document routing setup, without printing labels to physical printers.
  >> Reprint labels from D365FO, with or without using Document routing setup.

- Improved License plate labels - Full Edition:
  >> Use Docentric templates instead of ZPL layouts to enable user-friendly label design, multilingual capabilities and print preview.
  >> Add additional data to license plate labels without coding, by using Electronic reporting.
  >> Monitor print jobs in Document routing status via label metadata such as Warehouse, Work, License plate and User.

Learn more on License plate labels: https://ax.docentric.com/d365-how-to-manuals/d365-warehouse-labels/d365-improved-license-plate-labels/ 

- User-defined labels: 
  >> Improved user-defined labels to reuse D365FO system label translations: Create user-defined labels based on system labels and change the translations only in the languages you need. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-docentric-label-setup/d365-user-defined-labels/#ud-labels-based-on-d365fo-labels
  >> Fallback translations can now contain static text, a system label ID or another user-defined label ID.
  >> Created Label placeholder picker (the 'Label placeholder list' form) which can be used from the Print destination settings form and Docentric report setup. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-multilingual-print-settings/#label-placeholder-list
  >> Added support for user-defined labels based on system labels to the DocLabelEntity and DocLabelCombinedEntity data entities.

- Emailing:
  >> Added a new utility Standard placeholder @COMPANYLOGO_BASE64@ for embedded base64 encoded images.
  >> Improved sending test emails in Docentric AX parameters: Send test emails with embedded images (both CID embedded and inline embedded base64 encoded images) and attachments.
  >> RFQ Amendments:
     > Added support for sending RFQ Amendments using Docentric Email print destination settings and Docentric templates.
     > Fixed resolving placeholders in the Subject email message field (the built-in functionality does not resolve placeholders in Subject properly). 
     > Added a new delegate (DocPurchRFQAmendmentDelegates.beforeSendToEmail) for customizing email print destination settings via code if needed.
  >> Improved performance when sending emails using MailKit with in-memory caching of SMTP client instance for 5 minutes.
  >> Batch email sending status form: On the Show/Update message dialog > the Attachments tab, number of attachments is shown.
  >> Added a delegate DocReportRunDelegates::beforeDownloadEmailMessage() to enable changing of the filename of the downloading email message (.eml file) when emailing reports with the 'Open email before sending' option turned on.
 
- Docentric report setup:
  >> Added a popup dialog with a warning message on invalid reports after (re)loading new reports in Docentric report setup.
  >> Import setup data: Added the following delegates to support import of extension fields (not added by Docentric) in the DocReportTable table:
     > DocReportingSetupHelper::importReportFromXmlElementSetReportFieldDelegate() - a delegate for setting extension fields (enum fields are excluded) in the DocReportTable table from the provided XML element.
     > DocReportingSetupHelper::importReportFromXmlElementAddReportEnumFieldDelegate() - a delegate for adding extension enum fields to the list to be set in the DocReportTable table from the provided XML element.
  >> Added the 'Report template file' button to the 'Report template' form.
 
- DDSP:
  >> Added a new data field IsCbdDs (Is CBD data source) to the GeneralData > Misc data section in DDSP. This way, when for a report both ER-based and SSRS-based templates are used, user-defined placeholders can be defined more easily.
     The field IsCbdDs is added only if the 'Enable CBD data sources' feature is enabled.
  >> Added Original Document Title* to the Parameters data section of DDSP for the following reports:
     > PurchPurchaseOrder (Purchase order)
     > PurchPackingSlip (Purchase order receipts list)
     > PurchReceiptsList (Purchase order product receipt)
     > VendInvoiceDocument (Vendor invoice)
     > FreeTextInvoice (Free text invoice)
     > SalesInvoice (Customer invoice)
     > SalesConfirm (Sales order confirmation)
     > SalesPackingSlip (Sales packing slip)
     > SalesQuotation (Sales quotation)
     > SalesQuotationConfirmation (Sales quotation confirmation)
     > PSAProjInvoice (Project invoice without billing rules)
     > PSAManageInvoice (User defined project invoice)
     > PSAContractLineInvoice (Project invoice with billing rules)
     > PSAQuotations (Project quotation)
  * The new field is called 'DocumentTitleOriginal' and contains the correct label translated in the report runtime language.
  NOTE: You can use this field instead of the built-in DocumentTitle field when the Original/Copy information is irrelevant for your scenario.

- System and Utilities:
  >> Subscription expiration notifications: Only the System Administrator and Docentric AX License Manager security roles will receive email notifications by default (the initial configuration has been changed from all roles to these two roles).
  >> The pack() and unpack() methods of the SrsPrintDestinationSettings and SrsReportRunController extension classes now use the SysPackExtensions class.
  >> Extended the Personalization form (FormControlPersonalization) with a new control that shows Label ID of the currently selected form control.
  >> If there are ER Model mapping errors when executing a Docentric report, you can now open it in ER designer directly from the Infolog.
  >> Report Viewer (PDF.js) is upgraded to the 2.13.216 version.
  >> Upgraded .NET Framework from 4.6 to 4.7.2.
  >> Upgraded Azure Storage Blob and File SDKs to the latest version (version 12).
  >> On development environments (OneBox), the latest version (5.10) of Azure storage emulator is now required when using Docentric APIs for Azure storage (e.g. for uploading/downloading Docentric templates). Learn how to upgrade Azure storage emulator: https://ax.docentric.com/upgrade-azure-storage-emulator-on-d365fo-onebox-without-losing-your-files/
  >> Azure Storage Blob and File clients now support retry policy (Delay between requests: 500ms, Maximum retries: 3, Mode: Exponential, Maximum delay between requests: 2 seconds).
  >> Electronic signature appearances setup: Changed the DocFileUploadTemporarySignatureImageStorageStrategy.maxFileSizeInMegaBytes() method to return 0.5 instead of 0.512. Namely, 0.512 causes error when uploading a file on Tier2 environments.
  >> Environment change detection: In the startup procedure, detect if the environment has changed (e.g. the database has been copied from Production to DEV/UAT). When environment change is detected the following cleanup procedures are executed:
     > Database fields, such as passwords and connection strings, are cleared, if reading their values fails. This might happen when the field values were encrypted using a different certificate than the certificate used for the current environment.
       - Cleared table fields:
         - Additional email account passwords.
         - Electronic signature certificates stored in the database.
         - PDF encryption passwords.
         - Integration user passwords participating in SharePoint extended security.
         - Azure storage accounts connection strings.
     > The 'Suppress outgoing emails' feature, that is configurable in Docentric AX parameters > Emailing > General settings, is set to 'Suppress with download'. This is done to prevent sending out unintended emails to real email addresses from Production.
     > The 'Send email' option for all lines in Docentric AX parameters > Licensing > License notification settings is set to 'No'. This is done to avoid sending duplicate or incorrect Docentric license expiration email notifications.
   >> (3.4.4.1) Improved tracing by adding:
     > A new trace category REPORT_EXEC_TIMES and trace event EXEC_COMPLETED to trace report execution times. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-logging-and-diagnostics/tracing/#trace-report-execution-times
     > Additional info is logged to the database (the DocTraceTable table) if the used report template is ER-based, for the trace category DOCENTRIC and trace event END.
     > Additional info is logged to both the infolog and database which Print management settings are loaded and will be used, including Print type (Original/Copy), Level (Module/Account/Document) and Condition (Default/Conditional query), for the trace category PRINTMGMT and trace event ON_PRINTMGMT_LOAD.
 

********************
    FIXES 
********************
- General:
  >> Fixed Docentric extension of the Print destination settings form to allow other extensions of this form to run side-by-side.
  >> Fixed deadlock when storing files to Azure Blob and File Storage in parallel (occurs only in batch because of in-memory SDK client caching problem).
  >> Fixed race condition issue during sending emails in multiple threads using MailKit because of the cached instances of SMTP mail client.
  >> The DocTableFieldsMetadata.retrieveExtensionFieldsMetadata() method is fixed so that fields of table extensions are not skipped unless the table extension is a Docentric extension.
  >> Workflow comments (the DocWorkflowCommentWriter class): Fixed error 'Object reference is not set to an instance of an object'. Workflow comments are now supported also for tables supporting inheritance.
  >> Docentric Report Viewer (the DocentricReportViewerControl control): Enabling/disabling the 'Export to Word' and 'Export to Excel' buttons in the viewer now works properly.
  >> Fixed bug for Electronic signature appearances: It was possible to upload the signature image after the Electronic signature appearance record had been deleted.
  >> Fixed backward compatibility for DocSysEmailDistributor batch jobs scheduled before Docentric 3.4.1.
  >> Fixed the bug when downloading emails with additional attachments in Print archive: The download was not possible if some of the additional attachments had the same name as the generated report.
  >> Custom field labels, which can be used in Docentric templates and print settings, were resolved without fallback to the parent and the default language, which is now fixed.
  >> Fixed the Docentric Upgrade Manager scripts errors related to encrypted fields: Before running the upgrade scripts, the encrypted fields in Docentric tables are now validated and the invalid fields are cleared.
  >> (3.4.4.1) Improved startup logic and logging when database is not synchronized, which can happen only on DevBoxes (Tier 1).
  >> (3.4.4.2) Docentric report setup: Fixed reloading System templates:
     > Fixed the 'Object reference is not set to an instance of an object' error when reloading Docentric reports and their templates for the first time.
     > Fixed the error where the first report record was being shown on template reload, instead of the first invalid report record on first template reload from workspace.
     > Fixed the error with positioning on the first invalid report in Docentric report setup after reloading Docentric reports and their templates for the first time.
  >> (3.4.4.2) Tracing: Fixed bug for the trace category PRINTMGMT and the trace event ON_PRINTMGMT_LOAD:
     > Fixed the 'Object reference is not set to an instance of an object' error that occurs for a Print management report when the report runs (with or without using Print management) and the Destination field in Print management setup is set to the value '<Default>'.
     > Fixed the tracing message to display the correct SSRS report design name (i.e. Report format) when the report is printed using Print management.
     > Fixed the if statements checking whether the tracing is enabled for the PRINTMGMT trace category.
  >> (3.4.4.3) Compatibility fix with the "Use Project invoice proposal and invoice journal forms with the Header and Lines view" feature throwing null pointer exception on version 10.0.28 and onwards. 

- Data Entities:
  >> Docentric Print Management Settings Package Data Entity: 
     - The data entity can now be used in the 'Copy into legal entity' data project without users having to change the field mappings manually.
     - Improved import/export of PrintJobSettings and QueryPacked container fields by following the recommendations from MS:
       - Deleted the unnecessary string fields from the entity table:
         > PrintJobSettingsStr
         > PrintSettingsQueryPackedStr
       - Renamed the container fields in the entity table:
         > PrintJobSettings -> PrintJobSettingsV2
         > PrintSettingsQueryPacked -> PrintSettingsQueryPackedV2
       - Deleted the unnecessary container fields from the staging table:
         > PrintJobSettings
         > PrintSettingsQueryPacked
       - Renamed the string fields in the staging table:
         > PrintJobSettingsStr -> PrintJobSettingsV2
         > PrintJobSettingsStrFilename -> PrintJobSettingsV2Filename
  >> Docentric Print Management Settings and Docentric Print Management Settings Package Data Entity:
	 - Fixed the bug where invalid Print management override setting with an empty ID (i.e. empty Account number for Customer/Vendor) was imported, corrupting Print management settings and preventing Print management setup from opening.
	 - Fixed the bug where override-specific information (node-specific IDs, i.e. Account number for Customer/Vendor) was exported only for the legal entity from which the export is executed.
  >> Docentric Organization Email Messages Package Data Entity:
     - The data entity can now be used in the 'Copy into legal entity' data project without users having to change the field mappings manually.

- Docentric Designer and Document Generator:
  >> Fixed an issue that would cause hyperlinks set directly on pictures and other shapes to not work in generated PDF documents. Hyperlinks now work properly in rendered documents for all types of shapes (inline and floating).
  >> (3.4.4.2) Disabled the XPS output file format as it is deprecated by Microsoft in 2018 and therefore its use might result in an error.
  >> (3.4.4.3) Fixed the bug when generating reports from a template containing email address hyperlinks; these hyperlinks might be invalid in the generated PDF documents.


----------------------------------------------------------------------------------------------------
Version 3.4.3 Change Log
----------------------------------------------------------------------------------------------------
- Saving to Azure Files:
  >> On the Print destination settings form, users can now turn on the Save to Azure Files option and configure which Azure storage account to use, target Azure file share and folder path.
  >> Users can also configure whether non-existing Azure file share and folders should be created.
  >> Placeholders can be used in Azure file share name, Folder path and Output filename.

- SharePoint extended security:
  >> In 3.4.2, SharePoint authorization types Online and On-premises were introduced to be used for template management and report distribution.
  >> In this release, you can configure different login accounts using different authorization types for multiple SharePoint servers, sites and document libraries. This setup is called Fine-grained security and it is located in Docentric AX parameters > Security > SharePoint extended security settings.
  >> The new security settings are currently applied when reading and saving Docentric templates stored on SharePoint, when using Docentric SharePoint picker, and when saving reports to SharePoint via Docentric File print destination > Save to SharePoint.
  >> Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-security/d365-sharepoint-extended-security/

- Emailing:
  >> Added the 'Is enabled' and 'Authentication required' fields to Docentric AX parameters > Additional email accounts. Changed behavior of the Username field: if the authentication is required, this field is now mandatory. Upgrade script copies the Sender email field to Username.
  >> MailKit v2.15.0 and MimeKit v2.15.1 are added and used as the default .NET libraries for sending emails using SMTP.
  >> Email throttling is introduced for Docentric SMTP email provider. Throttling for Exchange is supported OOTB since Docentric reuses D365FO Exchange email provider.
  >> Added links to Batch email sending status to the 'All customers' and 'All vendors' forms in the General > Outgoing documents action pane.
  >> Email print destination: Added a new filter field 'Tags' for Additional attachment rules, which results in selection of only those Attachments tagged with all specified tags.
  >> Email print destination: Added a new 'Load from' option 'Custom records' for Additional attachment rules. Unlike 'Custom record', by using 'Custom records' you can specify more than one table record to be source for additional attachments.

- eInvoice attachment:
  >> Supported D365FO 10.0.18 feature 'Archive printed customer invoices with hash numbers' related to eInvoice attachment that enables saving electronic documents to Attachments of the corresponding journals with the document hash numbers.
  >> Document types, used for eInvoice attachment when printing reports via Docentric print destinations, can now be configured in Accounts receivable parameters > Electronic documents.

- Configurable Business Documents:
  >> The use of ER Data models and Model mappings of Configurable business documents as report data sources is now an officially published functionality.
  >> Licensing is redesigned to support the functionality.
  >> Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-configurable-business-documents/

- Licensing:
  >> Licensing is redesigned to support Add-Ons (such as Electronic Reporting & Business Documents).
  >> Added 2 license types: Partner and Free Edition with Paid Support.
  >> The Partner license type is renamed to End-user.
  >> Deprecated 2 license types: Development and Test. Licenses are automatically converted: Development to Partner, Test to End-user (formerly Production).
  >> Notifications are sent 60, 30, 14, 7, 3, 2, 1 and 0 days before the subscription expiration date to System administrators and users with the security roles configured in Docentric AX parameters > Licensing.
  >> Users with the Docentric AX Administrator and License Manager roles can now request subscription renewal from Docentric AX parameters > Licensing.
  >> Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-installation/d365-licensing/

- Docentric Designer and Document Generator:
  >> Supported configurable TIFF compression when saving reports to TIFF format.
  >> Supported PDF to PDF/A conversion for reports based on Docentric templates. Supported PDF/A standards: PDF/A 3A, PDF/A 3B and PDF/A 3U.
  
- Misc: 
  >> When Print management setup is open from Docentric report setup for the selected report, only corresponding Print management document type(s) are shown.
  >> Print archive: The system field 'Created date and time' is added to the Print archive form.
  >> Improved validation of Document types used for saving to Print archive and Attachments.
  >> Supported saving reports to Attachments with document hash numbers via DocPrintDestSettingsFile.parmSaveToAttachmentsWithDocumentHashNumber().
  >> Added support for ZIP archive password protection and common encryption and compression methods via DocDocumentHelper.documents2Zip().
  >> When saving reports to Azure Blob storage, the blob container name is converted to lowercase automatically after placeholders are resolved.

- System and Utilities:
  >> Tracing: AOS Instance name and ID are added to the DocTraceTable table.
  >> Report Viewer (PDF.js) is upgraded to the 2.12.313 version. Additionally, localization of PDF.js is enabled, by setting the viewer language to current user language.
  >> Added a delegate for scanning Docentric templates for viruses and malicious code before upload to D365FO. Applicable for templates stored on SharePoint or Azure Blob storage.
  >> Added caching when dealing with Azure Blob storage and Azure Files.


********************
    FIXES 
********************
- General:
  >> Workflow email notifications: Fixed the creation of the URL link to the workflow entity stored in the %LinkToBusinessData% and %EntityUrl% placeholders. The link was not created correctly if the form where the workflow is active has the child data sources linked to the main data source.
  >> Fixed bug for using WF comments in Email templates by removing security check for the DocEmailTemplateAdvancedHandlerWFAL class.
  >> When printing reports using Docentric File and Email print destinations, the validation of the output filename is no longer skipped when it contains placeholders (including label placeholders).
  >> Print Management Data Entity: Conditional settings couldn't be copied because the checksum wasn't calculated correctly.
  >> Fixed bug for inactive reports: Reports in Docentric report setup with the Is active field turned off, didn't act as reports not registered in Docentric report setup.
  >> Fixed SharePoint CSOM assembly collision issue, which might occur when another customization uses a different assembly version.
  >> When saving alerts emails to the Batch email sending status table, the UserId field was populated with the current user ID instead of EventInbox.UserId.
  >> Fixed the DocExtensionFieldsHelper class to skip retrieving Custom fields. Also introduced caching of table fields metadata for both helper classes for Extension and Custom fields (DocExtensionFieldsHelper and DocCustomFieldsHelper).
  >> Email distributor batch: Records to include > Filter > Previously used query wasn't supported.
  >> Email distributor batch and cleanup: Removing previously added joint data sources from the job query was disabled.
  >> Fixed compile errors for 10.0.25 due to X++ compiler changes related to enforcing internal modifiers.
  >> (3.4.3.1) Fixed broken backward compatibility: The protected member (reportTable) of the base reporting DSP class (DocDataSourceProviderReportingBase) was renamed, resulting in the non-compilable Docentric AX SSRS Replicas model if not upgraded to 3.4.3. This change has now been reverted.
  >> (3.4.3.1) Fixed the disabled Print management menu item in Docentric report setup for non-system SSRS report formats.
   
- Docentric Designer and Document Generator:
  >> Fonts haven't been saved within PDF documents in the proper form.


----------------------------------------------------------------------------------------------------
Version 3.4.2 Change Log
----------------------------------------------------------------------------------------------------
- General:
  >> Apart from SharePoint integration user for template management and saving reports, two additional SharePoint authorization types are now supported: Online and On-premises.
  >> Added Encryption algorithm to PDF password setup. Improved PDF encryption: Added support for strong AES256 encryption cipher algorithm.
  >> Added custom placeholders for WF comments (the first, the current and all comments) for Email templates via the DocEmailTemplateAdvancedHandlerWFAL class (Advanced handler class for WF and Alerts).
  >> Support for new fields related to Attachments in the data entities: DocSysEmailMessageTableEntity for Organization email templates and DocSysEmailMessageSystemTableEntity for System email templates.

- System and Utilities:
  >> Compiler Warnings and Best Practice Issues are removed or suppressed; the code cleansing is done.
  >> Print to Docentric File print destination: Added a new property parmSendSeparateFilesToUser() to the DocPrintDestSettingsFile class to programmatically skip zipping of multi-documents reports (such as Customer account statement) when downloaded in the browser, if required so.
  >> When generating and distributing reports (in the DocOutputManager class), events are now raised also in the case of an error.
  >> (3.4.2.1) When the Discover report technical name checkbox in User options is turned on, the template ID and report runtime language beside the SSRS report design name are now printed to Infolog.


********************
    FIXES
********************
- General:
  >> Fixed saving in Email history: From D365FO 10.0.21, Docentric SMTP email provider cannot store information on outgoing emails in Email history. The reason is a new parameter of the SysEmailHistory::insertNew() method.
  >> When Email body HTML editor is used in the same session with CK Editor added by MS in D365FO 10.0.16, the "An unexpected client error occurred" error message appears. This is fixed by using iframe.
  >> When used the Docentric Print Management Settings data entity (DocPrintMgmtSettingsEntity) for the import operation, for the default Docentric template is used a string constant "@DOCENTRIC_DEFAULT_TEMPLATE@" instead of an empty string.
  >> Fixed caching and sharing of Docentric Engine property values such as DocumentConversionTimeout across AOS nodes, which are stored in the DocentricEngineSetting table. The DocSystemSetting table is introduced to provide multiple options for resetting the cached values.
  >> Fixed random decryption issue with PDF AES128 encryption algorithm and reverted from RC128 to AES128 as the default PDF encryption algorithm.
  >> Query-based reports: When a query contains as a datasource a view that has GroupBy defined, the report DDSP is not generated correctly (e.g. not all records or fields are fetched).
  >> Fixed saving to Print archive when PDF encryption is used: PDF encryption conditions were not being properly stored.
  >> Email token redirection: When the Print destination settings form is open, Print management email tokens are not offered on a helping dialog.
  >> (3.4.2.1) Fixed bug for Global attachments: The Global attachment checkbox is hidden on the Attachments form when open for a Legal entity record.
  >> (3.4.2.1) Email templates: When adding attachments for Alert and WF emails is enabled and no Attachment tags are specified, no attachment is added to the notification emails. This behaviour is now changed to include all Attachment files from the alert/WF-originated table.
  >> (3.4.2.2) Create alert rule and Manage my alerts: When saving an alert rule with the Send email option turned off, it might happen that Email ID related to Docentric functionality is mandatory although not visible. This bug is fixed. Also, View details for Email ID is implemented.
  >> (3.4.2.2) SrsReportRunController_DC_Extension: The bug in CoC of the unpack() method, which is introduced during the code cleansing in 3.4.2.0, is now fixed. The bug affected certain Non Print management reports when executing in batch.
  >> (3.4.2.3) SrsReportRunController_DC_Extension: The bug in CoC of the parmReportContract() method, which is introduced during the code cleansing in 3.4.2.0, is now fixed. The bug affected certain reports that change the report contract settings in the prePromptModifyContract() method, which were later overwritten with the SysLastValue settings.


----------------------------------------------------------------------------------------------------
Version 3.4.1 Change Log
----------------------------------------------------------------------------------------------------
- General:
  >> Introduced Delivery address email tokens for primary email (@DLV@) and purpose (@DLV_<Purpose>@). Can be used with any report related to a customer or vendor.
  >> Redesigned the Print destination settings form > Docentric File print destination: the 'Set the output filename suffix' fast tab is moved to a separate form. An indicator whether the child form is dirty is added to all 'More...' buttons.
  >> The Print destination settings form > Docentric File print destination > Save to Attachments: Added a new Record type 'Legal entity', so reports can now be saved to Attachments of the current Legal entity.
  >> Redesigned the Validation fast tab in Docentric report setup to be more readable and user-friendly.

- Emailing:
  >> Improved Workflow email notifications: The Batch email sending status fields added by Docentric such as Context information and Account number are populated. You can also tag Attachments on a Workflow entity to be sent as attachments of the Workflow emails. 
  >> Improved Email distributor batch: You can now select which outgoing emails (from the Batch email sending status form) to send with Email distributor batch. This way you can schedule multiple batch jobs to send different types of emails separately, e.g. customer invoices and alert notifications.
  >> Introduced Email distributor cleanup, where you can select which the Batch email sending status records to delete. You can also implement an event handler to archive deleting records.
  >> Improved Batch email sending status: Allow updating of a single email message including Body and Attachments. Extended filter to include outgoing emails in the Expired status. Improved form for viewing of a single message to show HTML formatted Body and Attachments.
  >> DocEmailTemplateManager::sendEmail()/sendSysEmail() methods: Supported placeholders in To, Cc and Bcc.

- Alert email notifications:
  >> Per Alert rule, you will configure:
     - Which Email template to use, specifying this way Alert email body and subject as well as Sender address and name.
     - Whether Alert emails will be sent synchronously or via Email distributor batch.
     - Besides email recipients (the To field), you can also specify Cc and Bcc, which can contain placeholders bound to user- or alert-related contact email addresses. OOTB are supported: %CreatedUser%, %ModifiedUser% and %USERGROUP_<GroupId>%.
  >> In Email templates setup, you will configure:
     - Email body and subject that can contain placeholders bound to alert-related data. Dynamic images and dynamic tables are also supported.
     - Tags that alert-related Attachments needs to be marked with in order to be attached to Alert notification emails.
     - All standard Alert placeholders such as %Message% and %LinkToBusinessData% are supported. You can also introduce custom placeholders via ETH classes.
  >> When used for Alert emails, the Batch email sending status form will show alert-related Context information, Account ID if applicable, clickable Alert rule ID and Notification ID. Using this data, you can run a separate Email distributor batch job for specific Alert emails.
  >> Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-miscellaneous/d365-improved-alert-emails/

- Docentric Designer and Document Generator:
  >> Introduced configurable DPI settings when generating reports in TIFF output format.
  >> Improved caching for Docentric Engine properties such as DocumentConversionTimeout, which are stored in the DocentricEngineSetting table.

- System and Utilities:
  >> Refactored and improved delegates and placeholder management classes used in report execution pipeline.
  >> Refactored printer selection lookup form (a new dedicated form is introduced) to be used exclusively from the Print destination settings form.
  >> A new class DocDataSourceObject containing a report data source data record tree is added as a child to DocPrintReportSettings, which is accessible anywhere in the report execution pipeline.
  >> Created a new delegate (DocReportRunDelegates.savingEInvoiceAttachment) for changing Document type and other settings when attaching invoices to journals via the 'eInvoice attachment' option.
  >> Created a new delegate (DocReportRunDelegates.tranformReportXmlOutput) for applying data transformation to report data source when printing reports in XML output format.
  >> Created action class DocDocuActionFileWithMetadata (Attach file with metadata) that enables saving attaching documents to SharePoint with metadata fields, which can be specified programmatically, using the DocDocuActionFileWithMetadata.changeAttachmentSharePointMetadata delegate.
  >> Added support for creating password-protected ZIP files via method DocDocumentHelper::documents2Zip().


********************
    FIXES 
********************
- General:
  >> When saving files to Azure Blob storage or Azure Files, the content type (MIME type) hasn't been set.
  >> Emailing: Bare line feeds (LF) without the carriage return character (CR) are found in the email message body when print settings are loaded from SysLastValue. This is a MS bug, but a workaround (the second attempt) is created to replace each occurrence of LF with CRLF field in the email message body.
  >> Fixed bug for 'Open email before sending' with Bcc and To fields containing the same email address.
  >> Fixed bug for base DSP class (DocDataSourceProviderSrsReporting), when retrieving records from an RDP InMemory table with missing SELECT statement in its SRSReportDataSetAttribute method in the report DP class.
  >> Fixed bug for Electronic signature: Azure Key Vault certificate retrieval fails when the Secret field in the Key Vault parameters is specified in the form: 'vault:///certificate'.
  >> Fixed bug for retrieving a current user External ID needed for Docentric SharePoint Proxy when connecting to SharePoint server: if External ID has not been found in the current user session, it wasn't read from the database.
  >> Fixed SharePoint issue with the first upload of a file to a target document library, when 'Require documents to be checked out before they can be edited?' is turned on for this library. However, a file overwrite on such document libraries is not currently supported.


----------------------------------------------------------------------------------------------------
Version 3.4.0 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Saving to SharePoint:
  >> Enabled saving reports to SharePoint Document libraries with metadata fields, which are configured using placeholders in Docentric report setup > SharePoint settings. This way, not just report output files can be saved in SharePoint but also their metadata such as Customer ID, Document ID, Due Date, etc.
  >> Saving with metadata fields is supported for:
     - Docentric File print destination > Save to SharePoint,
     - Docentric File print destination > Save to Attachments, 
     - Docentric Archive print destination or any destination with 'Save in Print archive' turned on.
  >> Save to Attachments and Print archive is triggered via Document types pointing to a SharePoint document library whose metadata fields are configured in Docentric report setup > SharePoint settings for the executing report.
  >> Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-docentric-ax-reports/d365-sharepoint-settings/d365-sharepoint-metadata-fields/

- Printing:
  >> User Favorite Printers are introduced: End-users can set up their favorite printers, which will appear either as the only available network printers when printing reports or on the top of the list of all available printers, depending on the 'Printers I want to see' selected value in User options. Administrator can configure favorite printers for all users. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/report-printing-capabilities/user-favorite-printers/
  >> User Allowed Printers are introduced: Administrator can allow selection and use of particular network printers per user. Setup can be done from both perspectives: per printer and user, also with the help of security roles. Users can print reports only to their allowed network printers. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/report-printing-capabilities/user-allowed-printers/
  >> User Default Printer setup is updated to support User Allowed and User Favorite Printers.
  >> Report Restricted Printers are improved to support restrictions also for reports outside Docentric report setup and for printers which could be registered in D365FO in the future.
  >> Printer selection on the Print destination settings form is redesigned: instead of the combobox with available printers, a lookup form with filtering and sorting is introduced. Additionally, placeholders can be used, which enables dynamic printer setup, e.g. the use of different printers for different locations.
  >> Data entities for Report Restricted, User Favorite and User Allowed Printers are created: Docentric Report Restricted Printers (DocReportRestrictedPrintersEntity) and Docentric User Printers (DocUserPrintersEntity).

- Emailing:
  >> Added support for the Primary contact and Purpose email tokens for the Print management document type Container contents (PrintMgmtDocumentType::WHSContainerContents).
  >> Improved validation of email addresses in the email settings on the Print destination settings form (the To, Cc, Bcc fields), when email tokens and placeholders are used.
  >> Report email templates: Sender address (the From field) and Sender name (the sender display name) are added to Email templates.
  >> Organization and System email templates: Added support for Reply-to and Bounce-to for DocEmailTemplateManager::sendMail() and DocEmailTemplateManager::sendSysMail() methods, used for sending emails based on email templates.

- Docentric report setup:
  >> You can now preview report templates directly from Docentric report setup on a button click.
  >> On the Docentric report setup > Sample DDSP form, DDSP schema is shown.
  >> To enable better organization of User-defined placeholders, Placeholder groups are introduced. Placeholder groups can also be used with Custom placeholders via the Group property of the DocPlaceholderAttribute attribute.
  >> The Placeholder list form is improved to display the source DSP class for Custom placeholders including inherited and extension classes. Also, the form now supports data source refreshing and clickable links to related tables.
  >> Report setup can now be open from the Print destination settings form in order to view and configure additional print settings for those users, who have sufficient security privileges.

- Document Generation:
  >> Supported document conversion from DOCX to PDF by using MS Office 365 cloud service as well as conversion to any file format by using a third-party conversion engine.
  >> Supported TIFF output format.
  >> Query-based reports are optimized by skipping table buffer re-reading for data sources with Dynamic fields.
  >> DSP class for CBD Data models is updated to support NextGen Document Generator.

- Docentric Designer and Document Generator:
  >> Configurable timeout for Docentric Generator is introduced. Setup is done via the DocentricEngineSettings table and the new DocumentConversionTimeout property.
  >> Added a new XPath function: get-string-binary(). Useful for converting an HTML fragment to its binary value in Docentric Designer. This way a data field (e.g. a Form note containing HTML text) can be bound to a Subdocument (HTML) tagging element without any code customization.

- System and Utilities:
  >> Helper classes (DocERFormatGenerator and DocERFormatGeneratorCBD) for printing ER Formats to Memory are created.
  >> Added support for Custom placeholders defined as attributes on the extension classes of the DSP classes.
  >> Improved validation when using Docentric Print Management Data Entity for import scenarios.
  >> Added events (delegates) in Docentric form extension class of the built-in Print destination settings form, published when initializing and closing the form.
  >> Redesigned events (delegates) published during report execution when distribution operations (printing, archiving, emailing) are started.
  >> Basic OS information is included in the diagnostic data sent to Docentric AppInsights.


********************
    FIXES 
********************
- General:
  >> Deployment tools: When moving template documents stored on Azure Blob storage between environments, they were occasionally uploaded to wrong Azure Blob containers; the bug was caused by different case sensitivity in D365FO and Azure Blob storage.
  >> Fixed bug for HTML Editor for Email Body, which loses focus occasionally when typing fast.
  >> When importing/exporting Docentric data entities with Container and Memo data fields, 32KB limitation in field size is removed. Fixed data entities:
     - Docentric Electronic Signature Appearance (DocElectronicSignatureAppearanceEntity) - Container fields,
     - Docentric Print Management Settings (DocPrintMgmtSettingsEntity) - Container fields,
     - Docentric Organization Email Messages (DocSysEmailMessageTableEntity) - Memo fields,
     - Docentric System Email Messages (DocSysEmailMessageSystemTableEntity) - Memo fields.
  >> Docentric Print Management Data Entity: When importing/exporting Print management settings with SSRS report format and Docentric Email or File print destination, SSRS output file format was ignored.
  >> Report Restricted Printers: When posting a document without using Print management, in the pipeline all printers were treated as restricted if the running report is not registered in Docentric report setup.
  >> Fixed bug for DocEmailTemplateManager::sendMail() and DocEmailTemplateManager::sendSysMail() methods when used for sending emails via Batch email sending status without attachments and the parameter of type DocEmailProcessingParams.
  >> (3.4.0.1) Saving reports to SharePoint site collections didn't work after switching to CSOM SharePoint APIs.
  >> (3.4.0.1) Emailing: Bare line feeds (LF) without the carriage return character (CR) are found in the email message body when print settings are loaded from SysLastValue. This is a MS bug but a workaround is created to replace each occurrence of LF with CRLF field in the email message body.
  >> (3.4.0.2) Saving reports larger than 2MB to SharePoint didn't work after switching to CSOM SharePoint APIs. In the SharePoint picker document libraries and folders were reverse alphabetically sorted.
  >> (3.4.0.2) Additional email attachments: When loading attachments from a custom record, security check of user rights to access the record and its attachment was incomplete and returns a false result in case that no record-matching menu item exists in the system.

- Docentric Designer and Document Generator:
  >> Fixed bug: the format() XPath function didn't format date/time values properly.
  >> Printing in on-premises environments: Printing reports to network printers was occasionally causing errors and even system crashes due to a print dialog invocation and multi threading issues.
  >> PDF encryption is temporarily reverted from AES128 to RC128 encryption due to random decryption issues. This does not affect business processes in any way.


----------------------------------------------------------------------------------------------------
Version 3.3.9 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************  
- Document Generation:
  >> Signing PDF documents generated with both Docentric and SSRS rendering engine is enabled. Electronic signature is created with X.509 certificates stored in Azure Key Vault or in the database in PFX format. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-docentric-ax-reports/document-generation-settings/d365-electronic-signatures/
  >> Additionally, electronic signature appearances for visualization of electronic signatures on signed PDF documents are introduced. They are highly configurable and can be set per company, report and template.
  >> PDF document properties such as Author, Title, Subject and Keywords are enabled for outgoing PDF documents generated by SSRS rendering engine. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-docentric-ax-reports/document-generation-settings/
  >> Improved PDF encryption: RC40 encryption cipher algorithm is replaced with a stronger one - AES128.
  >> Docentric rendering engine: Supported transparency of images in documents generated in PDF and Word output formats.
  >> (3.3.9.1) Data entitities for Electronic signature appearances and Electronic signature appearance groups are added.

- Emailing:
  >> Email templates for email body and subject are introduced as a new option in Docentric report setup. In addition to configuring the email body from within Docentric Email print destination, you can now select which Email template to use instead. To enable multilingual outgoing emails with printed reports, you will need to set up Email templates per language. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/report-emailing-capabilities/d365-how-to-use-report-email-templates/
  >> New Email templates can also be used as snippets for Email body. The 'T' combobox (meaning 'Insert Snippet From Email Template') is added to the email body editor (the custom control) on the Print destination settings form.
  >> Docentric AX parameters > Additional email sender accounts: A new field is added to support sender accounts with a username different than the sender email address. The 'Send test email' functionalities now send test emails strictly for the currently selected account.
  >> The 'Suppress outgoing emails' option is introduced in Docentric AX parameters > Emailing. Applicable when emailing reports via Docentric Email print destination or sending email messages via Docentric Email distributor batch. You might find it useful in UAT environments.
  >> A new email token RFQ Vendor email (@RFQVendorEmail@) for the Request for quotation (RFQSend) report is introduced; it is resolved as Email from RFQ Journal (VendRFQJour), which is copied during posting from the corresponding Vendor record in RFQ Case. Email token redirection will work as expected, e.g. when this token is not resolved, reports will not be emailed but printed to a preconfigured printer instead. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/report-emailing-capabilities/#custom-email-tokens
  >> Additional email attachments: Added new options for 'Load from' when defining Attachment rules on the Print destination settings from: Item table, Source table line and Journal line. Learn more: https://ax.docentric.com/send-sales-order-confirmation-emails-with-item-attachments/
  >> Batch email sending status: Added new columns Document ID, Account and Account type, which contain the related customer or vendor account, if applicable. This will improve searchability of the outgoing emails.
  >> Email templates: Methods DocEmailTemplateManager::sendMail() and DocEmailTemplateManager::sendSysMail() are now enabled for Email processing (Email distributor batch). Can be useful for custom scenarios.
  >> Error messaging is improved when using Docentric SMTP email provider.

- Report Restricted Printers:
  >> Administrators can restrict the selection and use of particular network printers per report. Users can print a report only to network printers allowed for this report. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/report-printing-capabilities/report-restricted-printers/
  >> Useful for checks, labels and other reports which should be printed to special printers only.
  >> You can apply your custom restriction rules (e.g. per user or per location) via event handlers.

- Print Management:
  >> The 'Print management' button is now always enabled for each Print management report in Docentric report setup, even when it doesn't have any setting inserted in Print management setup.
  >> A new button 'Print management per module' is added to Docentric report setup.
  >> The 'Print management preview' feature is now part of Free Edition.
  >> The 'Print management preview' feature is enabled for the Sales packing slip report.

- General:
  >> Export to Word (Word 2003) from Docentric Viewer for reports based on SSRS report designs is now supported.
  >> Docentric settings such as Category, Language, Restriction and Active from/to on the Attachments form can now be updated in bulk.
  >> Docentric AX Workspace is redesigned to be better organized and to include links to Print management setup for all modules. Learn more: https://ax.docentric.com/print-management-setup-for-all-modules-in-one-place/
  
- System and Utilities:
  >> Added a new tracing option for loading Print management settings.
  >> Added escaping of non-allowed characters in output filenames and folders after the placeholders are processed.
  >> Number of pages of a generated report is now added to the DocPrintReportSettings class (the getPrintedReportNumberOfPages() method), and it can be used in the report pipeline, e.g. with the event handlers.
  >> Added support for SRSReportFileFormat::Word, a new enum element added in 10.0.12 D365FO version. This means that you can generate SSRS reports in Word output format using Docentric print destinations.
  >> Added support to the Data Automation framework for Docentric NextGen Document Generation and Distribution, which is coming in one of the next releases.
  >> Added an event handler to enable resuming execution on error (instead of stopping it, which is the default behavior), when printing reports in batch. This can be useful when e.g. emailing multiple invoices in batch.
  >> Improved error messaging when executing reports in batch, e.g. Document ID and Account Number are added to Batch job infolog.
  >> Instead of 3 DLLs only 1 DLL is now included in the Docentric AX model. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-installation/d365-installation-via-models/d365-how-to-add-docentric-ax-models-to-tfs/
  >> Common fonts such as Arial and Calibri are added as Custom AOT fonts, since most of new environments are self-service and with no fonts installed. See all Custom AOT fonts by clicking Docentric AX parameters > Templates > Show installed fonts. Learn more: https://ax.docentric.com/printing-reports-with-custom-fonts-in-self-service-deployments/
  >> The following fonts are added to AOT Resources in the Docentric AX model:
     - Arial (Regular, Bold, Italic, Bold Italic)
     - Arial Black (Regular)
     - Arial Narrow (Regular, Bold, Italic, Bold Italic)
     - Calibri (Regular, Bold, Italic, Bold Italic)
     - Calibri Light (Regular, Italic)
     - Courier New (Regular, Bold, Italic, Bold Italic)
     - IDAutomationMICR (Regular)
     - Segoe UI (Regular, Bold, Italic, Bold Italic)
     - Segoe UI Black (Regular, Italic)
     - Segoe UI Light (Regular, Italic)
     - Segoe UI Semibold (Regular, Italic)
     - Segoe UI Semilight (Regular, Italic)
     - Symbol (Regular)
     - Tahoma (Regular, Bold)
     - Times New Roman (Regular, Bold, Italic, Bold Italic)
     - Verdana (Regular, Bold, Italic, Bold Italic)
     - Wingdings (Regular)
     - Wingdings 2 (Regular)
     - Wingdings 3 (Regular)


********************
    FIXES 
********************
- General:
  >> Upgrade manager: subscription is moved from the ApplicationStartupEventManager.OnSystemStartup event to OnSessionCreated, in order to avoid multiple executions and errors in unit testing.
  >> Table Browser extension is fixed to enable editing of Docentric tables with hidden parameters such as DocTraceParam, DocentricEngineSetting and DocFeaturePreview in production and UAT environments.
  >> Print archive: The 'Number of pages' field wasn't getting populated when saving reports to Print archive.
  >> Print archive: Indexes weren't set on the DocPrintJobHeader table, which contains archived reports metadata.
  >> Fixed bugs in the processing/replacing User-defined placeholders and Labels in the print destination settings.
  >> User-defined placeholder expressions can now have length greater than 500.
  >> Fixed Microsoft's bug: When using FormStringControl with the property 'Password Style' set to Yes within the new Grid control, the entered passwords are not masked.
  >> Default printer: Fixed a bug on the 'Default printer per user' form, where effective default printer is not shown and validated correctly in some cases.
  >> Custom labels: Improved performance when using labels referenced in Docentric report setup by adjusting indexes on the DocReportLabel table.
  >> Batch email sending status: the 'Last Email Failure Message' field wasn't populated with the error message when using Docentric Email distributor batch.
  >> Fixed occasional update conflict when showing upgrade message in first admin user session.
  >> Fixed an occasional update conflict when showing the upgrade message in the first admin user session.
  >> Generating DDSP: ER Data Model and Model Mapping info were written into DDSP even when a DDSP is generated for SSRS-based reports (relevant only if CBD Preview Feature is turned on).
  >> Emailing: Fixed bug when saving outgoing emails to Email history, which arose due to method signature change in 10.0.15 D365FO version. Email history is otherwise introduced in 10.0.12 D365FO version.
  >> (3.3.9.1) Fixed bug when saving reports to Print archive that are generated in the format different than PDF (e.g. when emailing an XLSX document or printing to a network printer), with an electronic signature not configured for this report in Docentric report setup.

- Docentric Viewer:
  >> Fixed bug for Export to Excel for the PreProcessedRegular reports, such as Customer invoice and Purchase order.
  >> Improved printing quality when printing to local printers from browser.
  >> Fixed a minor layout corruption of underlying forms after closing Docentric viewer.

- HTML Editor for Email Body:
  >> Fixed a bug with the ESC button which, when pressed in the Full Screen mode, corrupted the hosting D365FO page layout.
  >> Widget 'Fields' (the combobox with placeholders) is now renamed to 'P' and became wider to improve user-experience.
  >> Widget 'T' (Templates, meaning 'Insert Snippet From Email Template') is introduced as the combobox containing Email templates from Docentric report setup.
  >> Full screen mode of the email body editor (the custom control) is replaced with a new D365FO form.

- Docentric Designer and Document Generator:
  >> Fixed a bug for handling images while generating PDF documents, which has been causing memory leaks, resulting in the error: "The operation completed successfully. Failed to generate document.".


----------------------------------------------------------------------------------------------------
Version 3.3.8 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- General:
  >> User-defined labels: Except in Docentric templates, you can now use them also in all print settings such as Email body, subject, output filename, etc. D365FO labels are also supported. While you can use multiline labels in print settings, parametrized labels are not supported. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-multilingual-print-settings/
  >> User-defined placeholders: Unlike Standard (i.e. common for all reports) and Custom placeholders (i.e. defined by custom DSP classes per report), these placeholders can be added per report at runtime. They are defined using XPath expressions against the report's DDSP and can be used anywhere in print settings. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-use-user-defined-placeholders-print-destinations/
  >> Print management preview: In addition to Preview copy/original on journal forms, which enable report preview using the default report design, we added a new button (Print management preview) to enable the preview using the report design specified in Print management. Supported reports: Sales/Free Text/Project Invoice, Sales/Project Quotation, Quotation Confirmation, PO/SO Confirmation.

- Document Generation:
  >> We enabled protection of outgoing PDF documents with passwords, which can be configured per report per company in Docentric report setup. Using placeholders (e.g. @CustomerVATNumber@) is supported. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-docentric-ax-reports/document-generation-settings/
  >> PDF document properties such as Author, Title, Subject and Keywords can now be configured per report per company in Docentric report setup. Using placeholders in these settings is supported.
  >> Custom fonts: Reports generated with Docentric can use custom fonts that are uploaded via Docentric AX Parameters > Templates > Template fonts to Azure blob storage (no need for a developer to add them as AOT resources). Diagnostics of currently installed fonts in the environment is also added. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-how-to-set-up-docentric-ax-parameters/#templates

- Emailing:
  >> Added support for logging outgoing emails to Email history (the SysEmailHistory table) when using Docentric SMTP Email provider.
  >> New email tokens OrderEmail and ProjEmail are introduced for PO/SO based reports, and project invoices and quotations respectively. Consequently Email token redirection will work as expected, e.g. when this token is not resolved, reports will not be emailed but printed to a preconfigured printer instead. Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/report-emailing-capabilities/#custom-email-tokens

- File print destination:
  >> Saving reports to external Azure blob storage using Docentric File print destination is enabled. This feature can be suitable for integration scenarios.
  >> When saving reports to Attachments, you can now also set up Attachment fields: Category, Language, Tags, Active from and Active to.
    
- Docentric Designer and Document Generator:
  >> QR Code redundancy level is set to 30.
  >> Added a new XPath function: string-find().

- System and Utilities:
  >> Added a utility class DocSrsReportGenerator that enables simpler generation of any SSRS report as MemoryStream using Docentric Memory print destination. Both SSRS report design/SSRS Reporting Services or Docentric template/Docentric Generator can be used.
  >> Added a custom query range utility method (DocQueryRangeUtil::isRunningInBatch()), which can be used in Advanced filter dialog (e.g. in Print management conditions).
  >> Added tracing options when posting and printing any type of journals.
  >> Extended built-in Table Browser to enable editing of Docentric tables with hidden parameters such as DocTraceParam, DocentricEngineSetting and DocFeaturePreview in production environments.


********************
    FIXES 
********************
- General:
  >> Default printer: A user without access to all companies was not able to set up his or her default printer.
  >> Potential cross-company query issues (related to Default printer, Additional email attachments, etc.) for those users who are granted access only to specific legal entities are removed.
  >> Print management setup: Destination "<Default>" is replaced with "Printer:", although the Print destination settings form is closed via the Cancel button.
  >> eInvoice attachment: If an SSRS report design is generated in the output format different than PDF and printed to a Docentric print destination, an empty eInvoice document is saved to Journal Attachments.
  >> eInvoice attachment: For the Generate DS print destination, eInvoice is attached to Journal (and it shouldn't be).
  >> When emailing reports using 'Open email before sending', Bcc recipients weren't added to the downloaded email message. The same applies when downloading email messages from (Batch) Email sending status, Print archive or Docentric Viewer (Preview before print).
  >> Email token redirection: The redirection didn't occur when posting and printing is done without using Print management.
  >> The Print destination settings form: When Print archive is selected as the target print destination, 'Print archive note' was not enabled if 'Save in print archive?' was turned off.
  >> Fixed bug related to setting report content via the DocPrintedReport class, which could cause an error when using Docentric delegates, e.g. for merging documents.

- Docentric Viewer:
  >> Export to Excel from Docentric Viewer did not work for SSRS pre-processed reports with TempDB tables.

- User-defined labels:
  >> Adding of a user-defined label with no translations to a report as a Custom label was not possible in Docentric report setup.
  >> Label details form didn't get refreshed when a new translation was inserted.
  >> The Docentric User-defined Labels Combined data entity is improved to contain better named fields (e.g. Decription2 is renamed to Label Description).

- Batch email sending status > Update messages:
  >> The form was opening for infinitive time when there was no email messages in the status Unsent, Waiting or Failed in the list of selected messages. The user needed to refresh the page to end the process.

- Docentric Designer and Document Generator:
  >> / 


----------------------------------------------------------------------------------------------------
Version 3.3.7 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- User-defined labels:
  >> Docentric labels, which can be added and translated to multiple languages by end-users at runtime, are introduced. 
  >> Can be used with Docentric templates but also, in the one of the next releases, in report print settings such as the email subject and body.
  >> Data entities for import/export of Docentric labels are provided.

- Emailing:
  >> Added support for updating various fields such as Recipients, Sender and Subject for the selected messages in bulk on the Email sending status form.
  >> Added support for eInvoice attachments. So far, if this option (which can be found on a customer card) was turned on, the SSRS report design was used to generate an invoice or a statement as a PDF attachment of the corresponding journal record. From this version on, which report design will be used (Docentric or SSRS) for eInvoice attachments will depend on the report print settings.

- Saving reports to SharePoint:
  >> Creation of all non-existing folders in the specified folder path is enabled, when saving reports to SharePoint using Docentric File print destination. SharePoint folder path is specified by end-users on the Print destination settings form and can contain placeholders.

- Print Management Data Entity:
  >> Added support to the existing entity (Docentric Print Management Settings) for importing Print management settings which are not the direct result of the exported settings. This means that you can update Print management settings in bulk.
  >> Typical scenarios: Export Print management settings for selected customers/document types/legal entity to XML/Excel/CSV, change the target print destination and report format, email recipients, subjects or bodies, and then import the changed settings back for the same or different customers/document types/legal entity.
  >> Added additional data entity (Docentric Print Management Footer Text) for export/import of Footer text in Print Management setup, which is directly linked to Print management settings.


********************
    FIXES 
********************
- General:
  >> Fixed report validation bug: a report appeared to be invalid if Custom labels were used.

- File print destination:
  >> Fixed bug when a file is saved to Attachments using Document type pointing to a SharePoint folder.
  >> Fixed bug when a file is saved to SharePoint with the 'Overwrite if exists' option turned on.

- Report parameters:
  >> Fixed error when saving report parameters of complex data types (such as List or Containers) to Print archive. Such parameters are skipped.
  >> Fixed error when using report parameters of complex data types (such as List or Containers) as standard placeholders in print settings. Such parameters are skipped.

- Docentric Designer and Document Generator:
  >> Fixed bugs related to Subdocuments, Floating tables and Textboxes.


----------------------------------------------------------------------------------------------------
Version 3.3.6 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- General:
  >> Company language is added to the GeneralData data section in DDSP.

- Emailing:
  >> You can now set up Additional email attachments to be selected based on their Document type.
  >> The certain fields such as Recipient, Sender, Subject, etc. on the Email sending status form can now be edited. This is useful when outgoing emails fail to be sent due to incorrect recipients.
 
- System:
  >> If more than one file is generated when printing a report to the File print destination, a ZIP package containing unique filenames is created and downloaded in the browser.
  >> New inversed Docentric AX workspace icon needed for PU29+ is introduced.

- Docentric Designer and Document Generator:
  >> Added support for externally linked images in report templates.


********************
    FIXES 
********************
- General:
  >> Placeholders used in print settings and containing dates and amounts are now formatted using the report runtime language and not the current user language, which can differ for some reports (e.g. Customer invoice).
  >> Added support (which was missing) for Import/Export of Archive settings in Docentric report setup.
  >> Fixed the incorrect printing (corrupted margins) from Docentric Viewer when the used browser is Internet Explorer.
  >> Fixed bug for retrieving templates stored on SharePoint servers, which have sites hierarchically organized.
  >> Emailing reports and Print archive: Fixed bug when retrieving Additional email attachments and reports from Print archive when they are based on a Document type bound to a SharePoint folder.

- Docentric Designer and Document Generator:
  >> Fixed minor bugs for Live Preview.
  >> Timeout for printing documents (i.e. rendering to EMF format) is extended.


----------------------------------------------------------------------------------------------------
Version 3.3.5 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- General:
  >> Printing out SSRS report AOT name: Each user can now set up in User options to print out the AOT name of the executing SSRS reports. Useful when you need to discover exactly which SSRS report design to add to Docentric report setup.
  >> Removing Docentric Full Edition license (e.g. a trial license) is enabled in Docentric AX parameters.
  >> SharePoint Report User is introduced in Docentric AX parameters to separate permissions for accessing to Docentric templates and for saving reports to SharePoint. SharePoint Reader/Writer are transformed into SharePoint Template Reader/Writer. The upgrade script will copy the value from the old SharePoint Writer field to the newly introduced SharePoint Report User field.

- Print archive:
  >> For emailed reports, you can now download the sent email messages from Print archive and open them in MS Outlook.
  >> You can also download multiple reports from Print archive at once: as PDF and non-PDF files or as a merged single PDF file.
  >> You can set up whether to archive report output file in formats different than PDF, additional email attachments and report parameters.
  >> Search by report parameters including ranges from dynamic queries is enabled.
  >> Added Free text invoice (CustInvoiceTable) as a source table for the Free text invoice report.

- Emailing:
  >> Added support for Exchange On-Premise in SMTP settings in Email parameters: If not set on the Print destination settings form when emailing a report, User name from SMTP settings in Email parameters is used as the  
From field on the outgoing email message. In case that these settings contain account (e.g. COMPANY\username) instead of an email address, which is used for authentication on Exchange On-Premise, up to this version an error occurred. From this version on the current user email will be used as From for such cases.
  >> Added filter per Status of outgoing emails on the Email sending status form. This grid column is bound to a display method so filtering in the grid is not possible.

- File print destination > Save to Attachments:
  >> You can now set up Restriction (Internal/External). So far, reports were always attached by Docentric as Internal documents.
  >> You can also set up what action should be taken if an Attachment with the same Name and Filename already exists.

- Additional Email Attachments:
  >> Introducing new fields 'Active from' and 'Active to' that are used in the filter when selecting additional email attachments. Only those attachments, which are currently active, will be attached to the outgoing emails.
  >> The DocuAttachments form (used, e.g. for Free text invoices or ER archived jobs for Attachments) is extended in order to show Docentric settings in the same way as DocuView (i.e. the regular form for Attachments).
 
- System:
  >> Generating SSRS reports in order to be used with Docentric print destinations is now invoked in more reliable manner.
  >> Introducing tracing mechanism for printing reports using DRA.

- Docentric Designer and Document Generator:
  >> Added support for the Switch Row/Columns functionality for chart captions.
  >> Added support for AUTONUM fields.
  >> Added a completely new EMF library for printing to printers in more reliable and efficient way.
  >> Improved Preview: When running 'Preview' in Docentric Designer, templates were automatically saved; this limitation is now removed.
  >> Live Preview is introduced in Docentric Designer, a new pane in MS Word where you can observe the resulting document side-by-side to the designing template.
  >> Exposed API for merging PDF documents.


********************
    FIXES 
********************
- General:
  >> Print destination settings form becomes corrupted in on-premises environments if the new SSRS PDF viewer is activated.
- Emailing:
  >> Email body editor on the Print destination settings form did not work properly in on-premises environments - the Fields combobox with placeholders was not shown.
  >> Email sender display name was not considered if Additional email accounts are used when emailing reports or email notifications based on Email templates.
- Additional email attachments:
  >> The Attachments (DocuView) form: When navigate to the related Document type, Category or Language (Docentric settings) and return back to the Attachments form, the link to the underlying record is lost.
  >> Email token redirection: An error occurs when the redirected print destination is Email without any Additional attachment rule set.
- System:
  >> Logging of clean installation events was causing infinite loop in some cases/environments.
  >> All pre- and post- event handlers are renamed by adding the _DC suffix in order to avoid potential conflicts with other customizations.
- Docentric Designer and Document Generator:
  >> Fixed problem with invasive error messages in Docentric Designer.
  >> Fixed issues with scaling that might occur occasionally when printing reports to printers using Docentric.


----------------------------------------------------------------------------------------------------
Version 3.3.4 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Docentric report setup:
  >> You can now view placeholders that can be used in print settings when printing reports.
  >> When downloading template files from Docentric report setup, you can now select which ones to download (e.g. only Custom templates).
  >> You can now automatically insert the related Print management reports (e.g. YOURSalesInvoice.Report) with the right settings (e.g. DocSalesInvoiceReportDSP set as the report DSP class) based on Docentric SSRS Replicas. This feature is useful especially when using Free Edition with your customized SSRS report designs.
- Print archive:
  >> Document types for saving reports to Print archive can now be set in Docentric AX parameters (per company) and in Docentric report setup (per report per company).
  >> You can now write Print archive note on the Print destination settings form (e.g. in Print management setup) and search later archived reports by entered values.
- Reporting and Emailing:
  >> Setting up additional email attachments on the Print destination settings form is introduced (as part of Full Edition). Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/report-attachments/
  >> Global attachments and Attachment categories are introduced. They can be used when emailing reports with additional email attachments.
  >> You can now view all available placeholders for a report from the Print destination settings form on click.
  >> Display name for each of Additional email sender accounts is introduced in Docentric AX parameters. If set, they are used when emailing reports or emails based on Email templates.
  >> File print destination: You can now select to which record (e.g. Sales/Purchase order or Vendor/Customer) to attach the printed report, if the 'Save to Attachments' option is turned on.
  >> Added support for Read and Delivery Receipts when emailing reports.
  >> Email print destination: The new 'Open email before sending' option on the Print destination settings form enable you to edit created emails in MS Outlook and send them manually.
  >> Added target print destination into the Misc node of the GeneralData data section of DDSP.
  >> Docentric Viewer has a new option: 'Download in Excel'. This option works only for SSRS report designs.
- Email templates:
  >> Send test email: Added support for placeholders used in the email subject.

- Docentric designer and generator:
  >> The new Var tagging element for declaring variables for storing data from the current data context. Variables can be used to print out stored data in document headers/footers or for running totals.
  >> The new XPath function var-element-value('VariableName') for retrieving values of the specified variable.
  >> The new Context tagging element for storing a data context. This way binding of other tagging elements is made easier and more readable.
  >> Rendering page borders is now supported.
  >> Improved support for CJK characters.


********************
    FIXES 
********************
- Email sending status:
  >> Moving logic for setting the CompanyID_DC field for Organization email templates and the Origin field for System email templates from the Docentric AX Emails model to the Docentric AX model.
- Docentric AX parameters:
  >> The Additional email sender accounts table is transformed to the company-neutral table. Upgrade log is introduced and Administrator is notified about results of the upgrade.
- Print archive: 
  >> When a record from Print archive is deleted, the corresponding report file saved in Attachments of the PrintJobHeader table is deleted too. However, when a report is emailed with additional attachments, or a report is printed in an output format different than PDF, all these files get saved in Attachments of the DocPrintJobHeader table, which represents an extension of PrintJobHeader. Those attachments (the corresponding DocuRef and DocuValue records) were not being deleted so far, but from this version on this is fixed and they will begin to be deleted as well.
- Reporting and Emailing:
  >> Email message priority for the values 'High' and 'Low', which you can set up in Docentric report setup, didn't work properly.
  >> Placeholders in the SharePoint related settings when printing reports to Docentric File print destination, with the 'Save to SharePoint' option turned on, were not supported; now they are.


----------------------------------------------------------------------------------------------------
Version 3.3.3 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Sending test emails is introduced for multiple email sender accounts on the Docentric AX parameters form.
- Print archive:
  >> Improved filtering on the Print archive form.
  >> Print archive can now be open from the Customers/Vendors forms showing reports that are printed and archived for the current account.
     Learn more: https://ax.docentric.com/archived-outgoing-documents-for-customers-and-vendors-in-dynamics-365-for-finance-and-operations/
  >> Default Document type ('File') used for saving reports to Print archive can now be dynamically changed via X++ in a DSP class. 
- Docentric report setup:
  >> Loading only new reports and system templates is enabled.
  >> You can now open the corresponding Print Management setup (e.g. Accounts receivable) for a particulare report (e.g. Customer invoice), if applicable.
  >> The 'For preview use Docentric design/viewer' options in Preview settings are not automatically turned on when inserting or loading (a) Non Print Management reports and (b) multi-document output Print Management reports (such as Customer account statement and Payment advice).
- Reporting:
  >> "Preview before print": You can now preview reports before printing them to Email, Printer, File or Print archive.
  >> "Print as PDF": Document routing to Adobe Acrobat Reader or local file system is enabled and can be selected as a special printing mode on the Print destination settings form.
  >> You can now configure and turn on/off the Document routing history clean-up job when printing reports.
  >> Email token redirection: Error messaging for unresolved Email tokens is improved and new conditions (e.g. 'Primary contact token not resolved') for print destination redirection are added.
     Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-docentric-ax-reports/report-email-sending-settings/
- Email processing:
  >> Sending log for Email distributor batch is introduced. You can now see the log messages for all outgoing emails in Email sending status, including those that failed.
- Email templates:
  >> Added support for dynamic images and multiple dynamic tables for System email templates.
  >> Added support for 'Send test email' for System email templates.
  >> When saving emails to Email sending status, the Company field for Organization- and the Description field for System- Email templates are provided.


********************
    FIXES 
********************
- Print archive:
  >> Cascade deletion for Docentric Print archive didn't work - this is fixed. Additionally, each time when the Print archive form is open, all undeleted records from Docentric Print Archive (if any) will be cleaned up.
  >> Additional email attachments (if exist) were always saved in the database. Now they are saved using the document type for archiving.
- Document routing agent:
  >> Saving printing reports to Azure blob storage was done using old APIs. From the 7.3 version on, saving is done using new APIs.
  >> Document routing cleaning job has not be scheduled to run in batch each time when report is printed using Docentric Printer print destination.
- Email templates:
  >> The SysEmailTable::htmlEncodeParameters(Map _params) extension method throws an error, if the input parameter is null, which can happen if Docentric HTML editor is not used for a particular Email template.
  >> When the email body contains the standard Worker image placeholder and the current worker image does not exist in the database, sending such an email failed.
- The Print destination settings form: The Select template combobox contained multiple @DOCENTRIC_DEFAULT_TEMPLATE@ tokens if the information about report is not provided.
- Deep links generation (which can be used in reports) didn't work properly in on-premises environments: Helper method DocGlobalHelper::generateRecordUrl() is fixed.


----------------------------------------------------------------------------------------------------
Version 3.3.2 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Report emailing:
  >> Email priority, Reply-to and Bounce-to email addresses are now supported.
  >> Saving outgoing emails with attached reports in 'System administration -> Periodic tasks -> Email processing -> Email sending status' is enabled.
  >> Redirection to an alternative print destination (e.g. Printer) is enabled, if an email token is not resolved (e.g. Primary contact email token @@).

- Emailing:
  >> Multiple outgoing mail servers and From email accounts can now be used when emailing reports and email templates.
  >> From the 'Email sending status' form you can now download the email message as EML file, or view the message including the list of downloadable attachments.
  >> Improved 'Email distributor batch': supporting multiple From email accounts set in Docentric AX parameters, not only the default one set in Email parameters.
     Also, enabling use of additional fields of email messages such as Cc, Bcc, Reply-to and Bounce-to when emailing reports.

- Email templates: 
  >> Correction of unfortunate behavior in SysEmailMessage::stringExpand() method, which replaces each occurrence of '\n' with '<br>'.
  >> Introducing new delegates for better templating capabilities for WF/Alert emails, e.g. placeholders for fields of a WF/Alert entity or attaching documents to sending emails.

- Document generator:
  >> Added Visual Format Override property 'Font Size'. This feature allows setting font size dynamically.
  >> Added support for UTF-32 extended characters that are defined in higher Unicode planes. This feature enables use of emoji characters that are defined by different fonts (e.g. Segoe UI Emoji).
  >> Added support for the MS Word table row property 'Allow row to break across pages'.
  >> XPath function 'current()' has been extended with an optional parameter that allows to specify ancestry level in order to get the data context of any parent container element.
  >> Custom tab stops are improved.


********************
    FIXES 
********************
- Document generator: Fixed bug in CSS parser - applicable when using HTML subdocuments.
- Email templates: HTML placeholders didn't work when emailing is performed using built-in Email provider or Email processing.
- Docentric report setup: When filtering reports child forms didn't work properly.
- Default printer: Default printer (globally set) is now set per company instead of the single selection for all companies.


----------------------------------------------------------------------------------------------------
Version 3.3.1 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Document generator: Added support for the 'Allow row to break across pages' feature.
- Document generator: Performance optimization.
- New APIs: Concatenation of multiple Word documents into single document; converting a Word document into PDF.
- Data Entities: Created data entities for import/export of Email templates and Print management setup.
- Selecting templates: If more Docentric templates (aka designs) are used, the Select template combobox on the Print destination settings form has now more intuitive layout.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-docentric-ssrs-reports/d365-how-to-use-more-than-one-template-per-report/
- Selecting templates: You can now set up which templates to show in the combobox by using the 'Select template mode' option in Docentric AX parameters.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-how-to-set-up-docentric-ax-parameters/#security
- Email print destination and Email templates: Worker image is added as a standard image placeholder.
- Email templates: A new functionality 'Send test email' is added to the Email templates form.
- Print archive: Adding new delegates (beforeSaveToPrintArchive and afterSaveToPrintArchive) which enable alternative archiving (e.g. saving to DMS) and/or skipping saving to the built-in Print archive.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-improved-print-archive/
- Query based reports: New options for including display methods in a report DDSP are introduced in Docentric report setup.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-setup/d365-docentric-ax-reports/d365-how-to-set-up-reports/#dsOptions
- Improved experience with the 'Use only Docentric print destinations' option, including previewing of all reports in Docentric Viewer automatically, i.e. without adding them in Docentric report setup.
- Report pipeline: New delegates for successful and failed report execution are introduced, providing all context information including the generated report itself.


********************
    FIXES 
********************
- Fixed bug: Warning about saving a proforma report (e.g. Customer invoice) to Print archive is shown also in case it is not selected.
- Fixed bug: Validation of email addresses has not been working properly.


----------------------------------------------------------------------------------------------------
Version 3.3.0 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Print archive: The built-in Print archive is extended to show more information including the target print destination and its settings, e.g. output filename and email body.
  Learn more: https://ax.docentric.com/d365-how-to-manuals/d365-report-print-destinations/d365-improved-print-archive/
- Placeholders are now supported in report captions out-of-the-box. This affects Description in Print archive, output filename of the downloadable file from Report viewer, etc.
- Added support in Docentric parameters to set up the number of simultaneously open reports in Report viewer for reports with multi-document output such as Customer account statement and Payment advice.
- Email print destination: Default 'From' email address is set based on the currently used email provider (SMTP/Exchange).
- Email templates: Added support for multiple dynamic tables in the email body.
- Email templates: Added support for HTML placeholders.


********************
    FIXES 
********************
- Fixed bug: CTRL+A didn't work in the Source mode of Email Editor.
- Fixed bug: Email Editor didn't allow some HTML attributes and blank HTML elements.
- Fixed bug: Email Editor now formats resulting HTML with the CR+LF characters instead of bare LF character for New Lines.
- Fixed bug: Placeholder values were HTML encoded for all print destination settings (e.g. Output filename, Email subject) instead for Email body only.


----------------------------------------------------------------------------------------------------
Version 3.2.9 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Default printer: Added ability for users to set their default printers.
- Standard image placeholder 'Company logo' added to the Email report print destination and Email templates.
- Added support for custom image placeholders in the Email report print destination and Email templates.
- Document generator: Added support for dynamic columns with the Fit-to-page-width functionality and the abs() XPath function.


********************
    FIXES 
********************
- Fixed bug: When a report is generated as a single blank page, a report generator engine throws an error.
- Fixed bug: When an email template is sent using the built-in SysEmailTable::sendMail() method, and the 'Use Docentric email editor' is turned off, an error occurs.
- Fixed bug: If report execution in batch fails, the error is not rethrown. Also, error handling and diagnostics are improved in general.
- Fixed bug: If a report is printed as proforma and the DDSP is generated at the same time (the 'Generate DDSP when report runs' option is turned on), the data from journal and journal lines are not available in the custom Docentric DSP class.
- Fixed bug: When a generated report opened in Docentric viewer is being downloaded as PDF, the report caption is not used as its filename but 'document.pdf'.


----------------------------------------------------------------------------------------------------
Version 3.2.8 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Adding support for printing reports to default printer which can be set up per users and user groups.


********************
    FIXES 
********************
- Fixed bug for populating the Select template combobox on the Print destination settings form when the target report is not known but only Print Management Document Type.
- Fixed potential security issues when working with Docentric DSP classes.


----------------------------------------------------------------------------------------------------
Version 3.2.7 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Adding support for deep links in WF email notifications (model: Docentric AX Emails).
- Adding new delegates for changing the archive filename and description when saving a report to Print Archive.


********************
    FIXES 
********************
- Fixed bug for generating deep links when rendering reports in batch.
- Fixed bug for removing a child data record from its parent data record (the DocXmlRecord object).
- Fixed bug for populating the Select template combobox on the Print destination settings form when the target report can be dynamically changed, e.g. for the PSAProjInvoice and PSAManageInvoice reports.
- Fixed security issue when adding Bank account info to the GeneralData data section.


----------------------------------------------------------------------------------------------------
Version 3.2.6 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Bulk updates also enabled for the 'Use only print destinations' option in Docentric report setup (important when using Docentric replicas with Free Edition).
- Minor changes related to the new 8.0 application version.


********************
    FIXES 
********************
- Fixed bug for Docentric Report Viewer: large documents cannot be open with Docentric Viewer; this throws an error but also crashes the AOS service in on-premises environments.


----------------------------------------------------------------------------------------------------
Version 3.2.5 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Enabling use of custom fonts that are not installed on AOS for printing reports.


********************
    FIXES 
********************
- Fixed bug for hyperlink tagging elements in Docentric templates. 
- Fixed bug for printing reports with the Landscape orientation.


----------------------------------------------------------------------------------------------------
Version 3.2.4 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
/

********************
    FIXES 
********************
- HTML editor used in Email print destination and Email Templates didn't work properly in the 'Source' mode (the Enter and Esc keys).
- Logging methods of the SSRSReportRuntimeEventSource class used when printing the built-in SSRS reports are removed.


----------------------------------------------------------------------------------------------------
Version 3.2.3 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- When generating PDF documents, the last document page is removed if empty.
- New standard placeholders are added: @CURRENTDAY@, @CURRENTMONTH@ and @CURRENTYEAR@.


********************
    FIXES 
********************
- Email sender display name set in Docentric parameters or Docentric report setup is not taken into account when emailing reports generated using SSRS built-in designs.
- Caching of the Docentric's license in on-premises environments didn't work properly.
- HTML editor used in Email print destination and Email Templates didn't work properly in on-premises environments.
- Fixed bug related to the 'Repeating Table Rows' Word's feature used in Docentric templates. The bug was fixed in Docentric engine for rendering documents.
- Fixed bug related to the 'Floating tables' Word's feature used in Docentric templates. The bug was fixed in Docentric engine for rendering documents.
- Fixed bug for redirecting Screen to Print Archive in batch for Print Management reports.


----------------------------------------------------------------------------------------------------
Version 3.2.2 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- New field Report caption on Docentric report setup: If set, this field is used as the report caption and the title of the output document instead of the report menu item label. Otherwise, if the report is not called through a menu item, the SSRS report design name is used.
- Printing built-in SSRS report designs using Docentric Printer print destination is now supported.
- Installation ID, an unique ID created per environment during installation, is added to the Docentric AX parameters form, in order to facilitate diagnostics.
- A new version of Docentric engine for rendering documents is introduced enabling better PDF Document Properties (e.g. Author, Creator, Title), embedded fonts, and improving performance.


********************
    FIXES 
********************
- Fixed bug: Printer name instead of Printer path is used for sending reports to a network printer in on-premises environments.
- Fixed bugs related to Diagnostics utilities in on-premises environments.
- Fixed bug 'Object reference not set to an instance of an object' on the 'Add new report' dropdown form in Docentric report setup.  
- Fixed bug in Improved Email Templates: When Docentric HTML Editor is not used for editing of an email template but the built-in form, after the OK button is clicked, the email body is erased.


----------------------------------------------------------------------------------------------------
Version 3.2.1 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Docentric Parameters now contains additional setup fields for storing the default destination folder on File system and blob storage container on Azure that are used when executing reports to the File print destination.


********************
    FIXES 
********************
- Fixed bugs related to Report viewer and Downloading files in browser functionality in on-premises environments.


----------------------------------------------------------------------------------------------------
Version 3.2.0 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Support for on-premises version:
  -> Report Viewer
  -> Printing reports to a selected shared folder on file system using Docentric File print destination
  -> Storing templates on file system

- For application version 7.3: If multiple reports are printed to the File print destination at once (e.g. Customer Account Statement), instead of sending them to browser (i.e. user) one by one, they are sent as a single zip package.


********************
    FIXES 
********************
/


----------------------------------------------------------------------------------------------------
Version 3.1.2 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Data security is introduced in the form of the Legal Entity constraint and Custom constraints that can be implemented in X++.


********************
    FIXES 
********************
- Fixed bug for Docentric File print destination: Validation didn't skip placeholders in the Azure blob storage settings.


----------------------------------------------------------------------------------------------------
Version 3.1.1 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- New functionality for Docentric Viewer are added: Export to Word, Text Selection and Find tool.
- New security roles such as Docentric Power User and Docentric Template Editor are added.


********************
    FIXES 
********************
- Fixed bug for Docentric Viewer: Printing from Docentric Viewer didn't work properly for IE and Edge.
- Report execution pipeline delegates have been re-implemented to make them more robust.


----------------------------------------------------------------------------------------------------
Version 3.1.0 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Improving the Email Templates functionality: 
D365 -> Organization administration -> Setup -> Email templates, and
D365 -> System administration -> Setup -> Email -> Email messages
Docentric Email editor is offered as an option for editing email body templates with custom placeholders as well as the functionality for handling these placeholders, generating email bodies and sending emails, supporting also dynamic subjects and multiple email attachments.
- Enabling new delegates for report execution pipeline and better error handling for Docentric's delegates in general.
- Support for a proforma scenario for project invoice reports.
- Improvement of Data Automation framework: Added support for Array EDT types.


********************
    FIXES 
********************
- Fixed bug for the Purchase order report proforma scenario.
- Fixed the reported document generation issues such as misinterpretation of document bookmarks.


----------------------------------------------------------------------------------------------------
Version 3.0.5 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Improving the DocPlaceholderManager class, which manages the placeholders in print destinations.


********************
    FIXES 
********************
- Fixed bug for filling combo-box for selecting a template on the Print destination settings form: Disabled templates have been included.
- Fixed bug for getting VAT Number and Enterprise Code for the current company in the GeneralData data section when generating a report DDSP file.


----------------------------------------------------------------------------------------------------
Version 3.0.4 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
/


********************
    FIXES 
********************
- Fixed bug for pre-processed TempDB reports: Selecting from the corresponding TempDB table hasn't been properly done - the CreatedTransactionId field hasn't been considered.
- Bug related to the Purchase Order report, for proforma case: The corresponding custom DSP class (DocPurchPurchaseOrderReportDSP) cannot access the PurchTableVersion and PurchTableHistory tables when Purchase order is printed as a proforma.


----------------------------------------------------------------------------------------------------
Version 3.0.3 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
/


********************
    FIXES 
********************
- Bug when printing a built-in SSRS report design for Customer Account Statement or Collection Letter Note to Docentric Screen for multiple customers: The report for the first customer has been properly printed, and for the other customers reports have failed to be redirected to Docentric File print destination, i.e. to be printed as PDF file.
- Bug related to proforma reports (including Customer Invoice and Free Text Invoice): When using custom DSP classes to fetch additional data related to the journal header or line records, journal data has been already removed and could not be used in proforma scenario. 
- Fixing the misleading message: 'In order to run a SSRS report as Docentric report first register the report with Docentric report setup'.


----------------------------------------------------------------------------------------------------
Version 3.0.2 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
/


********************
    FIXES 
********************
- Bug in Docentric report setup for Custom or Customized system templates: A template cannot be deleted without deletion of the corresponding template file stored on Azure.
- Bug when emailing reports via Exchange: Error message has not been properly displayed.
- Cosmetic refactoring to comply with AppSource code requirements.
- Refactoring of the certain Docentric AX extension artifacts to comply with the X++ compiler updated with Platform 9.


----------------------------------------------------------------------------------------------------
Version 3.0.1 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
- Added additional option for the report viewer - now you can choose between Docentric PDF viewer and Browser PDF viewer. You can set up report viewer settings on the Organization administration -> Docentric AX -> Docentric AX parameters form.
- Added support for the report viewer running in on premise environments.


********************
    FIXES 
********************
- Bug occurred on the Print destination settings form: Template selection on the Print destination settings form does not work properly, when an SSRS report (e.g. SalesInvoice) has multiple designs (e.g. SalesInvoice.Report and SalesInvoice.ReportXYZ), and the Print destination settings form is not open from the Form setup form (i.e. Print Management Setup).


----------------------------------------------------------------------------------------------------
Version 3.0.0 Change Log
----------------------------------------------------------------------------------------------------
********************
    NEW FEATURES    
********************
(1) Improved print destinations:
 - Screen: Much better report viewer.
 - Email: Placeholders, Additional attachments, HTML body.
 - File: Placeholders, Saving to Azure, SharePoint or Attachments, Run in batch.
 - Template selection is enabled on the Print Destination Settings form.

(2) Improved report setup:
 - More configurable options in regard to print destination settings, e.g. using Docentric preview per report per company.
 - More configurable options in regard to which data to include in report data source, e.g. Document branding.
 - Report templates can be stored in AOT Resources, SharePoint or Azure blob storage.


********************
    FIXES 
********************
/
