libxlsxwriter for Clarion
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1411
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
Создание файлов Excel (xlsx) без использования Excel на основе проекта libxlsxwriter (https://libxlsxwriter.github.io). Можно создавать файлы, листы в них, писать данные (текст (в т.ч. русский), число, дата, время), ставить форматирование (цвет, рамки, шрифт, выравнивание, размер), объединять ячейки, фиксировать и скрывать строки и колонки, вставлять изображения, рисовать графики (диаграммы), устанавливать настройки печати и свойства документа.
Для конвертирования "картинок" форматов используется библиотека Tpicture от Taboga, у кого этого класса нет замените на что-то свое
Для конвертирования "картинок" форматов используется библиотека Tpicture от Taboga, у кого этого класса нет замените на что-то свое
- Вложения
-
- libxlsxwriter.zip
- Версия 1.5 от 30.12.2021 на основе библиотеки 1.1.4
- (276.26 КБ) 986 скачиваний
Последний раз редактировалось RaFaeL 30 Декабрь 2021, 19:19, всего редактировалось 40 раз.
- Игорь Столяров
- Ветеран движения
- Сообщения: 8024
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 94 раза
libxlsxwriter for Clarion
Вы имеете ввиду нет в интерфейсе библиотеки libxlsxw.dll ?
(мой пример в предыдущем сообщении нарисован через OLE в программе на Clarion)
Make Clarion Great Again ! 
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1411
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
В интерфейсе библиотеки как раз есть, нет именно свойств стиля в Кларионе штатного в отчете или в листе, т.е. а откуда брать этот параметр то - только из каких-то специально заточенных под выгрузку в Эксель функций
- Игорь Столяров
- Ветеран движения
- Сообщения: 8024
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 94 раза
libxlsxwriter for Clarion
Ну для REPORT толщина линий регулируется ?Line{Prop:LineWidth}RaFaeL писал(а): 09 Январь 2018, 11:54нет именно свойств стиля в Кларионе штатного в отчете или в листе
Но в общем-то это значения не имеет - мы же можем просто вручную задать тип стиля для прорисовки вида сетки в XLSX ?
Точно также, как в Clarion нет стиля для прорисовки ячейки с двумя сторонами, но мы это делаем:
Код: Выделить всё
XLSX.Format.BorderStyle = XLSX:BorderLeft + XLSX:BorderTop

Make Clarion Great Again ! 
- Игорь Столяров
- Ветеран движения
- Сообщения: 8024
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 94 раза
libxlsxwriter for Clarion
Уф ! Вы желания назойливых пользователей исполняете быстрее чем Хоттабыч ... 
Спасибо ! Пошёл пробовать ...

Спасибо ! Пошёл пробовать ...

Make Clarion Great Again ! 
- Игорь Столяров
- Ветеран движения
- Сообщения: 8024
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 94 раза
libxlsxwriter for Clarion
Попробовал. Назрел вопрос. Можно ли в метод ClearFormat() добавить строчку:
Код: Выделить всё
SELF.Format.BorderFormat = XLSX:BORDER_THIN
Судя по структуре, Вы ведь так это и задумали сделать:
Код: Выделить всё
FormatType GROUP,TYPE
BorderStyle BYTE
BorderColor LONG
BorderFormat BYTE(XLSX:BORDER_THIN)
....
Make Clarion Great Again ! 
libxlsxwriter for Clarion
Обеспечивается перенос текста, но не увеличение установленной высоты строки
Любить и обещать ничего не стоит
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1411
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
Если высоту строки явно не задавать, то Excel должен при открытии сам увеличить. Иначе никакАртур писал(а): 09 Январь 2018, 13:26Обеспечивается перенос текста, но не увеличение установленной высоты строки
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1411
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
Добавил, спасибоИгорь Столяров писал(а): 09 Январь 2018, 13:22Попробовал. Назрел вопрос. Можно ли в метод ClearFormat() добавить строчку:
- Игорь Столяров
- Ветеран движения
- Сообщения: 8024
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 94 раза
libxlsxwriter for Clarion
И ещё вопрос. Теперь сетку для ячеек можно рисовать любую, всё работает прекрасно.
Но как решить конкретную задачу: отделить шапку таблицы от тушки двойной (или жирной) линией ?!
Я заранее извиняюсь за своё тугодумие, но у меня действительно нет идей ...

Make Clarion Great Again ! 
libxlsxwriter for Clarion
Понятно
Просьба поправить пример, чтобы запускался просмотр сформированного файла xlsx, например, как во вложении
- Вложения
-
- libxlsxwriter_exe.zip
- (3.53 КБ) 175 скачиваний
Любить и обещать ничего не стоит
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 5232
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 12 раз
- Поблагодарили: 63 раза
libxlsxwriter for Clarion
Установки можно задавать индивидуально у каждой границы. У меня структура для границ выглядит так:Игорь Столяров писал(а): 09 Январь 2018, 13:48И ещё вопрос. Теперь сетку для ячеек можно рисовать любую, всё работает прекрасно.
Но как решить конкретную задачу: отделить шапку таблицы от тушки двойной (или жирной) линией ?!
Я заранее извиняюсь за своё тугодумие, но у меня действительно нет идей ...
QueueBordersType Queue, type !список границ
QueueBorderLeft BYTE !лево
QueueBorderTop BYTE !верх
QueueBorderRight BYTE !право
QueueBorderBottom BYTE !низ
QueueBorderDiag BYTE !диагональ
QueueBorderColorLeft LONG !лево (цвет)
QueueBorderColorTop LONG !верх (цвет)
QueueBorderColorRight LONG !право (цвет)
QueueBorderColorBottom LONG !низ (цвет)
QueueBorderColorDiag LONG !диагональ (цвет)
QueueBorderStyleLeft STRING(10) !лево (стиль)
QueueBorderStyleTop STRING(10) !верх (стиль)
QueueBorderStyleRight STRING(10) !право (стиль)
QueueBorderStyleBottom STRING(10) !низ (стиль)
QueueBorderStyleDiag STRING(10) !диагональ (стиль)
QueueBorderNum LONG !номер границ
end
C6/C12, ШВС, tps/btrieve.
- Игорь Столяров
- Ветеран движения
- Сообщения: 8024
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 28 раз
- Поблагодарили: 94 раза
libxlsxwriter for Clarion
Супер ! А можно Вас попросить завести отдельную тему для обсуждения Вашего класса ?
А то я 5 мин. с перепугу искал описываемую Вами QueueBordersType в XLSXWRITER.INC ...

И мы тоже Вам своими глупостями мешать не будем. Иначе путаница получается, и так всё не просто ....
Спасибо за понимание !

Анекдот:
БОЛЬНОЙ: Доктор, у меня рука болит !
ДОКТОР (ощупывая себя): А у меня, слава богу нет !

Make Clarion Great Again ! 
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 5232
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 12 раз
- Поблагодарили: 63 раза
libxlsxwriter for Clarion
Я имел ввиду структуру xlsx, а не конкретную библиотеку. Думал, что не помешает для понимания, как это все работает. Ок, не буду больше мешать...
C6/C12, ШВС, tps/btrieve.