Выгрузка БОЛЬШИХ объемов из 7.7 конвертацией данных

Стандартная выгрузка из 7.7 V77Exp не умеет выгружать файлы более 2 Гб. У меня со скрипом 1.5 еле получалось. Данная доработка без проблем формирует файлы по 3Гб и более. Теперь и для ЗиК 2.1.8.2!

Арт.: 144703

Универсальная выгрузка
Универсальная выгрузка
Лицензии

7200 руб.

Техподдержка и обновления

2000 руб.

При внедрении систем на 8 довольно часто ставится задача по переносу данных из 7.7. Иногда этих данных бывает сильно много.

Стандартная ситуация - написали правила, выгрузить не можем - падает. Нехватка памяти.

Для универсальной выгрузке у меня практический предел файла был 1.5 - 1.8Гб. Причем к концу перед вылетом тормозило неимоверно. Причины: Ограничения объема памяти для приложения в 2 Гб. В имеющейся модели файл со всеми узлами формируется в памяти, поэтому при большом объеме еще и тормозит.

Стандартные варианты решения:

  1. Разбивать выгрузку на части
  2. Использовать прямое подключение к БД

Разбитие на части подходит не всегда. Если есть несколько НЕпересекающихся или слабо пересекающихся областей данных оно оптимально - можно разбить по метаданным сначала то, потом это. Если же разделить по метаданным не выходит - имеем непропорциональное увеличение времени выгрузки и загрузки. Например, большой справочник номенклатуры. При выгрузке отдельно приходных и расходных документов он выгрузится по ссылкам дважды. При делении на периоды аналогично. А при выгрузке он может занимать приличный объем.

Способ 2 является частным случаем 1 сведенным до уровня одного объекта. Выгрузил документ - сразу загрузил, следующий. Способ того требует доработки универсальных обработок обмена. Сам не пробовал, но у кого-то получалось. Еще минус - одновременно заняты база источника и приемника.

Перепробовав несколько вариантов удалось решить проблему формирования больших выгрузок. Доработка встроена в КД (обработку выгрузки правил), поэтому совершенно прозрачна для пользователя. Формировались файлы свыше 3 Гб, причем память процесса не превышала 500М. Файлы получаются стандартные и грузятся обычной универсальной загрузкой.

Ограничение: размер непрерывного блока текста - 32К. (см обновление)

При использовании надо внести изменения в обработку выгрузки V77Exp, чтобы заменить ее код, на код формируемый КД. А именно стереть все и вставить 1 строку:

#ЗагрузитьИзфайла МодульВыгрузки.txt

Где МодульВыгрузки.txt - то, как вы назвали файл с формируемым кодом.

 
 История изменений

 

Обновление 31.10.2012:

1. При выгрузке правил в файл обмена не выгружаются тексты алгоритмов, не используемых при загрузке. Например в правилах з ЗиК-ЗУП есть довольно длинные алгоритмы более 32К, которые не могут быть записаны. Анализируем признак и не пишем в файл. На загрузку это влияния не оказывает.

2. Переход на версию 2.1.6.4

 

Обновление 14.02.2021:

1. Переход на версию 2.1.8.2

2. Исправлена ошибка при выгрузке текстов модулей и алгоритмов с запрещенными XML-символами типа <>= и тд.

 

 

В файле: Измененая полная CF Конвертация данных, редакция 2.1 (2.1.8.2)

 

Техническая поддержка и обновления

Бесплатный период техподдержки составляет 1 месяц со дня покупки.

Также после приобретения вы получаете 1 месяц бесплатных обновлений.

По окончании бесплатного периода вы можете приобрести услугу технической поддержки с доступом к обновлениям на платной основе.

Проверить наличие обновлений можно в личном кабинете. Если обновления недоступны - загрузить новую версию можно после покупки обновлений/технической поддержки.

Задать вопрос по программе можно по кнопке "Техподдержка" на странице описания.

При создании тикета необходимо предоставить:

  1. Номер заказа
  2. Описание вопроса. Если это ошибки - напишите порядок ваших действий с программой, которые к ней привели (приложите видео/скриншоты/отчеты об ошибке)
  3. Точную конфигурацию 1С, и версию платформы, на которой используете купленное решение (наименование и версию 1С можно взять из раздела "О программе"), версию купленной программы.

К созданной заявке подключается специалист. Дальнейшее обсуждение проблемы будет проходить в тикете техподдержки. Стандартный срок реакции - 24 часа в рабочие дни с момента обращения.

 

Техподдержка
 

Статистика:
Просмотры 29124
Загрузки 6
Рейтинг 11
Создание 23.07.12 21:36
Обновление 18.02.21 11:07
№ Публикации 144703
Характеристики:
Теги

Конвертация перенос XML размер 7.7

