gifts2017

Загрузка данных из 1С7.7 ЗИК в 1С8.2 ЗУП по каждому элементу справочников и по каждому документу с помощью com-соединения

Опубликовал Сергей Иванов (bookodor) в раздел Обмен - Перенос данных из 1С7.7 в 1C8.X

Обработка по 1C 8.2 "Загрузка данных из 1С7.7 ЗИК в 1С8.2 ЗУП по каждому элементу справочников и по каждому документу с помощью com-соединения".

Для работы обработки надо в форме "ФормаДокумента" документа "НачислениеЗарплатыРаботникамОрганизаций" сделать процедуры "ДействияФормыРассчитатьНДФЛ" и "ДействияФормыРассчитатьВсе" экспортными, т.е. дописать в названии процедур слово "Экспорт". А также в форме "Форма документа" документа ОтражениеЗарплатыВРеглУчете процедуру ДействияФормыЗаполнить сделать экспортной.

Загрузка данных происходит по каждому документу от приёма на работу и по настоящее время. Также загружаются все необходимые справочники и регистры.
В чём преимущество данного решения: возможность сохранить всю историю учёта, сведения о стаже; возможность расчёта среднего заработка для таких документов, как "Начисление отпуска", "Оплата по среднему" и т.п.

Код у обработки открыт. При желании можно самому настроить, переделать под загрузку других конфигураций.

Последний релиз ЗУП, на котором тестировалась обработка, 2.5.83.1

Инструкция к обработке "Загрузка данных из 1С7.7 ЗИК в 1С8.2 ЗУП по каждому элементу справочников и по каждому документу с помощью com-соединения":

Все загружаемые справочники в 1С8.2 должны быть пустыми и документы отсутствовать, т.е. база должна быть чистая.

1) Предварительно в новой базе 1С8.2 надо вручную создать элемент справочника "Организации" (заполнить все реквизиты),.

2) Настроить параметры учёта.

3)  Заполнить справочник "Степени родства физических лиц". Заполнить недостающими элементами справочник "ДокументыУдостоверяющиеЛичность" подбором из классификатора.

4) Заполнить КЛАДР.

5) Заполнить производственный календарь, учитывая праздничные и предпраздничные дни за все периоды, по которым предполагается загрузка документов.

6) Создать и заполнить за все загружаемые периоды графики работы в соответствии с графиками в базе 1С7.7 - наименование в 1С8.2 и 1С7.7 должно быть строго одинаковым !

По наименованию будут отбираться графики работы.

7) Настроить новые планы видов расчёта: ОсновныеНачисленияОрганизаций, ДополнительныеНачисленияОрганизаций, УдержанияОрганизаций.

Наименование у новых видов начислений и удержаний в 8.2 должно быть равно наименованию видов расчета в 7.7 !

Если вид расчёта в 7.7 вводится сотруднику более, чем на 1 месяц, то в 8.2 это основное начисление, иначе - дополнительное начисление.

Поиск по новым видам расчета будет производиться по наименованию !

В случае ненахождения начисления в базе 1С8.2 будет создано новое одноименное с 1С7.7 начисление, но эти новые начисления всё-равно нужно будет настроить после всей загрузки базы.

8) Настроить план видов расчёта СреднийЗаработок, учитывая все новые основные и дополнительные начисления.

9) Загрузить последовательно все данные нажатием соотвествующих кнопок в данной обработке - шаги 2-9.

Шаги можно повторять - данные перезапишутся, если отмечен реквизит Перезаписывать имеющиеся, иначе загрузяться только новые. В любом случае дублирования данных не будет, у каждого объекта свой id (УникальныйИдентификатор), загрузка происходит именно по нему !

Каждый шаг может записываться долго (до нескольких часов) в зависимости от количества объектов. К тому же в 4 шаге при записи каждого элемента справочника "ФизическиеЛица" ещё записываются и другие справочники, регистры по данному физлицу.

При загрузке кадровых документов, надо обязательно учитывать самые ранние кадровые документы в базе 1С7.7 !

10) 10 шаг - создание документов: Начисление страховых взносов (РасчетСтраховыхВзносов), Отражение зарплаты в регл учете (ОтражениеЗарплатыВРеглУчете)

11) Заполнить "вручную" регистр сведений "ОтветственныеЛицаОрганизаций".

12) Настроить созданные автоматически (в случае их отсутствия) ОсновныеНачисленияОрганизаций, ДополнительныеНачисленияОрганизаций, УдержанияОрганизаций. Ещё раз Настроить план видов расчёта СреднийЗаработок.



По каждому типу метаданных практически своя процедура.
Главное - грузите всё последовательно, строго по инструкции.
Работает медленно (com-соединение, да и документы проводятся), но верно. Физические лица и Сотрудники могут день грузиться (по ним большой объём информации - адреса, родственники, награды и т.д.)
Но, действует привязка именно по id (а не по коду или номеру), можно перезагружать несколько раз.

Причины купить

