Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions content/docs/analyzers/LinterCop/LC0092.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,9 @@ The rule checks the following naming targets, each with a default convention:
| ReturnValue | Must start with an uppercase letter | Named return values |
| Object | Must start with an uppercase letter | Tables, pages, codeunits, reports, queries, XmlPorts, enums, interfaces, permission sets |
| Field | Must start with a letter (upper or lower); must not contain %, &, !, ? | Table fields |
| Action | Must start with an uppercase letter | Page actions |
| Action | Must start with an uppercase letter | Page actions, action groups, action references, separators, custom and file-upload actions |
| EnumValue | No default (opt-in only) | Enum values |
| Control | Must start with an uppercase letter | Page controls |
| Control | Must start with an uppercase letter | Page controls, except layout areas |

These conventions are implemented as regex patterns under the hood (`^[A-Z]`, `^[A-Za-z]`, `[%&!?]`). You can override them with custom patterns in `alcops.json` (see [Configuration](#configuration)).

Expand All @@ -72,6 +72,10 @@ These conventions are implemented as regex patterns under the hood (`^[A-Z]`, `^
- The method implements an interface (can't change the name)
- Object names have AppSourceCop affixes stripped before checking
- **Enum values** are not checked by default (opt-in only)
- Action areas (`area(Processing)`, `area(Promoted)`, ...) and layout areas (`area(Content)`, `area(FactBoxes)`, ...): the name selects a platform area and cannot be chosen freely
- System actions (`systemaction(OK)`, `systemaction(Cancel)`, ...) on a `ConfigurationDialog` or `PromptDialog` page: the name selects a platform system action
- Action groups named after a promoted category (`Category_New`, `Category_Process`, `Category_Report`, `Category_Category4` through `Category_Category20`): the name binds the group to that platform category
- Controls on API pages and queries (`PageType = API`, `QueryType = API`): AA0102 requires camelCase there

### Opting in to enum value checks

Expand Down