Мы переходили с 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.
Перегрузка ЗИК 7.7 -> ЗУП 8.2: msxml6.dll: Недостаточно памяти для завершения операции
Один из вариантов обхода проблемы.
Есть технология выгрузки без ограничений на объем.http://infostart.ru/public/144703/
(1) aves,
(2) теперь активна
(3) aves, не, ну нормально — Ваша публикация продаётся за деньги, а моя — бесплатна — есть разница?
Спасибо за идею, хотел пометить на удаление всех уволенных, но информация о том, что на пару тысяч сотров все равно не будет работать весьма полезна. (на ночь оставлял выгрузку — утром вылетела.)
Кстати, можно пару примеров на что смотреть после загрузки — что задваивается?
(6) grig_nv, в основном, задваиваются только справочники. Документы «перенос данных» задваиваются по номерам — но не по содержимому (если бы по содержимому, то вся затея не имела бы смысла). Поэтому я после каждой порции переноса добавлял префикс к номерам всех документов «перенос данных», означающий номер порции переноса. Виды расчетов тоже задваивались — но это оказалось не страшней, чем задвоение справочников. В справочнике «Сотрудники» много задвоений пошло в «архив сотрудников» — таких архивных сотрудников я умышленно удалил с нарушением ссылочной целостности, а потом нашёл все битые ссылки и поудалял их обработкой. Просто все дубли — архивные сотрудники — ссылались исключительно на дубли же — искать зависимости и удалять вручную показалось муторно. В результате всё оказалось нормально, итоги не пострадали.
Пара тысяч сотров — может, и будет — кто его знает. У меня порция получилась на 400 человек — а у кого-то на другое количество может получиться. Чем меньше порций перегрузки — тем лучше — потому что сколько порций перегрузки — столько потом и дублей будет. А меня было 5 порций — и поэтому дубли «запятерились».
Ухх, спасибо БОЛЬШОЕ, неделю с выгрузкой мучаемся, именно с такой ошибкой — да и просто нужно бы свернуть базу и передавать только работающих сотрудников на 31.12.14. Скачала, сейчас сделаю аналогичные правки в последней версии правил и обработки — посмотрим, что выйдет. В любом случае, обнадёживающе!