Имя: Пароль:
1C
1С v8
Ручная скидка для программно созданного документа
0 poludennykh
 
16.01.23
08:56
Добрый день! Пытаюсь для программно созданного документа Заказ применить ручную скидку, но никак не выходит, так как не могу понять как получить АдресВоВременномХранилище. Ругается на Форму документа при вызове ПараметрыСкидки.АдресВоВременномХранилище = СкидкиНаценкиЗаполнениеСервер.АдресДанныхДляРасчетаРучныхСкидокВоВременномХранилище(
ФормаДокумента, УникальныйИдентификатор, СтруктураПараметров);.

Подскажите кто знает как программно оформить применение ручной скидки для заказа клиента

Фрагмент кода, которым пытаюсь применить скидку:

СуммаСкидкиНаценки=СуммаРучнойСкидки;

ПараметрыСкидки = СкидкиНаценкиЗаполнениеСервер.НовыйПараметрыНазначитьРучнуюСкидку();
ПараметрыСкидки.ИспользуютсяАвтоматическиеСкидки = Ложь;
ПараметрыСкидки.ТолькоДляАктивныхСтрок             = Ложь;
ПараметрыСкидки.РассчитыватьСуммуСНДС             = Истина;
ПараметрыСкидки.ВыделенныеСтроки             = Ложь;
                    
СтруктураПараметров = СкидкиНаценкиЗаполнениеСервер.НовыйПараметрыАдресДанныхДляРасчетаРучныхСкидок();
СтруктураПараметров.ТолькоДляВыделенныхСтрок = Ложь;
СтруктураПараметров.ИмяТаблицы = "Товары";
                    
                    
ПараметрыФормы = Новый Структура("Ключ", ЗаказОбъект.Ссылка);
ФормаДокумента = ПолучитьФорму("Документ.ЗаказКлиента.Форма.ФормаДокумента",ПараметрыФормы);
    
ПараметрыСкидки.АдресВоВременномХранилище = СкидкиНаценкиЗаполнениеСервер.АдресДанныхДляРасчетаРучныхСкидокВоВременномХранилище(
ФормаДокумента, УникальныйИдентификатор, СтруктураПараметров);  
                    
СкидкиНаценкиЗаполнениеСервер.НазначитьРучнуюСкидку(ЗаказОбъект, "Товары", СуммаСкидкиНаценки, ПараметрыСкидки);
1 Бизон
 
16.01.23
09:25
Зачем тебе тут хранилище???
2 poludennykh
 
16.01.23
09:26
пытался реализовать как в типовой, но что то не получается. возможно есть другой вариант реализации, но я его не нашел
3 Бизон
 
16.01.23
09:28
В табличную часть товары запихнул процент и рассчитал скидки
4 poludennykh
 
16.01.23
09:34
мне нужно определенную сумму раскидать по всем позициям заказа. я могу и сам это рассчитать, но думал, что есть есть вариант использования стандартных процедур конфигурации
5 poludennykh
 
16.01.23
09:42
как я понял, в типовых конфигурациях в хранилище помещается табличная часть заказ и затем используется в расчете. но проблема в том, что она берется из формы документа (на клиенте), а я создаю заказ программно и у меня нет формы из которой я бы взял данные для хранилища
6 poludennykh
 
16.01.23
11:48
сам решил