Имя: Пароль:
1C
1C 7.7
v7: Скидка
0 NemeL
 
05.09.11
10:04
Добрый день, помогите решить проблему со скидкой, бьюсь уже 2 дня ничего не могу придумать. 1с Предприятие.Платежные документы. Документ-Счет выбираю товар из справочника,у каждого товара может быть скидка разная т,е у первого -10%, у второго - 5%, у третьего-20% и тд. Если скидка нужна на товар, то ставлю галку на флажок, ввожу % скидки и все считается. Проблема в слудующем после того как скидка была принята, закрываю документ, открываю его еще раз и скидка опять вычитается.
[CODE]
Процедура ПриУстановкеСкидки()        
      ВыбратьСтроки();    
      Пока ПолучитьСтроку()=1 Цикл        
                      Если Скидка = 0 Тогда            
                              Сумма=Цена*Количество;            
                              НДС=Цена*0.18;                
                              ЦенаБезНДС=Цена/1.18;        
                      Иначе            
                              СуммаСкидки = Цена*ПроцСкид/100;              
                              Цена=Цена - СуммаСкидки;                              
                              Сумма=Цена*Количество;                
                              НДС=Цена*0.18;            
                              ЦенаБезНДС=Цена/1.18;            
                              Дополнения=Итог("СуммаСкидки");        
                     КонецЕсли;      
              КонецЦикла;    
Форма.Скидк.Видимость(Скидка);      
Форма.ПроцСкид.Видимость(Скидка);    
КонецПроцедуры
[/CODE]
1 lamme
 
05.09.11
10:05
смотри процедуру ПриОткрытии()
и есть ли там ссылка на функцию по рассчету скидки.
2 Wobland
 
05.09.11
10:06
>открываю его еще раз
по-моему очевидно
3 NemeL
 
05.09.11
10:07
(1)Да там есть ссылка на процедуру
[CODE]
Процедура ПриОткрытии()  
ПриУстановкеСкидки();
КонецПроцедуры
[/CODE]
4 Нуф-Нуф
 
05.09.11
10:07
нужно сделать колонку скидка, при выборе товара заполнять и при пересчете цены/суммы ипользовать.

и не использовать то уг которые в сабже
5 Нуф-Нуф
 
05.09.11
10:08
(3) каждый раз как открываешь документ, процедура выполняется, что не так то?
6 lamme
 
05.09.11
10:09
(3)
ну вот.
теперь сосбвтенно задайся вопросом - а зачем в процедуре ПриОткрытии() необходимо расссчитывать еще раз скидку ?
7 NemeL
 
05.09.11
10:10
(5)я завожу новый документ, делаю его со скидкой, закрываю, потом открываю его опять и скидка еще раз вычитается из суммы, короче если много раз открыть - закрыть документ то Сумма становится равна 0
8 lamme
 
05.09.11
10:11
(7)
деалешь его со скидкой - с поомщтю какой-то кнопки или галочки?
если да - то на эту кнопку или галочку и стоит повесить ПриУстановкеСкидки()
9 lamme
 
05.09.11
10:11
и убрать из ПриОткрытии()
10 Гефест
 
05.09.11
10:11
(7) Ну так сам же написал, при каждом открытии документа вычитать скидку. Вот он и вычитает
11 NemeL
 
05.09.11
10:12
(8) с помощью флажка
12 lamme
 
05.09.11
10:13
(11)
имхо - тебе уже все рассказали.
13 Нуф-Нуф
 
05.09.11
10:14
а через год он уже будет внедрять упп...