0. Alex_E 2104 23.11.15 17:18 Сейчас в теме

[COM] Перенос данных через COMConnector

Обработка обмена между двумя информационными базами схожей (не обязательно совпадающей) структуры. Изначально была заточена под бухгалтерию предприятия, сейчас используется для для обменов через COM любых конфигураций с режимом запуска "Управляемое приложение".
Ближайший аналог - выгрузка-загрузка XML, но здесь нет промежуточных файлов выгрузки/загрузки, и обмен не прекращается в случае, когда состав реквизитов источника и приёмника различен!!!

22.05.2020 Версия 5.2.3.4 Исправлена ошибка в таблице соответствия планов счетов, любезно подсказанная Fox_65. Все реквизиты таблицы соответствия теперь с типом строка, чтобы избежать в дальнейшем повторения этой ошибки, если обработку вдруг будет сохранена в конфигурации, не имеющей Плана счетов Хозрасчтный. Соответственно изменены заполнеие таблицы соответствия счетов и поиск счетов между базами. Из нового - добавлен возможность переноса Счетов на оплату покупателю из КА 1.1 в Заказ клиента КА 2.4 (случилась такая хотелка у клиента) (тестировалось на платформе 8.3.17.1386, БП 3.0.77.89 )

Перейти к публикации

Комментарии
Избранное Подписка Сортировка: Древо развёрнутое
Свернуть все
88. citkhv 10.08.17 07:15 Сейчас в теме
при переносе учетной политики пишет не заполнены реквизиты дата ввода начальных остатков
90. Alex_E 2104 10.08.17 07:17 Сейчас в теме
(88) строки модуля формы с 1134 по 1136 комментарим
93. citkhv 10.08.17 07:20 Сейчас в теме
(90)
только это комментим?

//УчетнаяПолитикаОрганизаций
ПереносРегистраСведений(ОргCOM, ОргУП, "Организация", ?(Редакция3044COM, "УчетнаяПолитика", "УчетнаяПолитикаОрганизаций"), ?(Редакция3044, "УчетнаяПолитика", "УчетнаяПолитикаОрганизаций"), НачалоМесяца(ДобавитьМесяц(ДатаВводаНачальныхОстатков, 1)));
95. citkhv 10.08.17 07:24 Сейчас в теме
Не работает Перенос справочника Подразделений пишет Произошла исключительная ситуация (1C:Enterprise 8.3.9.1850): {(11, 29)}: Поле не найдено "ПодразделенияОрганизаций.ГоловнаяОрганизация"
И ПодразделенияОрганизаций.<<?>>ГоловнаяОрганизация = &Организация
96. Alex_E 2104 10.08.17 07:25 Сейчас в теме
строку модуля 840 заменить на:

ПустойОбъект = ?(ТипОбъекта = "Документ", Коннект.Documents[ИмяОбъекта].СоздатьДокумент(), Коннект.Catalogs[ИмяОбъекта].СоздатьЭлемент());

Это для подразделения
97. citkhv 10.08.17 07:27 Сейчас в теме
строки модуля формы с 1134 по 1136 комментарим

только это комментим?

//УчетнаяПолитикаОрганизаций
ПереносРегистраСведений(ОргCOM, ОргУП, "Организация", ?(Редакция3044COM, "УчетнаяПолитика", "УчетнаяПолитикаОрганизаций"), ?(Редакция3044, "УчетнаяПолитика", "УчетнаяПолитикаОрганизаций"), НачалоМесяца(ДобавитьМесяц(ДатаВводаНачальныхОстатков, 1)));

Или еще следующие 2 строчки
98. citkhv 10.08.17 07:30 Сейчас в теме
При нажатии заполнить список для всех справочников пишет {ВнешняяОбработка.ПереносДанныхБП_БП30.МодульОбъекта(857)}: Значение не является значением объектного типа (Метаданные)
Для Каждого стр Из ПустойОбъект.Метаданные().Реквизиты Цикл
99. citkhv 10.08.17 07:31 Сейчас в теме
(98)Нет соответсвующего документа! Надо доработать!!!{ВнешняяОбработка.ПереносДанныхБП_БП30.МодульОбъекта(844)}: Ошибка при вызове метода контекста (СоздатьЭлемент): Произошла исключительная ситуация (1C:Enterprise 8.3.9.1850): Ошибка инициализации модуля: ОбщийМодуль._Подписки.Модуль
{ОбщийМодуль._Подписки.Модуль(26,8)}: Переменная не определена (КОМ)

