Перезаполнение ставки НДС

05.09.23

Задачи пользователя - Мастера заполнения

Обработка умеет перезаполнять ставку НДС в табличных частях документов. На странице "Заказы клиентов" можно вывести список заказов с незаполненным НДС и перезаполнить. На Странице "Общее заполнение", выводится список всех документов и табличных частей с типом реквизита "СправочникСсылка.СтавкиНДС", здесь также можно перезаполнить ставку НДС.

Платные

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
(только для физ. лиц)
Перезаполнение Ставки НДС:
.epf 12,67Kb
24 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний за 2430 руб. в месяц

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

После не совсем удачного перехода с КА 2.4 на КА 2.5 было обнаружено, что у некоторых документов в табличных частях не заполнена Ставка НДС.

В КА 2.4 реквизит Ставка НДС это перечисление, а в КА 2.5 это уже справочник, реквизит с типом перечисление был переименован в "УдалитьСтавкаНДС", и добавлен реквизит "СтавкаНДС" с типом справочник.

 

Страница "Заказы клиентов":

По кнопке "найти заказы клиентов с пустым НДС", показывает проведенные заказы, у которых реквизит ставка НДС не заполнен с налогообложением: ПродажаОблагаетсяНДС и ПродажаНаЭкспорт.

По кнопке "Заполнить НДС В заказах Клиентов" в отмеченных заказах проставляется НДС через обработку табличных частей из общего модуля.

Можно указать количество обрабатываемых документов, которые будут обработаны.

 

Страница "Общее заполнение":

При открытии формы на странице заполняется список документов, у которых есть реквизит с типом "СправочникСсылка.СтавкиНДС" и реквизит "СуммаНДС" в табличной части.

По нажатии кнопки "Найти документы с пустым НДС" показывает количество документов с незаполненной ставкой НДС и реквизитом Сумма НДС > 0.

По нажатию кнопки "Заполнить НДС" заполняет НДС в отмеченных документах.

При заполнении нужно выбрать источник заполнения: Справочник "Номенклатура", Реквизит "УдалитьСтавкаНДС" или фиксированное значение.

 

Исходный код:


&НаСервере
Процедура НайтиДокументыСПустымНДСНаСервере()
	
	Для Каждого СтрТаблицы Из Объект.ОбрабатываемыеДокументы Цикл
		
		Запрос = Новый Запрос;
		Запрос.Текст = 
		"ВЫБРАТЬ РАЗЛИЧНЫЕ
		|	Документ.Ссылка КАК Ссылка
		|ИЗ
		|	[Таблица] КАК Документ
		|ГДЕ
		|	(Документ.СтавкаНДС = ЗНАЧЕНИЕ(Справочник.СтавкиНДС.ПустаяСсылка) ИЛИ Документ.СтавкаНДС = НЕОПРЕДЕЛЕНО)
		|	И Документ.СуммаНДС > 0
		|	И Документ.Ссылка.Проведен";		
		Запрос.Текст = СтрЗаменить(Запрос.Текст, "[Таблица]", "Документ." + СтрТаблицы.Документ + "." + СтрТаблицы.ТабличнаяЧасть); 		
		СтрТаблицы.Найдено = Запрос.Выполнить().Выбрать().Количество();
		СтрТаблицы.Пометка = ?(СтрТаблицы.Найдено > 0, Истина, Ложь);
		
	КонецЦикла;
	
КонецПроцедуры

&НаКлиенте
Процедура НайтиДокументыСПустымНДС(Команда)
	
	НайтиДокументыСПустымНДСНаСервере();
	
КонецПроцедуры

