Страница 1 из 61

libxlsxwriter for Clarion

Добавлено: 12 Февраль 2017, 14:06
RaFaeL
Создание файлов Excel (xlsx) без использования Excel на основе проекта libxlsxwriter (https://libxlsxwriter.github.io). Можно создавать файлы, листы в них, писать данные (текст (в т.ч. русский), число, дата, время), ставить форматирование (цвет, рамки, шрифт, выравнивание, размер), объединять ячейки, фиксировать и скрывать строки и колонки, вставлять изображения, рисовать графики (диаграммы), устанавливать настройки печати и свойства документа.
Для конвертирования "картинок" форматов используется библиотека Tpicture от Taboga, у кого этого класса нет замените на что-то свое

libxlsxwriter for Clarion

Добавлено: 12 Февраль 2017, 18:00
Developer
Файл Report.xlsx создаёт! :D

Какой есть вариант автоматического запуска Excel и открытия созданного файла?

libxlsxwriter for Clarion

Добавлено: 12 Февраль 2017, 18:28
kreator
Developer писал(а):Какой есть вариант автоматического запуска Excel и открытия созданного файла?
ShellExecute. Возьми у меня в соседней теме, если нет желания разбираться.

libxlsxwriter for Clarion

Добавлено: 13 Февраль 2017, 8:41
Admin
RaFaeL писал(а):Пока нельзя - фиксировать строки и колонки, рисовать диаграммы и т.п.
Очень резво.
1,000,000 ячеек текста с цифрами за 10 секунд, включая запись файла.
Будем смотреть за проектом.

libxlsxwriter for Clarion

Добавлено: 13 Февраль 2017, 11:26
Makc
Пользуюсь LibXL библиотекой http://www.libxl.com/но она платная. Wrapper написан самостоятельно.
Читает, пишет файлы Excel разных форматов с хорошей скоростью.

libxlsxwriter for Clarion

Добавлено: 13 Февраль 2017, 11:34
RaFaeL
Я ее видел. Платная и закрытый код. Эта бесплатная, открытый код

libxlsxwriter for Clarion

Добавлено: 14 Февраль 2017, 23:19
kreator
Admin писал(а):Очень резво.1,000,000 ячеек текста с цифрами за 10 секунд, включая запись файла.
У меня результат хуже. Пример Игоря Столярова (~400000 ячеек) и ещё без форматирования примерно за 50 секунд. Посмотрел размер файла, в два раза меньше, чем в моём примере. Возможно из-за отсутствия форматирования. Подозреваю, с форматированием время вырастет.
Нужно, конечно, графику посмотреть.

libxlsxwriter for Clarion

Добавлено: 15 Февраль 2017, 1:39
Admin
kreator писал(а):и ещё без форматирования примерно за 50 секунд
На каком калькуляторе запускаешь? :)

libxlsxwriter for Clarion

