|
v7: Как с помощью йокселя сохранять большие таблицы | ☑ | ||
---|---|---|---|---|
0
1Сергей
01.10.15
✎
08:46
|
Есть отчет, результат из 15000 строк. Сохранить стандартными средствами не могу - зависает намертво
Как вариант решения рассматриваю всеми нами любимый Йоксель. Но, что-то не могу найти в демке как им сохранять штатные таблицы. Напомните, пожалуйста |
|||
1
1Сергей
01.10.15
✎
09:02
|
пока ждал от вас советов, решил проблему без йокселя - заданием фиксированной высоты строк
|
|||
2
StillEnough
01.10.15
✎
09:05
|
(1) "Долго шел" (с)
|
|||
3
csharpprogrammer
01.10.15
✎
09:25
|
||||
4
csharpprogrammer
01.10.15
✎
09:29
|
yoksel.net.ru/ComServer/Ob'ekty/TablichnyjjDokument/Save
|
|||
5
1Сергей
01.10.15
✎
09:44
|
(3) зачем мне это?
|
|||
6
1Сергей
01.10.15
✎
09:47
|
(4) чтобы сохранить ТабличныйДокумент, его нужно заполнить сначала. А у меня штатная Таблица и перелопачивать не одной строчкой придётся
|
|||
7
Builder
01.10.15
✎
09:52
|
Фиксированная высота строк не всегда помогает.
Есть еще вариант. Сохранить в MXL. Установить программу от 1С - http://v8.1c.ru/metod/fileworkshop/fileworkshopru/fileworkshopru.exe В ней открыть свой сохраненный файл mxl и пересохранить в Excel. |
|||
8
ADirks
01.10.15
✎
10:05
|
Функция СохранитьВExcel() Экспорт
оСервис = СоздатьОбъект("Сервис"); Т = 0; оСервис.АктивныйКонтекст(Т); Если ТипЗначенияСтр(Т) <> "Таблица" Тогда Предупреждение("Не могу найти таблицу для сохранения", 30); Возврат ""; КонецЕсли; ИмяФайла = ""; Обл = Т.Область(1, 1); //тут могут быть параметры печатной формы, попробуем воспользоваться Расш = Обл.Расшифровка(); Если ТипЗначенияСтр(Расш) = "СписокЗначений" Тогда ИмяФайла = Расш.Получить("ИмяФайла"); КонецЕсли; ИмяКаталога = ""; Если ФС.ВыбратьФайл(1, ИмяФайла, ИмяКаталога, "Сохранить как ...", "(*.xls)|*.xls", "xls") <> 1 Тогда Возврат ""; КонецЕсли; ПолноеИмяФайла = СформироватьПутьКФайлу(ИмяКаталога, ИмяФайла); Попытка Йоксель = СоздатьОбъект("ТабличныйДокумент"); Исключение Если ЗагрузитьВнешнююКомпоненту("SpreadSheet.dll") <> 1 Тогда Сообщить("Не загрузился Йоксель |"+ОписаниеОшибки(), "!"); КонецЕсли; Йоксель = СоздатьОбъект("ТабличныйДокумент"); КонецПопытки; Если ФС.СуществуетФайл(ПолноеИмяФайла) = 1 Тогда Ответ = Вопрос("Файл <"+ИмяФайла+"> существует. Заменить его?", "Да+Нет"); Если Ответ <> "Да" Тогда Возврат ""; КонецЕсли; КонецЕсли; Йоксель.ЗагрузитьИзТаблицы(Т); Йоксель.Записать(ПолноеИмяФайла, 1); Йоксель = ""; Возврат ПолноеИмяФайла; КонецФункции нужны FormEx и Yoksel |
|||
9
NikVars
01.10.15
✎
10:33
|
(6) Ваааще ничего не понятно! Куда делать твоя сообразительность?! Что такое штатные шаблоны?!
Я за сохранение в mxl и далее Утилита Работа с файлами, что в (7) |
|||
10
trdm
01.10.15
✎
10:40
|
(7) +1 самый шустрый способ.
|
|||
11
Ёпрст
01.10.15
✎
10:54
|
(0)
вызов этого изделия повесить на кнопку в панели инструментов (можно и с хоткеем) с формулой ОткрытьФорму ("Отчет",,КаталогИБ () + "ExtForms/Быстрое сохранение mxl в xls.ert") https://cloud.mail.ru/public/8amK/1xyHcTWqQ |
|||
12
Ёпрст
01.10.15
✎
10:55
|
в отличие от (8), умеет сохранять открытую таблицу в РВД (или пустую), что важно при открытии любой рег отчетности.
|
|||
13
Ёпрст
01.10.15
✎
10:56
|
ну и в pdf сохраняет
|
|||
14
Злопчинский
01.10.15
✎
18:41
|
Можно без йокселя патч от ромикса поставить
http://catalog.mista.ru/public/14186/ |
|||
15
Djelf
01.10.15
✎
23:03
|
Еще вариант: http://www.1cpp.ru/forum/YaBB.pl?num=1215033727
имхо, получше ромикса работает |
|||
16
Maximysis
02.10.15
✎
06:01
|
||||
17
1Сергей
02.10.15
✎
08:57
|
Спасибо всем!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |