alguidelines/content/docs/BestPractices/blank-lines/index.md
2022-05-06 09:02:17 +02:00

166 lines
2.7 KiB
Markdown

---
title: "Avoid too many blank lines"
tags: ["AL","Readability"]
categories: ["Best Practice"]
---
## Description
Avoid too many blank lines.
## Example 1
### Bad code
```al
var
UserSetup: Record "User Setup";
IsEditable: Boolean;
IsVisible: Boolean;
local procedure Initialize()
begin
IsEditable := false;
IsVisible := false;
UserSetup.Get();
end;
```
### Good code
```al
var
UserSetup: Record "User Setup";
IsEditable: Boolean;
IsVisible: Boolean;
local procedure Initialize()
begin
IsEditable := false;
IsVisible := false;
UserSetup.Get();
end;
```
## Example 2
### Bad code
```al
page 50000 "Blank Lines"
{
PageType = List;
ApplicationArea = All;
UsageCategory = Administration;
SourceTable = Customer;
layout
{
area(Content)
{
repeater(GroupName)
{
ShowCaption = false;
field(Name; Rec.Name)
{
ApplicationArea = All;
}
}
}
}
}
```
### Good code
```al
page 50000 "Blank Lines"
{
PageType = List;
ApplicationArea = All;
UsageCategory = Administration;
SourceTable = Customer;
layout
{
area(Content)
{
repeater(GroupName)
{
ShowCaption = false;
field(Name; Rec.Name)
{
ApplicationArea = All;
}
}
}
}
}
```
## Example 3
### Bad code
```al
var
GLSetup: Record "General Ledger Setup";
GLSetupRead: Boolean;
local procedure GetGLSetup()
begin
if not GLSetupRead then
GLSetup.Get();
GLSetupRead := true;
OnAfterGetGLSetup(GLSetup);
end;
[IntegrationEvent(false, false)]
local procedure OnAfterGetGLSetup(var GLSetup: Record "General Ledger Setup")
begin
end;
```
### Good code
```al
var
GLSetup: Record "General Ledger Setup";
GLSetupRead: Boolean;
local procedure GetGLSetup()
begin
if not GLSetupRead then
GLSetup.Get();
GLSetupRead := true;
OnAfterGetGLSetup(GLSetup);
end;
[IntegrationEvent(false, false)]
local procedure OnAfterGetGLSetup(var GLSetup: Record "General Ledger Setup")
begin
end;
```
## Tips
The [AZ AL Dev Tools/AL Code Outline](https://marketplace.visualstudio.com/items?itemName=andrzejzwierzchowski.al-code-outline) extension adds two new commands to Visual Studio Code to remove empty duplicate lines.
- `Remove Empty Lines from the Active Editor` : removes empty duplicate lines from the current editor
- `Remove Empty Lines from the Active Project` : removes empty duplicate lines from the current project