Доп.функционал на стандартный обработчик
Модераторы: m0p3e, edward_K, Модераторы
-
- Абориген
- Сообщения: 943
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: External Developer
- Контактная информация:
Доп.функционал на стандартный обработчик
Добрый день.
Интересует вопрос следующего плана.
возможно ли на обработку стандартного события, ДО или ПОСЛЕ выполнения стандартного ф-ла, выполнить свой? т.е. существуют ли сейчас POST и PRE- методы?!
если да, то каким образом?
подскажите )))
или реализация на каком либо событии собственного ф-ла и является по сути post-методом? т.е. выполнение его всегда будет ПОСЛЕ выполнения на данном событии стандартной обработки?
Интересует вопрос следующего плана.
возможно ли на обработку стандартного события, ДО или ПОСЛЕ выполнения стандартного ф-ла, выполнить свой? т.е. существуют ли сейчас POST и PRE- методы?!
если да, то каким образом?
подскажите )))
или реализация на каком либо событии собственного ф-ла и является по сути post-методом? т.е. выполнение его всегда будет ПОСЛЕ выполнения на данном событии стандартной обработки?
-
- Местный житель
- Сообщения: 370
- Зарегистрирован: 28 сен 2006, 15:43
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Доп.функционал на стандартный обработчик
А так не устроит:
1)
2)
?
1)
Код: Выделить всё
...
cmInit :
{
<свой код>
if (Inherited :: HandleEvent (cmInit) != heOk)
Abort;
}
...
Код: Выделить всё
...
cmInit :
{
if (Inherited :: HandleEvent (cmInit) = heOk)
{
<свой код>
}
}
...
-
- Местный житель
- Сообщения: 370
- Зарегистрирован: 28 сен 2006, 15:43
- Откуда: Санкт-Петербург
- Контактная информация:
И еще, к этому : "или реализация на каком либо событии собственного ф-ла и является по сути post-методом? т.е. выполнение его всегда будет ПОСЛЕ выполнения на данном событии стандартной обработки?". Если вы переопределите обработчик какого-либо события и в вашем коде явно не вызовете родительский обработчик этого события, то своим функционалом вы перекроете стандартный, то есть, стандартный функционал вообще не отработает
Простой пример:
Код: Выделить всё
1. Выполнение своего кода до:
cmInit :
{
MyProcedure;
Inherited::HandleEvent (cmInit);
}
2. Выполнение своего кода после:
cmInit :
{
Inherited::HandleEvent (cmInit);
MyProcedure;
}
2. Выполнение своего кода вместо:
cmInit :
{
MyProcedure;
}
-
- Сообщения: 17
- Зарегистрирован: 21 май 2008, 11:03
- Откуда: Витебск
Подскажите пожалуйста, tableevent можно докомпилировать?
к примеру
к примеру
Код: Выделить всё
alter interface KATPARTY
tableevent table katparty
cmCheckRecord: {
if katparty.cmc=0
{
message('Привяжите МЦ к партии или удалите запись!');
abort;
}
else
{
// ***** как вызвать стандартный tableevent cmCheckRecord ???
}
}
end;
end.
-
- Сообщения: 17
- Зарегистрирован: 21 май 2008, 11:03
- Откуда: Витебск