libxlsxwriter for Clarion
Программы на Clarion, шаблоны, библиотеки и пр.
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1412
- Зарегистрирован: 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 КБ) 1036 скачиваний
Последний раз редактировалось RaFaeL 30 Декабрь 2021, 19:19, всего редактировалось 40 раз.
RaFaeL
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1412
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
Если я правильно понял что написано в мануале, то это всего лишь пометка выделенных ячеек, а не групповое форматирование
RaFaeL
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
libxlsxwriter for Clarion
Да, я это тоже видел ...
Тогда получается, что установленный формат действует только на методы WriteXXXXXXX ?
Судя по описанию, методы форматирования применяются к ячейкам, a worksheet_set_selection()
как раз эти ячейки и определяет ...
Ну не может быть такого, что нельзя для области ячеек установить шрифт, цвет и т.д.
Тогда получается, что установленный формат действует только на методы WriteXXXXXXX ?
Судя по описанию, методы форматирования применяются к ячейкам, a worksheet_set_selection()
как раз эти ячейки и определяет ...
Ну не может быть такого, что нельзя для области ячеек установить шрифт, цвет и т.д.

Make Clarion Great Again ! 
Игорь Столяров
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1412
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
Когда библиотеку встраивал в проект, переделывал выгрузку на форматирование вместе с записью вместо "сначала выгрузили, потом отформатировали". Кстати, шаблон от Taboga аналогично работает
https://libxlsxwriter.github.io/faq.html
Q. Can I apply a format to a range of cells in one go?
Currently no. However, it is a planned features to allow cell formats and data to be written separately.
https://libxlsxwriter.github.io/faq.html
Q. Can I apply a format to a range of cells in one go?
Currently no. However, it is a planned features to allow cell formats and data to be written separately.
RaFaeL
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
libxlsxwriter for Clarion
Но это не всегда возможно ...
Например я хочу выгрузить по товарам несколько цен и потом закрасить минимум / максимум в каждой колонке.
Ну или тогда придётся сначала эту таблицу формировать в памяти, что бы на момент записи ячеек уже знать экстремумы
значений в каждой колонке по всей таблице ...
Понял !RaFaeL писал(а): 17 Декабрь 2017, 10:43 Currently no. However, it is a planned features to allow cell formats and data to be written separately.

Make Clarion Great Again ! 
Игорь Столяров
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
libxlsxwriter for Clarion
Конечно идеология построения отчёта в LibXLSSWriter должна быть пересмотрена, относительно OLE ....
Но зато, кроме известных плюсов, обнаруживаются и неожиданные бонусы.
Например, нет зависимости разделителя дробных разрядов чисел от региональных настроек Windows.
Вопрос: можно ли посмотреть блок библиотеки для работы с форматами (файл tpicture.inc) ?
Заранее спасибо !
Но зато, кроме известных плюсов, обнаруживаются и неожиданные бонусы.

Например, нет зависимости разделителя дробных разрядов чисел от региональных настроек Windows.
Вопрос: можно ли посмотреть блок библиотеки для работы с форматами (файл tpicture.inc) ?
Заранее спасибо !

Make Clarion Great Again ! 
Игорь Столяров
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
libxlsxwriter for Clarion
Почему-то не могу подключить работу с форматированием ... 
Вроде бы все Defines Project выставил правильно, но упорно не активируется компиляция именно в xlsxWriter.inc
Ничего не понимаю. Посмотрите пожалуйста в чём косяк, на штатном примере библиотеки.
(прикреплено к сообщению)

Вроде бы все Defines Project выставил правильно, но упорно не активируется компиляция именно в xlsxWriter.inc
Ничего не понимаю. Посмотрите пожалуйста в чём косяк, на штатном примере библиотеки.
(прикреплено к сообщению)
- Вложения
-
- help_me.zip
- (33.57 КБ) 246 скачиваний
Make Clarion Great Again ! 
Игорь Столяров
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1412
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
Попробуйте новый вариант, в заглавном посте обновил. Там немного неправильно было. В примере есть комментарий
RaFaeL
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
libxlsxwriter for Clarion
Ура ! Таки заработало. Спасибо !

