Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 7.7 и ранее

v7: Разделение страниц из 1с7.7 в 1с8

v7: Разделение страниц из 1с7.7 в 1с8
Я
   Ефремов
 
16.04.19 - 07:10
Добрый день, коллеги!
Создаю отчет в 1с7.7, который надо сохранить в Excel-файле. Отчет разбит по листам и в отчете много длинных строк. Из-за длинных строк, сохранить из 1с7.7 в Excel не получается. Сохраняю отчет в формате 1с: "Таблице (*.mxl)", открываю этот отчет в 1с8 и сохраняю в Excel2007 (*..xlsx). Но проблема в том, что разбивка по листам "слетает" уже в 1с8. В 1с7.7 и Йоксел разбивка по листам есть, а в 1с8 уже нет.
Сохранение из Йоксел тоже не альтернатива - форматирование пропадает. В частности, высота ячеек, где длинный текст переносится на следующую строку, становится меньше необходимой. А руками в Excel править сложно - отчет слишком велик.

Может кто сталкивался с аналогичным переносом табличных документов из 1с7 в 1с8 и подскажет, как сохранить разбивку по листам?
 
 
   SleepyHead
 
1 - 16.04.19 - 09:16
Переносите данные в 1с8 и формируйте отчёт оттуда.
   catena
 
3 - 16.04.19 - 09:33
(0)Листы в mxl?
   Ефремов
 
4 - 16.04.19 - 09:57
(1) Трудоемко.
   Ефремов
 
5 - 16.04.19 - 09:58
(3) Да, в mxl.
   VladZ
 
6 - 16.04.19 - 09:58
(0)
1. Чтобы не "расплылись" страницы - нужно высоту строк делать фиксированной.
2. "отчет слишком велик. " - Большие отчеты не несут никакой пользы. Смысл отчетов прост: посмотрел 2-3 цифры -> сделал выводы ->  поправил "курс" -> накопил результат -> начал сначала.

В больших отчетах цепочкой "сделал выводы - поправил курс и т.д." заниматься некогда. В большом отчете обычно так: открыл отчет и утонул в этой куче...

Отсюда вывод:
Не делать больших отчетов. Как следствие - не будет проблем с разбиванием на страницы.
   1Сергей
 
7 - 16.04.19 - 09:59
(5) Чёт, в первый раз слышу. Может, не листы, а страницы?
   Ефремов
 
8 - 16.04.19 - 10:07
(6) 1. Невозможно. Отчет типа заявления с большим количеством ссылок на статьи законов и переменным количеством заявителей.
2. С нашими юристами сложно работать. Их ТЗ: "сделай нам красиво". Вначале сделал вывод одного заявления без необходимости вывода в Excel. Потом потребовали вывести весь список заявлений для передачи в стороннюю организацию. А времени отводится на работу, как в начале так и в текущий момент: "сделай вчера". Т.е. "0 целых и 0 десятых".
В отчет выводятся адреса, ФИО, данные паспорта, номера телефонов т.п. Т.е. никаких правок не требуется.
   Ефремов
 
9 - 16.04.19 - 10:08
(7) Вы правы, страницы.
   1Сергей
 
10 - 16.04.19 - 10:09
Вариант заполнения через ОЛЕ не рассматривается?
 
 Рекламное место пустует
   Ефремов
 
11 - 16.04.19 - 10:11
(10) На сервере, где запускается 1с, нет Excel'я.
   Ефремов
 
12 - 16.04.19 - 10:13
(10) Можно использовать для связывания 1с8, но время, время, время...
   1Сергей
 
13 - 16.04.19 - 10:14
Если бы не сроки, можно было бы xlsx самому собрать. По сути это простая зазипованная xml-ка
   Ефремов
 
14 - 16.04.19 - 10:15
(13) Если бы этот отчет нужен был бы постоянно, то можно было бы повозиться. А, вполне возможно, что через неделю о нем и не вспомнят.
   1Сергей
 
15 - 16.04.19 - 10:17
(13) +точнее несколько xml-ок
   Ефремов
 
16 - 16.04.19 - 10:24
(15) Да, но список этих заявлений несколько тысяч!!! Я даже сомневаюсь, что этого "монстра" можно втолкнуть в Excel-2003. В Excel-2007 сохраняется.
   1Сергей
 
17 - 16.04.19 - 10:27
(16) Всё же склоняюсь к йокселю. С проблемой высоты ячеек не сталкивался, но думаю это решаемо. можно здесь поискать-поспрашивать http://yoksel.net.ru/forum/
   Смотрящий
 
18 - 16.04.19 - 10:32
(0) Клюшки при сохранении отчета в xls обрезают текст в ячейте до 256 символов.
Чтобы не жахаться с йкселями, 1сами и прочим - тебе просто надо отчет в excel врукопашную.
Ну или обучить желающих видеть "все красиво" Ctrl-A, Ctrl-V
   1Сергей
 
19 - 16.04.19 - 10:33
И да, высота ВСЕХ строк должна быть АВТО в макете
   NikVars
 
20 - 16.04.19 - 10:48
(0) Можешь еще это попробовать. Но шаносов мало.
https://v8.1c.ru/metod/fileworkshop.htm
Сохрани в mxl 7.7. Открой в этой проге. Отсюда можешь и в екселе сохранить.
   MadDAD
 
21 - 16.04.19 - 11:28
(9) Могу добавить в свою компоненту - http://catalog.mista.ru/public/1026032/ - разбивку на страницы, как в оригинальной таблице.
   MadDAD
 
22 - 16.04.19 - 11:29
(9) на сколько большая таблица? Если сохранять в mxl, сколько Мб занимает?
   Ефремов
 
