Skip to main content

Lasernet FO Connector 6.18 Release Notes - News / Lasernet FO Connector / Lasernet FO Connector Release Notes - Formpipe Support Portal

Sept 23 2022

Lasernet FO Connector 6.18 Release Notes

Authors list

Lasernet FO Connector Release Version 6.18

Release date: 22nd September 2022

Click to download Lasernet FO Connector 6.18.0.

This page describes the enhancements in Lasernet FO Connector 6.18.0.

Bug fixes and Enhancements – Lasernet FO Connector 6.18.0

Case No.DescriptionTicket No.
317135@LAC365FOArchive performance sorting parameter
317092@LAC365FOAdjusted preview
316957@LAC365FOExpression editor - wrong calculation
316497@LAC365FOT&P: Test Checkpoint form "hanging" when LACArchive has a large amount of data (2M+)


Improve warning when resending documents to predefined destination and not use force-rerun

316410@LAC365FODeprecated "translate" when using Warehouse mobile app
316409@LAC365FOData from subreport is repeated when multiple subreports are added to a new section
316130@LAC365FOMobile Device Printing > License plate label > error when Display methods are used in ZPL layout


Better warning when resending through a predefined destination without a re-run


Dynamics Language report parameter is ignored



Change - Show Text instead of TextID in the Print Dialog used with Formlinks

313372@LAC365FOPerformance updates on report initialization
312978@LAC365FOLasernet Parameters opens slowly if the customer has tried to expand the Version/Module before and had the feature called "Saved views" enabled


T&P: Top picking for SSRS SalesInvoice and SalesConfirmation


Missing labels in Connector when D365 user language is NB_NO



Aggregate Function errors when using expressions in Group by



CE -  Multiple reports matching criteria in CE Print Dialog on Refresh when criteria checked is unique



Form Link Dialog setup issues



No data will be returned in the XML for CustVendPaymProposal



Clarification when using Base64 with Attachments in LAC



Unable to change name of objects on host report when linking Query from another report



Cannot remove field from range once added for a table in the Link Query

308269@LAC365FOLanguage Text Label: Other language label shows GUID#26720


Error when changing table name in Query Wizard "Object reference not set to an instance of an object."



LAC Environment is not respected in LACConnection SharePoint



Language Expression in CE print dialog



Date format applied on report value is not respected in the Email body



Change in TOP records 6.17



Print button and review before sending



Linked query reports are not linked anymore if copied between companies or imported from backup



 Hide the on-hand column toggle when printing the counting list



Report identification#26052


Feature request: SharePoint archiving does not work with LAC JobInfos



T&P: UX Test - Repeat test setting


T&P: UX test Repeat parameter

285851@LAC365FOData source renaming in related data sources form throws an error


Issue with removing replacement for the report (6.17)


D365FO LAC: Decouple XML and PDF storage for SharePoint 365



LAC6.14 Issue with relation handling in OData report




Lasernet Connector F&O version 6.18.0 contains the following models, including the model for integration with D365CE and the models for the Lasernet print buttons.

ModelDescriptionLocation / Remark
LasernetCore and main engine for LAC365FOLasernet
Requires activation key:
Lasernet > Setup > Parameters > License terms
Lasernet81SpecAdditional requirements in relation to 8.1 and newer versions of standard D365FO
PRNButtonsLasernet print buttonsPrint buttons
PRNButtonsLACAdaptorAdaptor between the Lasernet print buttons and Lasernet

Provide the integration to CE from LAC365FO

Lasernet > Dataverse/Dynamics 365


Hotfixes for standard D365FO

System Administration > Setup > Hotfixes from Lasernet

Lasernet Test Suite

Test & Performance Suite

Lasernet > Test and performance suite 

Requires activation key:

Lasernet > Test & performance suite > Parameters

Support of Wave labels in D365FO
Lasernet Autoform DMIntegration into Autoform DM (Archive)

Instead of simply installing and deploying the AOT package, please ensure that the following new objects/dll-files are added to TFS:

  • LACSupport.dll.config
  • XmlDiffPatch.dll
  • XmlDiffPath.View.dll

The following image details the complete list of objects which are not automatically added:

