PrecisionForms for Document Management in Dynamics AX

by | Sep 14, 2017 | Dynamics AX, Performance

Many customers are shocked by the amount of work and effort it takes to create or modify the SSRS reports used within Microsoft Dynamics AX. Simply adding a column on a sales invoice, uploading a company logo, or modifying the layout of a check can take upwards of 40 hours-worth of work and may require some X++ programming.

To address these types of complexities, there is a product called PrecisionForms for document management in Dynamics AX. This product, by Bottomline Technologies, can be used to not only speed up the process but also allow the granularity and design flexibility that would otherwise be difficult to accomplish.

A simple sales invoice form that would normally render in SSRS …

A simple sales invoice form that would normally render in SSRS can be designed in PrecisionForms to make a professional-looking document.
… can be designed in PrecisionForms to make a really professional-looking document.

One of the biggest advantages I find with this product is that you don’t need to be a bonafide X++ developer to get these types of results.

My intent in this writing is to guide you through not only installing the software but some tips and tricks when it comes to design, process, and workflow. This four-part blog will overview the following areas:

  • Step 1 – Terminology and Architecture
  • Step 2 – Installing the PrecisionForms Server
  • Step 3 – Installation and configuration of the PrecisionForms model and AX components
  • Step 4 – Report design and configuration

Step 1 – Terminology and Architecture

PrecisionForms contains multiple program elements, which make up the application suite:

  • PrecisionForms Server – The main server component of PrecisionForms that is responsible for the overall management and execution of print jobs and print queues. PrecisionForms Server associates and combines the incoming report print jobs with a created form project and creates an output file (PDF, text, HTML, etc.) for delivery via print, fax, email, or archive.
  • PrecisionForms Director – A workflow designer/business rules processor tool that tells PrecisionForms Server what to do when it receives a print job. If you get an email print job, do this. If you get a print job, do that. It allows a great level of control and customization of the overall document handling process.
  • PrecisionForms Designer – The tool that actually creates the form projects. Think of it as “Photoshop for forms.” Designer is going to give you the ability to create a document using some demo data, add fields here, remove fields there, and customize the look and feel of your form project.
  • PrecisionForms Email Server – Handles the outgoing email jobs that are generated through PrecisionForms Server by integrating with your SMTP or VIM server.
  • PrecisionForms Fax Server – Handles the outgoing fax jobs that are generated by PrecisionForms Server by integrating with your RightFax, GeniFax or ZetaFax appliances.
  • PrecisionForms Transform – Allows you to transform the report data into other formats. This involves taking the report data and “transforming” it into a data file (CSV, TXT, etc.) for uses such as uploading into another system.

The architecture of a traditional PrecisionForms installation can be thought of as the following:

The architecture of a traditional PrecisionForms installation.

There are two main components of a PrecisionForms installation, the AX components and the PrecisionForm server components. A user access Microsoft Dynamics AX through the AX Client. A model from Bottomline is installed in the Dynamics environment to add functionality to output the report using PrecisionForms. This job is sent out using the AX Connector Components, which consist of the model file (mentioned earlier), label files, and an XPO. The print spooler on the PrecisonForms server intercepts the print job created from Dynamics and uses the Director application to decide what to do with it. The Director finds the corresponding form project that was created for that type of report (built by PrecisionForms Designer), merges it with the input data, and outputs it (email, print, fax, etc.) based on what was selected in Dynamics.

Within the elements, there is some additional terminology to consider:

  • Form project – The file that specifies the design, look, feel, and logic around the data that gets fed into it from Microsoft Dynamics.
  • Input file – Every form project within PrecisionForms is built on top of the data source that is feeding it. You’re not simply creating a blank form and selecting data to be inserted into it, you’re actually building the form on top of the data and its data structure. Therefore, the input file is your data source.
  • DataMap – The DataMap records how the input data or your input file is structured. This may be in the form of XML, CSV, TXT, etc. As form projects are built on top of the data, it’s important for PrecisionForms to know which parts of your input file is a header record, a line, or metadata. Therefore, a DataMap is defined for every project.
  • Set – Think of a Set as a group of related items, data, and pages in a job. For example, a set could be:
    • All the pages of a single output of a sales invoice (ex: 3 pages of an invoice is a set)
    • A sales order in a batch
    • A group of invoices for a single customer
    • A group of invoices in a run, grouped by order number
  • Section – A section is a node or group of repeated data in the input file. If the input file is XML, this could be the parent node signifying a new line on the form. If the input file is a CSV file, each row would correlate to a section as the data is in a “flat file” format.
    Although there are many more terms that will come into play but these are ones that are going to be used most often and frequently throughout the writing.

Step 2 – Installing the PrecisionForms server.

