[MXLtoXLS] Сохранение больших таблиц в EXCEL
(скачать и использовать можно бесплатно, т.е. ДАРОМ) Сохранение больших таблиц 1C в XLS — проблема известная: 1С задумывается надолго, и если таблицу в 5000 строк еще реально дождаться, то больше — уже »Изя — все!». Данная обработка представляет собой »обертку» для подмены МЕДЛЕННОГО интерактивного сохранения MXL в XLS БЫСТРЫМ программным сохранением. 50 000 строк сохраняются за 3 секунды…
- Описание
- Подробнее
Описание
Сохранение больших таблиц 1C в XLS — проблема известная: 1С задумывается надолго, и если таблицу в 5000 строк еще реально дождаться, то больше — уже »Изя — все!». Данная обработка представляет собой »обертку» для подмены МЕДЛЕННОГО интерактивного сохранения MXL в XLS БЫСТРЫМ программным сохранением.
Решений по сохранению больших таблиц 1С в XLS разной эффективности существует достаточно. Вашему вниманию предлагается «программная обертка» для еще одного решения (не моего!), которым я с успехом пользуюсь. и вам рекомендую!
Для оценки эффективности решения дам такие цифры:
* плоские таблицы (без излишних наворотов, объединений ячеек и пр.) сохраняются очень быстро. Если взять такую таблицу порядка на 50 000 строк — то, действуя типовым образом »Файл -Сохранить как — XLS», окончания процесса вы, скорее всего, и не дождетесь. С применением предложенного решения — сохранение осуществляется порядка за 3 секунды.
* »неплоские» таблицы, с тяжелым форматированием, пересекающимися объединениями ячеек — сохраняются не так быстро — подождать все-таки придется — но вполне за приемлемое время. В качестве такой »тяжелой таблицы» возьмем отчет по партиям из типовой ТиС с большим количеством включенных группировок и разверткой по документам движения на 22 000 строк (для сравнения попробовал решение, предложенное на http://www.infostart.ru/projects/259/ — минут через сорок задачу снял), текущая обработка позволила сохранить эту »тяжелую» таблицу за 9 минут.
Тесты проводились на ПК с Атлон-1800+, 512 RAM/
Обязательно хочу отметить следующее: сохранение в XLS таблиц с тяжелым форматированием я считаю нецелесообразным — что потом в EXCELe с этой таблицей делать? К какому-либо анализу такие таблицы, как правило, непригодны — приходится их переформатировать и затраты на эту работу сопоставимы с программированием нового отчета нужного формата в 1С.
А плоские таблицы, которые удобно в EXCELe »вертеть» — сохраняются быстро — что и требовалось.
Быстрое сохранение в XLS обеспечивается решением, реализованным здесь: http://www.kb.mista.ru/article.php?id=219 — внизу страницы приведена ссылка на внешнюю компоненту, которая необходима для работы обработки.
Переписка с разработчиком позволила уточнить — данное решение не работает, если сохранение таблицы 1С осуществляется через стандартный диалог сохранения файла, т.е. сохранение таблицы следует производить программным методом Таблица.Записать(…) — что данная обработка и производит: 1. перехватывает с экрана таблицу с данными, спрашивает у пользователя папку для сохранения файла и производит программную запись файла.
Выложить данную »программулину» сподвигло обсуждение на //sale.itcity.ru/forum/read.php?25,873 — не все еще знают про замечательную разработку romix»a
Для использования программулины необходимо наличие ВК FormEX, которую можно взять здесь: http://www.dorex.pro/?projects&formex&download
Порядок установки и работы:
- установить необходимые ВК;
- установить данную обработку;
- повесить на панель инструментов кнопку типа »Сохранить в XLS»
Все готово. Теперь, когда в 1С открыта таблица — жмем эту кнопку и ОК!
Иллюстрация — см.картинки.
Обработка — бесплатная, полностью функциональная.
Данная обработка эксплуатирует идею доступа к содержимому любой печ.формы извне (без изменения программного кода формирования таблицы), изложенную здесь: http://www.infostart.ru/projects/316/
Вторым файлом выложена ВК MXL_DOCTOR.DLL, необходимая для работы программы. Инструкции — внутри архива.
