Useful Web.Config Parameters

Hi All,

Acumatica as standard ASP.NET application stores some configurations in web.config file. Some parameters can be really useful for users and developers.

web.config file acumatica

In this article i want to share with you parameters that really can help you.

  • AutomationDebug (Default false) – An indicator of whether an information about the current automation step (state of a form of Acumatica ERP) is displayed on the form. If you set the value of the key to true, the text box with the current automation state is displayed on the Info area of a form of Acumatica ERP.
    AutomationDebug
    • Very useful parameter if you changing automation steps
  • CheckCustomizationCompatibility (default True) – If the key is True, the platform checks compatibility of the code included in a customization project with the original application code every time while publishing the project. If there are any compatibility errors, the platform displays the warning and error messages in the сompilation window and breaks the publication process.
    Useful Web Config Parameters
    • Please note that if you have some compatibility errors we highly recommend you to review customization, but in case you cannot do it right now, you can temporary disable validation.
  • CompilePages (Defult true) An indicator of whether the application compiles the website pages at the website launching to warm up the application.
    • Better to have it false on development instance to speed up performance.
  • InstantiateAllCaches (Default true) – creates a separate thread to create all possible PXCache objects. That helps to run screens faster on first access.
    • InstantiateAllCachesDelayMs (Default 60) seconds.
    • Better to disable it on development instance.
  • CustomizationTempFilesPath (mandatory) – The folder that is used to keep all the temporary files created during process of compilation of the customization code. (…Acumatica ERPCustomizationTemp)
    CustomizationTempFilesPath acumatica
    • Changing of customization temp files path may be required on machines with limited access rights.
    • Note that if you have any error during customization validation, you can easily find solution there and open it with Visual Studio
  • DisableCustomization (Default – false) Can permanently disable customization tools (such as inspect element, customize element and so on) on Acumatica Screen. Customization Projects screen will still be there. Might be good for better security control.
  • DisableExtensions (Default false) – If you set the key to true, at run time, during the first initialization of a base class, Acumatica Customization Platform does not find the class extension to replace the base class with the merged result of the base class and the extension discovered.
  • DisableScheduleProcessor (Default false) – An indicator of whether the operations scheduled in the application are disabled. As a rule, developers set the key to true to prevent launching scheduled operation at the code debugging.
    • Quite useful for debugging of customer data. With that parameter you can be sure that no of client schedules will be executed.
  • EnableApplicationShutdownLogging (Default false) – An indicator of whether the AppDomain writes a message that contains the start or stop event information and the application stack to MS Windows Event Log.
  • EnableAutoNumberingInSeparateConnection (Default false) – If a process uses auto-numbering during creation of a business entity, the process blocks an access to the numbering sequence for this entity. Therefore, other processes that use the same numbering sequence may wait for a long time when the numbering sequence is unblocked. To avoid blocking the numbering sequence, you can set the key to true. As a result, a new number is created asynchronously in a separate connection scope.
    • NOTE: If the key is set to true and a process that got the number for a new entity fails, the number cannot be reused. So this option can produce gaps in numbering.
  • EnableFirstChanceExceptionsLogging (Default false) – An indicator of whether the system logs first chance exceptions.
    EnableFirstChanceExceptionsLogging acumatica
    • Very useful parameter for debugging of internal exceptions. You can get all exceptions even if you cannot see them in the browser or trace window.
  • MobileSitemapDebug (Default false) – The Mobile Site Map Definition Language (MSDL) interpreter can work in the following modes: Production mode, in which the interpreter ignores most errors while processing the MSDL code for greater stability; Debugging mode, in which the interpreter logs every error and stops executing the MSDL code if an error occurs. In production mode the interpreter ignores any MSDL file that contains a syntax error. It also ignores any instruction that contains a semantic error. If such an instruction contains nested instructions and assignment commands, the interpreter also ignores them. If the key is turned on, the MSDL interpreter logs errors and sends the error messages to the mobile app, which displays these messages on the mobile device.
    • I recommend that option for Mobile App developers.
  • PageValidation (Default true) – Validation Policy for developers, show banners with warnings if automatic validation has found any error on your screen.
    PageValidation acumatica
    • Recommended for developers.
  • ReminderVisible false An indicator of whether reminders are visible of forms of Acumatica ERP.>
    ReminderVisible acumatica
    • ReminderActiveMode (Default false) – An indicator of whether the reminder is activated. To activate reminders in the application, set both the ReminderActiveMode and ReminderVisible keys to true.
    • ReminderRequestPeriod 60The reminder frequency in seconds.
  • SqlOptimizeForUnknown (Default true) – Does recommended SQL query optimizations
    • If you use Microsoft SQL Server 2005 or 2008, set the key to false to disable in Acumatica ERP optimization for the unknown value that is not supported by these versions of MS SQL Server.
  • UseRuntimeCompilation (Default true) – An indicator of whether the customization platform uses the App_RuntimeCode folder as the destination folder for the Code files of customization project. Usage of this folder does not require the domain restart. If you set the key to false, the platform uses the App_Code/Caches folder for the customization code.
    app code vs app runtime code
  • vs:EnableBrowserLink (Default true) – Browser Link is a new feature in Visual Studio 2013 that creates a communication channel between the development environment and one or more web browsers. You can use Browser Link to refresh your web application in several browsers at once, which is useful for cross-browser testing. Browser Link is enabled by default. To disable it, set the key to false.
    EnableBrowserLink acumatica
  • RestrictUpdates (Default false) – Manages possibility of installing updates by using Acumatica ERP web interface (the Apply Updates form). If the parameter is true, updates can be installed only manually on the Acumatica ERP server.

Beside that you also can use compilation configurations of standard ASP.Net Compilation section

  • <compilation debug=”true” batch=”false” optimizeCompilations=”true” defaultLanguage=”c#”
  • Batch – batch mode will compile multiple pages at once. For debuggin purpose we most probably need only one or 2 pages, so compilation without batch will be faster.
  • OptimizeCompilations – read more on MSDN

Have a nice development!

5 Replies to “Useful Web.Config Parameters”

  1. Do you have recommendations for IIS settings for production?
    Specifically,
    .Net compilation
    Maximum Worker Processes

    1. Default settings are good. Acumatica configuration wizard sets all needed settings automatically.
      Also Acumatica does not support more than 1 worker process.

  2. Thanks for sharing Sergey.

    Do you have any article that Acumatica developers configuration for setup environment (visual studio, acumatica site to test) to develop new modules or customization?

    Really appreciate,
    Daru

    #StaySafe

  3. Do you know if there is a setting that will prevent the processing of emails. It would be nice to have when restoring a Production database backup to a Test database, especially when incoming email processing is turned on.

    1. Hi Tim 2 ways –
      – Disable it in Email Prrferences
      – Disable scheduler
      Both of these options will stop email processing.

Leave a Reply

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