Begin-End - Compound Only

This commit is contained in:
waldo1001 2021-12-11 08:29:14 +01:00
parent 36bee5f75f
commit 0c48ac5ad5
3 changed files with 61 additions and 2 deletions

View file

@ -30,4 +30,4 @@ When `begin` follows `then`, `else`, `do`, it should be on the same line, preced
You can find discussions on all "Best Practices" [here](https://github.com/microsoft/alguidelines/discussions/categories/bc-best-practices).
If you don't find the discussion of this pattern, please feel fee to create a new one with the same title as this article.
If you don't find the discussion of this guideline, please feel fee to create a new one with the same title as this article.

View file

@ -0,0 +1,59 @@
+++
title = "Begin-End - Compound Only"
weight = 240
+++
<_Created by Microsoft, Described by waldo_\>
Only use begin..end to enclose [compound statements](https://docs.microsoft.com/en-us/cpp/c-language/compound-statement-c?view=msvc-170#:~:text=A%20compound%20statement%20%28also%20called%20a%20%22block%22%29%20typically,appear%20at%20the%20head%20of%20a%20compound%20statement.).
## Bad code
```AL
if FindSet() then begin
repeat
...
until next() = 0;
end;
```
## Good code
```AL
IF FindSet() then
repeat
...
until next() = 0;
```
## Bad code
```AL
IF IsAssemblyOutputLine then begin
TestField("Order Line No.",0);
end;
```
## Good code
```AL
IF IsAssemblyOutputLine then
TestField("Order Line No.",0);
```
## Exception
```AL
// Except for this case
IF X then begin
IF Y then
//DO SOMETHING;
end else
(not X)
```
## [Discussions](https://github.com/microsoft/alguidelines/discussions/categories/bc-best-practices?discussions_q=begin+end+compound+only+category%3A%22BC+Best+Practices%22)
You can find discussions on all "Best Practices" [here](https://github.com/microsoft/alguidelines/discussions/categories/bc-best-practices).
If you don't find the discussion of this guideline, please feel fee to create a new one with the same title as this article.

View file

@ -33,4 +33,4 @@ PutCodeblocksHere()
You can find discussions on all "Best Practices" [here](https://github.com/microsoft/alguidelines/discussions/categories/bc-best-practices).
If you don't find the discussion of this pattern, please feel fee to create a new one with the same title as this article.
If you don't find the discussion of this guideline, please feel fee to create a new one with the same title as this article.