Имя: Пароль:
1C
1С v8
Расчет суммы при выводе строке или отдельный реквизит?
0 K1RSAN
 
14.07.21
08:11
В общем, досталась мне "в наследство" доработанная база 8.2, перевожу её на 8.3
Там есть доработанный документ, в ТЧ используется несколько независимых полей типа Число. В конце есть поле, которое показывает итог по этим полям.
В 8.2 базе использовалось просто поле ТЧ формы, которое рассчитывается в процедуре "при выводе строки", а потом при изменении этих полей. То есть в документе в ТЧ итоговая сумма по строке НЕ хранится.
Как по методике в 8.3 правильнее - так же оставить просто поле (в данном случае наверное реквизит формы), который динамически рассчитывается при открытии формы, или сделать отдельный реквизит, который хранит в себе значение итога по строке и просто обновляется при изменении?
Понимаю, что вопрос простой, просто не хочу тащить за собой "неправильный" способ. Если в 8.2 как бы не моя доработка была и я ответственности не нёс, то при переходе на 8.3 - уже моя совесть и ответственность за то, правильно ли "адаптировал" доработку.
1 dubolom
 
14.07.21
08:15
(0) Если база на поддержке, то расчётная колонка.
Если нет, то реквизит.
2 K1RSAN
 
14.07.21
08:16
(1) База на поддержке, документ новый
3 Guk
 
14.07.21
08:17
(2) в данном случае правильно так, как работает правильно. пользователю великое войско (в смысле нас рать) как оно у тебя там внутри сделано...
4 dubolom
 
14.07.21
08:17
(2) Тогда реквизит.
Значимые колонки лучше хранить отдельными реквизитами, если это не мешает поддержке.
5 K1RSAN
 
14.07.21
08:18
(3) Пользователю так и есть. А просто вот если бы вам досталась такая конфигурация, в каком случае вы бы не подумали "что за криворукий дебил делал эту доработку"?)
6 Guk
 
14.07.21
08:21
(5) подумал бы конечно. но это не зависело бы от того, как будет реализовано (0) ;)...
7 CHerypga
 
14.07.21
08:22
(5) в обоих
Если это всего в накладной, т.е сумма + ?(сумма включает ндс, 0, сумма ндс), то не хранить
Если это сумма в накладной, т.е количество * цена, тогда хранить
8 K1RSAN
 
14.07.21
08:24
Спасибо всем)