> For the complete documentation index, see [llms.txt](https://projects.itproduct.ru/azimut/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://projects.itproduct.ru/azimut/koncepciya/rasshiryaemost.md).

# Расширяемость

Если для вашего проекта не хватает какого-либо функционала, можно с помощью языка c# написать свои новые объекты и новые функциональные типы.

Дерево конфигурации состоит из объектов и из экземпляров метаданных этих объектов. Например объект [Выборка](/azimut/dokumentaciya/osnovnye-obekty/vyborka.md). Это большой функционал позволяющий пользователю работать со списками и справочниками. Под объектом "Выборки" в дереве располагаются уже конкретные экземпляры, например Клиенты, Заказы, Типы заказов и т.д. В каждом экземпляре свои метаданные. Для выборки это поля и источник данных.

## Новые виды объектов

Вы можете разработать принципиально новый вид объекта. Со своим форматом метаданных, который вам необходим. Азимут автоматом позаботится о создании всей инфраструктуры для работы с вашим новым объектом. По сути, все основные объекты бизнес приложений, такие как Выборка, Представление и т.д. так и были реализованы - мы просто взяли и создали такое расширение. А голая платформа Азимут ничего этого делать не умеет, она только предоставляет инфраструктуру для работы с метаданными, релизами, наследованием. Можно сказать, что платформа была реализована сама на себе.

Вы можете взять платформу Азимут и за счет своих новых объектов сделать из нее, например какую-то аппаратную платформу для работы с контроллерами и микропроцессорами или сделать узко заточенную платформу для своей отрасли.

## Расширение функционала существующих видов объектов

Кроме разработки принципиально новых объектов, вы можете унаследоваться от уже существующих и добавить или переопределить свой функционал.

## Новые функциональные типы

А также, что наиболее чаще востребовано, можно добавлять свои новые функциональные типы. Везде где вы видите такую кнопку...

![](/files/-Lq0LAsY-gKXPkj4OIKD)

![](/files/-Lq0LIR51XPz5rDbgYEx)

![](/files/-Lq0LXd81Mpg45lm3-TM)

... которая позволяет добавить например новое поле заданного типа или новую кнопку, выполняющую определенный вид действия или новое серверное действие или где-либо еще - везде вы можете добавить свой новый функциональный тип.

Для этого нужно только унаследоваться или от базового типа или от любого другого существующего, чтобы расширить его функционал.

См также: [Разработка дополнений](/azimut/rasshirenie-platformy/writing-extensions.md). Как видите, расширяется очень многое. Практически все аспекты разработки. Кроме того, это мы можем сделать за вас, в рамках договора на техобслуживание, чтобы вы не отвлекались на рутину от прикладной части проекта.
