Easy PDF Admin Guide for Dynamics 365
Easy PDF Admin Guide for Dynamics 365
Easy PDF
Professional Messaging for Microsoft Dynamics 365 Business Central
Administration Guide
A General Note
Easy PDF fields and controls on pages have a short description that should provide some guidance.
A Helpful Hint
You can use the following accelerator to quickly access Easy PDF dialogs from Tellme search:
In Tellme search type “ezp” + the first letter of the dialog
Example: ezpa --> Easy PDF Administration dialog
Type “ezp” to see a list of all the Easy PDF dialogs.
Table of Contents
About this Document ............................................................................................................................................................................................................ 2
About the Product ........................................................................................................................................................................................................... 2
Before You Start............................................................................................................................................................................................................... 2
A General Note ................................................................................................................................................................................................................ 2
A Helpful Hint ................................................................................................................................................................................................................... 2
Basic Setup ............................................................................................................................................................................................................................. 5
Installation ....................................................................................................................................................................................................................... 5
Post Installation ............................................................................................................................................................................................................... 5
First Time Setup ............................................................................................................................................................................................................... 6
Assisted Setup ............................................................................................................................................................................................................ 6
Registration ................................................................................................................................................................................................................ 6
Add Easy PDF Users & Permissions .......................................................................................................................................................................... 7
Installing Easy PDF Templates................................................................................................................................................................................... 7
Mail Accounts Setup .................................................................................................................................................................................................. 8
Other Mail Account Settings ..................................................................................................................................................................................... 9
Mail Account Authorization (for Office 365 or Gmail API accounts) ..................................................................................................................... 9
Basic Setup Complete .............................................................................................................................................................................................. 10
After Basic Setup, Next Steps ............................................................................................................................................................................................. 11
Terminology ................................................................................................................................................................................................................... 11
Scope, Settings, and the Administration Dialog ................................................................................................................................................................ 13
Manage Settings in the Administration Dialog ............................................................................................................................................................ 13
Editability .................................................................................................................................................................................................................. 14
Administrator Role................................................................................................................................................................................................... 14
Managing Users, Reservations, and the Pools .................................................................................................................................................................. 15
The Persistent Pool ........................................................................................................................................................................................................ 15
The Transient Pool ......................................................................................................................................................................................................... 15
Transitioning from Trial ................................................................................................................................................................................................. 16
Configuration ....................................................................................................................................................................................................................... 17
General Setup ................................................................................................................................................................................................................ 17
General ..................................................................................................................................................................................................................... 17
Email ......................................................................................................................................................................................................................... 17
FAX ............................................................................................................................................................................................................................ 17
Batch ......................................................................................................................................................................................................................... 18
Storage...................................................................................................................................................................................................................... 19
History ...................................................................................................................................................................................................................... 19
Mail Setup ...................................................................................................................................................................................................................... 19
Account Types .......................................................................................................................................................................................................... 19
Common Fields ........................................................................................................................................................................................................ 20
SMTP Accounts ........................................................................................................................................................................................................ 20
API Accounts ............................................................................................................................................................................................................ 20
Office 365 Graph API ............................................................................................................................................................................................... 20
Basic Setup
Installation
Cloud:
Installation in the cloud is simple – install from AppSource as with any extension app.
To upgrade versions use the Business Central administrative console to upgrade the app.
Please see: Managing Apps - Business Central | Microsoft Docs
Onprem:
Note: For onprem the Easy PDF module must be added to the onprem license. Ask your
Business Central Partner to contact us so we can coordinate updates to your license.
We do not have access to your license so we cannot do this for you.
For onprem installation use one of the runtime packages available from the download page on
the website – [Link]
Fresh Install:
Publish-NAVApp -ServerInstance BC -Path EasyPDF_<version>_runtime_<platform>.app
Install-NAVApp -ServerInstance BC -name 'Easy PDF Email, Print, Batch'
Upgrade Install:
Publish-NAVApp -ServerInstance BC -Path EasyPDF_<version>_runtime_<platform>.app
Sync-NAVApp -ServerInstance BC -Name 'Easy PDF Email, Print, Batch' -Version <version>
Start-NAVAppDataUpgrade -ServerInstance BC -Name 'Easy PDF Email, Print, Batch' -Version <version>
Post Installation
When Easy PDF installs it does the following:
- Runs upgrade code
- Creates the “EZP_EASYPDF_USER” and “EZP_EASYPDF_ADMIN” permission sets
- Initializes first time Easy PDF setup records (General Setup, Document Setup, Mail Setup)
- If first time initialization, creates a new Easy PDF Mail Setup record – the “NULL” account
During installation, the app purposely does not try to reach out to the web to self-register or download
content – that would result in a web request permissions popup which may cause some trepidation.
Instead, all external data access is deferred to the configuration dialogs (see below).
Assisted Setup
There is an Assisted Setup Wizard which we highly recommend for initial setup – it will save you
significant time and effort.
The Assisted Setup Wizard is self-explanatory – but there is a step-by-step guide for reference.
The sections below expand upon the manual approach to the steps that the Assisted Setup Wizard will
guide you through.
Registration
You will need a registration (a.k.a. license) to use Easy PDF.
Note: The Setup Wizard manages trial registration – we suggest this approach.
To obtain a registration you must start a 30-day trial, no exceptions.
The trail registration process will allocate a “Customer Key” and register it with the product.
To start a 30-day trial:
- Open the Easy PDF Administration dialog by entering “Easy PDF Administration” (or “ezpa”) into
Tellme search and selecting the Easy PDF Administration page link.
- In the Administration dialog, click the “Registration” button, the Registration dialog will display.
- In the Registration dialog, click the Registration/Start 30-day Free Trial button.
- If the web request permissions dialog displays, select the “Allow Always” option.
Note: It is important that you select Allow Always because Easy PDF will need to make web
requests to manage various features – such as sending email.
Easy PDF will contact the website and download a 30-day trial registration.
- After downloading a registration for the first time you will need to close both the Registration
and the Administration dialogs, then reopen the Administration dialog.
(Because, without a registration the Administration dialog opened in read-only mode and you
need to reopen it in edit mode for the next step).
To purchase a permanent registration please follow the steps in the Registration Guide.
If a 30-day trial is not sufficient please contact us: Easy PDF Support
We will describe in more detail users, permissions, and reservations later. For now, just add yourself
and anyone who will use Easy PDF into the list and mark the user Active as in the above picture.
Note: Since you are currently using a trial registration there are no limits to the number of Easy PDF
users. Later we will describe managing users when using a non-trial registration.
4. Select the “Classic HTML” theme line, then press the Manage/Install button.
If there are no preexisting templates when installing a Theme, it will immediately become Active
– i.e., it will be added to each Document Setup. If there are existing templates when you
download a Theme, then you will need to manually activate it in the Themes dialog.
5. Return to the Themes dialog – you should now see the Classic HTML theme
You can view the Theme content by clicking the “Document Code” column for each entry.
Open the Easy PDF Administration dialog, then press the Mail Setup action.
The Mail Setup dialog will display.
Note: There are limitations to the use of the Display Name or Alt. Sender Name/Address that depend
upon the type of account and the mail provider – please see the online help for more detail.
In the screenshot we have not yet “authorized” the Office 365 or Gmail accounts yet – so they are not
‘Active’. (Authorization is the process of verifying your identity with the mail provider – see below).
When the flow is completed the Easy PDF authorization confirmation web page – as below.
The last step is to verify that email can be sent using the account.
Press the “Send Test Email” action
Then select or enter your email address – you will need to receive the email to verify the account.
Send the test message and, when received, open it then copy the verification code.
Enter the code into the Verification Code field, then press the Tab key to force it to validate.
Terminology
Definition of terms used in our documentation.
Settings Categories See the Settings, Setup & Scope help page for greater detail.
Easy PDF has four categories of settings: General, Document, Report and Mail.
Setup A Setup is the collection of records accessible to a user for a given category.
For example, the collection of a user’s Mail Account records is called their Mail
Setup, the collection of a user’s Document records is called their Document
Setup.
Scope You will see references to Scope when discussing settings.
Scope is the level of accessibility for a Setup.
There are two types of Scope: SHARED and USER.
When a Setup has SHARED scope the settings are accessible to all other users.
When a Setup has USER scope the settings are only accessible to the user
assigned the scope (perhaps PRIVATE would have been a better name).
Document The term, Easy PDF Document, refers to the record containing settings that
govern how the corresponding Business Central namesake record will be
processed. Easy PDF Documents are always capitalized, e.g., POSTED SALES
INVOICE.
Sometimes you will see reference to a phrase like “the Document Setup for the
POSTED SALES INVOICE”. This is not grammatically correct since a Setup refers
to a collection of records and that phrase refers to one record – but you get the
idea so please excuse the grammar.
Here PHIL has been assigned USER Scope for the Mail Setup, and SHARED Scope for the other Setups.
USER1 and USER2 have been assigned SHARED Scope (the default) for all Setups.
To access a Setup for a particular user, select the user in the list then open the Setup using the buttons
in the Action Bar at top.
Recommendation: We suggest that you start everyone off with SHARED scope for all Setups (which is
the default). When you encounter the need to privatize settings for specific users you can then change
the Scope for the Setups in question.
Editability
Note: Editability means the ability to modify, accessibility means the ability to access.
When logged into Business Central an Easy PDF Administrator will always be able to edit a user’s Setup
when it is opened from the Administration dialog.
You can grant a (non-administrator) user the ability to edit his/her Setups by selecting the “Edit USER
Scope” and “Edit SHARED Scope” options.
When a user has been granted the “Edit USER Scope” option that user will be able edit Setups for which
they are assigned USER Scope. Note: the “Edit USER Scope” option does not grant the ability to edit
Setups in the SHARED Scope.
When a user has been granted the “Edit SHARED Scope” option that user will be able edit Setups for
which they are assigned SHARED Scope. Note: the “Edit SHARED Scope” option does not grant the
ability to edit Setups in the USER Scope.
Important: Because settings in a SHARED Scope affect all other users accessing that Scope, we highly
recommend that you restrict edit access for the SHARED Scope only to users who fully understand the
implications of modifying the settings.
Administrator Role
Lastly, in the Administration dialog, a user can be assigned the Administrator option. In this case the
user will be granted the “EZP_EASYPDF_ADMIN” permission set and will have access to the
Administration dialog and will be able edit all Setups for any user.
Note: Removing the Administrator option for a user also removes the “EZP_EASYPDF_ADMIN”
permission set from their User Setup.
Of course, SUPER always has the Administrator permission.
In this picture the registration has a total of 10 reservations – 5 are allotted to the Persistent Pool and 5
are allotted to the Transient Pool. The Persistent Pool has allocated 2 (persistent) reservations and the
Transient Pool has allocated 1 (transient) reservation.
Auto-allocate has been turned on for the Persistent Pool, so any auto-allocated reservations will be
placed in the Persistent Pool. If Auto Allocate to Transient Pool was enabled, then auto-allocation would
place the allocated reservations into the Transient Pool instead.
The Transient Pool Usage Timeout is set to 1 hour (the minimum) – which means that after 1 hour of
inactivity the reservation allocated to the (1) transient user will be a candidate for deallocation. That
means, if another Transient Pool user requires a reservation all idle reservations will be deallocated and
one will be allocated to that user in need. (Which, in the pictured scenario, doesn’t really matter since
there are 4 unused reservations in the Transient Pool and hence, the user guaranteed to get a
reservation).
Configuration
In the next few sections, we will discuss common configuration tasks.
We suggest that you work thru these tasks when Easy PDF is first installed and before you add many
users – that might give you some idea of how you might wish to manage things when the number of
users starts to increase.
We recommended above that you start off all users with SHARED scope for all Setups. We will assume
that is the case as we work thru the following sections.
When describing the settings in each Setup we will only describe those that differ from the default
configuration or where some insight to the implications of changing the setting is important.
General Setup
For further General Setup details see the online help – here.
General Setup contains settings that impact multiple areas of Easy PDF (as opposed to, say, Mail Setup
which strictly impacts mail delivery).
General
Preferred Language - Set to match your primary language.
At installation this setting is set equal to the current user language setting.
It is used as the default language for new messages created by Easy PDF.
Customer Delivery Method - Your preference
The default Delivery Method setting for new customer records.
Vendor Delivery Method - Your preference
The default Delivery Method setting for new vendor records.
Email
Silently ignore empty addresses – Enable this option
When set, Easy PDF will not show an error when there are no recipients to an email.
This will enable the Email Dialog to display even when no recipients are present.
Cc to Sender when email set – Your preference
Include the sender address as a Cc recipient
Show Email Confirmation – Your preference
Show a confirmation dialog when an email is successfully sent
When sending email without previewing this option provides indication of success.
Does not apply to email sent from batch.
FAX
Easy PDF supports FAX delivery by sending email with attachments to an online FAX service. To use
FAX delivery, you will need to create an account with the FAX service provider of your choice.
Batch
The default settings for batch should be sufficient to start.
Batch Mail Account – Leave blank for now
This field will populate onto the batch header for any batches created by the user. Similar to the
discussion above for the Email Account, this setting allows you to override the Default Batch
Account in Mail Setup.
Use Batch Mail Account for all Entries – Leave off for now
This field will populate onto the batch header for any batches created by the user. When set,
the mail account specified in the batch header will be used for all batch lines when sending the
batch, thus overriding any mail accounts specified on the batch lines.
Batch Name Template – the default value is usually sufficient.
This value will be used when naming new batches created by the user. See the online help for a
description of the tokens.
Remove Batch after all entries are processed – Your preference
When enabled, batches will be removed when all entries are successfully processed.
Consolidate Email entries – Your preference
This value will populate onto the batch header for any batches created by the user.
When enabled, multiple batch lines to the same recipient will be consolidated to a single email
with multiple attachments. Note, some email servers place limits on the size or number of
attachments for a single email.
Merge PDF Attachments – Your preference
This value will populate onto the batch header for any batches created by the user.
When enabled, multiple PDF attachments for a single email will be merged into a single PDF
attachment.
Continue on Error – Your preference
This value will populate onto the batch header for any batches created by the user.
When enabled, batch processing will attempt to continue if an error arises whilst processing a
batch entry.
Allow USER Scope – Leave off for now
Only valid when the General Setup is USER scope.
In a nutshell, when off, the system does not allow USER Scope Mail Setups for batch. When
enabled, USER Scope Mail Setups can be used for batch.
Because… batch is a considered a shared resource (everyone has access to a batch). If a USER
Scope Mail Setup is assigned to a batch then the batch becomes dependent upon that user
setup – usually you do not want that dependency, but there are exceptions so we provide the
option.
To fully grasp the implications of this option you should read the online help that describes
Scope – About Settings, Setups, Scope and Editability.
Storage
Easy PDF supports sending batch from the Job Queue.
If a job queue batch generates printed collateral, then that collateral should be stored somewhere
for subsequent access (else it is discarded).
Saas/Cloud: For this environment storing to an OneDrive folder is supported. If you enable this
option then you will need to define the account and execute the Office 365 authorization flow.
Onprem: For this environment we provide a ‘Filesystem’ control add-in to enable storage to the
filesystem of the host running the job.
History
You will only see the History settings when General Setup is SHARED Scope. Because History is a
shared resource (everyone has access to it), for uniformity, only the settings in the SHARED scope
are used.
The settings for History are self-explanatory, see the online help for details.
A point to note: If you are sending A LOT of email with large attachments and/or large message
bodies (i.e., inline image heavy HTML) then you have the potential to bloat the Easy PDF History
table. Easy PDF uses a compressed history table but, if you save A LOT of messages then it can use A
LOT of space.
You can mitigate that issue by reducing the history retention period or turning off the saving of
message bodies, attachments, or both.
Mail Setup
To familiarize with Mail Setup we suggest that you first read the help page for Mail Setup, here. It
provides some insights to the use of mail accounts for branding purposes.
Important Note: Easy PDF Mail Accounts are independent of Business Central Mail Accounts. When first
installed, Easy PDF will attempt to create an Easy PDF SMTP Mail Account from the default Business
Central SMTP Mail Setup record if it exists. However, it is not possible to copy the password for the
default SMTP Mail Setup so, to use the account, you will need to input the proper credentials and verify
the account.
Account Types
Easy PDF currently supports SMTP and API based mail services. SMTP is the (long time) industry
standard protocol for mail exchange (it’s been around since the ‘70s). We recommend using SMTP
accounts unless there is a compelling reason to use an API account. API accounts use a vendor
proprietary interface for mail exchange. Each vendor API has its own idiosyncrasies so Easy PDF must
implement compliance with that interface per the vendor requirements. Currently Easy PDF supports
the Office 365 Graph, and Gmail API mail services (Yahoo and others will be added in the future).
Common Fields
When defining mail accounts Easy PDF allows you to set the following common fields on each account:
Default Account (non-batch) – when set, the account will be the preferred account for non-batch
mail delivery. Which means, the account will be used to populate the Email Dialog From field when
the dialog is displayed, or the mail account will be used to send email when preview is not enabled.
Preview before sending (non-batch) – when set,
When set, the Email Dialog will display when an email is initiated from a Business Central page.
When it is not set, email will be delivered without preview.
Use for Batch – when set, the account can be used for batch mail delivery.
This setting must be enabled for an account to be available for batch mail delivery.
Default Batch Account – when set, the account will be the preferred account for batch mail delivery.
Which means, the mail account will be used to populate the Mail Account field in the batch header
when a new batch is created.
SMTP Accounts
When defining SMTP mail accounts, the SMTP fields are displayed. See the online help for a description
of the fields. Similar to the SMTP Mail Setup dialog, Easy PDF provides actions to auto-fill the fields with
values suitable for the Office 365, Gmail or Yahoo SMTP servers.
API Accounts
To use an API account (Office 365, Gmail) you will need to authorize Easy PDF to send email on your
behalf. To initiate authorization, you must first enter the Email Address and Email Display Name for the
account, then click the Authorize link. That will open a new browser tab and will start the vendor’s
authorization sequence. When you have successfully completed the authorization sequence you will
see a confirmation page. You can then close the browser tab and return to the Mail Setup dialog. To
begin using the account you will need to enable the Activate this account option. (That step retrieves an
authorization token that is subsequently used when sending email).
Lastly, to use the Alternate Sender Name/Address feature you will need to use the Office 365 Admin
Center to grant the authenticating account (Email Address field) Send As permission to the Alternate
Sender account.
Gmail API
The Gmail API interface is similar to the Office 365 Graph API interface with the following differences.
- It does not have the Email Display Name limitation – you can use any name you like (which is
good for branding).
- It has more restrictive throttling limits (Easy PDF uses the [Link] Method) so it is not a
good candidate for batch delivery.
- It completely mangles the message HTML if using the Send to Drafts feature (the [Link]
Method).
- The quota limit for the Send to Drafts feature is so low (10/day) that it is worthless.
Because of those last two issues we have disabled the Send to Drafts feature for Gmail.
Other APIs
The Yahoo API is on the docket to be added to Easy PDF.
If you have preference for any other mail APIs send a note to support@[Link] and let us
know. We will evaluate for inclusion in a future release.
Document Setup
The Easy PDF Document is core to Easy PDF.
Whenever an email is generated the Easy PDF Document is involved.
We recommend you at least skim through the field descriptions for the Document Setup – here.
In this section we will provide some insight and context to some of those settings.
General Group
Description – this field is used when naming HTML or TEXT templates for the document. It will be
used to prefix the template name – e.g., “Sales Order HTML ENU”.
Use SHARED Scope – this field is only visible when the Document Setup has USER scope.
The field provides a way to “disable” or “ignore” a USER scope document. You might use this option
if you wish to configure the user’s Document Setup with a limited number of “customized”
documents. In that case you would assign USER scope for the Document Setup and enable this
option for all documents except those requiring customizations.
Additional Attachments – with this option you can add documents to be attached to all email based
on this document type. For example, adding a generic Terms & Conditions document for all sales or
service communications.
Report Group
Report ID – this field identifies the Business Central report to be printed and attached to the email.
You can specify any Business Central report but it only makes sense to select a report based on the
underlying table for the document in question.
For example, with the Sales Order a report based on the Sales Header makes sense. When Easy PDF
prints the report, it will pass a record from the Sales Header table to the report. When Easy PDF
formats the message body for the email it will use that record to perform field merge.
Attachment Filename – this field contains a template for the name given to the printed attachment.
This field can contain token expressions that will be field merged.
e.g., Sales Order Confirmation [[No.]]
Sell-to Vendor Type – only visible when the document type is a purchase document.
Similar to the above this option lets you specify which vendor reference to use when finding
recipients for the document.
Ship-to Addressing – this field applies to documents that support a Ship-to Address reference.
The options are:
“ “ (blank): do nothing
Exclusive: Send only to the email address on the Ship-to Address card
AddTo: Add the Ship-to Address card email address to the To: recipients
AddCc: Add the Ship-to Address card email address to the Cc: recipients
AddBcc: Add the Ship-to Address card email address to the Bcc: recipients
When Easy PDF encounters a document with a Ship-to Address (sales, purchase or service
documents) it inspects the Ship-to Address Email field – if it has a value then it will use that address
according to the precedence set by this field.
Deliver-to Search Order – this field determines the priority of the email address on a
Customer/Vendor Card relative to an associated Contact Card.
Batch Group
This group will only be visible for those document types that support batch delivery (Customer
Statement, Posted Sales Invoice/Credit Memo/Shipment, Posted Service Invoice/Credit
Memo/Shipment, Issued Reminder, Issued Finance Charge Memo, Remittance Advice)
Send using this Mail Account – use this field to identify a Mail Account to be used when sending
documents of this type from batch.
Use of this feature allows you to ‘brand’ email for a given document type. For example, for
purchasing documents you may wish to define a Mail Account with a From address of:
Purchasing Department <purchasing@[Link]>
Print hardcopy when Sent – use this option if you must have a physical print of the document when
it is sent from batch.
History Group
This group will only be visible when the Document Setup has SHARED scope.
The fields in this group are relatively self-explanatory.
First, for any Easy PDF document type, you may define as many templates as you like. You might
use different templates to support language dependent messaging (see help).
Note: A future version of Easy PDF will support selection of a template from the Email Dialog –
allowing you to dynamically select the email body content from the available templates. We are
also considering a rules-based approach for template selection – e.g., select a template based on the
value of an order, etc.
In Easy PDF, the template content can be derived from HTML, Plain Text or a Business Central
Report using a specified Custom Report Layout.
In the case of HTML or Plain Text, Easy PDF stores the raw content and runs it through field merge
before adding it to the email message.
In the case of a Custom Report Layout the content is obtained by printing the Report to HTML using
the specified report layout. Easy PDF does not perform field merge on templates of this type.
Easy PDF supports token/field substitution within HTML or Plain Text templates.
The substitution is performed at the time when the email message body is being prepared.
Tokens within the template content are extracted and substituted with data from the field they
reference in the associated document record (e.g., a Sales Header record for a Sales Order
confirmation).
Field merge (a.k.a. token replacement) is described in detail in the online help – here.
For simple field merge examples the description below will be sufficient.
For more complex examples see the help page.
We’ll give a few examples here to give you a taste for field merge.
Here, the token is the value “[[No.]]”, which, in this context is a reference to the “No.” field of the sales
order (SalesHeader record). After token replacement it yields the value “1001”
The above token references the “Order Date” field of the sales order, and it is expanded using “XML
format”. (The “0;9” bits are passed to the Business Central AL Language “Format()” procedure which, for
a date field, cause it to be formatted with “XML format”).
We recommend that you review the “About Field Merge” help page if you need to use complex
tokens (or contact us for guidance).
Report Setup
Field Merge
Templates & Themes
Batch
Email Dialog
-- This document is a continual work in progress, please check back for updates… --
-- End of Document --