{ВнешняяОбработка.ПереносДанныхБП_БП30.МодульОбъекта(501)}: Ошибка при вызове метода контекста (ЗаполнитьЗначенияСвойств): Недопустимое значение параметра (параметр номер '2')
101. Alex_E 2104 10.08.17 07:36 Сейчас в теме
(99) Напишите почту в личку, пришлю изменённый вариант, по одной строке муторно очень
102. citkhv 10.08.17 07:38 Сейчас в теме
(101) отправил в личку. Жду по почте измененный вариант
113. Alex_E 2104 16.10.17 12:45 Сейчас в теме
(99) Про общий модуль, обслуживающий подписки на события уже было - подключался по амми админу - косяк был именно там.Здесь тоже ошибка в самописном модуле, я её предусмотреть или обойти не смогу при всём желании))))))))))
{ОбщийМодуль._Подписки.Модуль(26,8)}: Переменная не определена (КОМ) 
-
переменная КОМ не моя......
100. Alex_E 2104 10.08.17 07:35 Сейчас в теме
строка модуля 1727 заменить на

Если НовОбъект.Метаданные().СтандартныеРеквизиты.Найти(стрCOM.Name) = Неопределено Тогда Продолжить КонецЕсли;
103. citkhv 11.08.17 00:43 Сейчас в теме
Обработка останавливалась с ошибкой из за того что у меня была доработанная конфигурация а не типовая. автор помог мне обойти мою ошибку и у меня все перенеслось. Благодарю автора.
104. sp1nfun 08.10.17 18:36 Сейчас в теме
В последнем обновлении с какого на какой релиз идет перенос данных?
105. Alex_E 2104 09.10.17 04:38 Сейчас в теме
(104)
19.09.2017 Версия 4.4.5.7 Исправлена проверка подключения для 3.0.52.*
- делалось на 3.0.52.32
106. Zexes 16.10.17 10:44 Сейчас в теме
Добрый день.
Пользуюсь регулярно спасибо.
А можно перенести данные из 3 корп в 3 бп? Там нужно переносить только документы поступления.