Работает на базе com-соединения. Уникальность обработки в том, что она последовательно загружает все объекты (справочники, регистры сведений, документы) с данными за все прошлые периоды. То есть переходим на 1С8.2 не остатками, а с базой, заполненной всеми аналогичными документами и справочниками из 1С7.7

 

Данную обработку можно будет легко самостоятельно переделать под загрузку любых конфигураций из 1С7.7 в 1С8х. Главное, принцип вполне понятен и обрисован в данной обработке.

Достоинства

Загрузка данных происходит по каждому документу от приёма на работу и по настоящее время. Также загружаются все необходимые справочники и регистры. В чём преимущество данного решения: возможность сохранить всю историю учёта, сведения о стаже; возможность расчёта среднего заработка для таких документов, как "Начисление отпуска", "Оплата по среднему" и т.п.

Сравнение версий

Процесс загрузки происходит значительное время - в зависимости от объёма базы 1С7.7

Скачать файлы

Наименование Файл Версия Размер Кол. Скачив.
Обработка Загрузка данных из 1С7.7 ЗИП в 1С8.2 ЗУП по каждому элементу справочников и по каждому документу с помощью com-соединения
20.04.2015
1000 руб.

Моментальная
доставка

См. также

Подписаться Добавить вознаграждение

Комментарии

1. Антон Антонов (monkbest) 23.07.14 09:17
Весчь полезная, но на фоне скорой кончины 2.5 наверное не актуально. глупо сейчас переходить с 7.7 на 8.2, а через год на 8.3.
Пишите скорее под УФ свою обработку, пока 1Совцы не довели до ума свои кривые правила переноса из 7.7 в 8.3 (ЗУП 3.0).
2. forum1c8 (bookodor) 23.07.14 11:59
(1) monkbest, если будет пользоваться спросом, то можно и под УФ написать.
Просто так писать, слишком накладное удовольствие.
Данная обработка создавалась достаточно длительный период, под конкретную задачу. Было время протестировать, всё тщательно продумать. Поэтому себестоимость у неё, конечно, не сравнима с ценой продажи.
3. Dan (pauchok) 04.08.14 19:57
Добрый день.
При покупке предполагается ли дальнейшая поддержка продукта (в течении которого для обновленных релизов будет выпускаться новая версия вашего продукта)?
4. forum1c8 (bookodor) 04.08.14 22:00
(3) pauchok, код открыт - Вы можете сами настроить. Но, в принципе, обработка мало зависит от обновлений, если только 1С кардинально что-то не поменяет (новые типы документов, справочников, которые будут задействованы в загрузке данных из 1С7.7)
5. forum1c8 (bookodor) 07.10.14 16:16
Сегодня понизил цену с 5000 руб. до 4000 руб.
6. forum1c8 (bookodor) 20.10.14 15:33
Сегодня понизил цену до 3700 руб.
7. forum1c8 (bookodor) 17.01.15 22:40
Сегодня понизил цену до 1500 руб.
8. forum1c8 (bookodor) 22.03.15 20:30
Сегодня понизил цену до 950 руб.
9. forum1c8 (bookodor) 24.03.15 13:19
Данную обработку можно будет легко самостоятельно переделать под загрузку любых конфигураций из 1С7.7 в 1С8х. Главное, принцип вполне понятен и обрисован в данной публикации.
10. Suhrob (Milky_Way) 14.04.15 09:39
А эта обработка сможет перенести из ЗиК77 в ЗиК Бюджет 8.2 ?
11. forum1c8 (bookodor) 14.04.15 10:36
(10) Milky_Way, как есть - нет гарантии (надо смотреть).
Но ! Данная обработка заносит все объекты поэтапно и последовательно. Поэтому надо сравнить заносимые объекты ЗУП 8.2 с Бюджет 8.2; и если есть различия подкорректировать обработку. Код открыт. Алгоритм работы достаточно прозрачен и понятен.
Я думаю небольшие корректировки позволят перенести в Бюджет 8.2.
12. glb_ussr glb_ussr (glb_ussr) 17.04.15 10:21
Зарплата и Управление Персоналом, редакция 2.5 (2.5.90.3) (http://v8.1c.ru/hrm/)
Copyright (С) ООО "1C", 2007-2014. Все права защищены
(http://www.1c.ru)

При загрузке документов выдает ошибку, прикреплена к посту.
Прикрепленные файлы:
13. glb_ussr glb_ussr (glb_ussr) 17.04.15 10:24
Дополню диагностикой
Загрузка по Документы.ПриемНаРаботуВОрганизацию
Документ.ПриказОПриемеНаРаботу
Заполнена ТЗ с new_id по ПриемНаРаботуВОрганизацию с количеством 0
Попытка записать документ: 000001 01.01.2002 0:00:00 ПриказОПриемеНаРаботу 00000001-1111-0000-0000-eedfddaeabee
Сотр_old Александр Е
14. forum1c8 (bookodor) 17.04.15 11:29
(13) glb_ussr, немного подправил код, заодно снял пароль с модуля обработки. Отгрузил обработку заново.
На всякий случай вопрос: все шаги делаете последовательно ? Сначала загрузка всех справочников и только потом загрузка документов ?

Если грузить сразу документы (или хотя бы пропустить один шаг), то ничего не получится
15. glb_ussr glb_ussr (glb_ussr) 17.04.15 12:10
Обработка не дает пропускать шаги )))
Единственое что не делал, часть рекомендаций из шапки, типо заполнения КЛАДР, хз где он находится ))
16. glb_ussr glb_ussr (glb_ussr) 17.04.15 12:13
Ошибка осталась
{ВнешняяОбработка.ЗагрузкаЗарплатыИКадры77ВЗарплатуИУправлениеПерсоналом82.МодульОбъекта(524)}: Поле объекта не обнаружено (ДатаДоговора)
Если Док.ДатаДоговора>'18991230' Тогда

