Equisys technical notes

Technical guidance, explanations and fixes for our products

HOWTO: Modify Sales Quote to be Compatible with Server Side Delivery

Print

ZTN4396

ID: ZTN4396

This Zetadocs technical note applies to:

  • Zetadocs for NAV 8.0
  • Dynamics NAV reports which require user input

Summary

Prevent failure when sending using Server Side Delivery for reports that contain user dialogs, e.g. Sales Quote and Purchase Quote.

In this technote the changes required to make a report compatible with the Zetadocs for NAV Server Side Delivery feature will be discussed.

More information

Errors can occur when dialogs are invoked from within any executing code whilst processing on the server, such as report functions whilst sending from the server, for example in Sales Quote. These errors cause the send operation to fail silently. This technote will cover how to prevent report GUI elements from disrupting the Server Side Delivery operation. The following is a typical error as shown in Zetadocs-NAV.log for this issue

<Date>- <Time>-ERROR-C9041221.HandlePDFGeneration() Error whilst creating PDF Microsoft Dynamics NAV Server attempted to issue a client callback to show a confirmation dialog box: Do you want to create a follow-up to-do? (Report 204 Sales - Quote). Client callbacks are not supported on Microsoft Dynamics NAV Server.

The Zetadocs-NAV.log is available from C:\ProgramData\Microsoft\Microsoft Dynamics NAV\80\Server\MicrosoftDynamicsNavServer$DynamicsNAV80\users\default\<domain>\<user>\TEMP\Zetadocs.

To prevent failure during Server Side Delivery the report’s C/AL script must be customized to run correctly on the server. C/AL implementations differ between reports. All user dialogs must be manually prevented from running within report C/AL script if they are to be successfully sent on the server. This includes but is not limited to: CONFIRM, ERROR, MESSAGE, OPEN and PAGE.RUN. Also be aware of calls to functions that may cause a dialog to be triggered, e.g. a printer prompting because it is low on ink.

1.     Create a backup of the report and make the following changes in a new copy.

2.     Every call to a dialog should be wrapped in an

IF GUIALLOWED THEN

clause. For example, to correctly mark up Report 204 Sales-Quote add the following circled line to the OnPostDataItem trigger.

Note that client callbacks invoked from nested code will also have to be prevented. For C/AL this can be done using the method described above.

Last updated: 2nd March 2015 (SB/JV) 

Keywords: Server Side Delivery Client Callback OnPostDataItem

Equisys Logo, Document Management and Expense Management for Business Central
 

Replaced by script
Recent news

The sudden rush towards remote working practices in 2020 led many organizations to implement changes to upgrade their document capture processes on Microsoft Dynamics 365 Business Central or ...

Company credit cards are often seen as the most convenient way to incur travel & entertainment expenses, however it can be a very different story when it comes to the administration of these ...

North America
 
Equisys Inc
30000 Mill Creek Avenue
Suite 335
Alpharetta, GA 30022
USA
(770) 772 7201
Europe
 
Equisys Ltd
91 Southwark Bridge Road
London
SE1 0AX
United Kingdom
+44 (0)20 7203 4000
 

© Equisys Ltd
All rights reserved

© Equisys Ltd    All rights reserved    Contact    Privacy policy    Cookies