Но видимо существуют некорые ньюансы, не срабатывает формат c бланкированием на числах.
Например:
Код: Выделить всё
xlsx.ClearFormat()
xlsx.Format.Picture='@n12.2b'
xlsx.SetFormat()
err#=xlsx.WriteNumber(1,5,0)
Make Clarion Great Again ! 
Игорь Столяров
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1412
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
RaFaeL
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
libxlsxwriter for Clarion
Нет. Но вопрос можно задать по другому: как применить формат к ячейке без вывода данных.
Например, формируем бланк заказа, с пустой колонкой в которой будет указывается кол-во в формате "0.000"
Спасибо за направление, разобрался.

Код: Выделить всё
xlsx.ClearFormat()
xlsx.Format.Picture='@n_13.3'
xlsx.SetFormat()
err#=xlsx.WriteBlank(1,5)
Make Clarion Great Again ! 
Игорь Столяров
kreator
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
libxlsxwriter for Clarion
Возможно, это только для меня "открытие", но на всякий случай напишу ... 
Calc из пакета Libre Office полноценно работает с XLSX файлами: открывает, сохраняет и т.д.
(в отличии от Calc из пакета Apache OpenOffice, который XLSX только медленно читает с конвертацией).
И в принципе, это решает задачу полноценной работы с XLSX отчётами вообще без коммерческого Microsoft Excel.
Да и генерация отчётов в ODS специально для OO Calc похоже теперь тоже не нужна особо ...

Calc из пакета Libre Office полноценно работает с XLSX файлами: открывает, сохраняет и т.д.
(в отличии от Calc из пакета Apache OpenOffice, который XLSX только медленно читает с конвертацией).
И в принципе, это решает задачу полноценной работы с XLSX отчётами вообще без коммерческого Microsoft Excel.

Да и генерация отчётов в ODS специально для OO Calc похоже теперь тоже не нужна особо ...
Make Clarion Great Again ! 
Игорь Столяров
- finsoftrz
- ✯ Ветеран ✯
- Сообщения: 5302
- Зарегистрирован: 06 Ноябрь 2014, 12:48
- Благодарил (а): 12 раз
- Поблагодарили: 65 раз
libxlsxwriter for Clarion
На перспективу, наверно, стоит иметь ввиду xlsx. Я глянул, что создается внутри zip архива. В общем, все находится, можно и паровозиком прицепиться и портировать на чистый кларион. Архивировать можно и 7z. Тут есть забавная тонкость. Если разархивировать xlsx файл через 7z, то винда автоматически меняет кодировку файлов. То есть, если хотим завернуть обратно, надо поменять кодировку взад на utf8. Например, с помощью xml notepad. Им же можно пользоваться, чтобы автоматически привел к читабельному виду xml файлы, которые сжаты без разделителей строк.
C6/C12, ШВС, tps/btrieve.
finsoftrz
- Игорь Столяров
- Ветеран движения
- Сообщения: 8074
- Зарегистрирован: 07 Июль 2005, 10:19
- Откуда: г. Ростов-на-ДоМу
- Благодарил (а): 29 раз
- Поблагодарили: 98 раз
libxlsxwriter for Clarion
Подскажите пожалуйста, а есть ли в LibXLSX возможность выполнить группировку строк ?
Т.е. то, что в OLE делается вот так:
Т.е. то, что в OLE делается вот так:
Код: Выделить всё
Object{MyXLS & 'Rows("1:50").Group'}
Make Clarion Great Again ! 
Игорь Столяров
- RaFaeL
- ✯ Ветеран ✯
- Сообщения: 1412
- Зарегистрирован: 24 Март 2009, 17:59
- Откуда: НН
- Благодарил (а): 12 раз
- Поблагодарили: 2 раза
- Контактная информация:
libxlsxwriter for Clarion
Я так понимаю это уровень в https://libxlsxwriter.github.io/structl ... ml#details но currently not supported. Ждем-с.
RaFaeL
Вернуться в «Готовые программы, шаблоны, библиотеки...»
Перейти
- CW
- ↳ CLARION for Windows
- ↳ CLARION for Internet
- ↳ Clarion.NET
- Эксклюзив
- ↳ Приват
- CLARION и...
- ↳ Reports
- ↳ Железо
- ↳ Готовые программы, шаблоны, библиотеки...
- ↳ cJSON
- ↳ LibCurl
- ↳ MAV
- ↳ SQL, Oracle, ...
- ↳ Multi-программирование(Pascal/Delphi, и т.д.)
- ↳ WinDev
- DOS
- ↳ CLARION for DOS
- Разное
- ↳ Новости
- ↳ English
- ↳ Ресурсы
- ↳ Работа
- ↳ Обо всем ...
- ↳ Обсуждение этого Форума (типа, Гостевая книга)