# TextConst Suffixes

##### Tags:

- C/AL
- Readability

##### Categories:

- Best Practice

TextConst variable names should have a suffix (an approved three-letter suffix: Msg, Tok, Err, Qst, Lbl, Txt) describing usage.

Bad code

    CannotDeleteLine@1005 : TextConst 'ENU=You cannot delete this line because one or more rating values exists.';
    ...
    ERROR(CannotDeleteLine,TABLECAPTION);

Good code

    CannotDeleteLineErr@1005 : TextConst 'ENU=You cannot delete this line because one or more rating values exists.';
    ...
    ERROR(CannotDeleteLineErr,TABLECAPTION);

Bad code

    Text000@1011 : TextConst 'ENU="has been changed (initial a %1: %2= %3, %4= %5)"';
    ...
    SalesLine.FIELDERROR(Type,STRSUBSTNO(Text000,...);
    ...

Good code

    TypeHasBeenChangedErr@1011 : TextConst 'ENU="has been changed (initial a %1: %2= %3, %4= %5)"';
    ...
    SalesLine.FIELDERROR(Type,STRSUBSTNO(TypeHasBeenChangedErr,...);
    ...

Bad code

    Text004@1004 : TextConst 'ENU=Indenting the Job Tasks \#1\#\#\#\#\#\#\#\#\#\#.';
    ...
    Window@1007 : Dialog;
    ...
        Window.OPEN(Text004);

Good code

    IndentingMsg@1004 : TextConst 'ENU=Indenting the Job Tasks \#1\#\#\#\#\#\#\#\#\#\#.';
    ...
    Window@1007 : Dialog;
    ...
        Window.OPEN(IndentingMsg);

Bad code

    Text002@1005 : TextConst 'ENU=You cannot delete a %1 that is used in one or more setup windows.\\ Do you want to open the G/L Account No. Where-Used List Window?';
    ...
    IF CONFIRM(Text002,TRUE,GLAcc.TABLECAPTION) THEN

Good code

    OpenWhereUsedWindowQst@1005 : TextConst 'ENU=You cannot delete a %1 that is used in one or more setup windows.\\ Do you want to open the G/L Account No. Where-Used List Window?';
    ...
    IF CONFIRM(OpenWhereUsedWindowQst,TRUE,GLAcc.TABLECAPTION) THEN

Bad code

    Selection := STRMENU(Text003,2);
    ...
    Text003@1002 : TextConst 'ENU=&Copy dimensions from BOM,&Retrieve dimensions from components';

Good code

        Selection := STRMENU(CopyFromQst,2);
        ...
        CopyFromQst@1002 : TextConst 'ENU=&Copy dimensions from BOM,&Retrieve dimensions from components';

Bad code

    DATASET
    {
    ...
        { 1 ;1 ;Column ;Chart_of_AccountsCaption;
                        SourceExpr=Chart_of_AccountsCaption }
    ...
    Chart_of_AccountsCaption@9647 : TextConst 'ENU=Chart of Accounts';

Good code

    DATASET
    {
    ...
        { 1 ;1 ;Column ;Chart_of_AccountsCaption;
                        SourceExpr=ChartOfAccountsLbl }
    ...
    ChartOfAccountsLbl@9647 : TextConst 'ENU=Chart of Accounts';

Last modified February 24, 2022: Added tags & categories + cleanup (5ee04366) by waldo1001