|  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 | |||
| Опции темы | Поиск в этой теме | 
| Опции просмотра | |
| 
 |