Как самому написать обмен между Бухгалтерией 2.0 и ЗУП 3.1. (Часть 1)

02.03.21

Учетные задачи - Зарплата

Как можно осуществить переход на ЗУП 3.1 и при этом продолжать оставаться на Бухгалтерии 2.0, сохранить работоспособность системы обмена, написав свой обмен между конфигурациями в Конвертации данных.

Задача "подружить" новую ЗУП 3.1 и старую Бухгалтерию 2.0 с помощью написания собственных правил обмена в Конвертации.

Обмен сводится к переносу документа "Отражение зарплаты в бух учете" и Ведомостей в банк/кассу, в моем случае начисления переносятся с детализацией по физлицам.

Создание правил можно разбить на несколько этапов:

1. Начало. Как по учебнику.   

Предварительно выгрузил xml описания конфигураций с помощью стандартных обработок с диска (обработки MD82Exp и MD83Exp для конфигураций 8.2 и 8.3 соответственно). Загрузил конфигурации в базу КД 2.1. 

Создал новую конвертацию(обмен): Источник ЗУП 3.1, Приемник (Бухгалтерии 2.0).

Добавил Новые ПКО (правила конвертации объектов) :

ОтражениеЗарплатыВРеглУчете(источник) - ОтражениеЗарплатыВБухучете(приемник), отказался от формирования ПКС (правила конвертации свойств), их придется описывать самостоятельно, будет описано ниже. Правила выгрузки данных можно согласиться создать стандартные, или создать их позже.

Переходим к ПКС: Добавляем свойства объекта, которые не вызовут затруднений: Номер, Дата, ПериодРегистрации, Организация, Комментарий. Эти свойства переносятся без изменений из Источника в Приемник.

Если дошли самостоятельно до этой части, значит уже на полпути. 

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

2. Самое интересное. Перенос отсутствующих свойств.

2.1 Перенос табличной части

Переходим к табличной части Отражение в учете. 

Добавляем новое ПКС: Приемник  ОражениеВУчете (табличная часть документа отражения в Бухгалтерии), Источник оставляем пустым, как на картинке(1). 

 

Переходим на вкладку ПередВыгрузкой (событие просходит при выгрузке поэтому нам доступны объекты из конфигурации Источника)

Ниже описание алгоритма выгрузки, запрос возвращает таблицу с необходимыми нам данными. К результату запроса можно обращаться в описании переноса свойств табличной части как к объекту коллекции, это важный момент, ниже будет показано как.

Запрос = Новый Запрос;
Запрос.Текст = 
	"ВЫБРАТЬ
	|	ОтражениеЗарплатыВБухучетеНачисления.Ссылка КАК Ссылка,
	|	ОтражениеЗарплатыВБухучетеНачисления.ФизическоеЛицо КАК ФизическоеЛицо,
	|	ОтражениеЗарплатыВБухучетеНачисления.Подразделение КАК Подразделение,
	|	ОтражениеЗарплатыВБухучетеНачисления.ВидОперации КАК ВидОперации,
	|	ОтражениеЗарплатыВБухучетеНачисления.ВидНачисленияОплатыТрудаДляНУ КАК ВидНачисленияОплатыТрудаДляНУ,
	|	""Зарплата"" КАК ВидНачисления,
	|	ОтражениеЗарплатыВБухучетеНачисления.Сумма КАК Сумма
	|ИЗ
	|	Документ.ОтражениеЗарплатыВБухучете КАК ОтражениеЗарплатыВБухучете
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ОтражениеЗарплатыВБухучете.НачисленнаяЗарплатаИВзносы КАК ОтражениеЗарплатыВБухучетеНачисления
	|		ПО (ОтражениеЗарплатыВБухучетеНачисления.Ссылка = ОтражениеЗарплатыВБухучете.Ссылка)
	|ГДЕ
	|	ОтражениеЗарплатыВБухучете.Ссылка = &Ссылка
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	ОтражениеЗарплатыВБухучетеНачисленныйНДФЛ.Ссылка,
	|	ОтражениеЗарплатыВБухучетеНачисленныйНДФЛ.ФизическоеЛицо,
	|	КадроваяИсторияСотрудников.Подразделение,
	|	ОтражениеЗарплатыВБухучетеНачисленныйНДФЛ.ВидОперации,
	|	NULL,
	|	""Налог"",
	|	ОтражениеЗарплатыВБухучетеНачисленныйНДФЛ.Сумма
	|ИЗ
	|	Документ.ОтражениеЗарплатыВБухучете КАК ОтражениеЗарплатыВБухучете
	|		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ОтражениеЗарплатыВБухучете.НачисленныйНДФЛ КАК ОтражениеЗарплатыВБухучетеНачисленныйНДФЛ
	|		ПО (ОтражениеЗарплатыВБухучетеНачисленныйНДФЛ.Ссылка = ОтражениеЗарплатыВБухучете.Ссылка)
	|		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КадроваяИсторияСотрудников.СрезПоследних(&ДатаДок,) КАК КадроваяИсторияСотрудников
	|		ПО (КадроваяИсторияСотрудников.ФизическоеЛицо = ОтражениеЗарплатыВБухучетеНачисленныйНДФЛ.ФизическоеЛицо)
	|ГДЕ
	|	ОтражениеЗарплатыВБухучете.Ссылка = &Ссылка
	|   И (КадроваяИсторияСотрудников.ВидСобытия <>&ВидСобытия ИЛИ КадроваяИсторияСотрудников.ВидСобытия =&ВидСобытия И КадроваяИсторияСотрудников.Период>=&ДатаНач)
	|";

