Для примера: надо перекрыть функцию SetPosition, описанную следующим образом:
файл ListSoglDog.vih:
Код: Выделить всё
ObjInterface ListSoglDogObj;
Function SetPosition(aDogovor: comp; aCanModifyDog: boolean): boolean;
end;
VipInterface ListSoglDog implements ListSoglDogObj licensed(FREE) Parameters(pDogovor: comp; CanModifyDog: boolean);
Код: Выделить всё
#include ListSoglDog.vih
#include ExtAttr.vih
#include GetKau.vih
Interface ListSoglDog 'Лист согласования' (, hcDogEditDogovor, ) EscClose;
...
Function SetPosition(aDogovor: comp; aCanModifyDog: boolean): boolean;
{
set pDogovor := aDogovor;
CanModifyDog := aCanModifyDog;
Result := GetFirst Dogovor = tsOk;
RereadRecord(#AttrDog);
if not CheckAttrsLS
{
Result := FALSE;
if not CanModifyDog
Message('Лист согласования отсутствует!', Information);
}
GetAttrsLS;
SetFieldProtected(#LS_NoReestr , not CanModifyDog);
}
...