Программное изменение скидки в документе реализации

Декоративное изображение

Для получения доступа к форуму необходимо авторизоваться
или зарегистрироваться на сайте.

Пользователь ПП
RSS
Здравствуйте. Подскажите, пожалуйста. Мне необходимо программно изменить скидку в документе.
Я реализую систему бонусов по дисконтным картам. Списывается бонусов больше, чем накапливается(вот такая вот система). При проведении реализации мне нужно проверить, хватает ли бонусов на скидку. По умолчанию можно бонусами закрыть 20 процентов реализации. Я сделал абсолютную скидку "20%" и сделал на нее "Назначение общих скидок" для конкретной карты. По умолчанию ставлю эту карту и скидку в реализацию. Представим, что бонусов накопленных не хватает на все двадцать процентов. Мне надо как-то изменить скидку на количество накопленных бонусов. Как это лучше сделать и в каком событии. Сейчас пытаюсь менять поля ТЧ "Товары" документа "Реализация товаров", так не получается.

        Если НакопленоБонусов < СуммаСкидкиНаценки тогда
СкидкаНаценка = Справочники.ТипыСкидок.ПустаяСсылка();
ЗначениеСкидкиНаценки = 0;
ДанныеСтроки.ПроцентСкидки = 0;
ДанныеСтроки.ПроцентСкидкиСтроки = 0;
ДанныеСтроки.СуммаСкидки = НакопленоБонусов;
ДанныеСтроки.СуммаСкидкиСтроки = НакопленоБонусов;
ДанныеСтроки.СуммаВсего = ДанныеСтроки.Сумма - НакопленоБонусов;
конецЕсли;
Декоративное изображение 124
Сотрудник 1С-Рарус
Добрый день.
Весь механизм расчет скидок осуществляется в обработке РасчетСкидок. В частности в функциях ПодобратьСкидку и ПрименитьСкидку. Вот в них и надо дописывать математику, расширяющую возможности скидок. Т.е. дописываем дополнительные условия проверок на количество бонусов и рассчитываем % скидки в зависимости от данных условий.
Пользователь ПП
Спасибо, получилось.
Читают тему
Поддержка отраслевых решений «1С-Рарус»
Услуги 1С