On the Lasernet parameters page, the version number should contain version 6.18.0 after either installing or deploying the AOT package. This can be accessed by navigating to Lasernet > Setup > Parameters, and the version should appear alongside the package number and related modules.

Version numbers: 



To access and add the AOT package:

  • Through LCS: Apply a deployable package to an environment 

  • Through installing a deployable package: Requires RDP access to environment

LAC365FO 6.18 is supported with Lasernet version 9 and Lasernet version 10 and a setup for either Lasernet version 9 or Lasernet 10 is required for any new installation and when upgrading from Lasernet 8.

LAC365FO contains an option to reduce record size in the Archive as this could become quite large.

Reducing the size would still keep the documents (PDF/XML) within the Archive but would remove the information required to resend a document from scratch from the Archive (the forced rerun option).

It would still be possible to resend the document(s) from the standard Journal.

Deleting or shrinking the archive can reduce the database/record size significantly.

Please consult the following Pre-Requisite/Technical section for more detail about the option to shrink/delete information in the Archive.

Pre-Requisite / Technical

It is best practice to do a Stylesheet refresh after upgrading LAC365FO as this could help to avoid any potential issue(s).

And please also use the following Register selection-classes located in Lasernet > Setup > Backup parameters > Setup Default Selections in case an error is produced when using Export, Import, or Copy across companies (legal entities).

The newly introduced upgrade framework should manage this but could fail in a scenario when using a TFS/Dev build as this would require executing Microsoft.Dynamics.AX.Deployment.Setup.exe.

Error message

The following error message may appear:

Please try to run Register selection-classes before processing.


Cannot create a record in Lasernet default export/import selection(LACDefaultSelection). The record already exists.

Major enhancements – LAC365FO version 6.18.0

LAC365FO version 6.18 contains many new features including features that can assist in improving performance.

The connector itself has been optimized in relation to performance but this version also contains features that can reduce the content of the XML file and therefore optimize performance.

The main focus of these enhancements:

  • Performance
  • Reliability 
  • Usability (user-experience) and flexibility
  • Simplicity

This is provided through the major enhancements detailed in this section.

Autoform DM integration

For a full list of features and enhancements available with the Autoform DM integration and to access an introductory video, please see the Autoform DM Integration News Page.

A full description of the Autoform DM integration enhancements can be found in the new additions to the Finance & Operations Connector Guide.

Expression Editor enhancement

The Expression Editor is now enhanced and includes new and improved guidance when typing.

This makes typing faster and allows more syntax options. The full range of improvements include:

  • A new approach to typing that allows fast type, while catching up with syntax analysis in the background
  • Automatic parallel syntax analysis and colors on expression segments
  • A new approach for string values – now when using expressions these values can be within single or double quotes
  • Multi-line expressions
  • Switch–case
  • An autocomplete list when typing
  • Automatic validation while typing
  • Significantly improved error position reporting with a callout indicating the exact place of error
  • Enums are introduced as value sources
  • The syntax editor area is now resizable
  • Comments are introduced
  • The overall syntax analyzer and parser performance is improved and various errors are fixed 
  • Expression testing is now integrated with the expression editor
  • Expressions are fully backwards compatible
Expression typing and auto-complete

The auto-complete function will show up as soon as you start typing in the new Expression Editor. It will automatically filter values based on context of the expression and what has been already typed. 

Images on auto-complete lookup will indicate types of available objects.


Value source




Operator or reserved word, such as (IF, THEN, SWITCH)

Container field
Date field
Enum field
Integer field
Real field
String field

If you start typing C, the editor will automatically show all available sources starting with “C”. CustConfirmJour and CustConfirmTrans are the tables that are available for the report, and in this example, the SalesConfirmReplacement is used.

If you select or type the table name and continue typing the field name, all available fields and methods will appear in an auto-complete list.

Error reporting

Syntax analysis and error reporting are automatic. If there is an error in the expression, an automatic callout with a short error message will appear, and a longer version will appear in the status line below the editor. Please note that the error position in the status line indicated with <-!->.

Syntax updates

Multi-line expressions are now supported. Comments are also added to improve the documentation of some of the expression parts. For example:


