Скидка по контрагентам
Справочник.Контрагенты
новый реквезит «СкидкаПоКонтрагенту»
Тип – Строка Длина – 4
ФормаЭлемента – Новое поле ввода «Скидка»
Процедура ПриОткрытии()
Если НЕ РольДоступна("Просмотр")
Тогда ЭлементыФормы.Скидка.РедактированиеТекста = ТолькоПросмотр=Истина
КонецЕсли;
Документы.РеализацияТоваровУслуг
Новый реквизит «Скидка»
Тип – Строка Длина – 4
ТабличныеЧасти.Товары реквезит «СуммаСкидки»
Тип – Число Длина – 6 Точность - 2
ФормаДокумента – Новое поле ввода данные -«Скидка»
Процедура ПриОткрытии()
Скидка = Контрагент.СкидкаПоКонтрагенту;
Процедура ОбновлениеОтображения()
Скидка = Контрагент.СкидкаПоКонтрагенту;
Процедура КонтрагентПриИзменении(Элемент)
ЭлементыФормы.Товары.ТекущиеДанные.СуммаСкидки =(ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидк и/100)*Скидка;
Процедура ТоварыПриНачалеРедактирования(Элемент, НоваяСтрока)
ЭлементыФормы.Товары.ТекущиеДанные.СуммаСкидки =(ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидк и/100)*Скидка;
ЭлементыФормы.Товары.ТекущиеДанные.Сумма =(ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидк и-ЭлементыФормы.Товары.ТекущиеДанные.СуммаСкидки);
Процедура ТоварыПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
ЭлементыФормы.Товары.ТекущиеДанные.СуммаСкидки =(ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидк и/100)*Скидка;
ЭлементыФормы.Товары.ТекущиеДанные.Сумма =(ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидк и-ЭлементыФормы.Товары.ТекущиеДанные.СуммаСкидки);
Процедура ТоварыНоменклатураПриИзменении(Элемент)
ЭлементыФормы.Товары.ТекущаяСтрока.СуммаСкидки =(ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидк и/100)*Скидка;
ЭлементыФормы.Товары.ТекущиеДанные.Сумма =(ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидк и-ЭлементыФормы.Товары.ТекущиеДанные.СуммаСкидки);
Процедура ТоварыЦенаПриИзменении(Элемент)
Если ЭлементыФормы.Товары.ТекущиеДанные.Цена >=0
Тогда ЭлементыФормы.Товары.ТекущиеДанные.СуммаСкидки =(ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидк и/100)*Скидка;
КонецЕсли;
Если ЭлементыФормы.Товары.ТекущиеДанные.Цена >=0
Тогда ЭлементыФормы.Товары.ТекущиеДанные.СуммаБезСкидки= (ЭлементыФормы.Товары.ТекущиеДанные.Количество * ЭлементыФормы.Товары.ТекущиеДанные.Цена)
КонецЕсли;
Процедура ОбновлениеОтображения()
ОбновитьПодвал();
УБРАТЬ
Процедура ТоварыСкидкаПриИзменении(Элемент)
// Выполнить общие действия для всех документов при изменении Суммы.
ОбработкаТабличныхЧастей.ПриИзмененииСкидкиТабЧаст и(ЭлементыФормы.Товары.ТекущиеДанные, ЭтотОбъект);
// Рассчитать реквизиты табличной части.
ОбработкаТабличныхЧастей.РассчитатьСуммуНДСТабЧаст и(ЭлементыФормы.Товары.ТекущиеДанные, ЭтотОбъект);
КонецПроцедуры
Процедура ТоварыСуммаСкидкиНачалоВыбора(Элемент, СтандартнаяОбработка)
ЭлементыФормы.Товары.ТекущиеДанные.СуммаСкидки = (ЭлементыФормы.Товары.СуммаБезскидки/100)*Скидка
КонецПроцедуры