Запрос.УстановитьПараметр("Ссылка", 	Источник);
Запрос.УстановитьПараметр("ДатаДок", 	Источник.Дата);
Запрос.УстановитьПараметр("ВидСобытия", Перечисления.ВидыКадровыхСобытий.Увольнение);
Запрос.УстановитьПараметр("ДатаНач", 	НачалоМесяца(Источник.Дата));

КоллекцияОбъектов = Запрос.Выполнить().Выгрузить();

 Добавлена еще одна колонка ВидНачисления, его нет в Приемнике но это свойство(в терминах конвертации) нужно для заполнения отсутствующих свойств, также все будет ниже.

Заполняем свойства табличной части: Сумма, Физлицо, ВидНачисленияНУ (перечисление) как на картинке, создаем (вручную!), параллельно делаем стандартные обмены для этих свойств (минимально только необходимые Код, Наименование), то есть для них тоже есть свои небольшие Правила.

Предлагаю на этом моменте сделать перерыв и оценить объем выполненной работы. Мне кажется не мало, если до этого момента все ясно или было известно из учебной литературы и не составило большого труда - отлично. 

Промежуточный итог

Можно попробовать сохранить правила в файл и подготовив 2 обмениваемые базы для тестирования, выполнить обмен через встроенную Обработку Универсальный обмен данными XML. На данном этапе в Приемнике окажется Шапка документа и табличная часть с Физлицами суммами, и всем что успели добавить. Если пишите обмен по данной инструкции самостоятельно первый раз или нечасто приходится работать базе в Конвертации, это позволит ознакомиться с некоторыми моментами работы (сохранение правил, выгрузка данных из источника), возможно я что-то упустил напишите в комментарии;)

Вы молодцы! Я реально рад если кто-то это читает и уже находится здесь. 

2.2 Перенос отсутствующего свойства табличной части

Итак, у нас имеется обмен, сохраненный в файл и вы уже опробовали его, что-то перенеслось, но уже есть четкое понимание как это будет в итоге. 

Вернемся к табличной части, в запросе мы получили ВидОперации из Источника(ЗУП). 

 

От Вида операции у нас зависит какую проводку нам следует сформировать в Бухгалтерии. Это важный момент.

Добавляем в табличную часть ПКС для свойства ВидРасчета. Это свойство будет использовано для "транзита" ВидаОперации по которому будет строиться проводка. Я использую Алгоритмы (возможность Конвертации выносить код в отдельный модуль), сделал это чтобы было облегчить код. 

Ниже код ПКС для ВидаРасчета

ИмяПКО = "";
мВид =ОбъектКоллекции.ВидОперации;
мВидНачисления = ОбъектКоллекции.ВидНачисления;

Выполнить(Алгоритмы.ПолучитьВидОперации);
	
Если ИмяПКО = "" Тогда
	Отказ = Истина
КонецЕсли;

и код Алгоритма ПолучитьВидОперации:

Значение = "ОКЛ";
//Если ТипЗнч(мВид) = Тип("ПеречислениеСсылка.ВидыОперацийПоЗарплате") Тогда
ИмяПКО = "НачисленияЗарплата";

