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 можно вешать?.. зачем этот раздел по умолчанию заблокирован? |
|