November Deals: Limited Coupons Available! 🎁 Claim Your Coupon

Locale

Change the locale of the datepicker, schedule and client side validation messages.

Language
English
English
English
French
German
German
German
Italian
Korean
Spanish
Catalan
Dutch
Portuguese
Portuguese
Arabic
Arabic
Bulgarian
Bangla
Bosnian
Czech
Greek
Persian
Finnish
Danish
Hindi
Indonesian
Croatian
Japanese
Hungarian
Hebrew
Georgian
Central Kurdish
Khmer
Kyrgyz
Kazakh
Lithuanian
Latvian
Malay
Norwegian
Polish
Romanian
Russian
Slovak
Slovenian
Serbian
Serbian
Swedish
Thai
Turkish
Ukrainian
Uzbek
Vietnamese
Chinese
Chinese

Input Style

Themes

PrimeOne
Saga Blue Saga Blue
Vela Blue Vela Blue
Arya Blue Arya Blue
Bootstrap
Bootstrap Blue Light Bootstrap Blue Light
Bootstrap Purple Light Bootstrap Purple Light
Bootstrap Blue Dark Bootstrap Blue Dark
Bootstrap Purple Dark Bootstrap Purple Dark
Material Design
Material Indigo Light Material Indigo Light
Material Deep Purple Light Material Deep Purple Light
Material Indigo Dark Material Indigo Dark
Material Deep Purple Dark Material Deep Purple Dark
Material Design Compact
Material Compact Indigo Light Material Compact Indigo Light
Material Compact Deep Purple Light Material Compact Deep Purple Light
Material Compact Indigo Dark Material Compact Indigo Dark
Material Compact Deep Purple Dark Material Compact Deep Purple Dark
Legacy
Nova Light Nova Light
Nova Dark Nova Dark
Nova Colored Nova Colored
Luna Amber Luna Amber
Luna Blue Luna Blue
Luna Green Luna Green
Luna Pink Luna Pink

DataTable Scroll

Both vertical and horizontal scrolling of the data is supported with optional frozen rows-columns and on-demand loading features.

Vertical
NameCountryRepresentativeStatus
David I MaletUnited KingdomAmy Elsner PROPOSAL
Aika D NickaSpainAsiya Javayant NEGOTIATION
Sinclair B GlickItalyAnna Fali NEW
Octavia X GauchoItalyOnyama Limba UNQUALIFIED
Claire Q CaudyUnited KingdomIvan Magalhaes NEGOTIATION
Costa D FigeroaItalyAsiya Javayant NEGOTIATION
Maria B MaletSpainElwin Sharvill RENEWAL
Mujtaba J ButtAustraliaStephen Shaw QUALIFIED
Kaitlin B StensethIndiaIoni Bowcher NEGOTIATION
Darci M DoeBrazilAsiya Javayant NEGOTIATION
Stacey F PerinItalyElwin Sharvill RENEWAL
Jefferson U FigeroaFranceElwin Sharvill UNQUALIFIED
Tony J CaldareraGermanyElwin Sharvill QUALIFIED
Jeanfrancois C StensethJapanElwin Sharvill UNQUALIFIED
James Q GauchoArgentinaAmy Elsner QUALIFIED
Francesco O MacleadFranceAnna Fali PROPOSAL
Antonio G SaylorsAustraliaIoni Bowcher NEW
Ricardo Y PerinGermanyXuxue Feng NEGOTIATION
Chavez Q MaletBrazilAnna Fali NEW
Octavia O DilliardUnited KingdomElwin Sharvill UNQUALIFIED
Claire J IturbideFranceAnna Fali UNQUALIFIED
Adams B PaprockiUnited KingdomIvan Magalhaes RENEWAL
Costa S CaldareraJapanAmy Elsner PROPOSAL
Stacey A SlusarskiItalyOnyama Limba PROPOSAL
Clifford V StockhamArgentinaIoni Bowcher QUALIFIED
Mayumi A SergiBrazilStephen Shaw NEGOTIATION
Munro V StensethCanadaIoni Bowcher PROPOSAL
Misaki U FigeroaJapanAnna Fali PROPOSAL
Adams G OstroskyIndiaOnyama Limba RENEWAL
Leja N VenereCanadaOnyama Limba PROPOSAL
Juan C OldroydAustraliaOnyama Limba NEGOTIATION
Maria H RulapaughGermanyAsiya Javayant UNQUALIFIED
Ivar L SchemmerIndiaStephen Shaw UNQUALIFIED
Aruna P ShinkoUnited KingdomElwin Sharvill RENEWAL
David R StensethAustraliaAmy Elsner RENEWAL
Octavia X RoysterIndiaXuxue Feng UNQUALIFIED
Ricardo D GillianGermanyStephen Shaw NEGOTIATION
Claire Q PoquetteAustraliaAsiya Javayant RENEWAL
Murillo D AmigonUnited KingdomXuxue Feng NEGOTIATION
Leja G MorascaRussiaIvan Magalhaes NEW
Sinclair E RulapaughSpainIoni Bowcher NEGOTIATION
Aika M GarufiUnited KingdomIvan Magalhaes QUALIFIED
Salvatore U BowleyFranceAsiya Javayant QUALIFIED
Leja K MaletAustraliaElwin Sharvill UNQUALIFIED
Leon T AlbaresAustraliaIoni Bowcher UNQUALIFIED
Kadeem F TollnerJapanAnna Fali PROPOSAL
Greenwood J FerenczRussiaBernardo Dominic RENEWAL
Nicolas L WhobreyBrazilAnna Fali RENEWAL
Morrow E VenereRussiaBernardo Dominic NEGOTIATION
Izzy L BowleyJapanStephen Shaw UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Wickens A WhobreyIndiaAmy Elsner NEW
Ashley D BologniaIndiaXuxue Feng RENEWAL
Greenwood A FlosiUnited KingdomOnyama Limba RENEWAL
Maisha L PaprockiCanadaIoni Bowcher RENEWAL
Clifford J ChuiAustraliaAsiya Javayant RENEWAL
Arvin B MaletAustraliaStephen Shaw UNQUALIFIED
Smith J KolmetzItalyStephen Shaw QUALIFIED
Silvio Z PerinBrazilXuxue Feng QUALIFIED
James I WhobreySpainStephen Shaw RENEWAL
Maisha G KuskoRussiaAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan Y OldroydGermany2026-10-17Rousseaux, Michael Esq QUALIFIED80Bernardo Dominic
1001Jefferson N RutaSpain2026-09-28Truhlar And Truhlar Attys NEW61Elwin Sharvill
1002Kadeem F NestleJapan2026-10-15Chapman, Ross E Esq UNQUALIFIED46Ioni Bowcher
1003Morrow K BologniaItaly2026-10-05Commercial Press NEGOTIATION24Asiya Javayant
1004Maisha D OldroydIndia2026-09-21Feltz Printing Service QUALIFIED4Elwin Sharvill
1005Adams N OstroskyJapan2026-10-16Feiner Bros NEGOTIATION17Ioni Bowcher
1006Kadeem Z NestleGermany2026-10-08Dorl, James J Esq RENEWAL91Amy Elsner
1007David Y RimArgentina2026-10-14Rangoni Of Florence PROPOSAL34Onyama Limba
1008Silvio U GillianRussia2026-09-22Commercial Press NEW9Asiya Javayant
1009Ashley Z SaylorsCanada2026-09-29Chemel, James L Cpa QUALIFIED53Onyama Limba
1010Isabel F FollerFrance2026-09-20King, Christopher A Esq PROPOSAL35Stephen Shaw
1011Rodrigues Z InouyeBrazil2026-10-10Rousseaux, Michael Esq NEW26Xuxue Feng
1012Ricardo C WieserGermany2026-10-07Morlong Associates NEW38Stephen Shaw
1013Silvio Q FigeroaRussia2026-09-22Commercial Press QUALIFIED68Stephen Shaw
1014Stacey C CaldareraArgentina2026-10-01Morlong Associates PROPOSAL79Ioni Bowcher
1015Kaitlin K FlosiBrazil2026-10-01Truhlar And Truhlar Attys NEW75Bernardo Dominic
1016Juan O GillianSpain2026-09-29Rangoni Of Florence UNQUALIFIED39Ivan Magalhaes
1017Juan E DilliardCanada2026-09-23Truhlar And Truhlar Attys QUALIFIED75Asiya Javayant
1018Antonio H BologniaFrance2026-09-26Feiner Bros NEW94Stephen Shaw
1019Leon Y GarufiSpain2026-09-19Benton, John B Jr UNQUALIFIED51Ioni Bowcher
1020Octavia Q SaylorsIndia2026-10-03Feltz Printing Service PROPOSAL32Asiya Javayant
1021Claire M SaylorsFrance2026-10-01Rousseaux, Michael Esq UNQUALIFIED97Elwin Sharvill
1022Chavez A NickaCanada2026-09-22Dorl, James J Esq UNQUALIFIED73Bernardo Dominic
1023Nicolas A DilliardRussia2026-10-10Morlong Associates RENEWAL21Elwin Sharvill
1024Morrow G FlosiAustralia2026-10-07Chemel, James L Cpa UNQUALIFIED52Amy Elsner
1025Leja X MaletAustralia2026-10-05Chapman, Ross E Esq PROPOSAL78Amy Elsner
1026Salvatore I KuskoRussia2026-09-23Truhlar And Truhlar Attys NEW27Ivan Magalhaes
1027Kaitlin O OldroydAustralia2026-09-29Feltz Printing Service PROPOSAL36Amy Elsner
1028Deepesh I WieserIndia2026-10-02Feiner Bros UNQUALIFIED30Ioni Bowcher
1029Misaki Q OldroydItaly2026-10-01Benton, John B Jr QUALIFIED54Ivan Magalhaes
1030Sinclair P WieserJapan2026-10-09Feiner Bros UNQUALIFIED85Xuxue Feng
1031Leja X NickaAustralia2026-09-19Chanay, Jeffrey A Esq UNQUALIFIED20Onyama Limba
1032Murillo V SaylorsGermany2026-10-16Printing Dimensions NEW13Asiya Javayant
1033Leon Z WaycottGermany2026-09-30Commercial Press UNQUALIFIED63Elwin Sharvill
1034Munro M MacleadSpain2026-10-07Rousseaux, Michael Esq NEW64Ivan Magalhaes
1035Ashley L StensethBrazil2026-09-20Buckley Miller Wright QUALIFIED78Bernardo Dominic
1036Jefferson S MarrierSpain2026-10-17Feltz Printing Service QUALIFIED57Ioni Bowcher
1037Chavez B WieserAustralia2026-09-25King, Christopher A Esq QUALIFIED11Stephen Shaw
1038David O SergiCanada2026-10-13Morlong Associates QUALIFIED16Ivan Magalhaes
1039Ivar N PoquetteAustralia2026-09-28Dorl, James J Esq PROPOSAL42Ivan Magalhaes
1040Stacey J MacleadAustralia2026-09-22Dorl, James J Esq NEGOTIATION5Elwin Sharvill
1041Julie I RimCanada2026-10-15Feiner Bros NEGOTIATION39Onyama Limba
1042Mayumi P PoquetteCanada2026-10-05Commercial Press QUALIFIED38Bernardo Dominic
1043Faith K NestleRussia2026-09-21Printing Dimensions QUALIFIED55Ivan Magalhaes
1044Misaki C WaycottRussia2026-09-22Feiner Bros QUALIFIED43Bernardo Dominic
1045Darci J WieserFrance2026-10-05Dorl, James J Esq NEGOTIATION1Ioni Bowcher
1046Leon H MaletCanada2026-09-27Truhlar And Truhlar Attys QUALIFIED70Amy Elsner
1047Faith P FigeroaAustralia2026-10-15Feltz Printing Service NEW63Ioni Bowcher
1048Juan L ButtBrazil2026-10-04Printing Dimensions NEW61Elwin Sharvill
1049Wickens M SchemmerCanada2026-09-26Buckley Miller Wright QUALIFIED15Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Smith R FlosiGermanyAmy Elsner NEGOTIATION
Jennifer A MorascaArgentinaIoni Bowcher PROPOSAL
Juan F SaylorsBrazilStephen Shaw UNQUALIFIED
Claire Z CaudyFranceIvan Magalhaes NEGOTIATION
Leon L SaylorsItalyIvan Magalhaes QUALIFIED
Misaki L FerenczUnited KingdomStephen Shaw QUALIFIED
David B PaprockiUnited KingdomIoni Bowcher UNQUALIFIED
Cody K CaudyUnited KingdomAnna Fali NEW
Claire A KuskoSpainBernardo Dominic PROPOSAL
Leja X TollnerRussiaAsiya Javayant QUALIFIED
Costa K NestleArgentinaXuxue Feng NEW
Chavez U SchemmerUnited KingdomIoni Bowcher QUALIFIED
Faith F GlickCanadaBernardo Dominic QUALIFIED
Maria N ChuiRussiaAsiya Javayant NEGOTIATION
Darci D RutaAustraliaXuxue Feng NEGOTIATION
James R ShinkoSpainAmy Elsner UNQUALIFIED
Munro C DarakjyCanadaOnyama Limba NEGOTIATION
Izzy L PoquetteItalyOnyama Limba QUALIFIED
Kadeem L VenereCanadaElwin Sharvill PROPOSAL
Jeanfrancois P BowleyCanadaStephen Shaw RENEWAL
Ivar A FerenczSpainOnyama Limba UNQUALIFIED
Izzy S KolmetzBrazilElwin Sharvill PROPOSAL
Silvio G GlickJapanElwin Sharvill PROPOSAL
Stacey T FollerFranceIvan Magalhaes NEGOTIATION
Morrow V GarufiItalyXuxue Feng PROPOSAL
Faith U DilliardAustraliaBernardo Dominic RENEWAL
Salvatore V KolmetzCanadaAmy Elsner NEW
David E FollerArgentinaAmy Elsner QUALIFIED
Julie B OldroydGermanyAsiya Javayant QUALIFIED
Aditya C KuskoAustraliaAmy Elsner QUALIFIED
Octavia D MarrierJapanElwin Sharvill QUALIFIED
Julie X NickaCanadaOnyama Limba PROPOSAL
Morrow H MaletRussiaElwin Sharvill NEW
Aika M WhobreyAustraliaOnyama Limba RENEWAL
Leon F CaudyGermanyAnna Fali UNQUALIFIED
Clifford S FlosiUnited KingdomOnyama Limba UNQUALIFIED
Ashley F BologniaJapanAnna Fali NEGOTIATION
Alejandro T RulapaughGermanyIoni Bowcher QUALIFIED
Smith J ChuiItalyIvan Magalhaes NEW
Isabel F CaudyUnited KingdomIvan Magalhaes NEGOTIATION
Ricardo L StensethSpainAnna Fali UNQUALIFIED
Alejandro F RoysterIndiaOnyama Limba PROPOSAL
Mujtaba M PaprockiUnited KingdomElwin Sharvill PROPOSAL
Leja V BriddickGermanyAsiya Javayant QUALIFIED
Mayumi I NestleItalyBernardo Dominic UNQUALIFIED
Izzy S TollnerCanadaIvan Magalhaes NEW
Jennifer F GarufiAustraliaAmy Elsner RENEWAL
Tony Z NestleGermanyElwin Sharvill UNQUALIFIED
Ashley H ButtItalyAsiya Javayant RENEWAL
Juan Q GauchoCanadaAsiya Javayant NEGOTIATION
Frozen Columns
Name
Munro N Flosi
Smith C Darakjy
Clifford K Bolognia
Izzy V Morasca
Maisha M Bowley
Nicolas K Garufi
Aditya F Nestle
Juan F Darakjy
Maria X Royster
Stacey C Waycott
Tony F Poquette
Jefferson K Flosi
David X Butt
Mayumi P Maclead
Juan C Ruta
Stacey J Campain
Maria L Tollner
Murillo A Amigon
Faith Q Marrier
Antonio P Figeroa
Greenwood U Kolmetz
Kadeem N Amigon
Morrow G Poquette
Leja E Ostrosky
Aika X Flosi
Antonio S Campain
Wickens L Gillian
James G Schemmer
Julie A Paprocki
Leon E Whobrey
Mujtaba O Vocelka
Rodrigues M Gaucho
Clifford P Foller
Juan E Iturbide
Claire C Ferencz
Salvatore E Rim
Isabel Z Chui
Wickens I Waycott
Ashley R Doe
Maria F Bolognia
Leja A Kusko
Sinclair B Foller
Salvatore W Glick
Silvio O Darakjy
Wickens Q Darakjy
Jefferson W Amigon
Stacey Y Nestle
Tony F Poquette
Ricardo L Tollner
Mujtaba W Rulapaugh
IdCountryDate
1000Australia2026-09-29
1001Canada2026-10-02
1002Italy2026-10-03
1003Russia2026-10-03
1004Russia2026-10-03
1005Russia2026-10-09
1006Russia2026-09-20
1007India2026-10-16
1008United Kingdom2026-09-20
1009India2026-10-13
1010Russia2026-09-25
1011Italy2026-09-30
1012United Kingdom2026-10-15
1013Russia2026-09-29
1014India2026-09-27
1015Canada2026-10-06
1016Japan2026-09-22
1017Spain2026-10-09
1018Brazil2026-10-14
1019Argentina2026-09-24
1020Argentina2026-10-04
1021Spain2026-09-27
1022Brazil2026-10-08
1023Spain2026-09-21
1024India2026-10-06
1025Brazil2026-10-12
1026Japan2026-09-25
1027Japan2026-09-20
1028Argentina2026-09-18
1029Italy2026-09-18
1030United Kingdom2026-10-11
1031United Kingdom2026-10-07
1032Italy2026-09-21
1033Italy2026-09-25
1034Japan2026-09-19
1035India2026-09-25
1036Brazil2026-10-09
1037Argentina2026-10-16
1038Spain2026-09-25
1039Argentina2026-10-03
1040United Kingdom2026-10-03
1041Canada2026-10-11
1042Germany2026-10-12
1043United Kingdom2026-10-01
1044Germany2026-10-12
1045France2026-10-14
1046United Kingdom2026-09-25
1047United Kingdom2026-09-20
1048Germany2026-09-21
1049Russia2026-10-08

On-Demand Data

NameIdCountryDate
Aditya O Malet1000Italy2026-10-03
Chavez Y Ferencz1001Japan2026-10-15
Cody G Butt1002Argentina2026-10-15
Munro F Caldarera1003United Kingdom2026-09-21
Adams R Whobrey1004Italy2026-10-17
Jefferson M Saylors1005Italy2026-10-14
Leja T Amigon1006Australia2026-10-15
Jeanfrancois R Darakjy1007Brazil2026-10-15
Nicolas E Bolognia1008Japan2026-10-07
Mayumi Q Doe1009Germany2026-10-08
Aruna Z Waycott1010France2026-09-24
Misaki G Iturbide1011Japan2026-10-02
Arvin T Vocelka1012Spain2026-10-07
Leja I Foller1013Argentina2026-09-27
Arvin I Chui1014India2026-09-19
Silvio E Nicka1015Japan2026-10-15
Misaki O Kusko1016Canada2026-10-12
Juan V Albares1017United Kingdom2026-10-14
Juan T Kusko1018Argentina2026-09-20
Salvatore M Stockham1019Germany2026-10-01
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leon G CaudyCanadaAsiya Javayant NEW
Ivar J CampainAustraliaAsiya Javayant RENEWAL
Silvio S TollnerAustraliaElwin Sharvill RENEWAL
Ivar U NickaAustraliaIvan Magalhaes PROPOSAL
Ivar Z MorascaRussiaBernardo Dominic NEW
Misaki T MaletItalyAnna Fali NEW
Isabel M RimCanadaIvan Magalhaes UNQUALIFIED
Ashley Y RoysterIndiaStephen Shaw PROPOSAL
Tony L ChuiBrazilStephen Shaw UNQUALIFIED
Deepesh W CaudyUnited KingdomIoni Bowcher QUALIFIED
Jefferson F MarrierIndiaStephen Shaw NEW
Jennifer Y RulapaughBrazilAmy Elsner NEW
Ivar T PaprockiItalyBernardo Dominic QUALIFIED
Mujtaba J RimAustraliaAmy Elsner RENEWAL
Silvio Z WieserFranceStephen Shaw PROPOSAL
Wickens K DarakjyJapanIoni Bowcher PROPOSAL
Izzy S GauchoAustraliaAsiya Javayant RENEWAL
Arvin R PaprockiIndiaAmy Elsner RENEWAL
Mujtaba P SlusarskiCanadaIoni Bowcher PROPOSAL
Alejandro N CaudyItalyXuxue Feng UNQUALIFIED
Silvio Z ChuiCanadaStephen Shaw RENEWAL
Misaki O SchemmerArgentinaIvan Magalhaes QUALIFIED
Deepesh T GillianJapanOnyama Limba UNQUALIFIED
Misaki C MorascaRussiaBernardo Dominic NEGOTIATION
Clifford D PaprockiBrazilAnna Fali NEGOTIATION
Jennifer D FlosiBrazilStephen Shaw PROPOSAL
Maria X PerinUnited KingdomIvan Magalhaes PROPOSAL
Stacey T FlosiIndiaXuxue Feng UNQUALIFIED
Juan A NickaBrazilOnyama Limba RENEWAL
Salvatore B FollerIndiaIvan Magalhaes NEW
Salvatore N ChuiArgentinaStephen Shaw QUALIFIED
Jones N SaylorsGermanyXuxue Feng PROPOSAL
Mujtaba J DilliardItalyElwin Sharvill RENEWAL
Stacey S WaycottGermanyXuxue Feng NEW
Octavia A PoquetteFranceXuxue Feng NEW
James E FerenczJapanAsiya Javayant NEGOTIATION
Aditya J RulapaughUnited KingdomAnna Fali PROPOSAL
Kaitlin K GlickSpainAmy Elsner NEGOTIATION
Antonio T MarrierSpainElwin Sharvill QUALIFIED
Misaki I OstroskyItalyIoni Bowcher NEGOTIATION

<style>
    .ui-datatable-frozenlayout-left {
        width: 20%;
    }

    .ui-datatable-frozenlayout-right {
        width: 80%;
    }
</style>


<h:form>
    <div class="card">
        <h5 style="margin-top:0">Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers1}" scrollable="true" scrollHeight="250">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers2}" scrollable="true" scrollWidth="600">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Horizontal and Vertical</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers3}" scrollable="true" scrollWidth="50%" scrollHeight="250">
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
            <p:column headerText="Company" footerText="Company">
                <h:outputText value="#{customer.company}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
            <p:column headerText="Activity" footerText="Activity">
                <h:outputText value="#{customer.activity}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers4}" scrollable="true" scrollHeight="250"
                     frozenRows="2">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Frozen Columns</h5>
        <p:dataTable var="customer" value="#{dtScrollView.customers5}" scrollable="true" scrollHeight="250"
                     scrollWidth="300" frozenColumns="1" frozenColumnsAlignment="left">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h3>On-Demand Data</h3>
        <p:dataTable var="customer" value="#{dtScrollView.customers6}" scrollRows="20" scrollable="true" liveScroll="true" scrollHeight="150">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Id" footerText="Id">
                <h:outputText value="#{customer.id}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Date" footerText="Date">
                <h:outputText value="#{customer.date}"/>
            </p:column>
        </p:dataTable>
    </div>

    <div class="card">
        <h5>Virtual Scrolling - 20000 Rows</h5>
        <p:dataTable var="customer" value="#{dtScrollView.lazyModel}" scrollRows="20" scrollable="true"
                     virtualScroll="true" scrollHeight="200" rows="40" style="margin-bottom:0">
            <p:column headerText="Name" footerText="Name">
                <h:outputText value="#{customer.name}"/>
            </p:column>
            <p:column headerText="Country" footerText="Country">
                <h:outputText value="#{customer.country}"/>
            </p:column>
            <p:column headerText="Representative" footerText="Representative">
                <h:outputText value="#{customer.representative.name}"/>
            </p:column>
            <p:column headerText="Status" footerText="Status">
                <span class="customer-badge status-#{customer.status.name().toLowerCase()}">#{customer.status}</span>
            </p:column>
        </p:dataTable>
    </div>

</h:form>