&НаСервере
Процедура ПриОткрытииНаСервере()
	
	Для Каждого ДокументИмя Из Метаданные.Документы Цикл
		Для Каждого ТабличнаяЧастьИмя Из ДокументИмя.ТабличныеЧасти Цикл
			Для Каждого РеквизитИмя Из ТабличнаяЧастьИмя.Реквизиты Цикл
				Если РеквизитИмя.Тип = Новый ОписаниеТипов("СправочникСсылка.СтавкиНДС") И ТабличнаяЧастьИмя.Реквизиты.Найти("СуммаНДС") <> Неопределено Тогда
					НовыйДокумент = Объект.ОбрабатываемыеДокументы.Добавить();
					НовыйДокумент.Документ = ДокументИмя.Имя;
					НовыйДокумент.ТабличнаяЧасть = ТабличнаяЧастьИмя.Имя;					
				КонецЕсли;				
			КонецЦикла;
		КонецЦикла;		
	КонецЦикла;
	
КонецПроцедуры

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	
	ПриОткрытииНаСервере();
	
КонецПроцедуры

&НаСервере
Процедура ЗаполнитьНДСНаСервере()
	
	Для Каждого СтрТаблицы Из Объект.ОбрабатываемыеДокументы Цикл
		
		Если СтрТаблицы.Пометка Тогда
			
			Запрос = Новый Запрос;
			Запрос.Текст = 
			"ВЫБРАТЬ РАЗЛИЧНЫЕ
			|	Документ.Ссылка КАК Ссылка
			|ИЗ
			|	[Таблица] КАК Документ
			|ГДЕ
			|	(Документ.СтавкаНДС = ЗНАЧЕНИЕ(Справочник.СтавкиНДС.ПустаяСсылка) ИЛИ Документ.СтавкаНДС = НЕОПРЕДЕЛЕНО)
			|	И Документ.СуммаНДС > 0
			|	И Документ.Ссылка.Проведен";		
			Запрос.Текст = СтрЗаменить(Запрос.Текст, "[Таблица]", "Документ." + СтрТаблицы.Документ + "." + СтрТаблицы.ТабличнаяЧасть); 		
			Выборка = Запрос.Выполнить().Выбрать();
			
			Пока Выборка.Следующий() Цикл			
				ДокументОбъект = Выборка.Ссылка.ПолучитьОбъект();
				
				Для Каждого Стр Из ДокументОбъект[СтрТаблицы.ТабличнаяЧасть] Цикл 					
					Если Метаданные.Документы[СтрТаблицы.Документ].ТабличныеЧасти[СтрТаблицы.ТабличнаяЧасть].Реквизиты.Найти("СтавкаНДС") = Неопределено Тогда							
						Продолжить;
					ИначеЕсли Объект.БратьНДСИз = "НДСДляПодстановки" Тогда 						
						Стр.СтавкаНДС = Объект.СтавкаНДС;																	
					ИначеЕсли Объект.БратьНДСИз = "СправочникаНоменклатура" Тогда 
						Если Метаданные.Документы[СтрТаблицы.Документ].ТабличныеЧасти[СтрТаблицы.ТабличнаяЧасть].Реквизиты.Найти("Номенклатура") = Неопределено Тогда
							Сообщить("В табличной части: " + СтрТаблицы.ТабличнаяЧасть + " документа: " + СтрТаблицы.Документ + " не используется реквизит номенклатура!");	
							Продолжить;
						КонецЕсли;
						
						Стр.СтавкаНДС = Стр.Номенклатура.СтавкаНДС;											
					ИначеЕсли Объект.БратьНДСИз = "ПеречислениеУдалитьСтавкаНДС" Тогда
						Если Метаданные.Документы[СтрТаблицы.Документ].ТабличныеЧасти[СтрТаблицы.ТабличнаяЧасть].Реквизиты.Найти("УдалитьСтавкаНДС") = Неопределено Тогда
							Сообщить("В табличной части: " + СтрТаблицы.ТабличнаяЧасть + " документа: " + СтрТаблицы.Документ + " не используется реквизит УдалитьСтавкаНДС!");	
							Продолжить;	
						КонецЕсли;
						
						СправочникСтавкаНДС = Справочники.СтавкиНДС.НайтиПоРеквизиту("ПеречислениеСтавкаНДС", Стр.УдалитьСтавкаНДС);						
						Если ЗначениеЗаполнено(СправочникСтавкаНДС) Тогда 						
							Стр.СтавкаНДС = СправочникСтавкаНДС;
						КонецЕсли;						
					КонецЕсли;					
				КонецЦикла;
				Попытка
					ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Неоперативный);
				Исключение
					Сообщить(ОписаниеОшибки());	
				КонецПопытки;				
			КонецЦикла;
			
		КонецЕсли;
		
	КонецЦикла;
	
КонецПроцедуры

&НаКлиенте
Процедура ЗаполнитьНДС(Команда)
	
	Если ЗначениеЗаполнено(Объект.БратьНДСИз) Или ЗначениеЗаполнено(Объект.СтавкаНДС) Тогда 
		ЗаполнитьНДСНаСервере();
	Иначе 
		Сообщить("Необходимо выбрать источник заполнения НДС или фиксированную ставку!");
	КонецЕсли;
	
КонецПроцедуры

//-----------------Заказы клиентов------------------//

&НаСервере
Процедура ЗаполнитьНДСВзаказахКлиентовНаСервере()
	
	Для Каждого СтрТаблицы Из Объект.ДокументыЗаказыКлиентов Цикл
		
		Если СтрТаблицы.Пометка Тогда
			
			ДокументОбъект = СтрТаблицы.Документ.ПолучитьОбъект();
			
			СтруктураПересчетаСуммы = ОбработкаТабличнойЧастиКлиентСервер.ПараметрыПересчетаСуммыНДСВТЧ(ДокументОбъект);
			
			СтруктураДействий = Новый Структура;
			//СтруктураДействий.Вставить("ЗаполнитьПризнакТипНоменклатуры", Новый Структура("Номенклатура", "ТипНоменклатуры"));
			//СтруктураДействий.Вставить("ЗаполнитьПризнакАртикул", Новый Структура("Номенклатура", "Артикул"));
			СтруктураДействий.Вставить("ЗаполнитьСтавкуНДС", Новый Структура("НалогообложениеНДС, Дата, ПоДатеОтгрузки", ДокументОбъект.НалогообложениеНДС, ДокументОбъект.Дата, Истина));
			СтруктураДействий.Вставить("ЗаполнитьСтавкуНДСВозвратнойТары", ДокументОбъект.ВернутьМногооборотнуюТару);
			//СтруктураДействий.Вставить("ЗаполнитьПризнакБезВозвратнойТары", ДокументОбъект.ВернутьМногооборотнуюТару);
			//СтруктураДействий.Вставить("ЗаполнитьПризнакОтмененоБезВозвратнойТары", ДокументОбъект.ВернутьМногооборотнуюТару);
			//СтруктураДействий.Вставить("ПересчитатьСуммуНДС", СтруктураПересчетаСуммы);
			//СтруктураДействий.Вставить("ПересчитатьСуммуСНДС", СтруктураПересчетаСуммы);
			ОбработкаТабличнойЧастиСервер.ОбработатьТЧ(ДокументОбъект.Товары, СтруктураДействий, Неопределено);
			
			Попытка
				ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение, РежимПроведенияДокумента.Неоперативный);
			Исключение
				Сообщить(ОписаниеОшибки());	
			КонецПопытки;
			
		КонецЕсли;
		
	КонецЦикла;
	
КонецПроцедуры

&НаКлиенте
Процедура ЗаполнитьНДСВзаказахКлиентов(Команда)
	
	ЗаполнитьНДСВзаказахКлиентовНаСервере();
	
КонецПроцедуры

&НаСервере
Процедура НайтиЗаказыКлиентовСПустымНДСНаСервере()
	
	Объект.ДокументыЗаказыКлиентов.Очистить();
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ РАЗЛИЧНЫЕ [ПЕРВЫЕ]
	|	Документ.Ссылка КАК Ссылка,
	|	Документ.Ссылка.Дата КАК Дата
	|ИЗ
	|	Документ.ЗаказКлиента.Товары КАК Документ
	|ГДЕ
	|	Документ.СтавкаНДС = ЗНАЧЕНИЕ(Справочник.СтавкиНДС.ПустаяСсылка)
	|	И Документ.Ссылка.Проведен
	|	И (Документ.Ссылка.НалогообложениеНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПродажаОблагаетсяНДС)
	|			ИЛИ Документ.Ссылка.НалогообложениеНДС = ЗНАЧЕНИЕ(Перечисление.ТипыНалогообложенияНДС.ПродажаНаЭкспорт))
	|
	|УПОРЯДОЧИТЬ ПО
	|	Дата"; 	
	
	Если Объект.КоличествоОбрабатываемыхДокументов > 0 Тогда
		Запрос.Текст = СтрЗаменить(Запрос.Текст, "[ПЕРВЫЕ]" , "ПЕРВЫЕ " + Объект.КоличествоОбрабатываемыхДокументов);
	Иначе 
		Запрос.Текст = СтрЗаменить(Запрос.Текст, "[ПЕРВЫЕ]" , "");
	КонецЕсли;
	Выборка = Запрос.Выполнить().Выбрать();
	
	Пока Выборка.Следующий() Цикл
		НовДокумент = Объект.ДокументыЗаказыКлиентов.Добавить();
		НовДокумент.Пометка = Истина;
		НовДокумент.Дата = Выборка.Дата; 
		НовДокумент.Документ = Выборка.Ссылка; 
	КонецЦикла;
	
	Элементы.НайденоЗаказовКлиентов.Заголовок = "Найдено заказов клиентов: " + Выборка.Количество();
	
КонецПроцедуры

&НаКлиенте
Процедура НайтиЗаказыКлиентовСПустымНДС(Команда)
	
	НайтиЗаказыКлиентовСПустымНДСНаСервере();
	
КонецПроцедуры

&НаКлиенте
Процедура ДокументыЗаказыКлиентовВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
	
	Если Поле.Имя = "ДокументыЗаказыКлиентовДокумент" Тогда
		СтандартнаяОбработка = Ложь;
		ПоказатьЗначение(,Элемент.ТекущиеДанные.Документ);
	КонецЕсли;	
	
КонецПроцедуры

//-----------------*------------------//

 

Протестировано на платформе: 1С:Предприятие 8.3 (8.3.20.1674).

Протестировано в конфигурациях: 1С:Комплексная автоматизация 2 (2.5.7.402).

 

Также Вас может заинтересовать:

  1. Редактирование отчета о розничных продажах (Розница 3)
  2. Создание / перезаполнение отчетов о розничных продажах (УТ 11, КА 2, ERP 2)
  3. Редактирование отчета о розничных продажах (Розница 2, УТ 11, КА 2, ERP 2, БП 3)
  4. Перезаполнение ставки НДС
  5. Email рассылка в формате HTML
  6. Выгрузка внешних отчетов и обработок
  7. Редактор регистра Роли и исполнители
  8. Выгрузка данных из УПП 1.3 в систему NEON
  9. Универсальный передаточный документ (УПД) (постановление №534 с 01.07.2021)
  10. Подпись в почтовом клиенте 1С управляемые формы HTML кодом
  11. Выгрузка товара из 1С: УТ11 в формате XML для сайта avito.ru (Авито: Личные вещи)
  12. Автоматическое гашение ВСД в конфигурации 1С:Управление ветеринарными сертификатами. Интеграция с ФГИС Меркурий

Обработка НДС заполнение Справочник Перечисление СтавкаНДС УдалитьСтавкаНДС Комплексная автоматизация

См. также

SALE! 50%

Банковские операции Обмен с интернет-банком Эквайринг/ридер магнитных карт Мастера заполнения Программист Бухгалтер Пользователь 1С v8.3 1C:ERP 1С:Бухгалтерия 3.0 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:ERP. Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 1С:Розница 3.0 Платные (руб)

Корректируйте банковские документы быстро и легко! Создайте правило обработки, и оно автоматически применится при загрузке выписки, экономя ваше время. Решение позволяет автоматически заполнять расшифровку платежа, исключать загрузку ненужных документов (дублей) из банка, заполнять комиссию за эквайринг и многое другое. Вам не нужно доплачивать за алгоритмы, они уже включены в решение.

15000 руб.

20.12.2024    8623    27    21    

28

Операции по ВЭД Оптовая торговля Розничная торговля Логистика, склад и ТМЦ Мастера заполнения Бухгалтер 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

СКАЧАЙТЕ И ПОПРОБУЙТЕ БЕСПЛАТНО! Данная обработка расширяет функционал типовой конфигурации «1С:Бухгалтерия предприятия» и позволяет осуществлять автоматическое заполнение ГТД в документах «Реализация товаров и услуг», «Списание товаров», «Отчет о розничных продажах», «Отчет комиссионера (агента) о продажах», «Требование-накладная», «Возврат товаров от покупателя», «Комплектация номенклатуры», «Безвозмездная передача», «Отчет производства за смену». Обработка предназначена для работы в конфигурации «1С:Бухгалтерия предприятия 8, редакция 3.0» Есть версия обработки оптимизированная для работы в 1CFresh

9600 руб.

19.06.2012    141435    282    81    

240

Мастера заполнения 1С:Розница 2 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

В расширение реализовано контроль изменения объектов, пломбировка (блокировка) объектов, установка своих статусов на объекты, настроить видимость объектов. Возможно настроить контроль на изменения любого реквизита и реквизитов табличных частей справочников и документов и контроль на действия с документами с возможностью автоматической отправки письма на почту при изменении реквизита. Возможно настроить запрет записи объекта при изменение контролируемых реквизитов. Возможно устанавливать свои статусы на объекты. Возможно устанавливать пломбы на объекты. Возможно настроить какие объекты пользователей будет видеть пользователь в списке.

10000 руб.

09.06.2025    413    2    0    

2

Регламентированный учет и отчетность Мастера заполнения Бухгалтер 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Налоговый учет ЕСН Платные (руб)

Обработка позволяет создавать документы "Сведения об уплате налогов на едином налоговом счете" по данным файла операций из личного кабинета ЕНС сайта ФНС в конфигурации 1С:Бухгалтерия предприятия 3.0.

3000 руб.

22.11.2024    1335    11    1    

11

Логистика, склад и ТМЦ Мастера заполнения Пользователь 1С v8.3 1C:Бухгалтерия Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Обработка заполняет справочник "Автоработы" 3000 авторабот (реквизит сопоставления "Наименование") и справочник "Номенклатура" 200000 артикулами запчастей на популярные модели автомобилей (реквизиты сопоставления "Наименование" и "Артикул").

3600 руб.

07.10.2022    7981    23    0    

21

Оптовая торговля Мастера заполнения Бизнес-аналитик Пользователь 1С v8.3 Оперативный учет 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Данное расширение автоматически заполняет бизнес-регион партнера в 1С (УТ 11, КА 2, ERP) при записи на основании КПП или индекса из адреса. Присутствует возможность сохранить имеющиеся бизнес-регионы партнеров, а также перезаполнить или очистить их при первичном заполнении. Возможен выбор региона по умолчанию для партнера без КПП или адреса (например, если вы не указываете адреса физ. лиц и знаете, что они из Вашего региона).

2000 руб.

29.04.2019    34482    65    51    

69

Мастера заполнения 1С v8.3 1С:Бухгалтерия 3.0 1С:Управление нашей фирмой 3.0 Россия Платные (руб)

Расширение для типовых конфигураций 1С:БП 3.0 и 1С:УНФ 3.0 добавляет в справочник "Контрагенты" поля "Код ОКВЭД" и "Наименование ОКВЭД" и заполняет их по ИНН контрагента через сервис "1С-Контрагент"

7200 руб.

28.10.2024    1013    2    0    

3
Оставьте свое сообщение