|
В какой процедуре устанавливать расчетное значение видимое в форме списка справочника | ☑ | ||
---|---|---|---|---|
0
skupidom
08.08.17
✎
11:53
|
Управление производственным предприятием, редакция 1.2 (1.2.26.1)
Есть новый справочник Проектные задачи.Справочник иерархический,иерархия элементов.У элементов родителей нужно рассчитывать их дату начала и окончания.Дата начала = мин.дата из всех подчиненных задач, дата окончания - макс из дат окончания. В какой процедуре формы списка справочника прописать алгоритм расчета по датам? |
|||
1
lodger
08.08.17
✎
11:55
|
(0) ПриЗаписи элементов справочника считать и записывать в родителя.
инфо-нагрузка на БД повысится на каплю. |
|||
2
lodger
08.08.17
✎
11:57
|
считать в динамике каждый раз, при каждом обновлении, для каждого клиента открывшего список - это лишнее бремя на несчастный список элементов. и место для появления багов и нестыковок, которые придется продумывать, приделывать Оповещения.
|
|||
3
mistеr
08.08.17
✎
12:00
|
(1) Появятся проблемы при записи не из формы.
|
|||
4
skupidom
08.08.17
✎
12:27
|
тогда какая все таки процедура для записи?
|
|||
5
Heckfy
08.08.17
✎
12:28
|
Запихнуть в РегистрСведений. ДинамическийСписок чуток подправить.
|
|||
6
lodger
08.08.17
✎
12:40
|
(3) а зачем в форме? делайте в модуле объекта.
|
|||
7
mistеr
08.08.17
✎
14:31
|
(6) Появятся проблемы с блокировками.
|
|||
8
lodger
08.08.17
✎
15:08
|
(7) ставить пересчет в фоновое задание. пускай пытается забокировать родителя и посчитать. повтор по неудаче. прекращение по успеху.
но это замороч. в реальной бд, когда в пределах одного родителя одновременно лазит большое число юзеров и одновременно решило записать - "вероятность резиста крайне мала!". |
|||
9
mistеr
08.08.17
✎
15:24
|
(8) Тогда жертвуем целостностью данных. Идея с динамическим расчетом уже не кажется такой плохой, не так ли? :)
А все из-за того, что в регистрах накопления можно хранить только сумму, а максимум или минимум нельзя. На самом деле есть еще решение — доступ к справочнику строго через API, в том числе на чтение. Можно будет даже поменять реализацию, если возникнут проблемы. |
|||
10
lodger
08.08.17
✎
17:01
|
(9) а в чем жертва? отказ записи родителя транслируем в отказ записи текущего объекта и пускай юзер ждет своей очереди записать с повторным пересчетом.
маленькое решение "большой" проблемы. |
|||
11
mistеr
08.08.17
✎
17:39
|
(10) Пардон, я "фоновое задание" прочитал как "регламентное".
А фоновое ведь тоже в отдельной транзакции будет. Так что жертвуем таки целостностью. |
|||
12
Heckfy
08.08.17
✎
17:45
|
Чем регистрСведений и срез последних не устраивает то.....
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |