05.02.2003, 06:44 | #1 |
Участник
|
Штатное расписание в Ax25SP4RU
Добрый день всем!
Форма для отображения штатного расписания – RHRMStaffList. Для отображения количества заполненных штатных единиц служит display-метод на одноименной таблице -staffListEmploy(). Так вот, вся проблема в том, что для каждой активной записи этот метод вызывается ПЯТЬ РАЗ ПОДРЯД. В этом легко убедиться, запустив профайлер. Да и визуально поле прорисовывается 5 раз – и это при каждой активации. У меня вопрос: как разработчики умудрились так сделать? Я сколько не пробовал смоделировать / понять ситуацию – не получилось – display-методы, какие бы накрученные не были, вызываются один раз. Хотелось бы, чтобы и в этом случае форма отрисовывалась побыстрее. Спасибо, Андрей Беседин ЗЫ: Я уже покопался в самОм методе staffListEmploy(). Теперь поле "мигает" в 20 раз быстрее, чем в стандартной версии. |
|
06.02.2003, 00:39 | #2 |
Участник
|
Задай этот вопрос в Навижен, зачем они это сделали.
Я попросил, что бы это поле вообще удалили, потому что ШР у меня открылось ровно час, при этом листание тоже длилось час/страницу
__________________
|
|
07.02.2003, 12:21 | #3 |
Шаман форума
|
Re: Штатное расписание в Ax25SP4RU
Цитата:
Изначально опубликовано Andrew Besedin
Так вот, вся проблема в том, что для каждой активной записи этот метод вызывается ПЯТЬ РАЗ ПОДРЯД. В этом легко убедиться, запустив профайлер. Да и визуально поле прорисовывается 5 раз – и это при каждой активации. |
|
08.02.2003, 11:04 | #4 |
Участник
|
Штатное расписание в Ax25SP4RU
Цитата:
Изначально опубликовано komar
Это "специальные возможности", как в винде, для людей с замедленной реакцией, которые с одного раза не поймут.
__________________
|
|
08.02.2003, 21:43 | #5 |
Banned
|
Просто с грязью смешали...
Повесил на этот метод кэширование - полегчает. |
|
10.02.2003, 06:14 | #6 |
Участник
|
2 EVGL
Читаем в книжке Creating Forms\ Designing Forms статья Using Display and Edit Methods Tips A display method is called each time the form is re-drawn and consequently a display method should never hold calculations more complex and time consuming than what corresponds to one direct lookup in the database. A display (or an edit) method is not activated if it is on a hidden tab page Так что гораздо лучше сделать кнопульку "Занято" на форме шт.расп. и считать эти Join'ы на здоровье :-) А из Grid'а убрать...
__________________
С уважением, Андрей Беседин |
|
24.07.2003, 10:06 | #7 |
Участник
|
Цитата:
Изначально опубликовано EVGL
Так что гораздо лучше сделать кнопульку "Занято" на форме шт.расп. и считать эти Join'ы на здоровье :-) А из Grid'а убрать... В 3.0 кто-то добрый для подсчета занятых ставок повесил фуллскан по EmplTable. Почесали репу и для подсчета стали использовать только RPayHistory, where HRMStaffListId== Id той должности, по которой считаем количество. Для 1600 человек усе стало отрисовываться просто быстро. |
|
|
Похожие темы | ||||
Тема | Ответов | |||
Расчеты с персоналом: Структура, Штатное расписание | 6 | |||
Штатное расписание | 3 | |||
Штатное расписание. 2 одинаковых должности в одном подразделении. | 3 | |||
Штатное расписание | 13 |
|