Skip to main content

msdyn365bc - Preprocessor Directives in AL Introduction.

Hi Readers,

Continuing what's new in business central 2020 wave 2.

In this series, we’ll learn about Preprocessor Directives, available directives in AL, and when, why and how why they are used.

As the name justifies, preprocessor directives are a block of statements that gets processed before the actual compilation starts. AL preprocessor directives are the commands for the compiler that affects the compilation process.

#AL, #msdyn365bc

These commands specifies which sections of the code to compile or how to handle specific errors and warnings.

  • AL preprocessor directive begins with a # (hash) symbol and all preprocessor directives last for one line. 
  • Preprocessor directives are not statements, so they do not end with a semicolon (;).
  • Preprocessor directives are terminated by new line rather than semicolon.

In AL, like in other programming languages, preprocessor directives can be used to make code conditional, to suppress warnings, or to enable expand and collapse in code. 

Preprocessor directives can be divided into the following groups. For more information about each type, use the links provided below - 

Any code can be made conditional, including table fields, and checked using a conditional directive. 

To check code using a conditional directive, you must define a symbol to check. 

A symbol returns a Boolean value; true or false. 

Symbols can be defined at the beginning of a source file and the scope of the specific symbol is the file that it is defined within. 

You can also define symbols in the app.json file, and then the scope is global for the extension.

This is how a code execute with/without preprocessor directives.

In Next article in this series, we will talk about these directives with examples. 

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.