Мы переходили с 1С:Зарплата и Кадры 7.7 на 1С:Зарплата и Управление Персоналом 8.2
При перегрузке штатным способом данных из ЗИК 7.7 в ЗУП 8.2. возникали сообщения об ошибке примерно такого вида:
Ошибка исполнения обработчика: ПВД_ПередОбработкойПравила_ФактическиеНачисленияИУдержания
- msxml6.dll: Недостаточно памяти для завершения операции.Поискав в Интернете, я нашёл рекомендацию разбить выгрузку на части - по сотрудникам:
http://forums.kuban.ru/f1040/pomogite_sovetom_oshibka_pri_konvertacii_bazy_iz_z-2217308.html
Я модифицировал правила конвертации, используемые при выгрузке из 7.7 (PrB.xml) и модифицировал обработку по выгрузке (V77Exp.ert) - добавил условие, чтобы выгружались только сотрудники, не помеченные на удаление.
Далее типовой обработкой помечал на удаление нужные порции сотрудников, и перегружал остальные. У меня получилось перегружать по 400 сотрудников за раз. Как я определил сколько сотрудников перегружать за раз? Опытным путём.
К сожалению, при такой методике не избежать всевозможных задвоений - но их оказалось несложно почистить после переноса данных. Причём задвоения происходят столько раз, сколько порций перегрузки было. Впрочем, все задвоения некритичны для правильности переноса итогов (числа не задваиваются!) - так что метод вполне работоспособен.
Суть моих исправлений очень проста. Вот пример кода:
СпрСотрудники = СоздатьОбъект("Справочник.Сотрудники");
СпрСотрудники.ВыбратьЭлементы();
Пока СпрСотрудники.ПолучитьЭлемент()=1 Цикл
//изм.
Если СпрСотрудники.ПометкаУдаления() = 1 Тогда Продолжить; КонецЕсли;
//конец изм.
КонецЦикла;Т.е. достаточно поиском найти все вхождения строки СпрСотрудники = СоздатьОбъект("Справочник.Сотрудники") и добавить в нижеследующий цикл условие отбора непомеченных на удаление элементов - и всё. И даже правила обмена правятся в данном случае не в 1С - а в любом текстовом редакторе.
Я выкладываю модифицированные: правила обмена PrB.xml и обработку по выгрузке V77Exp.ert. Оба файла следует положить в папку ExtForms конфигурации.
Конфигурация 1С:Зарплата и Кадры 7.7 должна быть версии не ниже 7.70.332.
Вступайте в нашу телеграмм-группу Инфостарт