Если мВидНачисления = "Зарплата" Тогда
	Если мВид = Перечисления.ВидыОперацийПоЗарплате.НачисленоДоход Тогда
		Значение = "ОКЛ";
	ИначеЕсли мВид = Перечисления.ВидыОперацийПоЗарплате.ЕжегодныйОтпуск Тогда
		Значение = "ОТ";
	ИначеЕсли мВид = Перечисления.ВидыОперацийПоЗарплате.КомпенсацияЕжегодногоОтпуска Тогда
		Значение = "КОТ";
		
	ИначеЕсли мВид = Перечисления.ВидыОперацийПоЗарплате.ЕжегодныйОтпускОценочныеОбязательства Тогда
		Значение = "ОТФ";
	ИначеЕсли мВид = Перечисления.ВидыОперацийПоЗарплате.КомпенсацияЕжегодногоОтпускаОценочныеОбязательства Тогда
		Значение = "КОТФ";
	ИначеЕсли мВид = Перечисления.ВидыОперацийПоЗарплате.РасходыПоСтрахованиюФСС Тогда
		Значение = "БЛН";
	КонецЕсли;
ИначеЕсли мВидНачисления = "Налог" Тогда
	//такого вида операции нет, добавил сам 
	//код - УПН, Уплата подоходного налога
	Если мВид = Перечисления.ВидыОперацийПоЗарплате.НДФЛ Тогда
		Значение = "УПН";
	КонецЕсли;
КонецЕсли;

да, все так просто! Можно сложнее, но данный вид меня устраивает, данные которые здесь перечисляются изменяются не часто. Возможно периодически придется дополнять их новыми значениями, но из своего опыта могу сказать я еще этого не делал за 4 года.

Предварительно в Приемнике (Бухгалтерии)  Виды расчета  - Начисления организации создал начисления с перечисленными кодами (придумал сам).

Необходимо создать ПКО Начисления зарплата, нужно для поиска начисления по нужному коду со следующего вида:

Значение = Источник;

Основная часть обмена для Отражения сделана, решены важные проблемы передачи свойств. Осталось последнее описать проводки для каждого из перечисленных начислений. 

3. После загрузки. Проводки по зарплате

Самая важная и простая часть обмена, описание проводок.

Делать это будем в основном ПКО ОтражениеЗарплатыВРеглУчете в событии ПослеЗагрузки (событие происходит при загрузке, поэтому в алгоритме можно указывать объекты из базы Приемника), ну упрощенном примере так:

Хоз = ПланыСчетов.Хозрасчетный;
Сч44 = Хоз.НайтиПоКоду("44.01");
Сч70 = Хоз.НайтиПоКоду("70");

Нач = ПланыВидовРасчета.ОсновныеНачисленияОрганизаций;

Для каждого Стр Из Объект.ОтражениеВУчете Цикл
	
	Если Стр.ВидРасчета = Нач.НайтиПоКоду("ОКЛ") 
		Тогда 
		Стр.СчетДт     	= Сч44;
		Стр.СубконтоДт1 = Справочники.СтатьиЗатрат.НайтиПоКоду("000000008");  //зп
		
		Стр.СчетКт     	= Сч70;
		Стр.СубконтоКт1 = Стр.ФизЛицо;
		Стр.СубконтоКт2 = Стр.ВидНачисленияПоСт255НК;
		
		
	ИначеЕсли Стр.ВидРасчета = Нач.НайтиПоКоду("УПН") Тогда  
		// НДФЛ
		Стр.СчетДт     	= Сч70;
		Стр.СубконтоДт1 = Стр.ФизЛицо;
		
		Стр.СчетКт     	= Хоз.НайтиПоКоду("68.01");
		Стр.СубконтоКт1 = Перечисления.ВидыПлатежейВГосБюджет.Налог;
		Стр.СубконтоКт2 = Стр.ПодразделениеДт;
		
		Стр.ВидРасчета  = Нач.ПустаяСсылка();
	КонецЕсли;

КонецЦикла;

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

После этого проверяем, сохраняем, выгружаем и пробуем сделать обмен через УниверсальныйОбменXML, в ЗУП 3.1 доступен через меню "Все функции".

Надеюсь кто-нибудь дочитает и попробует сделать, возможно скоро описанный обмен потеряет актуальность, но этот пример я постарался разобрать на сколько смог подробно, так как он задействует много нестандартных инструментов Конвертации. И еще на написание данного у меня ушло более одного дня и даже не два, так что нормально если это будет получаться не быстро и придется по ходу решать не описанные вопросы, но подводных камней нет, все тонкости описаны. Желаю удачи. 

