Работа с 1С 7.7 через OLE

О заказе
Здравствуйте!
Нужен помощник в написании процедур переноса документов из 7.7 в 8.2 через OLE
Хочу ускориться.
ПРИМЕР описание состоит из 3-х функций:

//Аванс отчет
Процедура ДобавитьСтруктуруПараметров_АвансовыйОтчет(ДокументВИсточнике,ТЗ) Экспорт
    
    НоваяСтрока = ТЗ.Добавить();
    НоваяСтрока.Дата                     = Дата(Формат(ДокументВИсточнике.ДатаДок, "ДФ=dd.MM.yyyy") +" "+ДокументВИсточнике.ПолучитьВремя());
    НоваяСтрока.Номер                    = ДокументВИсточнике.НомерДок;
    НоваяСтрока.ТипДокументаИсточника    = "АвансовыйОтчет";
    НоваяСтрока.ТипДокументаПриемника    = "АвансовыйОтчет";
    НоваяСтрока.СтруктураПараметровШапки = СформироватьСтруктуруПараметровШапки_АвансовыйОтчет(ДокументВИсточнике);
    НоваяСтрока.СтруктураПараметровТЧ    = СформироватьСтруктуруПараметровТЧ_АвансовыйОтчет(ДокументВИсточнике);
    КонецПроцедуры

Функция СформироватьСтруктуруПараметровШапки_АвансовыйОтчет(ДокументВИсточнике)
    
    СтруктураШапки = Новый Структура();
    ИнициализироватьСтруктуруШапки(СтруктураШапки,"АвансовыйОтчет");
    СтруктураШапки.Вставить("Дата" , Дата(Формат(ДокументВИсточнике.ДатаДок, "ДФ=dd.MM.yyyy") +" "+ДокументВИсточнике.ПолучитьВремя()));
    СтруктураШапки.Вставить("Номер", ДокументВИсточнике.НомерДок);
    СтруктураШапки.Вставить("ВалютаДокумента", справочники.Валюты.НайтиПоКоду("398"));
    СтруктураШапки.Вставить("КурсДокумента", 1);
    СтруктураШапки.Вставить("Комментарий", ДокументВИсточнике.Комментарий);
    СтруктураШапки.Вставить("Организация", ПолучитьОрганизацию("ВКонстантах"));
    СтруктураШапки.Вставить("ФизЛицо", ПолучитьФизЛицо(ДокументВИсточнике.Сотрудник));
    СтруктураШапки.Вставить("СчетРасчетовСПодотчетнымЛицом", ПланыСчетов.Типовой.НайтиПоКоду(ДокументВИсточнике.Счет.Код));  
    если ДокументВИсточнике.РУ.код="10000001" тогда
        СтруктураШапки.Вставить("СтруктурноеПодразделение", Справочники.ПодразделенияОрганизаций.НайтиПоКоду("000000001"));
    иначе
        СтруктураШапки.Вставить("СтруктурноеПодразделение", Справочники.ПодразделенияОрганизаций.НайтиПоКоду("777"));
    конецесли;
       Возврат СтруктураШапки;
    
КонецФункции

