Реализация контракта
Реализация свойства
Если у элемента проекта есть стандартное свойство и этот элемент реализует контракт, в котором есть свойство, которое совпадает со стандартным (на любом языке), то считается, что это стандартное свойство соответствует свойству из контракта.
Такими свойствам являются:
- У справочника:
- Код,
- Владелец,
- Ссылка,
- ВерсияДанных,
- Представление,
- У регистра сведений:
- Период,
- КлючЗаписи.
Реализация метода
Модуль элемента проекта, реализующего контракт, должен содержать определения всех методов, объявленных в контракте.
Методы-реализации:
- Должны иметь аннотацию видимости, равную области видимости контракта (свойство ОбластьВидимости) или шире. Например, если контракт имеет область видимости @ВПроекте, то методы-реализации могут иметь область видимости @ВПроекте или @Глобально;
- Должны иметь аннотацию @Реализация.
Например, так выглядит реализация метода СформироватьПредставление().
@ВПроекте
@Реализация
метод СформироватьПредставление()
Представление = "%Фамилия %Имя %Отчество"
;
Методы контракта и методы-реализации сопоставляются по сигнатуре.
Возвращаемое значение метода-реализации может иметь более конкретный тип, чем в контракте.
Если сигнатура метода контракта совпадает со стандартным методом типа, в котором находится реализация, то считается, что стандартный метод является реализацией метода, объявленного в контракте. Пример — метод Записать().