Разумеется данные о подразделении можно выкинуть, там перенос в техническую базу, для каких-то аналитических исследований :)
107. Alex_E 2104 16.10.17 11:44 Сейчас в теме
(106) Можно, почему нет? Если КОРП в КОРП, то, наверное, и подразделения перенесутся - для одинаковых конфигураций перенос идёт реквизит в реквизит, если только эти реквизиты не включены в список исключаемых из обмена...
108. Zexes 16.10.17 12:01 Сейчас в теме
Да нет, проблема видимо в другом, даже не переносит из бп в бп (последний релиз)
При нажатии кнопки перенести ссылки, вылетает недостаточно фактических параметров.
Прикрепленные файлы:
109. Alex_E 2104 16.10.17 12:22 Сейчас в теме
(108) У Вас не последняя версия обработки
110. Zexes 16.10.17 12:26 Сейчас в теме
(109)Согласен, клоун, скачал самую верхную а она ПереносДанныхЧерезCOM_v4.0.5.5 =( понедельник, блин.
111. Alex_E 2104 16.10.17 12:28 Сейчас в теме
(110) Дайте в личку почту, пришлю последнюю...
112. Zexes 16.10.17 12:36 Сейчас в теме
(111)да я уже скачал новую 4,0,5,7 но все равно что-то ошибка недостаточно параметров =( Хотя подключение устанавливает нормально. А вот что интересно, старый вариант 4,0,1,0 переносит хорошо, но только по одному документу. Если несколько указать, перенесет только первый и зависнет, если выгрузить 1с и загрузить, можно будет перенести следующий =)
114. Alex_E 2104 16.10.17 12:46 Сейчас в теме
(112) давайте на досуге я подключусь и посмотрим - у меня таких проблем не наблюдается...
115. Zexes 18.10.17 01:21 Сейчас в теме
(114) кстати проблема решилась, когда убрал галочку Перезап. в принципе, в моем случае она в 99% не нужна! Большое Вам спасибо за труд!
117. smile2009 18.10.17 11:21 Сейчас в теме
(115)
Гляньте мое сообщение ниже. Похоже у Вас схожая проблема.
116. smile2009 18.10.17 11:19 Сейчас в теме
Спасибо за обработку!
Версия 4.0.5.7.

Ошибка возникла при переносе документа ОперацияБух в процедуре _ПереносДвижений().

Процедура _ПереносДвижений(_СтрокаXML, Док, ИдДок, ИдДокCOM = "") Экспорт
	Если Док.Дата < НачалоПериода и ПереноситьДвижения Тогда Сообщить("Дата документа " + Док + " меньше даты начала переноса! Движения перенесены не будут."); Возврат; КонецЕсли;


// ИСКЛЮЧЕНИЕ ЗДЕСЬ!!!
	ДокCom = ПолучитьЗначениеСсылкиПоГУИД(?(ТипЗнч(_СтрокаXML) = Тип("Строка"), Коннект.NewObject("UUID", _СтрокаXML), _СтрокаXML), Коннект.Documents[?(ИдДокCOM = "", ИдДок, ИдДокCOM)]);
...


ЛЕЧИТСЯ ТАК:
Вставляем обработчик исключения, и в случае исключения, присваиваем ДокCom = _СтрокаXML.
Дело в том, что в строке _СтрокаXML уже находится COM-ссылка на операцию. Почему не отрабатывает ПолучитьЗначениеСсылкиПоГУИД() разбираться не стал. В итоге, выгрузка операций прошла на ура (кидал из БП3 в БП3)

Попытка
		ДокCom = ПолучитьЗначениеСсылкиПоГУИД(?(ТипЗнч(_СтрокаXML) = Тип("Строка"), Коннект.NewObject("UUID", _СтрокаXML), _СтрокаXML), Коннект.Documents[?(ИдДокCOM = "", ИдДок, ИдДокCOM)]);
	Исключение
		ДокCom = _СтрокаXML;
	КонецПопытки;
118. Alex_E 2104 18.10.17 11:48 Сейчас в теме
119. 26178_mail.ru 57 23.10.17 04:25 Сейчас в теме
при переносе такая ошибка {ВнешняяОбработка.ПереносДанныхБП_БП30.МодульОбъекта(2961)}: Получение элемента по индексу для значения не определено
СсылкаCOM = ПолучитьЗначениеСсылкиПоГУИД(Коннект.NewObject("UUID", СокрЛП(ГУИД)), Коннект[?(ТипCOM = "Документ", "Documents", "Catalogs")][ИдентификаторCOM]);

Что это может быть?7 Заранее спасибо
120. 26178_mail.ru 57 23.10.17 04:31 Сейчас в теме
и еще такая ошибка
{ВнешняяОбработка.ПереносДанныхБП_БП30.Форма.Форма.Форма(768)}: Недостаточно фактических параметров
Возврат РеквизитФормыВЗначение("Объект").ПереносЛюбойСсылкиCOM(ГУИД);

действительно в самой процедуре 3 параметра а передается один параметр как такое может быть??
121. Alex_E 2104 23.10.17 08:31 Сейчас в теме
(120) Какая версия обработки? Пришлите почту в личку - пришлю последнюю.
122. killer8-00 28.11.17 16:53 Сейчас в теме
Добрый вечер. Скачал последнюю версию обработки. Пытаюсь создать подключение к базе 8.2 корп и получаю такую ошибку. Подскажите как исправить?
Прикрепленные файлы:
124. Alex_E 2104 28.11.17 17:08 Сейчас в теме
(122) Уже много раз отвечал на подобный вопрос - скопипастите ошибку в гугл - получите тучу ссылок.... Начините с поста (4) к этой публикации...
(123) Не стоит плодить сущности, заполните существующие документы в источнике - там этот документ из 2.0 в 3.0 он переносится по своему алгоритму (ну должен, как я помню), у Вас исходная база КОРП?, проверьте ИмяКонфигурацииИсточника, возможно там стоит "БП30" , поскольку КОРП не прописан (нет базы под руками, проверьте и просто допишите в список конфигураций КОРП - должно быть "БП20").
123. killer8-00 28.11.17 17:02 Сейчас в теме
С этой проблемой разобрался. Теперь вылезла другая.
Прикрепленные файлы:
125. killer8-00 28.11.17 18:53 Сейчас в теме
Прописал версию корп. Мне необходимо перенести всего 2 вида документа. Подскажите где подправить, чтоб заработало.Спасибо.
Прикрепленные файлы:
126. Alex_E 2104 28.11.17 18:57 Сейчас в теме
(125) Пишите в личку, решим вопрос
127. Alex_E 2104 06.12.17 09:01 Сейчас в теме
Выложил новую версию 5.2.0.4 Переработан алгоритм поиска ссылок. Добавлены процедуры переноса из БП 1.6, жёсткой привязки к БП больше нет - спокойно можно использовать для переноса данных "почти" одинаковых конфигураций. Все замечания постараюсь оперативно исправить.
128. irbis-auto 05.02.18 18:47 Сейчас в теме
1) А где версия 5.2.2.3 о которой вы пишите?
2) Почему вы добавили изменения в версию 5.2.0.4 "Поиск по реквизитам", а не в более поздние версии, например в 5.2.2.2 (которая на сайте выложена) или 5.2.2.3 (которая нет, но вы пишите что сделана-вопрос №1) ?
3) Учитывая вопрос №2: увеличение версии релиза обработки не означает, что всё что есть в старой обработки есть либо улучшено в новой обработке, т.е. например: релиз 5.2.2.2 - это доработанная (улучшенная) версия релиза 5.2.0.4 или это совсем разные обработки, каждая с определенной своей доработкой ?
129. Alex_E 2104 05.02.18 18:56 Сейчас в теме
(128) Спасибо, что сказали, всё написал, а файл не прикрепил...почему-то.........
Сейчас файл на месте.
130. irbis-auto 06.02.18 13:09 Сейчас в теме
(128)
На первый вопрос вы ответили
После того как вы выложили релиз 5.2.2.3, то второй и третий вопрос снимаются. Увидел что там всё есть.
131. Alex_E 2104 06.02.18 13:18 Сейчас в теме
(130) Вчера отвечал не на первый вопрос, а на один, остального просто не было (ну, или я не заметил)...
А так, каждая новая версии - это развитие предыдущей...иногда , случается, что делается * до более "стабильной" версии, на которой делаются доработки...
Бывает, что исправляя одно, могу поломать что-то другое, и это не сразу может быть замечено...
Обработка существует уже не один год, постоянно что-то дописывается, как в плане найденных ошибок, так и в связи с изменениями в платформе, и конфигурациях...

Так что, прошу прощения за доставленные неудобства, и отнеситесь с пониманием: косячу я не со зла, просто так получается )))))))))))
132. v.zagorodniy 13.02.18 19:46 Сейчас в теме
Здравствуйте! Обработка хороша! Вот только учетная политика к сожалению не переноситься ни за какие периоды, а также настройки налогов по организациям. Я так думаю из-за регистров сведений. БП 3.0.57.17. Платформа 1С:Предприятие 8.3 (8.3.11.2899)
133. Alex_E 2104 13.02.18 20:00 Сейчас в теме
(132) С учетной политикой, честно говоря, мне воевать уже надоело - от релиза к релизу практически, вылезают разные нежданчики... В принципе, установить вручную её реально, а вот какого то вменяемого переноса сделать так и не удалось - работает, фактически, только пока пишешь))))

Про за различные периоды - специально убрал - были случаи лет по за 10 переносилось, что не нужно совершенно, но можно вернуть тот вариант. Кстати, возможно стало хуже после попытки "отвязки" от БП. Для той же, ИМХО, БП более актуально переносить настройки Плана счетов, в смысле аналитики учета ТМЦ, сотрудников в зарплате и пр. - всё это работало, но, рано я радовался, в какой-то момент, нежданно, перестало)))
134. Glagoleva 07.09.18 15:22 Сейчас в теме
купил
Перенос данных через COMConnector v 5.2.2.8, думал переносить УТ11 - Ут11, в первых сразу ошибка, в спр "организации" нет кода, во вторых список докумекнтов не заполняется совсем, что делать?
135. Alex_E 2104 07.09.18 15:26 Сейчас в теме
(134) Переносите по ГУИД а не по реквизитам, или в макете уберите поиск по коду. Если сложно - пишите в личку - покажу через АА...
136. Glagoleva 07.09.18 15:27 Сейчас в теме
Оки по разбираюсь сам, может напишу
137. Alex_E 2104 07.09.18 15:34 Сейчас в теме
(136) Поиск по ГУИД писать не нужно - кнопка на форме, а вот если по реквизитам - то макет в обработке, вроде в описании это было...
138. Alex_E 2104 07.09.18 15:53 Сейчас в теме
(136) Ошибка поиска организации - заменить функцию ЗаполнитьСписокОрганизацийCOM в моделе обработки на
Функция ЗаполнитьСписокОрганизацийCOM(тз) Экспорт
	Если Коннект = Неопределено Тогда Если Не ПодключитьИБ() Тогда	Сообщить("Не удалось установить подключение к ИБ!!!");	Возврат Новый ТаблицаЗначений; КонецЕсли; КонецЕсли;
	Запрос = Коннект.NewObject("Query");	
	ЗапросТекст = 
	"ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	Организации.Код,
	|	Организации.Наименование,
	|	Организации.Ссылка
	|ИЗ
	|	Справочник.Организации КАК Организации";
	Если Не ЕстьРеквизитИлиСвойствоОбъекта(Коннект.Catalogs.Организации.CreateItem(), "Код") Тогда
		ЗапросТекст = СтрЗаменить(ЗапросТекст, "Организации.Код,", """"" КАК Код,");
	КонецЕсли;
	Запрос.Текст = ЗапросТекст;
	Результат = Запрос.Выполнить().Выгрузить();
	Для Каждого стр Из Результат Цикл
		НовСтр = тз.Добавить();
		ЗаполнитьЗначенияСвойств(НовСтр, стр);
		НовСтр.ГУИД = "" + Коннект.XMLСтрока(стр.Ссылка);
	КонецЦикла;
	Возврат тз;
КонецФункции
Показать

Сейчас выложу новую версию (остальное не проверял правда).
139. visim 1 12.12.18 15:48 Сейчас в теме
купил, пробую...
Не удалось подключиться...Сервер 1С Предприятия не обнаружен...
БП 8.3 , релизы немного разные, кластеры разные , и версии их разные - 8.3.10 и 8.3.13 ... Решаемо?
140. Alex_E 2104 12.12.18 16:03 Сейчас в теме
(139)
Сервер 1С Предприятия не обнаружен...
- у вас база - источник НЕ ФАЙЛОВАЯ?
Релизы разные - не важно, кластеры разные - не могу знать как там настроено - тут один вопрос: с того рабочего места, с которого запускается обработка база источник может быть открыта "напрямую" через ярлык? Если да, то в настройках подключения должны быть же параvетры, что и ярлыке. Если нет - то не получится открыть и через com, КМК...
141. visim 1 12.12.18 16:07 Сейчас в теме
(140)Да ,серверная , открывается по ярлыку...
Источник Srvr="BK";Ref="UgMF";
Приемник Srvr="10.10.0.93";Ref="bp3"; по впн подключается... в ней обработка запущена..
142. Alex_E 2104 12.12.18 16:26 Сейчас в теме
(141) По впн вряд-ли не получится - переносите на один сервер. базы должны открываться с одного рабочего стола...
143. visim 1 12.12.18 16:56 Сейчас в теме
(142)они и открыты на одном рабочем столе... правда, тонкий клиент - это не может влиять?
144. Alex_E 2104 12.12.18 17:07 Сейчас в теме
(143) На одном рабочем столе, но не с одного ярлыка, насколько я понял... Если перенос "одноразовый" (в смысле не на постоянной основе типа каждый день/месяц), то самый простой способ - развернуть копию источника на одном сервере с приёмником ...
145. visim 1 13.12.18 12:45 Сейчас в теме
"Произошла исключительная ситуация (V83.COMConnector.1): Несоответствие версий клиента и сервера 1С:Предприятия
Различаются версии клиента и сервера (8.3.13.1513 - 8.3.12.1469), клиентское приложение: COM-соединение"

это при запуске из базы в файловом варианте... подключение к серверной базе...
Проверил...при одном релизе - без проблем..
Уточните в описании , что релиз платформы должен быть один,- и у сервера, и у файловой базы тоже...
146. Alex_E 2104 13.12.18 14:45 Сейчас в теме
(145) Не уверен, что это правда. COM коннектор может работать с разными платформами, то, что у Вас не получилось - это именно у Вас не получилось... А так, по этому поводу много написано, в том числе и здесь на ИС...(наберите в поиске по сайте COM - там куча ссылок)

ЗЫ Были случаи, когда люди не вообще не могли соединиться, не смотря на все усилия...но никто не предлагал уточнить в описании, что это не работает...
147. visim 1 18.12.18 15:05 Сейчас в теме
(146)
Не уверен, что это правда

Могу прислать скриншот, или дать подключение - сами посмотрите...
148. Alex_E 2104 18.12.18 15:41 Сейчас в теме
(147) Скриншот делу не поможет, а разбираться с настройками Вашего сервера, оно мне надо?)))) Ещё раз - посмотрите сколько публикаций только на ИС по этому поводу - Ваши выводы ... ну такие радикальные - по типу у Вас не получилось - значит этого нет....
149. visim 1 18.12.18 16:16 Сейчас в теме
Большинство публикаций предлагают "костыли" , в виде создания обертки COM+ для нужных версий, которые нужно строить заново при обновлении платформы , а это админский доступ к серверу и к коду обработки, где это com-соединение нужно менять..- оно мне нужно,- разбираться в Вашем коде? Поэтому предлагаемая обработка без дополнительных настроек сервера и правки кода худо-бедно РАБОТАЕТ на одной версии клиента-сервера источника и приемника, о чем и предлагаю предупреждать в описании..
150. Alex_E 2104 18.12.18 18:41 Сейчас в теме
(149)
... худо-бедно РАБОТ...
- ну спасибо и на этом (код подключения, правда я из БСП стырил, но не суть) собственно этот разговор тут уже и есть предупреждение, на чём и остановимся...
151. diocon 29.01.19 12:16 Сейчас в теме
В общем, обработка хорошая. Особенно, когда представишь, чего это стоило Автору! Респект.
В процессе адаптации для своей задачи выявил 2 проблемы:
1) Процедура _ПереносДвижений: В коде

Если РегистрыСДвижениями.Количество() Тогда

Лучше использовать

Если РегистрыСДвижениями.Count() Тогда

2) Прям серьезная проблема, вводит рекрсивный алгоритм в бесконечный цикл. Для полноценного решения нужно адаптировать архитектуру решения. Суть проблемы в том, что в движениях может использоваться ссылка на документ-регистратор, но с другим названием. И это вызывает новый рекурсивный цикл, который снова начинает переносить движения...

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

В качестве костыля в функции _ПеренестиЗаписьРегистраНакопления в части, касающейся переноса измерений регистра,
добавил проверку на измерение "СчетФактура". В идеальном случае, конечно, нужно проверять, не равно ли значение измерения в источнике ссылке на регистратор!

Если Коннект.XMLString(РесурсCOM) <> "00000000-0000-0000-0000-000000000000" Тогда
// происходит зацикливание, когда реквизит содержит ссылку на документ-регистратор!
Если стр.Имя<>"СчетФактура" Тогда
_Записать[стр.Имя] = _ПеренестиРеквизит(РесурсCOM,,,Ложь);//ПеренестиСсылкуПоГУИД(Коннект.XMLString(РесурсCOM), _Записать[стр.Имя].Метаданные().Имя, РесурсCOM);
КонецЕсли;
КонецЕсли;
152. Alex_E 2104 29.01.19 12:34 Сейчас в теме
(151)
Лучше использовать

Если РегистрыСДвижениями.Count() Тогда
Кириллица в COM соединении - это песня, в ранних версиях не заморачивался, пока не выяснилось, что некоторых ситуациях работает только латинский вариант... Где вижу - меняю, спасибо, поправлю замеченное Вами...

По бесконечному циклу надо смотреть, проверка на счет-фактуру - именно костыль, наверное придумается более универсальное решение (ну, кроме не переносить движения, а просто провести документы после переноса))))

СПАСИБО за ошибки - буду посмотреть, вот только год закрою у клиентов - сможет время появится...
153. StAsya_1C 21 27.03.19 15:02 Сейчас в теме
(152)
Алексей, спасибо за обработку, попробуем её в своих целях.
Вопросы есть.
1) в базе-источнике есть документ "Операция (бух). Если при переносе не стоит галки, что переносим с движениями, то получается операция пустая придет? (нам в общем случае движения документов не нужны, будем перепроводить, а вот движения операции - это отдельная тема, и они нужны)
2) при первом запуске перенеслось наименование программы, хотя вроде макет по непереносимым вещам не трогала. Это запланированное поведение?
154. Alex_E 2104 27.03.19 15:24 Сейчас в теме
(153) 1) В операциях, ЕМНИП, галка необязательна - движения переносятся всегда, на то она и оперция (как и корректировка движений в УТ или перенос данных в ЗУП).
2) не совсем понял про наименование программы...
155. StAsya_1C 21 27.03.19 15:31 Сейчас в теме
(154) Операцию попробую.
А про наименование - ну константа "Заголовок системы" , про нее речь
156. Alex_E 2104 27.03.19 15:45 Сейчас в теме
(155) Ну про заголовок, я не помню, его в исклобчения включал или нет...
157. StAsya_1C 21 28.03.19 16:14 Сейчас в теме
(156)
В исключениях он висит.
Пока не особо изучила обработку, но при первом запуске, в процедуре "ПереносУчетнойПолитики" идет перенос

Для Каждого стр Из Метаданные.Константы Цикл
			Если НЕ Коннект.Metadata().Constants.Find(стр.Имя) = Неопределено Тогда
				Попытка
					КонстантаCOM = Коннект.Constants[стр.Имя].Get();
					Константы[стр.Имя].Установить(_ПеренестиРеквизит(КонстантаCOM,,,Ложь));			
				Исключение
					Сообщить(ОписаниеОшибки());
				КонецПопытки;
			КонецЕсли;
		КонецЦикла;
Показать


Тут нету ограничений на тот "непереносимый список" , как я понимаю нужно сделать что-то типа

СписокИсключаемых = ПолучитьДанныеИзМакета ("ИсключитьИзПереноса", "Список", 1, 0, "Константы");
Если СписокИсключаемых.НайтиПоЗначению(стр.Имя) = Неопределено Тогда
... КонецЕсли;
158. Alex_E 2104 28.03.19 16:22 Сейчас в теме
(157) Чтобы работал список непереносимых, конечно нужно проверять при переносе, если я не прописал - то примеров там полно, список заполняется один раз при первом обращении, потом просто используется. У меня сейчас жуткий цейтнот, посмотреть некогда...но, если у Вас что-то не получится, могу посмотреть через АА, но попозже...
165. Tarlich 86 04.07.19 13:13 Сейчас в теме
Ой СПАСИБО!!! выручила обработочка!!! а то итс-ская не справилась....
168. DEG156 27 03.11.19 18:53 Сейчас в теме
Автор пишет, что последняя версия

07.09.2018 Версия 5.2.2.9

но в ссылке для скачивания ее нет ?!
169. Alex_E 2104 03.11.19 19:33 Сейчас в теме
(168) В принципе ссылками я не распоряжаюсь, что загрузил, то и висит, тут к тех поддержке сайта вопрос наверное... и в публикации последняя загруженная версия 5.2.3.2...
170. karaw 127 02.12.19 13:03 Сейчас в теме
Используем Перенос данных через COMConnector v 5.2.2.8 перенос документа Отражение зарплаты в бухучёте между типовыми БП 3.0 (загрузка из копии базы за предыдущий день). Подключение прошло, ссылки для переноса выделили, но при переносе выдаёт "Переполнение стека встроенного языка на сервере". С чем может быть связано, подскажите пож-та.
171. Alex_E 2104 02.12.19 14:02 Сейчас в теме
(170) Скорее всего программа свалилась в бесконечный цикл, после Вашей версии были исправления, насколько я помню...
172. karaw 127 02.12.19 18:14 Сейчас в теме
(171) А можно получить обновлённую версию? Или опять за бабосы?
173. karaw 127 02.12.19 20:22 Сейчас в теме
(171) Спасибо, Alex_E ! Не без Вашей помощи, всё получилось
174. Fox_65 8 20.05.20 17:01 Сейчас в теме
Отличная обработка. Купил для переноса Из БП2 в БП3. После перехода на БП3 бухгалтера продолжали работать в БП2 и наколотили туда полно. Переносит все кроме счетов в таблице сравнения счетов. Поправьте - там в функции идет возврат из таблицы как счет, а в таблице это строка. Есть еще конечно беда с переполнением стека. Но переносить по 10 документов можно всё быстрее чем вручную.
175. Alex_E 2104 20.05.20 19:03 Сейчас в теме
(174) Таблица сравнения, в моей обработке соответствует моей же политике - я считаю, что надо использовать типовой план счентов, и потому таблица сравнения нужна для того, чтобы переносить данные с НЕтиповых счетов в типовые...если настройки Плана счетов исходной базы из кожи вон надо сохранить - то настраивайте План счетов приёмника врукопашную - хотя настоятельно рекомендую проанализировать их (настроек Плана счетов) необходимость.
Потому ничего переносить в этом плане даже не планирую. К тому же, если перенос и з 2.0 в 3.0, то там есть отличия даже в типовых Планах счетов, и опять таки таблица соответствия позволяет малой кровью перенести данные по несовпадающим счетам не плодя новые...
176. Fox_65 8 21.05.20 13:34 Сейчас в теме
Политика правильная, если развиваетесь в сторону конфигураций без плана счетов. И все правильно в БП2 Счет 10.03, а в БП3 Счет 10.03.1.
Но ошибки все же исправьте (у себя я исправил).
1) При вводе в таблицу сравнения заполняется название счета :
Функция УстановитьНаименованиеСчета(Счет) Возврат Счет.Наименование, а счет у Вас тип Строка, поэтому ругается.
2) При выгрузке Функция ПереносСчета(КодСчетаCOM) Возврат СчетСоответствия.Счет Также возвращается строка с кодом счета, а не счет, поэтому в результирующий документ счет не переносится.
177. Alex_E 2104 21.05.20 13:39 Сейчас в теме
180. Alex_E 2104 21.05.20 14:31 Сейчас в теме
(176) Кстати эта ошибка связана с тем, что сохранил обработку в конфгурации, где не было плана счетов, надо будет подумать, как избежать в будущем такого косяка - уже не впервый раз такое происходит
178. Fox_65 8 21.05.20 13:48 Сейчас в теме
И хотел поинтересоваться. Выгружаются не все документы. В частности Формирование книги покупок не выгружается. Доработаете в следующих версиях?
179. Alex_E 2104 21.05.20 13:59 Сейчас в теме
(178) Посмотрите в макете - там список ссылок, которые пропускаются, уберите то, что считаете нужным переносить или выберите в подборе -
при заполнении списка существующих документов те, что в макете прописаны пропускаются
181. Fox_65 8 22.05.20 12:55 Сейчас в теме
Решение простое. Могу поделиться.
1) Функция УстановитьНаименованиеСчета(Счет)
Попытка
СчетБУ = ПланыСчетов.Хозрасчетный.НайтиПоКоду(Счет);
Возврат СчетБУ.Наименование;
Исключение
Сообщить("Неправильно выбран код счета "+Счет);
КонецПопытки;
КонецФункции
2)Функция ПереносСчета(КодСчетаCOM)
Если ТабСоответствияСчетов.Количество()> 0 Тогда
СчетСоответствия = ТабСоответствияСчетов.Найти(КодСчетаCOM, "КодСчетаCOM");
Если СчетСоответствия <> Неопределено Тогда
Возврат ПланыСчетов.Хозрасчетный.НайтиПоКоду(СокрЛП(СчетСоответствия.Счет));
КонецЕсли;
КонецЕсли;
Возврат ПланыСчетов.Хозрасчетный.НайтиПоКоду(КодСчетаCOM);
КонецФункции
183. Alex_E 2104 22.05.20 13:00 Сейчас в теме
(181) Выложил новую версию, где в реквизитах только строки - даже сохранение обработки в конфигурации без плана счетов её не сломает, как уже неоднократно было.
182. Fox_65 8 22.05.20 13:00 Сейчас в теме
Периодически вылетает ошибка: "Не обнаружено свойство GetObject". С этим можно как-то побороться?
184. Alex_E 2104 22.05.20 13:02 Сейчас в теме
(182) У меня не было ни разу, потому ничего сказать не могу, могу предположить, что СоздатьОбъект вызывается, когда не выбрана ссылка...но это гадание...как в том анекдоте - "я должен это видеть"....
185. Fox_65 8 25.05.20 01:38 Сейчас в теме
Сейчас такая ошибка "Не найдено свойство Metadata", а потом то что в следующем сообщении
188. Alex_E 2104 25.05.20 05:51 Сейчас в теме
(185) Про
"Не найдено свойство Metadata"
писал уже стопитьсот раз - ошибка "плавающая", идентифицировать точно пока не получается - один и тот же код то отрабатывает нормально, а бывает выдает ошибку, в качестве костыля , местами использую конструкцию в виде:
Попытка 
 ....Metala/////
Исключение
 ....Metala()...
КонецПопытки;

Работает, но, понимаю, что не красиво, но ... пока так.
(186) По объект не найден для ссылки могу тольо предположить, что при переносе объект со ссылкой по ГУИД из источника был записан, но потом код не отработал до конца или же документы был перенесен, а потом удален. Такая же ошибка бывает часто в поле оргаизацияя, если сначала перенести организацию, потом очистить её на закладке "Справочники" и перенести вновь - в ле объект не найден, а реально организация перенесена и нормально встаёт при переносе куда нужно
(187) По картинке только ванговать - база даже не режиме отладки... Точку останова на ошибке,и смотреть, что там. Как уже говорил, возможно ссылки COM нет, а попытка переноса есть...
186. Fox_65 8 25.05.20 01:57 Сейчас в теме
И вот такая вещь
Прикрепленные файлы:
187. Fox_65 8 25.05.20 03:09 Сейчас в теме
А вот про что я писал раньше
Прикрепленные файлы:
189. Fox_65 8 25.05.20 11:52 Сейчас в теме
Я работал с регламентными операциями. Ошибка "Метадата" зачастую происходила, когда переносилась операция следующего месяца. Стоило перенести границу последовательности на дату документа, как операция переносилась. А насчет GetObject скорее всего это связано с отсутствием реквизита (пустым) в исходной базе. К примеру нужно перенести операцию, а ее нет, или не заполнен реквизит справочника. Еще вылезали ошибки по регистру себестоимости и книге доходов расходов. Не у всех УСН -это надо учесть.
190. Alex_E 2104 25.05.20 12:13 Сейчас в теме
(189) Метадата при переносе любых объектов возникает, локализации пока не поддаётся...
Про пустую ссылку я сразу и предположил, просто тут надо словить момент её появления и пропускать перенос при её появлении, и тут можно только отладчиком словить - у меня ни разу не встречалось.
Перенос регистров сейчас - это вообще суть экспериментальная, занадобилась в одной базе для одного регистра, включил в обработку, но пока большого количества переносов именно регистров не делал, ничего толком сказать не могу - то что переносил у меня отабатывает...
191. Fox_65 8 26.05.20 01:27 Сейчас в теме
GetObject у вас применяется 2 раза. В одном случае через попытку, второй без. Я поставил и второй случай через попытку. Ошибок пока нет. С metadata может тоже не ловить ошибку, а обойти ее.
192. Alex_E 2104 26.05.20 09:38 Сейчас в теме
(191) Метдата гораздо чаще встречается,и просто игнорировать не стоит - нужно прописывать оба варианта (со скобками и без), потому что один из них обычно срабатывает, объект тогда будет перенесен...
193. Fox_65 8 26.05.20 23:05 Сейчас в теме
Насчет Metadata. Отловил в одном месте такую вещь в отладчике. Конект.Metadata - объект не определен. Конект.Метаданные -Сом Объект. Может в этом все дело?
194. Alex_E 2104 27.05.20 05:42 Сейчас в теме
(193) Всё, что Коннект. есть COM - объекты, за исключением примитивных типов, в отладчике я всё это сто раз видел... вопрос в том что в одном и том же месте это то метод, то свойство...
Оставьте свое сообщение
Новые вопросы с вознаграждением
Автор темы объявил вознаграждение за найденный ответ, его получит тот, кто первый поможет автору.

Вакансии

Автор новостных обзоров на тему 1С и бухучета
Санкт-Петербург
По совместительству

Специалист 1 категории (Методист-аналитик 1С)
Фрязино
зарплата от 100 000 руб.
Полный день

Главный архитектор 1С
Москва
зарплата от 200 000 руб. до 300 000 руб.
Полный день

Программист 1С (Оперативный учет)
Санкт-Петербург
зарплата от 120 000 руб.
Полный день

Программист по 1С:ЗУП
Санкт-Петербург
зарплата от 120 000 руб. до 150 000 руб.
Полный день