Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Создание кросс-таблиц в Delphi: бесплатные компоненты для Pivot-графиков с Unicode

Delphi , Компоненты и Классы , Компоненты

Вопрос разработчика, ищущего компоненты для создания кросс-таблиц (pivot-графиков) в среде Delphi, является актуальным для проектов, требующих анализа больших объемов данных. Поиск бесплатных или недорогих решений обусловлен желанием избежать лишних затрат и обеспечить возможность совместной работы с будущими разработчиками без необходимости приобретения дополнительных компонентов.

Проблема

Разработчик ищет компоненты для Delphi 2009, 2010 или XE, которые поддерживали бы работу с Unicode и не требовали бы сложных функций, так как объем данных не превышает 2000 строк. Среди коммерческих решений есть несколько привлекательных вариантов, но их стоимость начинается от нескольких сотен долларов. Существующие в Delphi старые компоненты Decision Cube не поддерживают Unicode и используют устаревший BDE, что делает их непригодными для использования в новых проектах.

Подтвержденный ответ

Необходимо найти или создать компонент, который будет соответствовать следующим требованиям: - Поддержка Unicode для Delphi 2009 и выше. - Возможность конфигурации измерений через drag-and-drop. - Сортировка по столбцам. - Вычисление итогов, максимумов и минимумов для столбцов. - Опционально: возможность расширения/сворачивания или свертывания в подкатегории.

Альтернативный ответ

Рассмотрение использования Excel для создания pivot-таблиц как альтернативы, учитывая его мощь и скорость работы даже с большим количеством строк. Также стоит отметить XLReport от Alfalinasoft, который предоставлял возможности для интеграции Excel в приложения, включая функционал pivot-таблиц. Однако, на данный момент неизвестно, будет ли он открыт для общественности.

Решение

Исходя из доступной информации, можно рассмотреть использование FXDS — открытого проекта, содержащего копию Decision Cube для Delphi 6 и 7. Последний релиз проекта датируется 12 годами назад, но он может быть полезным исходным материалом для создания собственного компонента с поддержкой Unicode и TDataSet.

Пример кода

// Пример использования TDataSet для создания простого Pivot-компонента
uses
  Datasnap.Client, DB, Generics.Collections;

type
  TCustomPivotDataset = class(TDataSet)
  private
    FData: TArray<TArray<string>>;
    FDimensions: TArray<string>;
    FGroups: TList<string>;
    // ...
  public
    constructor Create(const ADataset: TDataSet; const ADimensions: TArray<string>);
    property Data: TArray<TArray<string>> read FData;
    property Dimensions: TArray<string> read FDimensions;
    // ...
  end;

constructor TCustomPivotDataset.Create(const ADataset: TDataSet; const ADimensions: TArray<string>);
begin
  // Инициализация данных и измерений для Pivot-компонента
  // ...
end;

procedure TCustomPivotDataset.CalculateTotals;
begin
  // Вычисление итогов, минимумов, максимумов
  // ...
end;

Данный код является упрощенным примером структуры, которая может быть использована для создания TDataSet для pivot-компонента. Фактическая реализация потребует более глубокого понимания алгоритмов работы с данными и возможностей языка Object Pascal.

Заключение

Разработчикам, ищущим бесплатные или недорогие компоненты для создания кросс-таблиц в Delphi, стоит обратить внимание на FXDS как на потенциальную базу для собственной реализации. Однако, для использования в современных проектах, потребуется внесение значительных изменений для поддержки Unicode и новых версий Delphi.

Создано по материалам из источника по ссылке.

Разработчик ищет бесплатные компоненты для создания кросс-таблиц в Delphi, поддерживающие Unicode, чтобы анализировать данные без значительных затрат.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




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


:: Главная :: Компоненты ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-07-16 04:30:57/0.0036008358001709/0