Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
29 Май 2017, 03:08
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Сохранение Табличного Документа в Excel (повреждение файла)  (Прочитано 1282 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн AIFrame

  • ***
  • Сообщений: 101
  • РЕПУТАЦИЯ: 7
  • КПД: 7%
  • Регистрация: 2015-07-22
  • Сайт: 
  • Профессия: Ученик 1С
1С:Предприятие 8.2 (8.2.19.116)
"Управление торговлей", редакция 10.3 (10.3.29.1)

Есть обработка "ПечатьПрайсЛистаСФото", которая по макету заполняет прайс для его сохранения манагерами в excel.
Проблема существует уже давно (больше года) и решать ее пробовали разными путями.
Суть заключается в следующем: при сохранении прайса в xls с большим кол-вом картинок в нем (изображения номенклатуры), мы на выходе получаем нечитаемый прайс с поехавшими колонками и отсутствием группировок. Берем <100 позиций - все прекрасно, но после того, как число строк превышает N, все едет к чертям (не 64к строк, меньше, гораздо меньше. У нас номенклатуры в разделе Товары всего 9к, из них на остатках максимум 4к позиций).
Если вывод картинок убрать - этот же прайс сохранит без проблем.

В настоящий момент проблема замазаны костылем:
Процедура КоманднаяПанельСохранение(Кнопка)
СтандартнаяОбработка = Ложь;
Режим = РежимДиалогаВыбораФайла.Сохранение;
ДиалогОткрытияФайла = Новый ДиалогВыбораФайла(Режим);
ДиалогОткрытияФайла.ПолноеИмяФайла = КаталогВременныхФайлов()+"";
Текст = "ru = ""Текст""; en = ""Text""";
Фильтр = НСтр(Текст)+"(*.mxl)|*.mxl";
ДиалогОткрытияФайла.Фильтр = Фильтр;
ДиалогОткрытияФайла.МножественныйВыбор = Ложь;
ДиалогОткрытияФайла.Заголовок = "Выберите файлы";
Если ДиалогОткрытияФайла.Выбрать() Тогда
ИмяФайла = ДиалогОткрытияФайла.ПолноеИмяФайла;
Иначе
Возврат;
КонецЕсли;
    ПутьБезПробелов = СтрЗаменить(ИмяФайла, " ", "_");
    ПутьБезПробелов = СтрЗаменить(ИмяФайла, ",", "_");
Состояние("Запись в MXL");
ЭлементыФормы.ДокументРезультат.Записать(ПутьБезПробелов,ТипФайлаТабличногоДокумента.MXL);

Состояние("Открытие обработки MXL");
Ком = "\\1csrv\price.bat " + ПутьБезПробелов;
КомандаСистемы(Ком);
КонецПроцедуры
Батник запускает FilesWorkshop, где манагер макросом пересохраняет его в excel, потом открывается эксель и манагер макросом же ужимает в нем картинки.
Парадоксальность этого в том, что библиотека moxel из платформы 1с8 (любой) с таким прайсом справиться не может, а moxel из FilesWorkshop от тех же 1С-ников - может.

Пробовали формировать excel через OLE - не торт, нет группировок, криво формирует (слишком много гемора до достижения универсальности).
Думали, что проблема в самих изображениях - выгружал, конвертировал\сжимал, загружал обратно - нет эффекта.

Пробовали толстым клиентом (Работаем по RDP) - то же самое.

Копи-паст из ДокументРезультат напрямую в excel выдает ошибку APPCRASH сходу (при копировании любой ячейки).

Вопрос следующий: может мы чего-то не знаем и делаем не так? Я понимаю, что 1С формирует xls по каким-то своим уникальным правилам, но есть ли путь заставить его формировать файл буквально построчно своими штатными библиотеками, ибо, сдается мне, при выгрузке больших объемов двоичных данных он тупо загибается?

Смотрите бесплатно более 300 видеоуроков по работе в 1С:Бухгалтерия 8 и 1C:ЗУП 8 ред. 3.0

СМОТРЕТЬ >>


Теги: 1C8.2 excel 
 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 4040
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

Автор WillРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 14200
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 3542
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Заполнение табличной части документа реквизитами табличной части справочника

Автор kaf_infoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 150
Последний ответ 10 Май 2017, 20:44
от ilnur75
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7007
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
81 Сообщений
wise wise
63 Сообщений
MuI_I_Ika MuI_I_Ika
49 Сообщений
Dethmontt Dethmontt
49 Сообщений
alex0402
43 Сообщений
Сергей Федоров Сергей Федоров
32 Сообщений
ilyay ilyay
27 Сообщений
ilnur75
25 Сообщений
Дмитрий Медведков
19 Сообщений
DmitriyF DmitriyF
17 Сообщений

* Кто онлайн

  • Точка Гостей: 220
  • Точка Скрытых: 0
  • Точка Пользователей: 4
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal