Учим обработку выгрузки налоговой накладной в XML использовать внешнюю печатную форму.

26.09.13

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

Немного доработав налоговую накладную типовой бухгалтерии, обнаружил что изменения не выгружаются в XML для отчета в ГНАУ. Проблема оказалась не такой простой, как ожидал, поэтому публикую решение.

Файлы

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

Наименование Скачано Купить файл
Подключаемая форма печати налоговой накладной
.epf 32,42Kb
2 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

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

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

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Итак, получил задание от бухгалтерии немного доработать печатную форму налоговой накладной. Естественно, сделал внешнюю печатную форму, чтобы не снимать объект с поддержки. После выполнения задачи, оказалось, что мои изменения не передаются в XML-отчет для ГНАУ! Нашел, что выгрузкой занимается РегламентированныйОтчетНалоговаяНакладная, форма ФормаОтчета2012, процедура ЗаполнитьАвто(строка 2245). Начал искать откуда этот отчет тянет показатели, и выяснил что из модуля самой налоговой: функция "Печать" может возвращать или табличный документ или структуру показателей, все зависит от параметра ТолькоФормироватьСтруктуруПоказателейПечатнойФормы.

Таким образом, задача свелась к тому, чтобы доработать РегламентированныйОтчетНалоговаяНакладная (затем зарегистрировать его как внешний регл. отчет), чтоб он мог получить структуру показателей с моей внешней печатной формы. К сожалению, в типовом варианте отчет "не видит" внешнюю печатную форму, а сразу обращается к печатной форме переданного документа-объекта:

СтруктураПараметров = НалоговыйДокументОбъект.ПечатьДокумента(Истина);

Следующий код позволяет использовать внешнюю печатную форму в том случае, если она зарегестрирована вместо стандартной формы.

Заходим в Отчеты->РегламентированныйОтчетНалоговаяНакладная->ФормаОтчета2012->ЗаполнитьАвто(строка 2245). Находим текст 

Процедура ЗаполнитьАвто(ИспользоватьДанныеЗЦ = Ложь) Экспорт
	перем ИсходноеКоличествоСтрокГруппы;
	
	НалоговыйДокументОбъект = НалоговыйДокумент.ПолучитьОбъект();
	
	Попытка
		СтруктураПараметров = НалоговыйДокументОбъект.ПечатьДокумента(Истина);
	Исключение
		Сообщить(НСТР("ru = 'Заполнение по данным документа невозможно в данной версии конфигурации. Необходимо обновить конфигурацию!'; uk = 'Заповнення даними документа неможливе на поточній версії конфигурації. Необхідно оновити конфігурацію!'"));
		Возврат;
	КонецПопытки;
 

Заменяем его на:

Процедура ЗаполнитьАвто(ИспользоватьДанныеЗЦ = Ложь) Экспорт
	перем ИсходноеКоличествоСтрокГруппы;
	перем ДополнительныеПараметры;
	
	НалоговыйДокументОбъект = НалоговыйДокумент.ПолучитьОбъект();
	
	// Если вместо стандартной печатной формы зарегистрирована внешняя печатная форма - используем ее
	СтруктураПараметров = Неопределено;
	
	Попытка
		СтруктураВнутреннихПечатныхФорм = НалоговыйДокументОбъект.ПолучитьСтруктуруПечатныхФорм()
	Исключение
		СтруктураВнутреннихПечатныхФорм = Новый Структура;
	КонецПопытки;
	
	ДеревоМакетовПечати = УниверсальныеМеханизмы.ПолучитьДеревоМакетовПечати(НалоговыйДокументОбъект.Ссылка, СтруктураВнутреннихПечатныхФорм);
	
	СтрокаКнопки = ДеревоМакетовПечати.Строки.Найти("Налоговая накладная", "Текст");
	
	Расшифровка = СтрокаКнопки.Расшифровка;
	Если ТипЗнч(Расшифровка) = Тип("Структура") Тогда
		
		// печатаем из внешней формы
		ИсточникМакета = Расшифровка;
		
		ДвоичныеДанные = ИсточникМакета.СсылкаНаВнешнююОбработку.Принадлежность[ИсточникМакета.НомерСтроки - 1].ХранилищеВнешнейОбработки.Получить();
		
		// Получить дополнительные параметры внешней обработки
		ИсточникМакета.Свойство("ДополнительныеПараметрыОбработки", ДополнительныеПараметры);
		
		Если ДополнительныеПараметры = Неопределено Тогда
			ДополнительныеПараметры = Новый Структура;
		КонецЕсли;
		
		Если ТипЗнч(ДополнительныеПараметры) = Тип("Структура") Тогда
			ДополнительныеПараметры.Вставить("ТолькоФормироватьСтруктуруПоказателейПечатнойФормы", Истина);
		КонецЕсли;
		
		Если ДвоичныеДанные = Неопределено Тогда
			ДвоичныеДанные = ИсточникМакета.СсылкаНаВнешнююОбработку.ХранилищеВнешнейОбработки.Получить();
		КонецЕсли;
		
		Если ДвоичныеДанные = Неопределено Тогда
			Сообщить(НСТР("ru = 'Не удалось загрузить внешнюю печатную форму!'; uk = 'Не удалось загрузить внешнюю печатную форму!'"));
			Возврат;
		КонецЕсли;
		
		ТабДокумент = Неопределено;
		
		ИмяФайла = ПолучитьИмяВременногоФайла("epf");
		Попытка
			ДвоичныеДанные.Записать(ИмяФайла);
			Обработка = ВнешниеОбработки.Создать(ИмяФайла);
			Обработка.СсылкаНаОбъект = НалоговыйДокументОбъект.Ссылка;
			
			// Передать внешней обработке дополнительные параметры
			Если ДополнительныеПараметры <> Неопределено Тогда
				
				// Если у внешней обработки есть реквизит для дополнительных параметров, присвоить ему значение
				Если НЕ Обработка.Метаданные().Реквизиты.Найти("ДополнительныеПараметры") = Неопределено Тогда
					Обработка.ДополнительныеПараметры = ДополнительныеПараметры;
				КонецЕсли;
				
			КонецЕсли;
			
			СтруктураПараметров = Обработка.Печать();
			
			УдалитьФайлы(ИмяФайла);
		Исключение
			ОбщегоНазначения.СообщитьОбОшибке(ОписаниеОшибки(),, НСтр("ru='Не удалось сформировать внешнюю печатную форму!';uk='Не вдалося сформувати зовнішню друковану форму!'"));
			Возврат;
		КонецПопытки;
		
	КонецЕсли;
	
	// Если внешняя печатная форма не вернула структуру параметров (возможно разработчик не предусмотрел такую возможность), используем стандартную печать (типовый механизм)
	Если ТипЗнч(СтруктураПараметров) <> Тип("Структура") Тогда
		Попытка
			
			СтруктураПараметров = НалоговыйДокументОбъект.ПечатьДокумента(Истина);
		
		Исключение
			Сообщить(НСТР("ru = 'Заполнение по данным документа невозможно в данной версии конфигурации. Необходимо обновить конфигурацию!'; uk = 'Заповнення даними документа неможливе на поточній версії конфигурації. Необхідно оновити конфігурацію!'"));
			Возврат;
		КонецПопытки;
	КонецЕсли;
 

В прикрепленном файле находится пример подключаемой обработки.

Вступайте в нашу телеграмм-группу Инфостарт

Налоговая накладная

См. также

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Разработчик 1С:Предприятие 8 1С:Комплексная автоматизация 1.х 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена | Можно выполнить переход с УПП на БП 3 или запускать выгрузку данных за выбранный период времени | Переносятся документы, начальные остатки и вся справочная информация | Есть фильтр по организации и множество других параметров выгрузки | Поддерживается несколько сценариев работы: как первичный полный перенос, так и перенос только новых документов | Перенос данных возможен в "1С: Бухгалтерия 3.0" версии ПРОФ, КОРП или базовую | Переход с "1С: УПП1.3" / "1С:КА 1.1" на "1С:БП3.0" с помощью правил конвертации будет максимально комфортным! | Можно бесплатно проверить перенос на вашем сервере!

50050 руб.

25.02.2015    191634    376    295    

432

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Разработчик 1С:Предприятие 8 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Россия Платные (руб)

Правила в универсальном формате обмена для ERP 2.5, КА 2.5, УТ 11.5, БП 3.0, Розница, УНФ, для последних версий конфигураций. Ссылки на другие конфигурации в описании публикации. Правила совместимы со всеми другими версиями конфигураций новыми и старыми, поддерживающими обмен и синхронизацию в формате EnterpriseData. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

27633 руб.

12.06.2017    164036    997    329    

488

Перенос данных 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Системный администратор Разработчик 1С:Предприятие 8 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам.

50200 руб.

24.04.2015    210225    182    253    

300

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Разработчик 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Перенос данных из ERP в БП 3 | из КА 2 в БП 3 | из УТ 11 в БП 3 | из ЕРП в БП 3 | Сэкономьте время - используйте готовое решение для перехода! | Перенос разработан в формате КД 2 (правила конвертации данных) | Переносятся все возможные виды документов, начальных остатков и нормативно-справочная информация| Можно опционально выгружать каждую пару "номенклатура+характеристика" как отдельную номенклатуру | Есть выгрузка настроек счетов учета и зарплатных данных из ERP / КА 2 | Можно проверить на вашем сервере перед покупкой

58000 руб.

15.04.2019    86858    233    182    

169

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Разработчик 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Управленческий учет Платные (руб)

Перенос данных из ERP в ЗУП 3 | из КА 2 в ЗУП | Готовые правила конвертации данных (КД 2) для переноса остатков, документов с движениями и справочной информации 3 | Есть перенос начальной задолженности по зарплате и начальной штатной расстановки на выбранную дату | Обороты за прошлые годы (данные для расчета среднего) переносятся свернуто в документ "Перенос данных" | Есть фильтр по организациям | Документы за текущий период переносятся сразу с движениями, поэтому не потребуется делать перерасчеты | Перенос можно проверить перед покупкой, обращайтесь!

55200 руб.

03.12.2020    46686    134    83    

123

SALE! 10%

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Системный администратор Разработчик 1С:Предприятие 8 1С:Управление производственным предприятием 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Переносите справочную информацию, остатки и документы из УПП 1.3 в Бухгалтерию 3.0 с помощью готовых правил. Переносится более 50 видов документов. Простой интерфейс и понятные настройки.

42000 руб.

15.12.2021    36322    265    68    

202

Операции по ВЭД Файловый обмен (TXT, XML, DBF), FTP Разработчик Бухгалтер 1С:Предприятие 8 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Платные (руб)

Федеральная таможенная служба России давно поддерживает унифицированный формат электронных документов для обмена с информационными системами предприятий. xmlns="urn:customs.ru:Information:ExchangeDocuments:". Структура, утвержденная комиссией Таможенного союза. Осталось только сделать загрузку в 1С из этого формата. На выходе - два документа ГТД по импорту и Поступление (акты, накладные) Обработка актуализирована на начало 2026 года (ставка НДС 22%)

24400 руб.

09.08.2016    97047    376    379    

121

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Системный администратор Разработчик Бухгалтер 1С:Предприятие 8 1С:Бухгалтерия 3.0 Россия Платные (руб)

Обработка не только формирует начальные остатки по всем счетам на нужную дату (экономя время на свёртке базы БП 3), но и полностью переносит справочные данные и документы за заданный период. Гибкая настройка включает фильтр по организациям и множество параметров выгрузки. Работайте в удобном формате: выполните однократный полный переход или настройте регулярную догрузку только новых документов из БП 3 в БП 3.0. Интеграция правил конвертации в план обмена гарантирует точную выгрузку исключительно зарегистрированных объектов.

70760 руб.

10.04.2026    1284    3    8    

2
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Abbra 24 03.10.13 23:17 Сейчас в теме
что это за конфигурация?
2. crs 22 17.10.13 16:20 Сейчас в теме
Читаем внимательней описание:

Конфигурация: 1С:Бухгалтерия 8
...
Страна: Украина
Для отправки сообщения требуется регистрация/авторизация