Рубрики Перенос данных 1C
Кому Для всех
Тип файла Внешняя обработка (ert,epf)
Платформа Оперативный учет 7.7 ,
Бухгалтерский учет 7.7 ,
Расчет 7.7
Конфигурация Конфигурации 1cv7 ,
1С:Конвертация данных
Операционная система Windows
Страна Россия
Отрасль Не имеет значения
Налоги Не имеет значения
Вид учета Не имеет значения
Доступ к файлу Платные (руб)
Код открыт Да
1. milanse 13.08.12 14:58 Сейчас в теме
А в чем суть изменения ? используется другой парсер или что-то еще ?
2. Техподдержка 13.08.12 17:32
(1) Суть: используя типовые правила формирования узлов объектов заставить записывать их в файл последовательно и сразу же.
Использую другой объект, не Msxml2.DOMDocument
3. milanse 13.08.12 17:43 Сейчас в теме
(2) мы используем разработку Ромикса для формирования xml, тоже неплохо получается, но у нас своя подсистема обмена (77 в 77, не на конвертации).
4. Техподдержка 13.08.12 18:34
(3) каждому свое. У меня универсальный вариант. У вас эксклюзив. может исторически так сложилось или КД не подошла.
Ссылку на ромикса дадите? Нашел только быстрый эксель с ёкселем.
5. milanse 13.08.12 18:46 Сейчас в теме
если не забанят
http://kb.mista.ru/article.php?id=73

она по образу и подобию ЗаписьХМЛ вроде сделана.
6. iov 01.11.12 02:53 Сейчас в теме
(5) Это у мисты пунктик, ссыли на инфостарт банить...
7. Franchiser 06.12.12 12:09 Сейчас в теме
Хотелось бы описание что именно доработано. Сколько строк кода изменено. Что-то дорого 10 000 за то что используется не Msxml2.DOMDocument
8. Техподдержка 06.12.12 15:54
(7) Описание в самой статье - последовательная запись сразу в файл.
Сумма именно за то, что:
1. Разгадал что именно надо использовать вместо Msxml2.DOMDocument. Пробовал варианта 4 разных объектов.
2. Исправил так, что:
2.1 Изменения совместимы с типовой выгрузкой
2.2 Минимальны сами по себе (их не много. Сравнение выдает 215 строк различий)

Как в анекдоте: важно не сильно ударить, а знать куда ударить :-)
9. Ёпрст 06.12.12 15:59 Сейчас в теме
Объектов для создания xml не так и много.."что именно" - скорее всего просто текст через fso лепит и теги ручонками создает.
10. Franchiser 06.12.12 16:57 Сейчас в теме
А как же то что в правилах КД можно обращаться к узлу в обработчиках. Получаются типовые правила не будут работать, если теперь такого понятия "Узел" не будет?
11. Ёпрст 06.12.12 17:09 Сейчас в теме
(10) дык можно же всё съэмулировать
12. Техподдержка 06.12.12 19:09
(10), (11) - по идее типовые работать должны, т.к. изменения идут после формирования узла.
На примере в сформированный узел номенклатуры добавляем атрибут типовым способом из справки и он пишется в файл сам. Без эмуляции
Прикрепленные файлы:
13. Franchiser 06.12.12 20:34 Сейчас в теме
А что будет с таким кодом:
Прикрепленные файлы:
16. Техподдержка 07.12.12 12:14
(13) - Почему то не завелось.
У меня УзелСсылки и Приемник на входе в процедуру ПКО_ПриВыгрузке_Номенклатура типа OLE.IXMLDOMElement и ТипЗначения = 100

Оба инициализированы и доступны.
В можно создавать узлы и добавлять их в приемник типовыми способами.

Причем и в типовой конвертации аналогично. Возможно у вас ПередВыгрузкой что-то происходит? Я пробую на справочнике номенклатура, вы на субконто - имеет значение? Если это типовые правила, то какие - могу протестировать.
20. Техподдержка 07.12.12 19:58
(13) - такая конструкция работать будет - проверил. Выгрузил операции из бух 77 - в БП3 приехали с субконто.

(17) - Типовые правила для БП требуется немного допилить: не работают операции с корневым узлом rootNode. Ну низя так. А типовые правила после выгрузки добавляют туда атрибуты о самой выгрузке и ее параметрах. Установка параметров в конце выгрузки никак не совместима с идеей последовательной записи - заремарил.