Добавлено: 15 Февраль 2017, 8:50
Игорь Столяров
RaFaeL писал(а): Платная и закрытый код. Эта бесплатная, открытый код
Я заранее извиняюсь, но можно выскажу свое мнение ?
Все эти библиотеки на начальном этапе имеют открытый код и с радостью используют услуги бесплатных тестеров,
в роли которых добровольно выступают квалифицированные программисты как Вы.
Потом, как правило, происходит монетизация проекта. Вы сейчас вкладываете много своего времени и труда в ее
освоение, но при этом абсолютно не гарантирован результат. Или может произойти как коммуникационной библиотекой -
прилинкуют к ней зачем-то какую-нибудь хрень и практически обесценят весь этот Open Source и сделанную Вами работу ... :(
И это с учетом того, что с LibCurl - работает весь мир, а это какой-то неведомый стартап ...
И вроде бы все честно: нет денег - нет ни гарантий, ни обязательств.

libxlsxwriter for Clarion

Добавлено: 15 Февраль 2017, 11:20
PavelNK
Исходники-то у нас никто не отнимет. И наши наработки, доработки тоже. Поэтому то, что у нас есть - останется у нас. А если кто-то потом превратит Open Source в платную вещь, то флаг им в руки. Исходники у нас никто не отберет и при необходимости можно будет дорабатывать и развивать. А если проект изначально закрытый, а разработчик по какой-то причине перестал его поддерживать, как это уже не раз бывало, то все - капец. Сейчас по этой причине многие не могут переехать на С10. У нас тоже была такая проблема, пришлось самим переписывать библиотеку

libxlsxwriter for Clarion

Добавлено: 15 Февраль 2017, 11:23
RaFaeL
Что касается libcurl то я нашел сборку dll, в которой есть все мне нужное и нет ничего лишнего, последней версии. От комплекта Деда Пахома нам нужна обертка (классы), остальное можно взять и в другом месте. Ссылку выкладывал, все работает. Вам собрать и скинуть комплект? В этом как раз смысл, что не пользуешься "черным ящиком", код то открытый. Во-вторых, нет никакой необходимости постоянно что-то обновлять - "работает, не трогай", подключаем к проекту, добиваемся нужной функциональности и пофиг, что там дальше с библиотекой, можно обновлять, можно забить. Это не случай Кларионовских 3д-пати, которые постоянно то отключат поддержку старых версий Клариона, то новые не включат. Никакой зависимости от релиза Клариона! Что касается времени и труда, то этим я занимаюсь в свободное время (реально востребованности выгрузки в xlsx почти нет, xls клиентам вполне хватает), взамен я получаю опыт, мне сейчас интересно разобраться, как подключаются библиотеки на С, это позволит разносторонне развивать проект, не ожидая, пока что-то кто-то напишет из имеющих отношение к Клариону. Просто берем библиотеку на С (а их много понаписали), собираем и подключаем.

libxlsxwriter for Clarion

Добавлено: 15 Февраль 2017, 11:34
Игорь Столяров
RaFaeL писал(а):От комплекта Деда Пахома нам нужна обертка (классы), остальное можно взять и в другом месте.
Спасибо, c Libcurl меня пока вполне устраивает авторский комплект Деда Пахома предыдущей версии. Никаких проблем.
Просто немного напрягает, когда делаешь вроде бы простое обновление и начинаются звонки пользователей ... :(
PavelNK писал(а):Исходники-то у нас никто не отнимет.
Как я понял из обсуждения, существует проблема в том, что бы их собрать в готовую сборку.
Могу предположить, что просто установить тот же VС и собрать их в DLL так просто не получится.
А уже тем более, что-то править в чужом коде.

libxlsxwriter for Clarion

Добавлено: 15 Февраль 2017, 11:40
kreator
Admin писал(а):На каком калькуляторе запускаешь? :)
На хорошем компе. Несколько раз проверил. Ну не знаю :cry: .

libxlsxwriter for Clarion

Добавлено: 15 Февраль 2017, 11:43
RaFaeL
Игорь Столяров писал(а): Спасибо, c Libcurl меня пока вполне устраивает авторский комплект Деда Пахома предыдущей версии. Никаких проблем.Просто немного напрягает, когда делаешь вроде бы простое обновление и начинаются звонки пользователей ...
Ну так с умом надо обновление делать. В данном случе одну сборку заменили на совсем другую сборку, вот и результат. Правильно Дед Пахом писал, найдите свою сборку )) Или даже сделайте )) Я вроде себе нашёл
Игорь Столяров писал(а): Как я понял из обсуждения, существует проблема в том, что бы их собрать в готовую сборку.Могу предположить, что просто установить тот же VС и собрать их в DLL так просто не получится.А уже тем более, что-то править в чужом коде.
Конкретно у меня тут проблема чисто субъективная - на планшете нет места под студию (очень маленький жесткий диск), а на сервере разработки Win 2003 32 бита (под С63), туда студия не ставится из актуальных, но я этот вопрос решаю. Комплект для сборки в MSVC начиная с 2012 лежит тут https://github.com/jmcnamara/MSVCLibXlsxWriter

libxlsxwriter for Clarion

Добавлено: 15 Февраль 2017, 11:53
Игорь Столяров
RaFaeL писал(а): В данном случе одну сборку заменили на совсем другую сборку, вот и результат.
Да, понятно что подход "берите бесплатно, но сами все проверяйте" - уместен. Но если бы тот, кто делал эту сборку просто
упомянул, что теперь для ее работу требуются дополнительные компоненты - это сэкономило бы много времени и сил у всех.

Ситуация чем-то напомнила времена, когда только появился OpenOffice.org - тогда в редкой студенческой общаге не делали
"полностью русифицированных" сборок. Сколько было потом переставлено Windows и загублено документов - сложно посчитать.