Skip to main content

EDT Extensions

An EDT Extension (AxEdtExtension) modifies an existing Extended Data Type without altering its original source code. EDT extensions are the simplest extension type — they primarily allow property modifications and array element additions.

EDT extensions are created by right-clicking an EDT in the AOT and selecting Create extension. This creates an AxEdtExtension object named <OriginalEdtName>.<YourModelName> in your model.

What Can Be Extended

CapabilityDescription
Add Array ElementsAdd new elements to array-type EDTs.
Modify PropertiesChange property values on the EDT via PropertyModifications (e.g., StringSize, Label, HelpText).
note

EDT extensions are limited compared to table or form extensions. You cannot change the underlying base type, add relations, or modify the EDT's inheritance chain. For significant changes, consider creating a new EDT that extends the original.

Extension Naming Convention

PatternExampleDescription
Extension objectCustAccount.SAMOModelBase EDT name + dot + your model name.

Best Practices

  • Be cautious with StringSize modifications. Increasing the string size of a widely-used EDT affects every field that references it, potentially requiring database column resizing across many tables.
  • Label and HelpText overrides through EDT extensions affect all fields using that EDT globally — ensure the change is truly universal.
  • Prefer creating derived EDTs over modifying base EDTs when the change should only apply to specific contexts.

Properties

4/4 properties
PropertyDisplay NameTypeDescription
EDT ExtensionAxEdtExtension
NameNameStringThe name of the extension element (follows BaseEDT.Package naming).
IsObsoleteIs ObsoleteNoYesWhether the extension is deprecated. Values: No (0), Yes (1).
VisibilityVisibilityCompilerVisibilityAccess level visibility. Values: Private (0), Protected (1), Public (2), Internal (3), InternalProtected (4).
TagsTagsStringTags for this element separated by semicolon.