Имя: Пароль:
   
1C
 
как избежать повторного пересчета акций?
0 lamme
 
naïve
25.09.21
08:39
ут11
заказ клиента

колонки - количество - цена - скидка - сумма ндс - всего
(тут все стандартно)

просят сделать такую вещь
кнопка - открываем. в ней список всех активных акций.
пользователь только выбирает флажком акцию или акции.
потом переносятся акции в документ.
пересчитывается сумма по определенным правилам (сумма скидки в рублях в зависимости от суммы документа).
---

тут вроде все просто.
---

затык вот какой.

продавец открыл список акций. вчера у него было выбрано 2 акции из 5. сегодня при открытии отобразился список 5 штук с выбранными 2 вчерашними.
на форме - 2 кнопки - Перенести в документ и Закрыть

продавец ничего не делает  , нового не добавляет - просто тупо жмет кнопку - перенести в документ.
и вот тут вот - по идее - документ еще раз пересчитатаеся , повторно.
потому что нажал на - перенести в документ.

или

продавец выбрал другой список акций.
опять таки, при закрытии формы выбора списка акций- документ УЖЕ был пересчитан вчера по списку вчерашних акций
а сеголдня он еще раз пересчитается по списку сегодняшних выбранных акций.


те загвоздка- как избежать повторный пересчет
1 lamme
 
naïve
25.09.21
08:40
список акций хранится в документе - отд табл часть
в ней есть - сама акция как ссылка на спровочник + сумма акции
2 pechkin
 
25.09.21
08:41
Нужна колнка цена без скидки
3 lamme
 
naïve
25.09.21
08:46
есть такая.
те изначальная цена.
4 pechkin
 
25.09.21
08:54
Тогда в чем проблема?
5 pechkin
 
25.09.21
08:54
Нажал ок - заново пересчитал
6 lamme
 
naïve
25.09.21
08:59
как избежать повторного пересчета?
7 lamme
 
naïve
25.09.21
08:59
ладно . закрыли вопрос
пока писал- мысль сформировалась
8 ДедМорроз
 
25.09.21
09:54
Если есть список акций,которые были,а потом выбрали новый список,то их можно сравнить,если ничего не поменялось,то пользователю вопрос - пересчитать или нет, а если поменялся,то пересчитывать.
9 lamme
 
naïve
25.09.21
10:52
нет
проще

находим разницу между суммой акции ДО и суммой акции после выбора.
Эту разницу - как >0, так и <0 - размазываем по правилам размазки документа - на все товары
10 pechkin
 
25.09.21
11:11
(9) это тоже самое что и заново пересчитать
11 Kigo_Kigo
 
25.09.21
11:28
У меня ПересчетСкидки() срабатывает всегда, что бы пользователь не делал
то есть скидываем в дефолт чек и заново считаем, просто попадали когда что то не срабатывало, а сама система скидок та еще, это и накопительные баллы, интеграция с другими системами скидок, и сберспасибо и подарочные карты и от суммы в чеке, короче много чего всего, по этому и пересчитываю каждый раз
12 SleepyHead
 
25.09.21
14:26
(9) Еще проще - фиксировать сам факт пересчета, булевский реквизит. Или хранить исходное состояние табличной части до всех пересчетов, а также табличную часть с пересчетами.
13 серый КТУЛХУ
 
25.09.21
17:39
(1): "список акций хранится в документе - отд табл часть // в ней есть - сама акция как ссылка на спровочник + сумма акции"
и в чем проблема?
каждый раз - полный пересчет исходя из начально подтягиваемых из справочников значений сумм - по списку акций.
Здесь можно обсудить любую тему при этом оставаясь на форуме для 1Сников, который нужен для работы. Ymryn