23 - 16.04.19 - 11:40
Пошел по пути подсчета высоты информационной части страницы и дополнил страницу до определенной высоты пустой строкой с программно изменяемой высотой. Пользователям дал рекомендации на установку полей в Excel.
   Ефремов
 
24 - 16.04.19 - 11:47
(22) Размер *,mxl: 2170522 байта. Но это не предел.
   Ефремов
 
25 - 16.04.19 - 11:50
(21) Спасибо. Я не знаком с Вашей компонентой. Попробую.
   VladZ
 
26 - 16.04.19 - 12:18
(8) "С нашими юристами сложно работать" - зачем юристам Excel? Может им лучше формировать файлы Word?
   MadDAD
 
27 - 16.04.19 - 12:31
https://github.com/DmitryDreytser/v7Moxel/releases - добавлены разрывов страниц при сохранении в xlsx.
   Ефремов
 
28 - 17.04.19 - 05:15
(26) Вы писали: "Может им лучше формировать файлы Word?" - да, лучше. Но данные у меня в 1с7.7 и при обсуждении ТЗ разговора о сохранении не было. Т.е. надо было только распечатывать отдельные заявления. К тому же, я не умею сохранять отчет 1с7.7 в Word. А MS Office на сервере не установлен.
   73с
 
29 - 17.04.19 - 06:44
(28) Вместо МС можно пользоваться ОпенОфисом
   Mikeware
 
30 - 17.04.19 - 07:05
(28) ну с этого и надо было начинать.
Бери вордовский файл-шаблон, с полями. В секции значения переменных устанавливай их в файле. Для старых версий - через компаунд, для новых - в xml. И все.
   ДенисЧ
 
31 - 17.04.19 - 07:21
(30) @А MS Office на сервере не установлен.@
   Mikeware
 
32 - 17.04.19 - 07:31
(31) я грамМотный. (на уровне ликбеза, по меньшей мере).

В старых вордовских файлах (которые .doc) - разобрать файл-шаблон(компаунд) через compound.dll , записать  в секцию переменных, собрать.
в новых (которые .docx) - раззиповать, дописать в файл перемнных, зазиповать.
Это не требует наличия офиса.
   ДенисЧ
 
33 - 17.04.19 - 07:39
(32) Мда... А ты не пробовал заниматься банальным сексом?
 
 
   Mikeware
 
34 - 17.04.19 - 07:40
(33) б-анальным? нет. предпочитаю обычный. даже без гамака.
   Ефремов
 
35 - 17.04.19 - 09:54
(29) Сейчас не помню конкретно (года два назад экспериментировал), но натыкался на несовместимость OpenOffice и MS Office. Документы MS Excel, OpenOffice портит однозначно. Документы созданные в OpenOffice иногда имеют несовместимость по кодировке с MS Office.
   Ефремов
 
36 - 17.04.19 - 09:55
(32) Да, неплохо. Когда появится время, попробую такой вариант с ранее подготовленным шаблоном.
   Mikeware
 
37 - 17.04.19 - 09:58
(36) поля - через variable, тогда они автоматически заполнятся при открытии в ворде.
   Ефремов
 
38 - 18.04.19 - 10:57
Спасибо всем принявшим участие в обсуждении.
По быстренькому сделал вот что:
1. Высокую первую строку в исходной таблице отчета - чтобы при ошибке подсчета высоты отчета новый отчет гарантированно переходил на новую страницу.
2. Подсчитываю высоту таблицы методом ВысотаСтроки(). Если высота строки  равна 0, то ставлю "умолчательную" высоту. В моем случае 17.25.
3. После печати заявления вставляю пустую строку и устанавливаю ее высоту так, чтобы отчеты были примерно одинаковы по высоте.
4. Отчет выгружаю в *.mxl и с помощью 1с8 конвертирую в Excel_2007.
5. Записал в справку рекомендации по настройке полей для печати из MS Excel.

К сожалению, экспериментировать и "вылизывать" ПО некогда.
   NikVars
 
39 - 18.04.19 - 11:00
(38) Круто! Готовность решения проблемы определяется его ценностью в виде значимости проблемы как проблемы для сотрудников.
   Ефремов
 
40 - 23.04.19 - 08:36
Попробовал компоненту http://catalog.mista.ru/public/15605/, использующую SpreadSheet.dll (Йоксел). Для простых отчетов просто замечательно!!!
К сожалению, у меня высота строк, при выводе в Excel, не соответствует тому, что в *.mxl
   Ефремов
 
41 - 23.04.19 - 08:38
(40) Прошу прощения, ссылка должна быть иной: http://catalog.mista.ru/public/15605/
   Ефремов
 
42 - 23.04.19 - 08:39
(41) Не, это, оказывается, сайт сам меняет ссылку.
   MadDAD
 
43 - 23.04.19 - 09:18
(42) У йокселя есть нюанс. Формат Excel 97 не поддерживает  количество строк в таблице больше 65535.

В остальном это просто прекрасный вариант. Честно говоря думал что он уже был испробован.
   MadDAD
 
44 - 23.04.19 - 09:19
(40) Чтобы высота строк соответствовала - лучше всего убрать автоматическую высоту и сделать фиксированную.
   MadDAD
 
45 - 23.04.19 - 09:31
Попробуйте мое поделие, может будет лучше - https://github.com/DmitryDreytser/v7Moxel/releases/tag/0.5 тут последняя версия для бесплатного скачивания. На инфостарт пока не выкладывал.

Если будут вопросы по высоте строк - пишите, посмотрим что можно допилить.
   Ефремов
 
46 - 24.04.19 - 06:13
(44) К сожалению, содержимое ячеек документа имеют большой разброс в количестве символов. При автоматическом переносе строк могут составлять и две и пять строк.
(45) Спасибо! Попробую.


Список тем форума
Рекламное место пустует  Рекламное место пустует
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Рекламное место пустует