|  15.02.2010, 13:00 | #1 | 
| Участник | Проблема с длительностью в действиях сервиса 
			
			Всем привет. Подскажите пожалуйста, можно ли решить такую проблему. В действиях сервиса существует длительность в минутах, создали кастомный атрибут длительность в часах crmForm.all.new_dlit.DataValue=crmForm.all.scheduleddurationminutes.DataValue/60; который вычисляется на onload и onsave. И все вроде бы работает.. Однако случается и так: например пользователь выбрал нужный сервис, в длительность подставилось значение по умолчанию для этого сервиса (например 1 час), затем пользователь изменил время (время начала, время окончания) и сохранил. и иногда значение длительности в минутах обновляется позже чем вычисляется значение в часах . При повторном открытии/сохранении записи отобразятся уже верные значения. Выискивать подобные записи довольно сложно.. а большинство отчетов использует значение длительности в часах. | 
|  | 
|  15.02.2010, 14:52 | #2 | 
| Moderator | 
			
			Во-первых вам следует правильно строить отчеты: используйте в нем поле scheduleddurationminutes и делите его на 60, когда будете выводить данные. Во-вторых не нужно хранить в базе лишнее поле: скоро заказчик может попросить выводить длительность в неделях или вообще иметь возможность самостоятельно задавать точность. 
				__________________ http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.   MS Certified Dirty Magic Professional | 
|  | |
| За это сообщение автора поблагодарили: Elka (1). | |
|  15.02.2010, 14:56 | #3 | 
| Участник | Цитата: 
		
			Сообщение от Артем Enot Грунин
			   Во-первых вам следует правильно строить отчеты: используйте в нем поле scheduleddurationminutes и делите его на 60, когда будете выводить данные. Во-вторых не нужно хранить в базе лишнее поле: скоро заказчик может попросить выводить длительность в неделях или вообще иметь возможность самостоятельно задавать точность. Хорошо, спасибо | 
|  | 
|  15.02.2010, 15:14 | #4 | 
| Moderator | 
			
			Но если уж нужно выводить такое поле для пользователя, то я бы использовал расчет по OnChange полей scheduledstart и scheduledend или самого scheduleddurationminutes. В этом случае изменения в расписании отобразятся до сохранения.
		 
				__________________ http://fixrm.wordpress.com, снятие/наведение порчи. Быстро, дорого, гарантия.   MS Certified Dirty Magic Professional | 
|  | 
|  15.02.2010, 15:53 | #5 | 
| Участник | Цитата: Такое поле хотелось видеть в представлениях.. как его вычислять, используя значение в минутах, если честно не представляю (и вообще возможно ли так делать).. На OnChange можно вешать?.. зачем этот раздел по умолчанию заблокирован? | 
|  |