Загрузка по Документы.ПриемНаРаботуВОрганизацию
Документ.ПриказОПриемеНаРаботу
Заполнена ТЗ с new_id по ПриемНаРаботуВОрганизацию с количеством 0
Попытка записать документ: 000001 09.12.2010 0:00:00 ПриказОПриемеНаРаботу 00000005-1111-0000-0000-eedfddaeabee
Сотр_old Евгений Викторович
17. forum1c8 (bookodor) 17.04.15 12:57
(16) glb_ussr, исправил. Отгрузил обработку заново.
18. glb_ussr glb_ussr (glb_ussr) 17.04.15 13:02
Что то нет ссылки... или по старой качать ?
19. forum1c8 (bookodor) 17.04.15 13:15
(18) glb_ussr, опять отгрузил.
Если нет ссылки, попробуйте скачать по старой ссылке.
В модуле обработки должен быть код с 524 строки:
			Попытка
			   		
				Если Док.ДатаДоговора>'18991230' Тогда
				   СотрОб.ДатаДоговора=Док.ДатаДоговора;
				Иначе	
				   СотрОб.ДатаДоговора='00010101';
			    КонецЕсли;
			   
			Исключение
				СотрОб.ДатаДоговора='00010101';
			КонецПопытки; 
...Показать Скрыть
20. glb_ussr glb_ussr (glb_ussr) 17.04.15 15:11
Нет таких строк, обработка опять не работает, может у вас срепозитарием что то не то ? и вы мне шлете старую версию ?

Сам внес эти строки, вылела новая проблемма, не открывается справочник графиков.

Получившейся код обработки, скриншот куска, и скриншот работы обработки с ошибкой прикрепил.
Прикрепленные файлы:
21. glb_ussr glb_ussr (glb_ussr) 17.04.15 15:36
Так, что то я напутал, сработала обработка шаг 7 прошел удачно.
Извиняюсь !

Но дальше вот что, шаг 8

{ВнешняяОбработка.ЗагрузкаЗарплатыИКадры77ВЗарплатуИУправлениеПерсоналом82.МодульОбъекта(180)}: Ошибка при вызове метода контекста (CreateObject)
Док = Com.CreateObject(Док7); // определенный тип документа
по причине:
Произошла исключительная ситуация (1С:Предприятие): Неудачная попытка создания объекта (Документ.ВводОплатыНочных): 0


Загрузка по Документы.РегистрацияРазовыхНачисленийРаботниковОрганизаций
Документ.ВводОплатыНочных
22. forum1c8 (bookodor) 17.04.15 15:50
(20) glb_ussr, надо было удалить строки. График надо выбрать.


8 шаг сейчас посмотрю
23. forum1c8 (bookodor) 17.04.15 16:13
(21) glb_ussr, исправил, снова отгрузил. И ещё сообщил ссылку в личной переписке для скачивания обработки
24. glb_ussr glb_ussr (glb_ussr) 17.04.15 17:30
Сейчас все по новой пробую
Сделал чистую базу
В общем в чистую базу все залилось до шага 10
шаг 9 прервался
{ВнешняяОбработка.ЗагрузкаЗарплатыИКадры77ВЗарплатуИУправлениеПерсоналом82.МодульОбъекта(180)}: Ошибка при вызове метода контекста (CreateObject)
Док = Com.CreateObject(Док7); // определенный тип документа
по причине:
Произошла исключительная ситуация (1С:Предприятие): Неудачная попытка создания объекта (Документ.ПерерасчетМесячнойПремии): 0

25. forum1c8 (bookodor) 17.04.15 17:40
(24) glb_ussr, это исправил (загрузка нетипового документа). В обновлении изменения
26. glb_ussr glb_ussr (glb_ussr) 17.04.15 18:32
шаг 9
{ВнешняяОбработка.ЗагрузкаЗарплатыИКадры77ВЗарплатуИУправлениеПерсоналом82.МодульОбъекта(5654)}: Поле объекта не обнаружено (Банк)
Если TrimAll(String(Док.Банк.Наименование))="" Тогда
27. forum1c8 (bookodor) 18.04.15 20:10
(26) glb_ussr, исправил - отгрузил заново
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа