PivotTable 컴포넌트 — sgcHTML | eSeGeCe

PivotTable

TsgcHTMLComponent_PivotTable — Delphi, C++ Builder 및 .NET에서 행과 열을 그룹화하고 측정값을 집계하여 행, 열 및 총합계를 표시하는 Bootstrap 피벗 테이블을 렌더링합니다.

TsgcHTMLComponent_PivotTable

그룹화 필드와 측정값을 선언하고, 원시 행을 공급한(또는 데이터셋을 바인딩한) 다음, HTML 속성을 읽습니다.

컴포넌트 클래스

TsgcHTMLComponent_PivotTable

렌더링

Bootstrap 5 집계 테이블 + 총합계

패밀리

데이터 및 표

언어

Delphi, C++ Builder, .NET

필드를 선언하고, 행을 추가하고, 렌더링하기

그룹화 기준이 될 RowFields / ColumnFields를 추가하고, 집계값마다 Measures 항목을 추가하고, DataFields에 원본 열을 나열하고, AddRow로 행을 추가한 다음, HTML을 읽습니다.

uses
  sgcHTML_Component_PivotTable;

var
  oPivot: TsgcHTMLComponent_PivotTable;
  oMeasure: TsgcHTMLPivotMeasure;
begin
  oPivot := TsgcHTMLComponent_PivotTable.Create(nil);
  try
    oPivot.Caption := 'Revenue by Region and Quarter';

    oPivot.RowFields.Add.FieldName := 'Region';
    oPivot.ColumnFields.Add.FieldName := 'Quarter';

    oMeasure := oPivot.Measures.Add;
    oMeasure.SourceField := 'Amount';
    oMeasure.Caption := 'Revenue';
    oMeasure.Aggregation := paSum;
    oMeasure.Format := '#,##0.00';

    oPivot.DataFields.Add('Region');
    oPivot.DataFields.Add('Quarter');
    oPivot.DataFields.Add('Amount');

    oPivot.AddRow(['EMEA', 'Q1', '12000']);
    oPivot.AddRow(['EMEA', 'Q2', '15500']);
    oPivot.AddRow(['APAC', 'Q1', '9800']);

    WebModule.Response := oPivot.HTML;   // aggregated table + row/column/grand totals
  finally
    oPivot.Free;
  end;
end;

// Or bind it straight to a dataset (reads only RowFields/ColumnFields/Measures fields):
oPivot.LoadFromDataSet(qrySales);
// includes: sgcHTML_Component_PivotTable.hpp

TsgcHTMLComponent_PivotTable *oPivot = new TsgcHTMLComponent_PivotTable(NULL);
try
{
  oPivot->Caption = "Revenue by Region and Quarter";

  oPivot->RowFields->Add()->FieldName = "Region";
  oPivot->ColumnFields->Add()->FieldName = "Quarter";

  TsgcHTMLPivotMeasure *oMeasure = oPivot->Measures->Add();
  oMeasure->SourceField = "Amount";
  oMeasure->Caption = "Revenue";
  oMeasure->Aggregation = paSum;
  oMeasure->Format = "#,##0.00";

  oPivot->DataFields->Add("Region");
  oPivot->DataFields->Add("Quarter");
  oPivot->DataFields->Add("Amount");

  oPivot->AddRow(OPENARRAY(UnicodeString, ("EMEA", "Q1", "12000")));
  oPivot->AddRow(OPENARRAY(UnicodeString, ("APAC", "Q1", "9800")));

  String html = oPivot->HTML;   // aggregated table + row/column/grand totals
}
__finally
{
  delete oPivot;
}
using esegece.sgcWebSockets;

var pivot = new TsgcHTMLComponent_PivotTable();
pivot.Caption = "Revenue by Region and Quarter";

pivot.RowFields.Add().FieldName = "Region";
pivot.ColumnFields.Add().FieldName = "Quarter";

var measure = pivot.Measures.Add();
measure.SourceField = "Amount";
measure.Caption = "Revenue";
measure.Aggregation = TsgcHTMLPivotAggregation.paSum;
measure.Format = "#,##0.00";

pivot.DataFields.Add("Region");
pivot.DataFields.Add("Quarter");
pivot.DataFields.Add("Amount");

pivot.AddRow(new[] { "EMEA", "Q1", "12000" });
pivot.AddRow(new[] { "APAC", "Q1", "9800" });

string html = pivot.HTML;   // aggregated table + row/column/grand totals

주요 속성 및 메서드

가장 자주 사용하게 되는 멤버.

RowFields / ColumnFields

각 항목은 FieldNameCaption을 가지며, RowFields는 왼쪽으로 행을 그룹화하고 ColumnFields는 위쪽으로 열을 그룹화합니다.

측정값

Measures.AddSourceField, Caption, Aggregation(SUM/COUNT/AVERAGE/MIN/MAX) 및 선택적 Format 형식을 가진 TsgcHTMLPivotMeasure를 반환합니다.

DataFields / AddRow

DataFields는 원본 소스 열을 위치 순서대로 나열하며, AddRow(aValues)는 그 순서에 맞는 행을 하나 추가합니다.

데이터셋 바인딩

LoadFromDataSet(aDataSet)TDataSet에서 RowFields, ColumnFieldsMeasures가 참조하는 필드만 직접 읽습니다.

총합계

ShowRowTotals, ShowColumnTotalsShowGrandTotal은 각각 요약 행/열을 켜고 끄며, TotalText가 그 레이블을 지정합니다.

테이블 스타일

Striped, Bordered, HoverCompact가 Bootstrap 테이블 스타일을 지정합니다. EmptyCellText는 빈 칸을 채우며, HTML은 완성된 테이블을 반환합니다.

계속 살펴보기

온라인 도움말이 찱포넌트의 전체 API 참조 및 사용 가이드입니다.
모든 sgcHTML 컴포넌트80개 이상의 컴포넌트 전체 기능 매트릭스를 둘러보십시오.
무료 체험판 다운로드30일 체험판에는 60.HTML 데모 프로젝트가 포함됩니다.
가격전체 소스 코드가 포함된 Single, Team 및 Site 라이선스.

시작할 준비가 되셨습니까?

무료 체험판을 다운로드하고 Delphi, C++ Builder 및 .NET에서 웹 UI를 구축하기 시작하십시오.