The first step of the PrecisionForms installation is the PrecisionForms server itself. As mentioned earlier, this PrecisionForms server is the central workhouse in charge of handling incoming print jobs, correlating them to a form project, and sending them on their way. We recommend installing PrecisionForms on its own Windows server not being used for other purposes.

One prerequisite to installation is to create a network user that PrecisionForms will run under. As the server will be running whether an admin is logged in or not, we need an authenticated user created in AD. This user should have administrator rights and the ability to log on as a service:

Create a user web page for the user that PrecisionForms will run under.

We will now install the PrecisionForms server.

1. From the PrecisionForms installation media, double-click the index.html document and choose Install:

Install PrecisionForms.

2. Select PrecisionForms Server

Installing PrecisionForms.

3. The PrecisionForms Server installer will open. Click Next

PrecisionForms Server Installer.

4. Specify the application install directory and click Next

Specify the application install directory on PrecisionForms installer.

5. Specify the resource directory location. This is the location in which the project resources, fonts, and files are saved. I usually save this to C:\Bottomline\PrecisionForms. Click Next

Specify the resource directory location in PrecisionForms Installer.

6. Specify the work directory (WorkDir) folder location. This is where the form projects, elements, and DataMaps are saved. I usually save this to C:\Bottomline\PrecisionForms\WorkDir. Click Next

Specify the work directory folder location in PrecisionForms Installer.

7. Specify the installation type. Choose Custom and click Next

Specify installation type in PrecisionForms Installer.

8. Depending on your business needs, you may need additional elements installed such as support for Asian fonts or barcodes. I usually install the Barcodes, manuals, and AX Test Project elements. Make these selections here and click Next

Additional elements installation in PrecisionForms Installer.

9. Leave the Program Folder defaults and click Next

Leave the Program Folder defaults in PrecisionForms Installer.

10. Installation will now begin. After a few minutes, you should be prompted with a confirmation that installation was successful.

Installation was successful in PrecisionForms Installer.

 

Next, we will install PrecisionForms Director which handles the workflow for incoming print jobs.

1. On the PrecisionForms installer web page, click PrecisionForms Director

PrecisionForms Director in PrecisionForms Installer.

2. Choose the same Application and Workdir installation directories we chose earlier

Choose the destination folder in PrecisionForms Installer.

Choose the destination folder in PrecisionForms Installer.

3. Choose Custom installation and install the Sample Files:

Choose Custom Installation and install the Sample Files in PrecisionForms Director.

4. Accept the Program folder defaults and finish the installation.

Accept the Program folder defaults and finish the installation in PrecisionForms Director.

 

So far, we’ve installed the PrecisionForms Server and Director application. As we chose the AX Director Generic option when installing Director, we need to copy the Director_Generic_V4_0 file to our WorkDir folder (C:\Bottomline\PrecisionForms\WorkDir). We will use this file later when specifying which Director project to use for our workflow.

Copy theDirector Generic file to our WorkDir folder.

 

Now we will configure the PrecisionForms server.

1. Navigate to Start > All Programs > Bottomline Technologies > PrecisionForms server

Navigate to PrecisionForms Server

2. Well, here it is. Not a whole lot to look at yet, is there?

PrecisionForms Server

3. First step is to input our license keys to enable functionality. Navigate to Tools > License keys

4. Click the Create button and enter in your license key

Create license key in PrecisionForms Server.

5. Once completed, click Exit

License key administration in PrecisionForms Server.

6. Next, navigate to Tools > Windows Identity

7. Enter the credentials created earlier for the PrecisionForms user and click OK

Enter credentials for the PrecisionForms user.

As PrecisionForms Server runs whether a user is logged in or not, this account will be used to run the service.

8. We now see that PrecisionForms server is populated with printers that I have loaded on my machine.

Printers populated in the PrecisionForms Server.

9. Now we will create the Director printer for use with PrecisionForms. This printer will handle the incoming printer jobs from Microsoft Dynamics which I will cover in the next blog post. Navigate to Control Panel > Devices and Printers

10. Click Add a printer and choose The printer that I want isn’t listed

Add a printer as the director printer for use with PrecisionForms.

11. Choose Add a local printer or network printer with manual settings

Add a local printer or network printer with manual settings in PrecisionForms.

12. Create a new local port and name it PF_Director

Add a printer as the director printer for use with PrecisionForms.

13. When prompted for a driver, choose the manufacturer Generic and the Generic / Text Only printer driver:

Add a printer as the director printer for use with PrecisionForms.

14. Name the printer PF_Director and click Next

Name the printer as the director printer for use with PrecisionForms.

15. Make sure the printer is shared and click Next

Add a printer as the director printer for use with PrecisionForms.