Про выплаты не забыл, просто многовато получилось и так.

Продолжение следует.

обмен конвертация зарплата бухгалтерия

См. также

Обновление для КА 1.1, ЗУП 2.5, БУХ 2.0: НДС, ЕФС-1, Расчет страховых взносов, Мобилизация, Статистика, Электронные трудовые книжки, 2-НДФЛ, Регламентированная отчетность, Кадровый учет, Прослеживаемость импортных товаров

Зарплата Регламентированный учет и отчетность Кадровый учет Обновление 1С Платформа 1С v8.3 Сложные периодические расчеты 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Зарплата и Управление Персоналом 2.5 Бухгалтерский учет Налоговый учет Управленческий учет Акцизы ЕНВД ЕСН Земельный налог ИП, ПБОЮЛ, КФХ Налог на имущество Налог на прибыль НДС НДФЛ ФОМС, ЕФС Транспортный налог УСН ПСН (патентная система налогообложения) Платные (руб)

Обновления для конфигураций: КА 1.1; ЗУП 2.5; БУХ 2.0; КА 1.1 Комплексная автоматизация торговли алкогольной продукцией; КА 1.1 Комплексный учет сельскохозяйственного предприятия

19900 руб.

01.04.2020    141149    669    352    

233

SALE! 10%

Перенос данных из УПП 1.3 в ERP 2 / УТ 11 / КА 2. Переносятся документы, справочная информация и остатки

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

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

50722 45650 руб.

04.08.2015    160293    356    268    

349

SALE! 15%

[ED3] Обмен для ERP 2.5, КА 2.5, УТ 11.5 БП 3.0, Розница, УНФ и других с EnterpriseData (универсальный формат обмена), правила обмена

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 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. Не требуется синхронного обновления правил после обновления другой конфигурации, участвующей в обмене. Типовой обмен через планы обмена кнопкой Синхронизация вручную или автоматически по расписанию, или вручную обработкой.

25080 руб.

12.06.2017    135563    729    291    

391

Перенос данных из Парус 8 в ЗГУ 3

Зарплата Внешние источники данных Бюджетный учет Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры государственного учреждения 3 Государственные, бюджетные структуры Россия Бухгалтерский учет Бюджетный учет Платные (руб)

Обработка позволяет перенести кадровую информацию и данные по заработной плате, фактических удержаниях, НДФЛ, вычетах, страховых взносах из базы Парус 8 учреждений в конфигурацию 1С:Зарплата и кадры государственного учреждения ред. 3 (ЗГУ) и начать с ней работать с любого месяца года.

84000 руб.

19.08.2020    22616    19    1    

22

SALE! 10%

Перенос данных из ERP 2 / КА 2 / УТ 11 в БП 3.0. Переносятся документы, начальные остатки и справочники

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

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

38500 34650 руб.

15.04.2019    68843    181    139    

111

Перенос данных из УПП 1.3 в БП 3.0. Переносятся документы (обороты за период), справочная информация и остатки

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

Перенос данных из 1С:Управление производственным предприятием 1.3 в 1С:Бухгалтерия предприятия 3.0 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УПП 1.3 (1.3.226.x) и БП 3.0 (3.0.151.x). Правила подходят для версии ПРОФ и КОРП.

28000 руб.

15.12.2021    20612    136    38    

94

Перенос данных из УТ 10.3 в УТ 11.5. Переносятся документы (обороты за период), справочная информация и остатки

Обмен между базами 1C Файловый обмен (TXT, XML, DBF), FTP Платформа 1С v8.3 Оперативный учет 1С:Управление торговлей 10 1С:Управление торговлей 11 Россия Управленческий учет Платные (руб)

Перенос данных из 1С:Управление торговлей 10.3 в 1С:Управление торговлей 11.5 с помощью правил обмена. Переносятся остатки, документы (обороты за период), справочная информация. Правила проверены на конфигурациях УТ 10.3 (10.3.87.x) и УТ 11.5 (11.5.16.x).

28000 руб.

23.07.2020    46774    199    64    

162

SALE! 10%

Перенос данных из БП 3.0 в УТ 11 / КА 2 / ERP 2. Переносятся начальные остатки, документы и справочники

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

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

50722 45650 руб.

31.10.2014    231910    125    327    

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