(19) - Да IXMLDOMElement объектная модель. Она используется в типовой конвертации. И у меня. Именно по этому доработка получилась совместимой. Но для записи в файл она не используется и пишется последовательно по другому :-). Поэтому rootNode и недоступен.
21. Franchiser 07.12.12 20:01 Сейчас в теме
(20) если объект оле, возможно запись через провайдера msdaosp
14. andrewks 06.12.12 20:42 Сейчас в теме
цена зело высокая, учитывая, что такого объёма выгрузки делаются весьма редко.
кстати, после небольшой правки 1cv7.exe можно спокойно выгрузить xml 3 гига и стандартной обработкой
15. Franchiser 06.12.12 20:54 Сейчас в теме
(14) да у меня есть патч 4гб только в терминале он бывает приводит к тому что 1с - ка закрывается вообще без ошибок даже о нехватки памяти
17. Franchiser 07.12.12 13:14 Сейчас в теме
Это типовые правила переноса Бухгалтерия 7.7 в Бухгалтерия 8.2 Корп для ПКО "ВидСубконто".
18. Franchiser 07.12.12 13:30 Сейчас в теме
Тип как таковой значения не имеет главное чтобы работала процедура подобной записи в обработчике Видсубконто.

Это правило используется как правило для вида субконто (ИмяПКОВидСубконто).

Информация из справки:
ИмяПКОВидСубконто - имя правила конвертации, по которому производится преобразование вида субконто (только для свойств СубконтоДт и СубконтоКт записей регистра бухгалтерии). Может быть выбрано в зависимости от каких-либо условий.
19. Franchiser 07.12.12 15:06 Сейчас в теме
Как я понял используется объект "Microsoft.XMLDOM", что также является объектной моделью, в чем тогда заключается последовательная запись?
22. Franchiser 07.12.12 20:21 Сейчас в теме
Кстати 32000 приблизительное ограничение на запись поля по оле
23. prodines 07.11.13 10:46 Сейчас в теме
Бесплатный вариант - с разбивкой по частям: http://infostart.ru/public/195278/
24. anton9843 11.08.15 17:02 Сейчас в теме
Есть проблема одна
Например пишем код обработчика загрузки и в коде чтото типа: Объект.Реквизит <> "чтото важное"
При выгрузке это правило попадает в итоговый XML как есть
и файл получается невалидный из за скобочек

надо по хорошему заменять символы недопустимые
< = & lt ;
> = & gt ;
& = & amp ;
' = & apos ;
" = & quot ;

Раньше объект xml сам преобразовывал а теперь он не используется

Вообщем дописывайте функцию ЗаписатьЭлементВТекст
В макете ПроцедурыИФункцииМодуляВыгрузки
у процедуры ВыгрузкаКонвертации

Оставьте свое сообщение

См. также

Выгрузка данных из 1С 7.7. в формате EnterpriseData 1.6 (универсальный формат обмена) в конфигурации 8.3

Обработка позволяет выгружать данные из ТиС 7.7 в конфигурации 8.3 для сдачи отчетности, для переноса данных при переходе на 8.3, для организации обмена внутри компании при использовании разных версий 1С в структурных подразделениях или фо...

6000 руб.

Переход с 1С:Комплексной 7.7 на 1С:УТ 10.3

Начните вести учет в УТ 10.3! Перенесите все свои данные в УТ 10.3 в любом месяце года и продолжите вести учет! Программа перенесёт любое количество баз с документами и остатками в больших количествах. Обработка выгрузки выполнит проверк...

8400 руб.

Обмен данными ЗУП 3.1 - Бухгалтерия 7.7

Как известно, Бухгалтерия 7.7 не имеет штатной возможности для обмена с ЗУП 3.1. Данная разработка пригодится тем, кто перешел с ЗиК 2.3 на ЗУП 3.1, но вынужден по каким-то своим причинам оставаться на Бухгалтерии 7.7.

18000 руб.

Перенос данных из 1С:Бухгалтерия 7.7 в БП 3.0. Переносятся остатки, документы и справочники

Перенос данных из 1С:Бухгалтерия 7.7 в БП 3.0 | Продукт является развитием и исправлением ошибок стандартной обработки для выгрузки данных из 1С Бухгалтерии 7.7 в Бухгалтерию 3.0 | Перенос из 7.7 является сложным, и на рынке сложно найти сп...

50722 45650 руб.

SALE! 10%

Выгрузка документов из типовой "Торговля и склад" редакции 9.2 (7.7) и загрузка в типовую «Бухгалтерия предприятия»...

Переносится из типовой конфигурации «Торговля и Склад», реакции 9.2 платформы «1С:Предприятие 7.7» в типовую конфигурацию «Бухгалтерия предприятия», редакции 3.0 платформы «1С: Предприятие 8.3» следующие документы и их операции (с соблюде...

11988 руб.

Загрузка справочников в 1С (7.7) из Excel, OpenOffice, 1C (обработка)

Универсальная обработка, предназначенная для загрузки справочной информации в программу 1С:Предприятие 7.7 из файлов различных типов: Excel, OpenOffice, 1C. Позволяет загрузить объемную информацию о товарах, материалах, контрагентах, а т...