diff --git a/КопированиеДвижений_БП3.xml b/КопированиеДвижений_БП3.xml
new file mode 100644
index 0000000..363db0a
--- /dev/null
+++ b/КопированиеДвижений_БП3.xml
@@ -0,0 +1,156 @@
+
+
+
+
+
+ c3831ec8-d8d5-4f93-8a22-f9bfae07327f
+ 100f73f4-fdd0-4f5b-916b-6f7bf15f4e36
+
+
+ e67d6277-c75d-4d2a-8a02-6fc0b61dcf4d
+ f0995e17-06ce-44c8-a40d-e3850a375e3a
+
+
+
+ КопированиеДвижений_БП3
+
+
+ ru
+ Копирование движений (БП 3)
+
+
+
+ ExternalDataProcessor.КопированиеДвижений_БП3.Form.Форма
+
+
+
+
+
+
+ 8a4bb28c-87a8-4233-9b13-a0d7af776833
+ 51960148-0dd9-4e82-bbae-ff9f5cadbf0b
+
+
+ 48269f54-1a68-4469-891d-0597dea43ae5
+ 8ba3d589-2b6f-4c68-aa66-be5d2dbe90fc
+
+
+
+ Состав
+
+
+ ru
+ Состав
+
+
+
+
+ DontCheck
+
+
+
+ DontCheck
+ false
+ false
+ Auto
+
+
+ false
+
+
+ Auto
+ Auto
+
+ false
+ Use
+ false
+
+
+
+ Use
+
+
+
+
+
+
+
+
+
+
+ Источник
+
+
+ ru
+ Источник
+
+
+
+
+ cfg:DocumentRef
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ false
+
+ ShowError
+ Items
+
+
+ Auto
+ Auto
+
+
+ Auto
+
+
+
+
+ Приемник
+
+
+ ru
+ Приемник
+
+
+
+
+ cfg:DocumentRef.ОперацияБух
+
+ false
+
+
+
+ false
+
+ false
+ false
+
+
+ false
+
+ DontCheck
+ Items
+
+
+ Auto
+ Auto
+
+
+ Auto
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/КопированиеДвижений_БП3/Forms/Форма.xml b/КопированиеДвижений_БП3/Forms/Форма.xml
new file mode 100644
index 0000000..6ca9ac9
--- /dev/null
+++ b/КопированиеДвижений_БП3/Forms/Форма.xml
@@ -0,0 +1,22 @@
+
+
+
+
\ No newline at end of file
diff --git a/КопированиеДвижений_БП3/Forms/Форма/Ext/Form.xml b/КопированиеДвижений_БП3/Forms/Форма/Ext/Form.xml
new file mode 100644
index 0000000..08aeda9
--- /dev/null
+++ b/КопированиеДвижений_БП3/Forms/Форма/Ext/Form.xml
@@ -0,0 +1,95 @@
+
+
\ No newline at end of file
diff --git a/КопированиеДвижений_БП3/Forms/Форма/Ext/Form/Module.bsl b/КопированиеДвижений_БП3/Forms/Форма/Ext/Form/Module.bsl
new file mode 100644
index 0000000..59913ec
--- /dev/null
+++ b/КопированиеДвижений_БП3/Forms/Форма/Ext/Form/Module.bsl
@@ -0,0 +1,150 @@
+
+&НаКлиенте
+Процедура Скопировать(Команда)
+ СкопироватьНаСервере();
+КонецПроцедуры
+
+&НаСервере
+Процедура СкопироватьНаСервере()
+ Для Каждого ТекСтр Из Объект.Состав Цикл
+ СкопироватьДвиженияДокумента(ТекСтр.Источник.ПолучитьОбъект(), ТекСтр.Приемник);
+ КонецЦикла;
+КонецПроцедуры
+
+&НаСервере
+Процедура СкопироватьСубконто(Источник, Приемник, ИмяСвойства)
+ Если Не (ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(Источник, ИмяСвойства)
+ И ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(Приемник, ИмяСвойства)) Тогда
+ Возврат;
+ КонецЕсли;
+
+ Для Каждого Тек Из Источник[ИмяСвойства] Цикл
+ Приемник[ИмяСвойства].Вставить(Тек.Ключ, Тек.Значение);
+ КонецЦикла;
+КонецПроцедуры
+
+&НаСервере
+Процедура СкопироватьДвижения_РС(ДИсточник, Приемник, ИмяРегистра)
+ Если Ложь Тогда
+ ДИсточник = РегистрыСведений.АдресныеОбъекты.СоздатьНаборЗаписей();
+ КонецЕсли;
+
+ ДПриемник = Приемник.Движения[ИмяРегистра];
+
+ ЗаполнитьЗначенияСвойств(ДПриемник.Отбор, ДИсточник.Отбор,,"Регистратор");
+
+ Для Каждого ТекСтр Из ДИсточник Цикл
+ НовСтр = ДПриемник.Добавить();
+ ЗаполнитьЗначенияСвойств(НовСтр, ТекСтр,,"Регистратор");
+ КонецЦикла;
+
+ ДПриемник.Записать();
+КонецПроцедуры
+
+&НаСервере
+Процедура СкопироватьДвижения_РН(ДИсточник, Приемник, ИмяРегистра)
+ Если Ложь Тогда
+ ДИсточник = РегистрыНакопления.БухгалтерскиеВзаиморасчетыССотрудниками.СоздатьНаборЗаписей();
+ КонецЕсли;
+
+ ДПриемник = Приемник.Движения[ИмяРегистра];
+
+ ЗаполнитьЗначенияСвойств(ДПриемник.Отбор, ДИсточник.Отбор,,"Регистратор");
+
+ Для Каждого ТекСтр Из ДИсточник Цикл
+ НовСтр = ДПриемник.Добавить();
+ ЗаполнитьЗначенияСвойств(НовСтр, ТекСтр,,"Регистратор");
+ КонецЦикла;
+
+ ДПриемник.Записать();
+КонецПроцедуры
+
+&НаСервере
+Процедура СкопироватьДвижения_РБ(ДИсточник, Приемник, ИмяРегистра)
+ Если Ложь Тогда
+ ДИсточник = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
+ КонецЕсли;
+
+ ДПриемник = Приемник.Движения[ИмяРегистра];
+
+ ЗаполнитьЗначенияСвойств(ДПриемник.Отбор, ДИсточник.Отбор,,"Регистратор");
+
+ Для Каждого ТекСтр Из ДИсточник Цикл
+ НовСтр = ДПриемник.Добавить();
+ ЗаполнитьЗначенияСвойств(НовСтр, ТекСтр,,"Регистратор");
+
+ СкопироватьСубконто(ТекСтр, НовСтр, "Субконто");
+ СкопироватьСубконто(ТекСтр, НовСтр, "СубконтоДт");
+ СкопироватьСубконто(ТекСтр, НовСтр, "СубконтоКт");
+ КонецЦикла;
+
+ ДПриемник.Записать();
+КонецПроцедуры
+
+&НаСервере
+Процедура СкопироватьДвижения_РР(ДИсточник, Приемник, ИмяРегистра)
+ Если Ложь Тогда
+ ДИсточник = РегистрыРасчета[ИмяРегистра].СоздатьНаборЗаписей();
+ КонецЕсли;
+
+ ДПриемник = Приемник.Движения[ИмяРегистра];
+
+ ЗаполнитьЗначенияСвойств(ДПриемник.Отбор, ДИсточник.Отбор,,"Регистратор");
+
+ Для Каждого ТекСтр Из ДИсточник Цикл
+ НовСтр = ДПриемник.Добавить();
+ ЗаполнитьЗначенияСвойств(НовСтр, ТекСтр,,"Регистратор");
+ КонецЦикла;
+
+ ДПриемник.Записать();
+КонецПроцедуры
+
+&НаСервере
+Процедура СкопироватьДвиженияДокумента(Источник, Приемник)
+ Если Приемник.Пустая() Тогда
+ Операция = Документы.ОперацияБух.СоздатьДокумент();
+ Иначе
+ Операция = Приемник.ПолучитьОбъект();
+ КонецЕсли;
+
+ Операция.ОбменДанными.Загрузка = Истина;
+
+ ЗаполнитьЗначенияСвойств(Операция, Источник,, "Ссылка,Номер,ВерсияДанных,Движения,ДополнительныеСвойства,ОбменДанными,Проведен");
+
+ Попытка
+ Операция.Записать(РежимЗаписиДокумента.Запись);
+ Исключение;
+ КонецПопытки;
+
+ Приемник = Операция.Ссылка;
+
+ Для Каждого ТекКолекцияДвижений Из Источник.Движения Цикл
+ мИмяРегистра = СтрРазделить(ТекКолекцияДвижений.Метаданные().ПолноеИмя(), ".", Ложь);
+ ТипРегистра = мИмяРегистра[0];
+ ИмяРегистра = мИмяРегистра[1];
+
+ Если НЕ ОбщегоНазначенияКлиентСервер.ЕстьРеквизитИлиСвойствоОбъекта(Операция.Движения, ИмяРегистра) Тогда
+ Продолжить;
+ КонецЕсли;
+
+ ТекКолекцияДвижений.Прочитать();
+
+ ТаблицаРегистров = "";
+ Если "РегистрНакопления" = ТипРегистра Тогда
+ ТаблицаРегистров = "ТаблицаРегистровНакопления";
+ СкопироватьДвижения_РН(ТекКолекцияДвижений, Операция, ИмяРегистра);
+ ИначеЕсли "РегистрСведений" = ТипРегистра Тогда
+ ТаблицаРегистров = "ТаблицаРегистровСведений";
+ СкопироватьДвижения_РС(ТекКолекцияДвижений, Операция, ИмяРегистра);
+ ИначеЕсли "РегистрБухгалтерии" = ТипРегистра Тогда
+ СкопироватьДвижения_РБ(ТекКолекцияДвижений, Операция, ИмяРегистра);
+ ИначеЕсли "РегистрРасчета" = ТипРегистра Тогда
+ СкопироватьДвижения_РР(ТекКолекцияДвижений, Операция, ИмяРегистра);
+ КонецЕсли;
+
+ Если НЕ ПустаяСтрока(ТаблицаРегистров) И 0 < ТекКолекцияДвижений.Количество() Тогда
+ НовСтр = Операция[ТаблицаРегистров].Добавить();
+ НовСтр.Имя = ИмяРегистра;
+ КонецЕсли;
+ КонецЦикла;
+КонецПроцедуры
\ No newline at end of file