Имя: Пароль:
1C
 
Нужно подсчитать сумму и ставку НДС
0 eric
 
02.08.16
09:04
Помогите разобраться в чём ошибка?


Процедура ТоварыСтавкаНДСПриИзменении(Элемент)
    
ТекущиеДанные = Элементы.Товар.ТекущиеДанные;

Если ТекущиеДанные.СтавкиНДС = ПредопределенноеЗначение("Перечисления.СтавкиНДС.НДС20") тогда
     ТекущиеДанные.СуммаНДС = ТекущиеДанные.Количество * ТекущиеДанные.Цена/100 * 20
    

      
ИначеЕсли ТекущиеДанные.СтавкиНДС = ПредопределенноеЗначение("Перечисления.СтавкиНДС.НДС") тогда
     ТекущиеДанные.СуммаНДС = ТекущиеДанные.Количество * ТекущиеДанные.Цена/100 * 6

      
     ИначеЕсли  ТекущиеДанные.СтавкиНДС = ПредопределенноеЗначение("Перечисления.СтавкиНДС.БезНДС") тогда
     ТекущиеДанные.СуммаНДС = ТекущиеДанные.Количество * ТекущиеДанные.Цена

   КонецЕсли;  
КонецПроцедуры
1 eric
 
02.08.16
09:34
Кто нибудь помогите разобраться
2 Остап Сулейманович
 
02.08.16
09:39
Не понял суть расчета вообще.

1.
Если  ТекущиеДанные.СтавкиНДС = ПредопределенноеЗначение("Перечисления.СтавкиНДС.БезНДС") тогда
     ТекущиеДанные.СуммаНДС = ТекущиеДанные.Количество * ТекущиеДанные.Цена

Я всегда считал, что если без НДС - то СуммаНДС = 0.

И эттта... В чем не разобрался? Чем помочь? Разделители операторов проставить?
3 live in sky dreams
 
02.08.16
09:41
"ТекущиеДанные.СуммаНДС" не должно быть "ТекущиеДанные.СуммаСНДС"??
4 live in sky dreams
 
02.08.16
09:42
А, не... не воткнулся сразу.
Да, в 2 правы
5 eric
 
02.08.16
09:43
Процндура не высчитывает ничего
6 Остап Сулейманович
 
02.08.16
09:44
+ (2) И еще. Вот это вот "ТекущиеДанные.Цена" уже включает НДС или нет?
7 eric
 
02.08.16
09:45
Нет не вклучает НДС
8 Остап Сулейманович
 
02.08.16
09:47
(5) В отладчике стань вот сюда :
ТекущиеДанные = Элементы.Товар.ТекущиеДанные;
и посмотри что в ТекущиеДанные.
Видимо нужно пользовать ТекущаяСтрока. Ну это если тип у Элементы.Товар - Табличное поле.
9 hhhh
 
02.08.16
09:49
(8) не, нормально работает с ТекущиеДанные. Тут вопрос глубже.
10 hhhh
 
02.08.16
09:50
(5) процедура эта точно привязана к событиям формы?
11 eric
 
02.08.16
09:52
да привязана
12 Остап Сулейманович
 
02.08.16
09:55
(10) Та да.
Кроме прочего (вангую : кто-то изменил имя процедуры, не изменив имя обработчика). Откуда вывод? Отсюда :
Процедура Товар/Ы/ставкаНДСПриИзменении()
а обращение к данным уже Элементы.Товар (без всяких Ы) так что ручками к именам обработчиков таки лазили.
13 hhhh
 
02.08.16
09:56
(12) да, и должно быть

ТоварыСтавкиНДСПриИзменении

ТекущиеДанные.СтавкиНДС
14 hhhh
 
02.08.16
09:58
ТоварСтавкиНДСПриИзменении
15 Mauser
 
02.08.16
10:00
ПредопределенноеЗначение("Перечисление
16 Mauser
 
02.08.16
10:01
Код с форумов он копирует, ага...
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан