Introduction to C/SIDE and C/AL

"Programs must be written for people to read, and only incidentally for machines to execute."
                                                                       - Harold Abelson and Julie Sussman
"The details are not the details. They make the design."
                                                                                                - Charles Eames

So far, we have reviewed the basic objects of NAV 2017 such as tables, data fields, pages, queries, and reports. For each of these, we reviewed triggers in various areas, triggers whose purpose is to be containers for C/AL code. When triggers are fired (invoked), the C/AL code within is executed.

In this chapter, you'll start learning the C/AL programming language. Many things you already know from your experience programming in other languages. Some of the basic C/AL syntax and function definitions can be found in the NAV 2017 Help, as well as in the MSDN Library sections for Microsoft Dynamics NAV.

As with most of the programming languages, we have considerable flexibility to define our own model for our code structure. However, when we are inserting new code within existing code, it's always a good idea to utilize the model and follow the structure that exists in the original code. When we feel compelled to improve on the model of the existing code, we should do so in small increments, and we must take into account the effect of our changes on upgradability.

The goal of this chapter is to help us to productively use the C/SIDE development environment and be comfortable in C/AL. We'll focus on the tools and processes that we will use most often. We will also review concepts that we can apply in more complex tasks down the road. In this chapter, we will cover the following topics:

  • C/SIDE Object Designers and their navigation
  • C/AL Syntax, Operators, and Built-in Functions
  • C/AL Naming conventions
  • Input/Output functions
  • Creating custom functions
  • Basic Process Flow structures
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.226.185.96