Switch CustConfirmJour.CustGroup

            case "Regular" then "Regular customer"

            case "Priority" then "Priority customer" /* Special name for Priority customers */

            default "Other customers"

End + " "  + "order"

Syntax colors

Syntax elements are now colour coded:

Syntax Highlights

Blue is reserved to operators and reserved words

Dark green is for complete value segments

Dark red is for string constants or numeric constants

Light green is for comments

Bright red is for incomplete values. Complete expressions should not contain these

Regardless of color, underlined segment is “Active”. Value for such segment will be also editable in separate value field located below:

Please be aware that syntax highlighting can be slow in environments where network latency is high. Because of automatic validation and highlighting, quite a few roundtrips to the server and back are required. You can monitor latency in your browser by navigating to F12 > Network.

An established VPN connection also can slow the performance as the latency can get higher compared to running the software without a VPN.


There is a new value source called Enums. Enums will also appear in the auto-complete lookup, but only when the filter will reduce the number of them below 20. This is done to avoid loading a massive amount of data, as there are many Enums in the system.

Enums now support three types of values. For example, if SalesTable.Sales status is “Open order”:

1. (New) SalesTable.SalesStatus would return the numeric value of the Enum such as 1.

2. SalesTable.SalesStatus:NAME would return a symbolic representation of the Enum, such as “Backorder”.

3. SalesTable.SalesStatus:LABEL would return label of the Enum, such as “Open order”.

If these are used in expressions, ensure that you compare the same type of value. Best practice is to use :NAME as this will be the same across all environments, even where numeric values might differ.

Auto-complete also works with Enum values:

Test of expression

New functionalities for testing expressions are implemented. You can test expressions with different values that can be plugged into the expression and observe the output result. To test your expression, specify the test values, then click Calculate test result.

All test values are saved as LastValues in the user’s Usage data, under Class > LACExpressionParser > TestValues. The Calculate test result checkmark is also saved in Usage data as Form > LACExpressionEditor > CalculateTestResult. Normally test values can be reused across various expressions, as these are common for all of them. Only relevant values are shown by default, but you can show all test values saved for the user by clicking Show all. Select Clean test values to indicate how many test values are saved for a user.

If the calculation fails, you will get the following test error:

In this case, the expression is technically valid but comparing an integer Enum value with a string produces a testing runtime error.


The Expression Editor is now resizable. 

How to measure Network latency

In an Azure-hosted environment – Non-ServiceFabric (IIS) (B8ms):

In an Azure-hosted ServiceFabric environment:

Support for Sharepoint 365 Graph in Lasernet

A new option to support Microsoft/Lasernet Graphs when working with Sharepoint is now introduced.

The support for Sharepoint 365 Graph in Lasernet can be accessed by navigating to Setup > Administration > Connection > Graph setup in Lasernet.

A similar setting is located in the Lasernet Server which can be accessed by selecting Connections and is also embedded within the Sharepoint module.

Connection for Sharepoint 365

Embedded connection within the Sharepoint module

Adjustment of the Lasernet configuration

The following adjustments are required within the Lasernet configuration to support the Sharepoint 365 Graph in Lasernet:

1. Update script:

Attach documents > AttachDocumentGeneric (prefix, prefix2)

The code in StorageType is the Sharepoint part of the method.

Code / Script

