Страница 1 из 1

Сумма по колонке после подсчета в EIP строки

Добавлено: 18 Июнь 2017, 18:32
gopstop2007
При изменении количества в Edit in place пересчитывает строку и соответственно в сумму по всей колонке (столбцу)
Считал(ю) так, в изменяемом поле (BRW1.Q.Amount) после PARENT Call, пишу

Код: Выделить всё

UPDATE(SELF.Feq)
BRW1.Q.Sum = BRW1.Q.Price * BRW1.Q.Amount 
Да считает, но появилась жалоба, что не посчитало. Вопрос как вы ЭТО считаете? :)

Сумма по колонке после подсчета в EIP строки

Добавлено: 18 Июнь 2017, 19:38
Yufil
А Put(Brw1.Q) апосля присвоения не надо?

Сумма по колонке после подсчета в EIP строки

Добавлено: 18 Июнь 2017, 21:06
kreator
Yufil писал(а): 18 Июнь 2017, 19:38 А Put(Brw1.Q) апосля присвоения не надо?
Не надо. Если расчёт суммы происходит в методе SetQueueRecord, то после окончании редактирования текущей записи всё должно быть хорошо, потому что после редактирования EIP вызывается SetQueueRecord. Если хочется видеть сумму при неоконченном редактировании, то так:

Код: Выделить всё

UPDATE(SELF.Feq)
if SELF:UseVar
  EditInPlace::CONP:Price.UseVar = SELF:UseVar / EditInPlace::CONP:Quantity.UseVar
end
В Вашем случае типа такого:

Код: Выделить всё

UPDATE(SELF.Feq)
EditInPlace::Sum = EditInPlace::Price * SELF:UseVar 

Сумма по колонке после подсчета в EIP строки

Добавлено: 18 Июнь 2017, 21:49
gopstop2007
Спасибо kreator,
kreator писал(а): 18 Июнь 2017, 21:06 видеть сумму при неоконченном редактировании
а про это не знал, пригодится :)
Может я недостаточно ясно выразился, но мне надо, чтобы две суммы изменились.
При изменении строки 2 изменилась строка 4.

1. A_Price * A_Amount = A_Sum
2. B_Price * B_Amount = B_Sum
3. C_Price * C_Amount = C_Sum
----------------------------------
4. Всего: ABC_Sum

Сумма 4. кстати считается обычным browse Total

Сумма по колонке после подсчета в EIP строки

Добавлено: 19 Июнь 2017, 6:56
Игорь Столяров
Можно сделать немного по другому, но придется работать напрямую с очередью списка.

Код: Выделить всё

BRW5::EIPManager.TakeCompleted PROCEDURE(BYTE Force)
  CODE
  
  ! Start of "Browse EIP Manager Method Executable Code Section"
  ! [Priority 2500]
  Queue:Browse.MCO:Summa  = Round(Queue:Browse.MCO:Kolvo * Queue:Browse.MCO:Price, 0.01)  
  
  PARENT.TakeCompleted(Force)
Содержание списка и итоги сумм TOTAL должны обновляться после завершения ввода EIP ...
Ну как-то так, работает на выписке товаров уже лет 10 ... :)

Сумма по колонке после подсчета в EIP строки

Добавлено: 19 Июнь 2017, 11:01
gopstop2007
kreator писал(а): 18 Июнь 2017, 21:06 EditInPlace::Sum = EditInPlace::Price * SELF:UseVar
Спасибо, моя ошибка, нужно было в редактируемом поле указывать SELF:UseVar
Игорь Столяров писал(а): 19 Июнь 2017, 6:56 Содержание списка и итоги сумм TOTAL должны обновляться после завершения ввода EIP ...
Ну как-то так, работает на выписке товаров уже лет 10 ... :)
Это я подстраховался :)

Сумма по колонке после подсчета в EIP строки

Добавлено: 19 Июнь 2017, 11:30
kreator
gopstop2007 писал(а): 18 Июнь 2017, 21:49 Может я недостаточно ясно выразился, но мне надо, чтобы две суммы изменились.
При изменении строки 2 изменилась строка 4.

1. A_Price * A_Amount = A_Sum
2. B_Price * B_Amount = B_Sum
3. C_Price * C_Amount = C_Sum
----------------------------------
4. Всего: ABC_Sum

Сумма 4. кстати считается обычным browse Total
Я так понял, решил проблему?

Сумма по колонке после подсчета в EIP строки

Добавлено: 19 Июнь 2017, 12:01
gopstop2007
Надеюсь, что да, если не будет жалоб от клиентов :)