Проблема с Alter интерфейса Dogovor
Добавлено: 10 июл 2019, 20:58
Появилась задача написать альтер интерфейса Dogovor и изменить в нём поведение стандартного фильтра.
Фильтр в интерфейсе реализован с помощью condition:
Функция CheckDogFilter объявлена в секции public vipInterface:
Пишу альтер следующим образом:
И ожидаю, что при попытке установить фильтр увижу множество сообщений, но этого не происходит. Фильтр продолжает работать как и работал – очевидно, вызывается функция из оригинального интерфейса, а не моя. С соседними функциями такой проблемы не возникло – все нормально переопределялись.
Я не могу понять, что такого особенного в этой функции, что не позволяет мне её переопределить.
Фильтр в интерфейсе реализован с помощью condition:
Код: Выделить всё
Condition Filters = CheckDogFilter(Dogovor1.Buffer)
Код: Выделить всё
VipInterface Dogovor implements TDocument, tDogovorObjInterfaceV2, IMenuMakerParameters, IExtMenu
…
Public:
…
Function CheckDogFilter(buf: type$Dogovor) : boolean;
…
End;
Код: Выделить всё
Alter interface Dogovor;
Overload
function CheckDogFilter(buf: type$Dogovor) : boolean;
end;
Function CheckDogFilter(buf: type$Dogovor) : boolean;
{
message('CheckDogFilter');
result := false;
}
end.
Я не могу понять, что такого особенного в этой функции, что не позволяет мне её переопределить.