Skip to main content

Enable Code Analysis for AL In BC

How to use Code Analysis Tool for AL in BC

Few days ago, the demo was given by me on the code analysis for AL among our team. I would like to share the same knowledge with you on the code analysis.

Follow the bellow steps in your project to enable code analysis in the business central.

  • Open command pallete ( Ctrl + Shift + P ) and choose either User Setting or Workspace settings. 
  • Basic setting is al.enablecodeanalysis and make it to true.
  • Now, set the al.codeanalyzer with the different values. Here, there are four values (AppSourceCop, CodeCop, PerTenantExtensionCop, UICop) available to use. Here, we will user CodeCop and PerTenantExtensionCop. 
    1. CodeCop is an analyzer that enforce the official AL coding guidelines.
    2. AppSourceCop is an analyzer that enforce rules that must be respected by extensions meant to be published to Microsoft App Source.
    3. PerTenantExtensionCop is an analyzer that enforce rules that must be respected by extensions meant to be installed for an individual tenant.
    4. UICop is an analyzer that enforce rules that must be respected by extensions meant to be customise the web client.
  • Now, if we build the app then it will check our AL code and notifies our mistakes that we done. You can see the errors and warnings in the below screen shot.

Ruleset for the Code Analysis in AL

  • We can break the code analysis by adding our custom ruleset in the project. Here for the example we will break the code PTE0004 code. To create a new custom rule first of all we need to create a file which follow <name>.ruleset.json . Here, we will create ImportExportExcel.ruleset.json file as below.
  • Now, again we will open setting.json file and add the path of the custom ruleset.
  • When you build the project after adding the custom ruleset, you can find that error is converted in to the warning for code PTE0004.

Check out the official docs by the microsoft for more information :

I hope this thing will help you for the better coding in the AL😊.

Harshil Patel


Popular posts from this blog

Import Excel File in Business Central

Import Excel in Business Central Many times we need to import data through excel file in the business central / navision. We used to perform this kind of activity in the navision but we need to explore the thing in business central. So, i am trying to import data from excel file in the business central. I am using business central wave 1 2020 for the development. We will create a table called student and add some fields to test imported data from Excel in Business Central. Now, We will add a new list page to view imported data from excel. Now, We will create a new report to import data from the excel in business central. If you worked with the navision then you might be noticed that some of the functions are not working in the business central due to scope issue. So, we will replace those functions which we used in NAV and try some new available functions to import excel. Now, we will add an action to the list page for import data.

Custom API in Business Central

Today, I will demonstrate how to work with custom API in Business Central. Custom API is very useful when we are working with integration apps. So, lets start exploring custom API in business central. We will take one table called student and will create one API page in order to access this table as API. Moreover, we can check this API in Postman as well. Here, we will mainly perform three operations GET, Post, and Delete. First of all, we will create student Table with four fields ID, First Name, Last Name and Email. For the primary key we will take ID. Once table is added, we will create one list page to view our data. So, we can easily check our custom API is working properly or not. Now, we will add another page which is used as API. This is a new page type introduced in business central. You can check how to create API page in business central.( Click Here ) Now, we can interact with student  data with the help of this API page in the business central. We will write a logic in cod