logger.logEvent(0, prefix + ' loading file from: ' + job.getJobInfo(pref + 'StorageType')); if (job.getJobInfo(pref + 'FilePath') != job.getJobInfo(pref + 'FilePathGraph')) { // On graph full path should be in FileStorage job.setJobInfo('AttachmentFileStorage', job.getJobInfo(pref + 'FilePathGraph')+ job.getJobInfo(pref + 'FileStorage'), true); job.setJobInfo('AttachmentFileStorageCategory', '', true); } else { // Setting file name for azureStorageCommand job.setJobInfo('AttachmentFileStorage', job.getJobInfo(pref + 'FileStorage'), true); job.setJobInfo('AttachmentFileStorageCategory', job.getJobInfo(pref + 'FilePath'), true); }

2. Update script:

LAC functionsSetOutParameters

Code / Script

job.setJobInfo('OutFilePathGraph', job.getJobInfo(mergedPrefix + 'FilePathGraph'), true);

3. Open the Sharepoint Output module, select Pre JobInfos, and add additional value with the criteria. This will set OutFilePath to OutFilePathGraph, if OutFilePath is not equal to OutFilePathGraph.

Enhancements - LAC365FO version 6.18.0

316466@LAC365FO – Improve warning when resending documents to predefined destination and not use force-rerun

An improved warning is added for attempts to resend documents by using predefined destination and not using force-rerun.

Force-rerun is required when resending documents and when using predefined destinations, as this would require all data (tables/fields) to identify the proper destination.

The following warning is introduced in when resending:

312295@LAC365FO – T&P: Top picking for SSRS SalesInvoice and SalesConfirmation

LAC365FO version 6.18 supports the use of SSRS reports for Top picking used within the Test & Performance Suite.

This is useful when there is a need to benchmark report performance and memory when using a standard/customized SSRS report. 

305374@LAC365FO - Date format applied on report value is not respected in the Email body
The new option ReportValueFormatted is introduced and issued for using the formatting applied to an element within the structure.

This is useful if there is a need to use specific formatting of information, such as an email body.

Apply the required formatting for the required field, such as the Custom format for ConfirmDate in the following example:

Select ReportValueFormatted to get the proper formatting.

305298@LAC365FO - Change in TOP records 6.17

The option Top reset is introduced and used in relation to the Top records.

The Top reset option controls when the number of records used for Top records should get reset/set to zero.

Top resetResult

The number of records in Top records is calculated across the report and any records found within any of the tables will be part of the calculation of the number of records (Top-x)

ReportThe number of records in Top records is reset (set to zero) when the parent record changes

It is possible to use the Top reset for any tables and in any subqueries used within the Query.

Top reset Report

Top resets are in the following example set to Parent for the tables (data-source) SalesTable and SalesLine. The Top records are also set to two for both.

The result will be two records for both SalesTable and SalesLine. Only records from first sales-order line (000002) are returned, even though sales-order line records also exist for sales-order 000003.

Top reset Report and Parent

Setting the Top reset to Parent for SalesLine and selecting two in Top records will generate an output containing two records for both tables.

The result will be two records for both SalesTable and SalesLine.

Top reset: Report, Parent and zero for Top records

Setting Top records to zero for the SalesLine will return all records for each sales line.

The result is two records from the table SalesTable and all records from the table SalesLine.

271957@LAC365FO – #21778- D365FO LAC: Decouple XML and PDF storage for SharePoint 365

There is a new option to use one Storage/Storage type for the XML file and another Storage/Storage type for the PDF file.

This approach ensures much better, faster, and more stable communication such as when there is a need to use Sharepoint (or Autoform DM) to archive the documents (normally PDF files).

This is useful if there’s a need for specific formatting of information, such as within an email body.

305298@LAC365FO – Change in TOP records 6.17

The document preview has been adjusted.

317135@LAC365FO – Archive performance sorting parameter

A new feature has been introduced which provides the option to improve performance when there are many entries (records) in the Lasernet Archive and when making a resend from the Archive.

The issue when there are many records is not the resending and creation of the entry in the Archive, but when the selected entry (record) needs to be re-selected (current record).

The default option Newest to oldest, which has also been the standard in previous versions of LAC365FO, could cause the system to become unresponsive when resending from the Archive and when having many entries in the Archive. Selecting the new option Oldest to newest makes the system much more responsive when there are many entries in the Archive and when making a resend. It will find same records but it will set the focus (current record) to the end of the Archive.

Newest to oldest

Records are by default sorted by descending order of the Created date and time, the same pattern of sorting as in previous versions of LAC365FO. 

Oldest to newest

Sorting from Oldest to newest will show the newest records at the end of the Archive, in ascending order of the Created date and time.

Helpful Unhelpful

2 of 2 people found this page helpful

Comment (1)

Beth Wendt
Thank you for the thorough documentation!

Add a comment

Please log in or register to submit a comment.

Need a password reminder?