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

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

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

Оффлайн AIFrame

  • ***
  • Сообщений: 158
  • РЕПУТАЦИЯ: 15
  • КПД: 9%
  • Регистрация: 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 по каким-то своим уникальным правилам, но есть ли путь заставить его формировать файл буквально построчно своими штатными библиотеками, ибо, сдается мне, при выгрузке больших объемов двоичных данных он тупо загибается?


Теги: 1C8.2 excel 
 

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

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

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

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

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

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

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

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

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

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

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

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

alex0402
96 Сообщений
oleg-x
76 Сообщений
Геннадий ОбьГЭС Геннадий ОбьГЭС
66 Сообщений
Golickoff Golickoff
53 Сообщений
AIFrame
46 Сообщений
ilyay ilyay
40 Сообщений
Амал
30 Сообщений
MuI_I_Ika MuI_I_Ika
27 Сообщений
Dethmontt Dethmontt
22 Сообщений
lansy
22 Сообщений

* Кто онлайн

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

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

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

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal