7.7 помогите со скидкой

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 7.7"", создана пользователем warayg, 5 фев 2012.

  1. TopicStarter Overlay
    warayg
    Offline

    warayg Опытный в 1С

    Регистрация:
    1 июл 2011
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    Здравствуйте, помогите разобраться со скидкой в расходной накладной. В табличной части документа есть два столбца с возможностью редактирования: 1-й "% скидки", 2-й "сумма скидки", при установке % скидки высчитывается сумма скидки, при редактировании суммы скидки меняется соответственно % скидки, Проблема в том, что при последующем изменении количества товара, к примеру с 2 на 1 шт, сумма скидки не меняется, и % скидки становится в два раза меньше (если был 10%, то стало 5%), помогите сделать так, чтоб при повторном редактировании количества, сумма скидки и % скидки пересчитывались, уже кучу вариантов перепробовал не получается, блин. Вот код расчета сумм и скидки

    Код:
    Процедура Выч_суммы()
    СуммаБезСкидки=Цена*Количество;
    Скидка = СуммаСкидки / СуммаБезСкидки * 100 ; // % скидки
    КоньрольЦен(Товар,(СуммаБезСкидки - СуммаСкидки)/Количество,Валюта1);
    Если Валюта1=Константа.БазоваяВалюта Тогда
    Сумма = СуммаБезСкидки - СуммаСкидки ;
    СуммаВал=0;
    иначе
    СуммаВал = СуммаБезСкидки - СуммаСкидки;
    Сумма=0;
    КонецЕсли;
    КонецПроцедуры
    
    Процедура ВычСкидки() //Поле сумма скидки
    СуммаСкидки = СуммаБезСкидки*Скидка/100 ;
    Выч_суммы();
    КонецПроцедуры
  2. Хряк
    Online

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    какая формула ещё выполняется при изменении количества
  3. TopicStarter Overlay
    warayg
    Offline

    warayg Опытный в 1С

    Регистрация:
    1 июл 2011
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    больше ничего не выполняется относительно количества.
  4. Хряк
    Online

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    хммм, кликни на колонке количество (в конфигуратре), там закладка формула, выложи сюда
  5. TopicStarter Overlay
    warayg
    Offline

    warayg Опытный в 1С

    Регистрация:
    1 июл 2011
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26

    Выч_суммы()
  6. Хряк
    Online

    Хряк Профессионал в 1С

    Регистрация:
    26 сен 2007
    Сообщения:
    1.447
    Симпатии:
    37
    Баллы:
    54
    замени на
    ВычСкидки()
  7. TopicStarter Overlay
    warayg
    Offline

    warayg Опытный в 1С

    Регистрация:
    1 июл 2011
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    тоже самое - изменяю количество товара, меняется % скидки и сумма скидки остается той же.
  8. TopicStarter Overlay
    warayg
    Offline

    warayg Опытный в 1С

    Регистрация:
    1 июл 2011
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    Товар____Количество___Цена___Сумма без скидки___% скидки___Сумма скидка___Сумма со скидкой​
    бутылка__2____________100____200_______________10________20_____________180​
    Меняю количество​
    бутылка__1____________100____100_______________20________20_____________80​
  9. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Включите логику. Вам достаточно изменить расчет скидки с суммы на цену и все будет ок.
  10. TopicStarter Overlay
    warayg
    Offline

    warayg Опытный в 1С

    Регистрация:
    1 июл 2011
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    большое спасибо, все работает как надо )), знал, что все просто, но чет про это не подумал.

    А можете еще подсказать, как через процедуру установить одну и туже скидку (вводится пользователем) на весь товар который есть в документе при его заполнении.
  11. Бухгалтерский угодник
    Offline

    Бухгалтерский угодник Администраторы Команда форума Администратор

    Регистрация:
    29 дек 2008
    Сообщения:
    21.520
    Симпатии:
    407
    Баллы:
    104
    Примерно так
    Код:
    ВыбратьСтроки();
    Пока ПолучитьСтроку()=1 Цикл
    //тут или расчитываем или вызываем процедуру расчета
    КонецЦикла;
  12. TopicStarter Overlay
    warayg
    Offline

    warayg Опытный в 1С

    Регистрация:
    1 июл 2011
    Сообщения:
    104
    Симпатии:
    0
    Баллы:
    26
    все получилось )), большое спасибо

Поделиться этой страницей