Программно заполнить валюту в документе реализация.УТ 11.4
Найденные решения
(43) "НовыйДокумент.НалогообложениеНДС = Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;" - сами же ставите, что документ без ндс, значит надо ставку заполнять ручками, например "БезНДС"
что за Оплата имеется в виду?
если график оплаты, то выше давал пример заполнения по соглашению и без
что за Оплата имеется в виду?
если график оплаты, то выше давал пример заполнения по соглашению и без
Остальные ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(2)
Смог проставить валю.ту,но теперь проблема, цена не проставляется по виду цены...
&НаСервере
Процедура СоздатьДокументНаСервере()
Попытка
НовыйДокумент = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
НовыйДокумент.Дата = ТекущаяДата();
НовыйДокумент.Контрагент = Контрагент;
НовыйДокумент.Партнер = Клиент;
НовыйДокумент.Соглашение = Соглашение;
НовыйДокумент.Склад = Склад;
НовыйДокумент.Организация = Организация;
НовыйДокумент.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.РеализацияКлиенту;
НовыйДокумент.Валюта = Справочники.Валюты.НайтиПоНаименованию("руб_");
//НовыйДокумент.СуммаДокумента = Справочники.Валюты.НайтиПоНаименованию("руб_");
НовыйДокумент.ВалютаВзаиморасчетов = Справочники.Валюты.НайтиПоНаименованию("руб_");
НовыйДокумент.ЦенаВключаетНДС = Истина;
НовыйДокумент.НалогообложениеНДС = Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;
Для Каждого Строка Из Таблица Цикл
НоваяСтрока = НовыйДокумент.Товары.Добавить();
НоваяСтрока.Номенклатура = НайтиНоменклатуру(Строка.Номенклатура);
НоваяСтрока.КоличествоУпаковок = Строка.Количество;
НоваяСтрока.Количество = Строка.Количество;
НоваяСтрока.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Крафт");
КонецЦикла;
НовыйДокумент.Записать(РежимЗаписиДокумента.Проведение);
Сообщить("Документ по контрагенту "+Контрагент+" успешно создан");
Исключение
НовыйДокумент.Записать();
Сообщить("НЕ УДАЛОСЬ создать документ по контрагенту "+Контрагент);
КонецПопытки;
КонецПроцедуры
ПоказатьСмог проставить валю.ту,но теперь проблема, цена не проставляется по виду цены...
(3) просто указав вид цены не работает
надо вызывать расчет цен по соглашению или по виду цен
типа такого, в цикле заполнения товаров
и в конце, перед записью документа еще вызывать расчет сумм и налогов, примерно так
а еще надо заполнить график этапов оплаты (если требуется по вашему процессу, но обычно требуется), примерно так
надо вызывать расчет цен по соглашению или по виду цен
типа такого, в цикле заполнения товаров
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьЦенуПродажи", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруЗаполненияЦеныВСтрокеТЧ(лДокумент));
лКэшированныеЗначения = Неопределено;
ОбработкаТабличнойЧастиСервер.ОбработатьСтрокуТЧ(лНоваяСтрока, СтруктураДействий, лКэшированныеЗначения);
и в конце, перед записью документа еще вызывать расчет сумм и налогов, примерно так
лДокумент.СкидкиРассчитаны = истина;
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", лДокумент.НалогообложениеНДС);
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруПересчетаСуммыНДСВТЧ(лДокумент));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
Показатьа еще надо заполнить график этапов оплаты (если требуется по вашему процессу, но обычно требуется), примерно так
// заполним этапы графика оплаты
СуммаЗаказано = лДокумент.Товары.Итог("Сумма")+ лДокумент.Товары.Итог("СуммаНДС");
лДокумент.СуммаДокумента = СуммаЗаказано;
лДокумент.ГрафикОплаты = лДокумент.Соглашение.ГрафикОплаты;
лДокумент.ФормаОплаты = лДокумент.ГрафикОплаты.ФормаОплаты;
ГрафикСоглашенияЗаполнен = ПродажиВызовСервера.ГрафикСоглашенияЗаполнен(лДокумент.Соглашение);
ГрафикЗаполнен = ЗначениеЗаполнено(лДокумент.ГрафикОплаты);
Если ГрафикЗаполнен Тогда
ЭтапыОплатыСервер.ЗаполнитьЭтапыОплатыДокументаПродажи(лДокумент,
ГрафикСоглашенияЗаполнен,
ГрафикЗаполнен,
СуммаЗаказано,
0);
Иначе
// дописываем вариант графика оплаты по соглашению
Для каждого СтрокаЭтапа из лДокумент.Соглашение.ЭтапыГрафикаОплаты цикл
лГрафик = лДокумент.ЭтапыГрафикаОплаты.Добавить();
лГрафик.ВариантОплаты = СтрокаЭтапа.ВариантОплаты;
лГрафик.ДатаПлатежа = лДокумент.ЖелаемаяДатаОтгрузки + 3600*24*СтрокаЭтапа.Сдвиг;
лГрафик.ПроцентПлатежа = СтрокаЭтапа.ПроцентПлатежа;
лГрафик.СуммаПлатежа = СуммаЗаказано;
КонецЦикла;
КонецЕсли;
Если лДокумент.ЭтапыГрафикаОплаты.Количество()=0 Тогда
// дописываем вариант графика оплаты по умолчанию
лГрафик = лДокумент.ЭтапыГрафикаОплаты.Добавить();
лГрафик.ВариантОплаты = Перечисления.ВариантыОплатыКлиентом.КредитПослеОтгрузки;
лГрафик.ДатаПлатежа = лДокумент.ЖелаемаяДатаОтгрузки;
лГрафик.ПроцентПлатежа = 100;
лГрафик.СуммаПлатежа = СуммаЗаказано;
КонецЕсли;
Показать
(7)
Теперь цены заполнются,но сумма все так же пустая
лДокумент.СкидкиРассчитаны = истина;
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", лДокумент.НалогообложениеНДС);
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруПересчетаСуммыНДСВТЧ(лДокумент));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", лДокумент.НалогообложениеНДС);
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруПересчетаСуммыНДСВТЧ(лДокумент));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
Теперь цены заполнются,но сумма все так же пустая
(7)
лДокумент.СкидкиРассчитаны = истина;
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", лДокумент.НалогообложениеНДС);
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруПересчетаСуммыНДСВТЧ(лДокумент));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", лДокумент.НалогообложениеНДС);
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруПересчетаСуммыНДСВТЧ(лДокумент));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
(11) смотрите на вызовы
ищите их в коде конфигурации и смотрите на структуру передаваемых параметров
в разных релизах УТ 11 они разные, я же дал пример, а не готовое решение
а вызовы всех этих пересчетов можно найти прямо в самом документе, например, перейдя по событию ПриИзмении для Номенклатуры в ТЧ
там и найдете все, как нужно выполнить для вашего релиза
ищите их в коде конфигурации и смотрите на структуру передаваемых параметров
в разных релизах УТ 11 они разные, я же дал пример, а не готовое решение
а вызовы всех этих пересчетов можно найти прямо в самом документе, например, перейдя по событию ПриИзмении для Номенклатуры в ТЧ
там и найдете все, как нужно выполнить для вашего релиза
(12)Да,но у меня создание документа происходит на сервере.А там функции клиентские
&НаКлиенте
Процедура ТоварыЦенаПриИзменении(Элемент)
ТекущаяСтрока = Элементы.Товары.ТекущиеДанные;
СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(Объект);
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСумму");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
СтруктураДействий.Вставить("ЗаполнитьДубликатыЗависимыхРеквизитов", ЗависимыеРеквизиты());
СтруктураДействий.Вставить("ОчиститьСуммуВзаиморасчетов");
СтруктураДействий.Вставить("ПересчитатьСуммуСверхЗаказа", Новый Структура("РеализацияПоступлениеПоЗаказу, ТребуетсяЗалогЗаТару",
Объект.РеализацияПоЗаказам, Объект.ТребуетсяЗалогЗаТару));
ОбработкаТабличнойЧастиКлиент.ОбработатьСтрокуТЧ(ТекущаяСтрока, СтруктураДействий, КэшированныеЗначения);
ПродажиКлиентСервер.РассчитатьИтоговыеПоказателиРеализации(ЭтаФорма);
СкидкиНаценкиКлиент.СброситьФлагСкидкиРассчитаны(ЭтаФорма);
КонецПроцедуры
Показать
(13)
если пройти дальше, то окажется что вызывается ОбработкаТабличнойЧастиКлиентСервер - а это уже на сервере
т.ч. нужно всего лишь исключить клиентскую часть, перенеся заполнение структуры действия в вашу обработку и вызвав ОбработкаТабличнойЧастиКлиент.Что-то там что вызывает ОбработатьСтрокуТЧ на сервере
ОбработкаТабличнойЧастиКлиент.ОбработатьСтрокуТЧ
если пройти дальше, то окажется что вызывается ОбработкаТабличнойЧастиКлиентСервер - а это уже на сервере
т.ч. нужно всего лишь исключить клиентскую часть, перенеся заполнение структуры действия в вашу обработку и вызвав ОбработкаТабличнойЧастиКлиент.Что-то там что вызывает ОбработатьСтрокуТЧ на сервере
(13) вот как у меня для УТ 11.4
точнее вызовы нужно смотреть в конкретный релиз, что у вас
// выполним пересчет сумм документа
СтруктураДействий = Новый Структура;
СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(лДокумент);
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Новый Структура("НалогообложениеНДС, Дата, ПоДатеОтгрузки", лДокумент.НалогообложениеНДС, лДокумент.Дата, Истина));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСумму");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
Показатьточнее вызовы нужно смотреть в конкретный релиз, что у вас
(15)
// выполним пересчет сумм документа
СтруктураДействий = Новый Структура;
СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(лДокумент);
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Новый Структура("НалогообложениеНДС, Дата, ПоДатеОтгрузки", лДокумент.НалогообложениеНДС, лДокумент.Дата, Истина));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСумму");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
У меня тогда заполняется только одна строка)
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
ПоказатьСтруктураДействий = Новый Структура;
СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(лДокумент);
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Новый Структура("НалогообложениеНДС, Дата, ПоДатеОтгрузки", лДокумент.НалогообложениеНДС, лДокумент.Дата, Истина));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСумму");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
У меня тогда заполняется только одна строка)
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
(15)
Управление торговлей, редакция 11 (11.4.13.282) (http://v8.1c.ru/trade/)
Copyright © ООО "1С-Софт", 2003-2018. Все права защищены
(http://www.1c.ru)
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(лДокумент.Товары, СтруктураДействий, Неопределено);
Управление торговлей, редакция 11 (11.4.13.282) (
Copyright © ООО "1С-Софт", 2003-2018. Все права защищены
(
(18)
В цикле заполнения
У меня заполняется только одна строка,если вставлять функцию
Попытка
НовыйДокумент = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
НовыйДокумент.Дата = ТекущаяДата();
НовыйДокумент.Контрагент = Контрагент;
НовыйДокумент.Партнер = Клиент;
НовыйДокумент.Соглашение = Соглашение;
НовыйДокумент.Склад = Склад;
НовыйДокумент.Организация = Организация;
НовыйДокумент.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.РеализацияКлиенту;
НовыйДокумент.Валюта = Справочники.Валюты.НайтиПоНаименованию("руб_");
//НовыйДокумент.СуммаДокумента = Справочники.Валюты.НайтиПоНаименованию("руб_");
НовыйДокумент.ВалютаВзаиморасчетов = Справочники.Валюты.НайтиПоНаименованию("руб_");
НовыйДокумент.ЦенаВключаетНДС = Истина;
НовыйДокумент.НалогообложениеНДС = Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьЦенуПродажи", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруЗаполненияЦеныВСтрокеТЧ(НовыйДокумент));
лКэшированныеЗначения = Неопределено;
Для Каждого Строка Из Таблица Цикл
НоваяСтрока = НовыйДокумент.Товары.Добавить();
НоваяСтрока.Номенклатура = НайтиНоменклатуру(Строка.Номенклатура);
НоваяСтрока.КоличествоУпаковок = Строка.Количество;
НоваяСтрока.Количество = Строка.Количество;
НоваяСтрока.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Крафт");
ОбработкаТабличнойЧастиСервер.ОбработатьСтрокуТЧ(НоваяСтрока, СтруктураДействий, лКэшированныеЗначения);
//НоваяСтрока.Сумма = НоваяСтрока.Цена*НоваяСтрока.Количество;
//НоваяСтрока.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
// выполним пересчет сумм документа
//СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(НовыйДокумент);
//СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Новый Структура("НалогообложениеНДС, Дата, ПоДатеОтгрузки", НовыйДокумент.НалогообложениеНДС, НовыйДокумент.Дата, Истина));
//СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
//СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
//СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
//СтруктураДействий.Вставить("ПересчитатьСумму");
//СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
//СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
//
//ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(НовыйДокумент.Товары, СтруктураДействий, Неопределено);
КонецЦикла;
НовыйДокумент.Записать(РежимЗаписиДокумента.Проведение);
Сообщить("Документ по контрагенту "+Контрагент+" успешно создан");
Исключение
НовыйДокумент.Записать();
Сообщить("НЕ УДАЛОСЬ создать документ по контрагенту "+Контрагент);
КонецПопытки;
ПоказатьВ цикле заполнения
У меня заполняется только одна строка,если вставлять функцию
(20)
Не считает(
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьЦенуПродажи", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруЗаполненияЦеныВСтрокеТЧ(НовыйДокумент));
лКэшированныеЗначения = Неопределено;
Для Каждого Строка Из Таблица Цикл
НоваяСтрока = НовыйДокумент.Товары.Добавить();
НоваяСтрока.Номенклатура = НайтиНоменклатуру(Строка.Номенклатура);
НоваяСтрока.КоличествоУпаковок = Строка.Количество;
НоваяСтрока.Количество = Строка.Количество;
НоваяСтрока.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Крафт");
ОбработкаТабличнойЧастиСервер.ОбработатьСтрокуТЧ(НоваяСтрока, СтруктураДействий, лКэшированныеЗначения);
//НоваяСтрока.Сумма = НоваяСтрока.Цена*НоваяСтрока.Количество;
//НоваяСтрока.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
// выполним пересчет сумм документа
//СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(НовыйДокумент);
//СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Новый Структура("НалогообложениеНДС, Дата, ПоДатеОтгрузки", НовыйДокумент.НалогообложениеНДС, НовыйДокумент.Дата, Истина));
//СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
//СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
//СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
//СтруктураДействий.Вставить("ПересчитатьСумму");
//СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
//СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
//
//ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(НовыйДокумент.Товары, СтруктураДействий, Неопределено);
КонецЦикла;
СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(НовыйДокумент);
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Новый Структура("НалогообложениеНДС, Дата, ПоДатеОтгрузки",НовыйДокумент.НалогообложениеНДС, НовыйДокумент.Дата, Истина));
СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСумму");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(НовыйДокумент.Товары, СтруктураДействий, Неопределено);
НовыйДокумент.Записать(РежимЗаписиДокумента.Проведение);
Сообщить("Документ по контрагенту "+Контрагент+" успешно создан");
Исключение
НовыйДокумент.Записать();
Сообщить("НЕ УДАЛОСЬ создать документ по контрагенту "+Контрагент);
КонецПопытки;
ПоказатьНе считает(
(28)
Попытка
НовыйДокумент = Документы.РеализацияТоваровУслуг.СоздатьДокумент();
НовыйДокумент.Дата = ТекущаяДата();
НовыйДокумент.Контрагент = Контрагент;
НовыйДокумент.Партнер = Клиент;
НовыйДокумент.Соглашение = Соглашение;
НовыйДокумент.Склад = Склад;
НовыйДокумент.Организация = Организация;
НовыйДокумент.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.РеализацияКлиенту;
НовыйДокумент.Валюта = Справочники.Валюты.НайтиПоНаименованию("руб_");
//НовыйДокумент.СуммаДокумента = Справочники.Валюты.НайтиПоНаименованию("руб_");
НовыйДокумент.ВалютаВзаиморасчетов = Справочники.Валюты.НайтиПоНаименованию("руб_");
НовыйДокумент.ЦенаВключаетНДС = Истина;
НовыйДокумент.НалогообложениеНДС = Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьЦенуПродажи", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруЗаполненияЦеныВСтрокеТЧ(НовыйДокумент));
лКэшированныеЗначения = Неопределено;
Для Каждого Строка Из Таблица Цикл
НоваяСтрока = НовыйДокумент.Товары.Добавить();
НоваяСтрока.Номенклатура = НайтиНоменклатуру(Строка.Номенклатура);
НоваяСтрока.КоличествоУпаковок = Строка.Количество;
НоваяСтрока.Количество = Строка.Количество;
НоваяСтрока.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Крафт");
СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(НовыйДокумент);
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСумму");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
СтруктураДействий.Вставить("ЗаполнитьДубликатыЗависимыхРеквизитов", ЗависимыеРеквизиты());
СтруктураДействий.Вставить("ОчиститьСуммуВзаиморасчетов");
СтруктураДействий.Вставить("ПересчитатьСуммуСверхЗаказа", Новый Структура("РеализацияПоступлениеПоЗаказу, ТребуетсяЗалогЗаТару",
НовыйДокумент.РеализацияПоЗаказам, НовыйДокумент.ТребуетсяЗалогЗаТару));
ОбработкаТабличнойЧастиСервер.ОбработатьСтрокуТЧ(НоваяСтрока, СтруктураДействий, лКэшированныеЗначения);
//НоваяСтрока.Сумма = НоваяСтрока.Цена*НоваяСтрока.Количество;
//НоваяСтрока.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
// выполним пересчет сумм документа
//СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(НовыйДокумент);
//СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Новый Структура("НалогообложениеНДС, Дата, ПоДатеОтгрузки", НовыйДокумент.НалогообложениеНДС, НовыйДокумент.Дата, Истина));
//СтруктураДействий.Вставить("ПересчитатьКоличествоЕдиниц");
//СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
//СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
//СтруктураДействий.Вставить("ПересчитатьСумму");
//СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
//СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
//
//ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(НовыйДокумент.Товары, СтруктураДействий, Неопределено);
КонецЦикла;
НовыйДокумент.Записать(РежимЗаписиДокумента.Проведение);
Сообщить("Документ по контрагенту "+Контрагент+" успешно создан");
Исключение
НовыйДокумент.Записать();
Сообщить("НЕ УДАЛОСЬ создать документ по контрагенту "+Контрагент);
КонецПопытки;
ПоказатьНовыйДокумент.НалогообложениеНДС = Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьПризнакТипНоменклатуры", Новый Структура("Номенклатура", "ТипНоменклатуры"));
СтруктураДействий.Вставить("ЗаполнитьПризнакАртикул", Новый Структура("Номенклатура", "Артикул"));
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС",
Новый Структура("НалогообложениеНДС, Дата", НовыйДокумент.НалогообложениеНДС, НовыйДокумент.Дата));
СтруктураДействий.Вставить("ЗаполнитьКодТНВЭД", НовыйДокумент.НалогообложениеНДС);
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДСВозвратнойТары", НовыйДокумент.ВернутьМногооборотнуюТару);
СтруктураДействий.Вставить("ЗаполнитьПризнакБезВозвратнойТары", НовыйДокумент.ВернутьМногооборотнуюТару);
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ОчиститьСуммуВзаиморасчетов");
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(НовыйДокумент.Товары, СтруктураДействий, Неопределено);
ПоказатьПоставил,все равно не заполняется
(39)
Сделал так,но не знаю как заполнить оплату
ЗаполнитьСтавкуНДС
СтруктураДействий = Новый Структура;
СтруктураДействий.Вставить("ЗаполнитьЦенуПродажи", ОбработкаТабличнойЧастиКлиентСервер.ПолучитьСтруктуруЗаполненияЦеныВСтрокеТЧ(НовыйДокумент));
лКэшированныеЗначения = Неопределено;
СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВСтрокеТЧ(НовыйДокумент);
СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
СтруктураДействий.Вставить("ПересчитатьСумму");
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомРучнойСкидки", Новый Структура("Очищать", Ложь));
СтруктураДействий.Вставить("ПересчитатьСуммуСУчетомАвтоматическойСкидки", Новый Структура("Очищать", Истина));
СтруктураДействий.Вставить("ЗаполнитьДубликатыЗависимыхРеквизитов", ЗависимыеРеквизиты());
СтруктураДействий.Вставить("ОчиститьСуммуВзаиморасчетов");
СтруктураДействий.Вставить("ПересчитатьСуммуСверхЗаказа", Новый Структура("РеализацияПоступлениеПоЗаказу, ТребуетсяЗалогЗаТару",
НовыйДокумент.РеализацияПоЗаказам, НовыйДокумент.ТребуетсяЗалогЗаТару));
СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС",
Новый Структура("НалогообложениеНДС, Дата", НовыйДокумент.НалогообложениеНДС, НовыйДокумент.Дата));
Для Каждого Строка Из Таблица Цикл
Попытка
НоваяСтрока = НовыйДокумент.Товары.Добавить();
НоваяСтрока.Номенклатура = НайтиНоменклатуру(Строка.Номенклатура);
НоваяСтрока.КоличествоУпаковок = Строка.Количество;
НоваяСтрока.Количество = Строка.Количество;
НоваяСтрока.ВидЦены = Справочники.ВидыЦен.НайтиПоНаименованию("Крафт");
ОбработкаТабличнойЧастиСервер.ОбработатьСтрокуТЧ(НоваяСтрока, СтруктураДействий, лКэшированныеЗначения);
ТекущаяСтрокаСтруктура = ПолучитьТекущуюСтрокуСтруктурой(НоваяСтрока,СтруктураДействий);
НоваяСтрока.СтавкаНДС = Перечисления.СтавкиНДС.БезНДС;
ОбработкаТабличнойЧастиВызовСервера.ОбработатьСтрокуТЧ(ТекущаяСтрокаСтруктура, СтруктураДействий, лКэшированныеЗначения);
ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(НовыйДокумент.Товары, СтруктураДействий, Неопределено);
//НоваяСтрока.Сумма = НоваяСтрока.Цена*НоваяСтрока.Количество;
// выполним пересчет сумм документа
Исключение
КонецПопытки;
КонецЦикла;
ПоказатьСделал так,но не знаю как заполнить оплату
(43) "НовыйДокумент.НалогообложениеНДС = Перечисления.ТипыНалогообложенияНДС.ПродажаНеОблагаетсяНДС;" - сами же ставите, что документ без ндс, значит надо ставку заполнять ручками, например "БезНДС"
что за Оплата имеется в виду?
если график оплаты, то выше давал пример заполнения по соглашению и без
что за Оплата имеется в виду?
если график оплаты, то выше давал пример заполнения по соглашению и без
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот