|
Расчет суммы в строках табличной части | ☑ | ||
---|---|---|---|---|
0
Technolight
25.02.14
✎
13:04
|
Здравствуйте, нужен совет знающих.
конфигурация 10,3 управление торговлей. Дорабатываю документ "Реализации товаров и услуг" точнее скидки. В форме добавил новое поле "Сумма скидки" табличной части добавил колонку "%скидки" и "ручная скидка" где указывается процент и сумма скидки. в поле "сумма скидки" вводится общая скидка на документ, а колоки скидок заполняются автоматически пропорционально итоговой сумме на каждую позицию товара. Колонка "сумма" высчитывается по формуле кол-во*цена-ручная скидка, но почему то одна строчка не производит это вычисление. |
|||
1
Wobland
25.02.14
✎
13:06
|
ну делаа...
|
|||
2
shuhard
25.02.14
✎
13:06
|
(0) используй отладчик, Люк (с)
|
|||
3
Maxus43
25.02.14
✎
13:06
|
>>но почему то одна строчка не производит это вычисление
что-то не так, либо в коде, либо в данных в строке |
|||
4
Technolight
25.02.14
✎
13:12
|
Для каждого эл из Товары Цикл
Если эл.Скидка>0 Тогда Продолжить; КонецЕсли; ОбСумма = эл.Количество*Эл.Цена+обСумма; КОнецЦикла; обСуммаСкидки = ?(ВидСкидки =Перечисления.ТипСкидок.Процент, ОбСумма*СуммаСкидки/100,СуммаСкидки); Для каждого эл из Товары Цикл Если эл.Скидка>0 Тогда продолжить; КОнецЕсли; эл.РучнаяСкидка = обСуммаСкидки*эл.Цена*эл.Количество/ОбСумма; эл.прСкидки = эл.РучнаяСкидка*100/(эл.Цена*эл.Количество); Эл.Сумма = Эл.Количество*Эл.Цена-Эл.РучнаяСкидка; ТоварыЦенаПриИзменении(Элемент); КОнецЦикла; |
|||
5
Wobland
25.02.14
✎
13:12
|
(4) что дальше?
|
|||
6
Technolight
25.02.14
✎
13:17
|
Эл.Сумма = Эл.Количество*Эл.Цена-Эл.РучнаяСкидка;
проводит действие не совсеми строчками |
|||
7
Wobland
25.02.14
✎
13:18
|
(6) почему?
|
|||
8
Ненавижу 1С
гуру
25.02.14
✎
13:18
|
(0) что меашло использовать типовые механизмы УТ 10.3?
|
|||
9
Technolight
25.02.14
✎
13:19
|
Я вот и не знаю)
|
|||
10
Technolight
25.02.14
✎
13:20
|
а так, на ваш взгляд все правильно?
|
|||
11
Maxus43
25.02.14
✎
13:21
|
если не со всеми строчками - значит либо Продолжить срабатывает, либо... на какое событие ты повесил этот код?
|
|||
12
Wobland
25.02.14
✎
13:21
|
мне не нравится
|
|||
13
George Wheels
25.02.14
✎
13:25
|
ПриВыводеСтроки пробовал?
|
|||
14
Technolight
25.02.14
✎
13:29
|
в форму добавил поле ввода "сумма скидки" туда вводится сумма скидки на документ. код стоит на событии "СуммаСкидкиПриИзменении"
|
|||
15
Technolight
25.02.14
✎
13:40
|
Стандартные Скидки не совсем удобны для нас изза нашей системы выдачи скидок, округление большое
|
|||
16
Technolight
25.02.14
✎
13:41
|
И тд
|
|||
17
Maxus43
25.02.14
✎
13:50
|
(15) ну дак и считай по текущей строке, зачем пересчитывать всё, если изменяешь конкретную?
|
|||
18
Шапокляк
25.02.14
✎
13:52
|
(6) почему не со всеми строчками? Да потому что впереди есть вот такое Если эл.Скидка>0 Тогда продолжить;
|
|||
19
kosts
25.02.14
✎
14:00
|
Предположу, что вызов процедуры ТоварыЦенаПриИзменении(Элемент) не так работает как предположено...
|
|||
20
Technolight
25.02.14
✎
14:06
|
||||
21
Technolight
25.02.14
✎
14:07
|
Шапокляк, строчку уже убирал, все равно произходит тоже самое
|
|||
22
Technolight
25.02.14
✎
14:10
|
Kosts, эту процедуру я не трогал
|
|||
23
kosts
25.02.14
✎
14:11
|
(22) А зря
|
|||
24
hhhh
25.02.14
✎
14:11
|
(23) ну, тут копал?
Если эл.Скидка>0 Тогда продолжить; КОнецЕсли; |
|||
25
Шапокляк
25.02.14
✎
14:14
|
(22) Видать, ты стоишь на последней строке - погляди в отладчике, чему равен Элемент. Вот программа и пересчитывает сумму этой строки при проходе по циклу. Ну и при попадании на последнюю строку программа делает как заложено - Сумма=Цена*Количество. Попробуй вообще закомментировать строку ТоварыЦенаПриИзменении и увидишь что получится.
|
|||
26
13_Mult
25.02.14
✎
14:23
|
Я сначала подумал что этот сабж шутка! :-) ан нет.
|
|||
27
Technolight
25.02.14
✎
14:27
|
Согласен, что это так выглядит
|
|||
28
Technolight
25.02.14
✎
14:35
|
Действительно, закоментировал и все вроде заработало, спасибо товарищи!!!
|
|||
29
kosts
25.02.14
✎
14:41
|
(28) А теперь измени цену товара.
|
|||
30
Technolight
25.02.14
✎
14:48
|
При изменении цены сумма нарушается. перебить сумму скидки и нормально
|
|||
31
kosts
25.02.14
✎
14:49
|
(30) Супер.
|
|||
32
Шапокляк
25.02.14
✎
14:56
|
Триллер "Подземный ход на чердаке".
|
|||
33
Technolight
25.02.14
✎
15:30
|
Ну что поделаешь. Родной механизм ручной скидки пользователей не устроил. На Редактирование Цены и Кнопку "Изменить" с возможностью редактировать всю табличную часть нужно будет запретить. Как иначе? Может я и не пошел по самому правильному пути. Но все же поставленная цель с вашей помощью выполненна.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |