Developing the extension
We've structured our project folder as follows:
We have an Src
folder and under that we have a subfolder for every functionality and then for object type.
The name of each AL file is created using Microsoft's naming guidelines:
- Each file name must start with the corresponding type and ID, followed by a dot for full objects or a dash for extensions:
- Full objects:
<Type><Id>.<ObjectName>.al
, such asTab.50100.MyTable.al
- Extensions:
<Type><BaseId>-Ext<ObjectId>.<ObjectName>.al
:page 50100 MyPage
extendsCustomer Card
such asPag21-Ext50100.MyPage.al
- Full objects:
- It is required to use a prefix or suffix for the name property of the fields in your extension. You would then use the
Caption/CaptionML
values for what to display to the user. This avoids the collision of fields between extensions:- A tag must be at least three characters
- The object/field name must start or end with the tag
- If a conflict arises, the one who registered the tag always wins...