Skip to main content

msdyn365bc Preprocessor Directives - Pragma Directives.

Hi Readers,

In the Introduction article of series we understand different types of Preprocessor  directives available in Business Central.

Preprocessor Directives are available starting Business Central 2020 Release Wave 2. 

You can read other articles in this series using this link.

In this article we will understand how to use Pragma Directives.

The #pragma directive gives the compiler special instructions for the compilation of the file in which it appears. 

The #pragma directive has a number of actions that can be used with the pragma instructions below, these are disable, restore, and enable.

AL supports the following pragma instructions:

  • Pragma Warning
  • Pragma ImplicitWith 

What Pragma Warning Does?

  • The #pragma warning instruction can enable or disable certain warnings. 
  • This can be used as a solution to avoid getting warnings. 
  • With the #pragma warning disable statement you disable the emit of the warning for a specific location in code, and with #pragma warning restore you restore the warning back to it's original state. 
  • If you do not restore, the disable instruction is valid for the rest of the file.

** It is important to be aware that most warnings are there for a reason, and suppressing them could lead to sudden impact if warnings are changed to errors, such as obsoletes.

How to Implement Pragma Warning Directives?

  • Global Implementation 
    • We have to use app.json file.
    • Parameter Name suppressWarnings.

    • Local Implementation
      • We can set that in any object using two directive. 
      • #pragma warning disable warning-list 
      • #pragma warning restore warning-list


    What Pragma ImplicitWith Does?

    How to Implement ImplicitWith?

    Hope you like this series. 

    If you have any questions, add as comments to this article.

    Regards,
    Saurav Dhyani
    www.sauravdhyani.com

    Comments

    Popular posts from this blog

    VIEW SERVER STATE permission on SQL Server?

    Hi all, Sometime While trying to Login into a database we face an error message as shown below. --------------------------- Microsoft Dynamics NAV Classic --------------------------- You cannot start Microsoft Dynamics NAV Classic because you do not have the VIEW SERVER STATE permission on SQL Server. Contact your system administrator. --------------------------- OK    ---------------------------

    RTC Report It is not possible to instantiate the Visual Studio bridge.

    Hi all, As a Navision developers I have Multiple Versions of Navision running in single Machine. As discussed Earlier in the post how to run multiple Version of RTC in single machine. So my machine have following details for RTC Versions - NAV 2009 R2    - is installed. NAV 2009 SP1  - is copied at C:\Program Files (x86)\Microsoft Dynamics NAV\60\NAV 6.0 SP1 IN\ NAV 2009         - is copied at C:\Program Files (x86)\Microsoft Dynamics NAV\60\NAV 6.0 IN\ This approach has been working great for execution of Classic and RTC Clients. However, after installing Dynamics NAV 2009 R2, if i tried to view the Layout for an NAV 2009 SP1 Report i was getting the following error: ---------------------------  Microsoft Dynamics NAV Classic  ---------------------------  It is not possible to instantiate  the Visual Studio bridge.  ---------------------------  OK    --------------------------- After searchi...

    NAV 2013 R2 - Cumulative update 12 Released.

    Hi all, Please find below the details of  Cumulative Update 12 released for Microsoft Dynamics NAV 2013 R2. Title - Cumulative Update 12 for Microsoft Dynamics NAV 2013 R2 Build No. - 38053 Release Date - October, 2014 Local Version Included - AU, AT, BE, CH, DE, DK, ES, FI, FR, IS, IT, NA, NL, NO, NZ, SE, UK, RU Download Link Note: Implementing this cumulative update will require a database conversion unless you have already implemented update rollup 5.