Begin-End - Compound Only

Created by Microsoft, Described by waldo

Only use begin..end to enclose compound statements.

Bad code

if FindSet() then begin
    repeat
    ...
    until next() = 0;
end;

Good code

if FindSet() then
    repeat
    ...
    until next() = 0;

Bad code

if IsAssemblyOutputLine then begin
    TestField("Order Line No.", 0);
end;

Good code

if IsAssemblyOutputLine then
    TestField("Order Line No.", 0);

Exception

// Except for this case
if X then begin
    if Y then 
        //DO SOMETHING;
end else 
    (not X)

Discussions

You can find discussions on all “Best Practices” here.

If you don’t find the discussion of this guideline, please feel free to create a new one with the same title as this article.

Last modified February 20, 2022: Restructure for Docsy theme (cceb0c94)