16. Click Finish when done.
17. Now that our new printer is added, there are some settings that need to be changed. Right-click the new PF_Director printer and choose Printer Properties

Add a printer as the director printer for use with PrecisionForms.

18. On the Sharing tab, uncheck Render print jobs on client computers:

Add a printer as the director printer for use with PrecisionForms.

19. On the Advanced tab, click the Start printing after last page is spooled and uncheck the Enable advanced printing features checkbox:

Add a printer as the director printer for use with PrecisionForms.

20. On the Security tab, add two users with full access: the account that Microsoft Dynamics AX runs under, our PrecisionForms User, and the NETWORK SERVICE account.

Add a printer as the director printer for use with PrecisionForms.

21. Click OK when finished.

22. Going back to PrecisionForms server, we can see that PF_Director is now part of our queue list. Double click on the PF_Director printer and enable the queue for form processing.

Add a printer as the director printer for use with PrecisionForms.

23. Choose the Director_Generic_v4_0 Default project and check the Use Director project first option. Click OK when done.

Add a printer as the director printer for use with PrecisionForms.

24. You will be prompted to restart the Windows Printer Spooler service. Once restarted, you will notice that the PF_Director printer now has a green checkmark next to it. This signifies that it has been enabled for PrecisionForms.

Add a printer as the director printer for use with PrecisionForms.

 

Lastly, we will install PrecisionForms email to enable print output to be delivered via email.

1. On the PrecisionForms installer web page, click PrecisionForms Email

Install PrecisionForms email to enable print output to be delivered via email.

2. Choose the defaults to complete the installation. Once completed, click Finish

Install PrecisionForms email to enable print output to be delivered via email.

3. Navigate to Start > All programs > Bottomline Technologies > PrecisionForms Email

Install PrecisionForms email to enable print output to be delivered via email.

4. When PrecisionForms Email opens, navigate to Administration > Configure Email. Enter in your SMTP or VIM credentials.

Install PrecisionForms email to enable print output to be delivered via email.

5. Click OK when finished.

And that’s it! We’ve installed PrecisionForms Server, Director, and Email. In my next blog, we will go over the Microsoft Dynamics AX components and configuration to enable PrecisionForms for forms. Stay tuned!

 

2 Comments

  1. Daniel J. Zook

    Does this PrecisionForms module entirely replace the SSRS reporting in AX 2012 R2? Does it work with the formletter service for printing packing slips, for example?

  2. Brandon Carmichael

    Hello Daniel,

    So PrecisionForms do replace SSRS reporting on a per-report basis, so fortunately it’s not an either-or — you can specify certain reports to utilize PrecisionForms and others to utilize the existing SSRS report architecture.

    PrecisionForms extends the formletter service so you can print your picking lists, packing slips, etc. as you would normally. So for this example, you would simply specify that the SalesPackingSlip report now will be handled through PrecisionForms which, instead of using the standard SSRS report viewer code would instead be output to the PrecisionForms project (which we will cover in an upcoming blog).

    Thanks,
    Brandon

Submit a Comment

Your email address will not be published. Required fields are marked *

Upcoming Events

february

27feb11:00 am12:00 pmConfab With Stoneridge - Livestream - Cool Features in Dynamics 365 Business Central

march

04mar12:00 pm12:30 pmPower BI & Reporting with Dynamics 365 Customer Engagement

04mar2:00 pm3:00 pmHow to Incorporate the Power Platform with Dynamics 365 Finance and Supply Chain Management

12mar11:00 am12:00 pmConfab With Stoneridge - Livestream - Power Apps AI Builder

18mar12:00 pm1:00 pmMoving from CRM On Prem to the Cloud – Is it worth It?

18mar2:00 pm3:00 pmThe Past, Present, and Future of Dynamics 365 with Machine Learning and Artificial Intelligence

25mar2:00 pm3:00 pmAchieve Total Data Access & Future-Proof Your Reporting

26mar11:00 am12:00 pmConfab With Stoneridge - Livestream - Portals

About Stoneridge
Stoneridge Software is a unique Microsoft Gold Partner, with emphasis on partner. With specialties in Microsoft Dynamics 365, Microsoft Dynamics AX, Microsoft Dynamics NAV, Microsoft Dynamics GP and Microsoft Dynamics CRM, we focus on attracting the most knowledgeable experts in the field to our team, and prioritize delivering stellar solutions with maximum impact for your business. At Stoneridge, we are deeply committed to your results. Each engagement is met with a dedicated team, ready to provide thorough, tailored, and expert service. Based in Minnesota, we intentionally “step into your shoes,” wherever you are. We focus on what you care about, and develop trusting, long-term relationships with our clients.

Subscribe To Our Blog

Sign up to get periodic updates on the latest posts.

Thank you for subscribing!

X