Функция СформироватьСтруктуруПараметровТЧ_АвансовыйОтчет(ДокументВИсточнике)
    
    СтруктураТЧ = Новый Структура();
    
    ТЗ_ТЧ = Новый ТаблицаЗначений();
    ТЗ_ТЧ.Колонки.Добавить("ВидВходящегоДокумента");
    ТЗ_ТЧ.Колонки.Добавить("НомерВходящегоДокумента");
    ТЗ_ТЧ.Колонки.Добавить("ДатаВходящегоДокумента");
    ТЗ_ТЧ.Колонки.Добавить("Поставщик");
    ТЗ_ТЧ.Колонки.Добавить("Номенклатура");
    ТЗ_ТЧ.Колонки.Добавить("Содержание");
    ТЗ_ТЧ.Колонки.Добавить("Сумма");
    ТЗ_ТЧ.Колонки.Добавить("СтавкаНДС");
    ТЗ_ТЧ.Колонки.Добавить("СуммаНДС");
    ТЗ_ТЧ.Колонки.Добавить("СчетЗатратБУ");
    ТЗ_ТЧ.Колонки.Добавить("СубконтоЗатратБУ1");
    ТЗ_ТЧ.Колонки.Добавить("СубконтоЗатратБУ2");
    ТЗ_ТЧ.Колонки.Добавить("СубконтоЗатратБУ3");
    
    ДокументВИсточнике.ВыбратьСтроки();
    Пока ДокументВИсточнике.ПолучитьСтроку() = 1 Цикл
        
        НоваяСтрока = ТЗ_ТЧ.Добавить();
        НоваяСтрока.ВидВходящегоДокумента     = ДокументВИсточнике.Документ;
        НоваяСтрока.Содержание       = ДокументВИсточнике.КомуЗаЧто;
        НоваяСтрока.СчетЗатратБУ = ПолучитьСчет(ДокументВИсточнике.КорСчетПредставление.Код);
        НоваяСтрока.Сумма            = ДокументВИсточнике.Сумма;
        Для н=1 по 3 цикл
            Субконто=СокрЛП(ПолучитьВидСубконто(ДокументВИсточнике.КорСчетПредставление.Код,ДокументВИсточнике.Субконто1));
            Если СокрЛП(НоваяСтрока.СчетЗатратБУ.ВидыСубконто[н-1].ВидСубконто)=СокрЛП(Субконто) тогда
                если н=1 тогда
                    НоваяСтрока.СубконтоЗатратБУ1=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто1.Наименование);
                иначеесли н=2 тогда
                    НоваяСтрока.СубконтоЗатратБУ2=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто1.Наименование);
                иначе
                    НоваяСтрока.СубконтоЗатратБУ3=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто1.Наименование);
                КонецЕсли;
                если   "Контрагенты"=СокрЛП(Субконто) тогда
                    НоваяСтрока.Поставщик=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто1.Наименование);    
                КонецЕсли;
                
                прервать;
            КонецЕсли;
        КонецЦикла;
        
        Для н=1 по 3 цикл
            Субконто=СокрЛП(ПолучитьВидСубконто(ДокументВИсточнике.КорСчетПредставление.Код,ДокументВИсточнике.Субконто2));
            Если СокрЛП(НоваяСтрока.СчетЗатратБУ.ВидыСубконто[н-1].ВидСубконто)=Субконто тогда
                если н=1 тогда
                    НоваяСтрока.СубконтоЗатратБУ1=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто2.Наименование);
                иначеесли н=2 тогда
                    НоваяСтрока.СубконтоЗатратБУ2=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто2.Наименование);
                иначе
                    НоваяСтрока.СубконтоЗатратБУ3=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто2.Наименование);
                КонецЕсли;
                если   "Контрагенты"=СокрЛП(Субконто) тогда
                    НоваяСтрока.Поставщик=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто1.Наименование);                        
                КонецЕсли;
                
                прервать;
            КонецЕсли;
        КонецЦикла;
        
        Если (ДокументВИсточнике.Субконто3=неопределено)или(ДокументВИсточнике.Субконто3="") тогда
        иначе
            Для н=1 по 2 цикл
                Субконто=СокрЛП(ПолучитьВидСубконто(ДокументВИсточнике.КорСчетПредставление.Код,ДокументВИсточнике.Субконто3));
                Если СокрЛП(НоваяСтрока.СчетЗатратБУ.ВидыСубконто[н-1].ВидСубконто)=Субконто тогда
                    
                    если н=1 тогда
                        НоваяСтрока.СубконтоЗатратБУ1=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто3.Наименование);
                    иначеесли н=2 тогда
                        НоваяСтрока.СубконтоЗатратБУ2=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто3.Наименование);
                    иначе
                        НоваяСтрока.СубконтоЗатратБУ3=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто3.Наименование);
                    КонецЕсли;
                    если   "Контрагенты"=СокрЛП(Субконто) тогда
                        НоваяСтрока.Поставщик=ПолучитьСубконто(Субконто,ДокументВИсточнике.Субконто1.Наименование);                        
                    КонецЕсли;
                    прервать;
                КонецЕсли;
            КонецЦикла;
        конецесли;
        
    КонецЦикла;
    
    СтруктураТЧ.Вставить("ИмяТабличнойЧасти", "Прочее");
    СтруктураТЧ.Вставить("ТабличнаяЧасть"   , ТЗ_ТЧ);
    
    Возврат СтруктураТЧ;
    
КонецФункции
Внимание!
Текущий статус - «на редактировании». Проект - не отображается в списке проекты, а также закрыт доступ для всех по прямой ссылке. Комментарий: «Пожалуйста, приложите пример вложенным файлом»