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
Darci F TollnerUnited KingdomElwin Sharvill PROPOSAL
Smith R FerenczArgentinaAmy Elsner UNQUALIFIED
Clifford X BologniaRussiaAsiya Javayant RENEWAL
Johnson Q FlosiCanadaIoni Bowcher UNQUALIFIED
Ricardo S CaudyAustraliaXuxue Feng RENEWAL
Maria H RulapaughCanadaAmy Elsner UNQUALIFIED
Adams L AmigonIndiaElwin Sharvill UNQUALIFIED
Clifford B BowleyUnited KingdomBernardo Dominic UNQUALIFIED
Darci U WhobreySpainElwin Sharvill NEGOTIATION
Johnson K FollerJapanOnyama Limba NEW
Costa L PaprockiFranceIvan Magalhaes RENEWAL
Faith Z NickaUnited KingdomBernardo Dominic PROPOSAL
Sinclair U GillianJapanIoni Bowcher UNQUALIFIED
Wickens V ChuiJapanOnyama Limba PROPOSAL
Tony H SaylorsBrazilOnyama Limba UNQUALIFIED
Emily T FigeroaUnited KingdomIvan Magalhaes UNQUALIFIED
Wickens J FollerFranceIvan Magalhaes UNQUALIFIED
Arvin M KuskoJapanBernardo Dominic UNQUALIFIED
Chavez K GauchoRussiaAsiya Javayant NEGOTIATION
Rodrigues M SaylorsFranceIoni Bowcher NEGOTIATION
Claire L FlosiAustraliaOnyama Limba NEGOTIATION
Leon R WhobreyArgentinaAnna Fali PROPOSAL
Antonio Q StensethAustraliaAmy Elsner PROPOSAL
Stacey T FlosiFranceElwin Sharvill PROPOSAL
Mujtaba S OldroydIndiaOnyama Limba RENEWAL
Smith Y NestleCanadaIvan Magalhaes NEGOTIATION
Emily T PerinJapanAmy Elsner NEGOTIATION
Adams Y AmigonArgentinaIoni Bowcher RENEWAL
Sinclair A GauchoCanadaElwin Sharvill QUALIFIED
Clifford G VenereArgentinaStephen Shaw UNQUALIFIED
Smith A MaletBrazilAmy Elsner QUALIFIED
Arvin S VenereBrazilIvan Magalhaes QUALIFIED
James M GarufiUnited KingdomAmy Elsner UNQUALIFIED
Clifford C MarrierItalyBernardo Dominic UNQUALIFIED
Aruna G VenereAustraliaBernardo Dominic RENEWAL
Chavez J AlbaresRussiaXuxue Feng QUALIFIED
Clifford K DarakjyIndiaAnna Fali NEW
Chavez Z DarakjyItalyStephen Shaw RENEWAL
Jefferson F SaylorsAustraliaAmy Elsner RENEWAL
Kadeem Q CaldareraFranceAmy Elsner NEW
Morrow V WieserFranceIvan Magalhaes NEW
Jennifer Y VenereGermanyAnna Fali QUALIFIED
Mujtaba W OstroskyAustraliaXuxue Feng QUALIFIED
Maria C VenereItalyBernardo Dominic QUALIFIED
Sinclair Q ButtBrazilIoni Bowcher PROPOSAL
Nicolas C WieserItalyIvan Magalhaes NEW
Morrow H NestleFranceStephen Shaw NEGOTIATION
Jones E BowleyArgentinaIvan Magalhaes PROPOSAL
Octavia S FigeroaRussiaElwin Sharvill QUALIFIED
Kaitlin C VenereAustraliaAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Cody I TollnerAustraliaAmy Elsner UNQUALIFIED
Maisha W VocelkaItalyElwin Sharvill UNQUALIFIED
Clifford P GauchoJapanAsiya Javayant QUALIFIED
Salvatore F SergiIndiaIoni Bowcher RENEWAL
Aika O SaylorsBrazilBernardo Dominic RENEWAL
Claire W KuskoArgentinaIoni Bowcher UNQUALIFIED
Ivar J NickaBrazilIoni Bowcher UNQUALIFIED
Mujtaba I MarrierSpainIvan Magalhaes NEW
Mayumi R MaletCanadaAsiya Javayant QUALIFIED
Aditya I OldroydRussiaAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo X FollerCanada2026-09-14Dorl, James J Esq RENEWAL32Bernardo Dominic
1001Kadeem C GillianCanada2026-08-27Dorl, James J Esq PROPOSAL10Ivan Magalhaes
1002Mujtaba I VenereJapan2026-09-15Commercial Press UNQUALIFIED53Ioni Bowcher
1003Chavez J RutaBrazil2026-08-31Benton, John B Jr QUALIFIED15Asiya Javayant
1004Costa G NickaArgentina2026-09-09Buckley Miller Wright RENEWAL73Onyama Limba
1005Darci J PerinBrazil2026-09-20Printing Dimensions PROPOSAL82Elwin Sharvill
1006Deepesh M GlickIndia2026-09-19Chanay, Jeffrey A Esq NEGOTIATION10Amy Elsner
1007Costa B GlickCanada2026-09-05King, Christopher A Esq UNQUALIFIED56Stephen Shaw
1008Antonio S FigeroaArgentina2026-09-23Feiner Bros QUALIFIED45Anna Fali
1009David K RutaSpain2026-09-17Truhlar And Truhlar Attys NEGOTIATION10Xuxue Feng
1010Morrow P NestleUnited Kingdom2026-09-15Benton, John B Jr UNQUALIFIED64Onyama Limba
1011Izzy E KuskoRussia2026-09-02Feiner Bros NEW15Stephen Shaw
1012Silvio D ChuiCanada2026-09-12Rangoni Of Florence NEGOTIATION29Ivan Magalhaes
1013Jefferson I MaletFrance2026-08-30Rousseaux, Michael Esq UNQUALIFIED29Stephen Shaw
1014Maisha A RutaItaly2026-09-13Commercial Press NEW20Elwin Sharvill
1015Clifford Q OldroydJapan2026-08-25Feiner Bros UNQUALIFIED86Ioni Bowcher
1016Nicolas K WieserRussia2026-09-19Chapman, Ross E Esq UNQUALIFIED30Onyama Limba
1017David C RoysterRussia2026-09-08Feltz Printing Service RENEWAL43Stephen Shaw
1018Kaitlin A MaletArgentina2026-09-23Commercial Press RENEWAL22Anna Fali
1019Chavez X SchemmerJapan2026-08-28Rousseaux, Michael Esq QUALIFIED10Asiya Javayant
1020Jeanfrancois E NestleAustralia2026-09-12Chapman, Ross E Esq QUALIFIED52Anna Fali
1021Misaki E WieserIndia2026-08-30Morlong Associates QUALIFIED89Xuxue Feng
1022Munro F GillianGermany2026-09-05Chanay, Jeffrey A Esq NEW34Onyama Limba
1023Antonio K ChuiArgentina2026-08-31Rangoni Of Florence NEW80Ioni Bowcher
1024Nicolas D MaletJapan2026-09-08Feiner Bros UNQUALIFIED96Bernardo Dominic
1025Aika N AmigonSpain2026-08-28Rangoni Of Florence NEGOTIATION66Anna Fali
1026Costa J OldroydRussia2026-09-08King, Christopher A Esq RENEWAL97Onyama Limba
1027Aruna U MorascaAustralia2026-09-14Chapman, Ross E Esq NEGOTIATION91Asiya Javayant
1028Alejandro L ChuiIndia2026-08-26Commercial Press NEW76Anna Fali
1029Sinclair J WhobreyAustralia2026-09-22Feiner Bros QUALIFIED55Xuxue Feng
1030Jefferson E StensethAustralia2026-09-17Feltz Printing Service NEW84Amy Elsner
1031Maisha E GillianArgentina2026-08-25Chapman, Ross E Esq RENEWAL59Stephen Shaw
1032Arvin T BowleyGermany2026-09-06Chemel, James L Cpa NEGOTIATION47Xuxue Feng
1033Adams C GillianJapan2026-09-10Commercial Press NEW30Elwin Sharvill
1034Morrow A StockhamIndia2026-09-17Printing Dimensions RENEWAL86Ioni Bowcher
1035Costa W VocelkaGermany2026-09-11King, Christopher A Esq RENEWAL87Xuxue Feng
1036Aika A AmigonUnited Kingdom2026-09-20Buckley Miller Wright NEW13Asiya Javayant
1037Octavia B VocelkaIndia2026-09-23King, Christopher A Esq UNQUALIFIED79Xuxue Feng
1038Jeanfrancois J BriddickGermany2026-09-03Chapman, Ross E Esq QUALIFIED96Ivan Magalhaes
1039Maisha W ShinkoAustralia2026-09-03Rousseaux, Michael Esq RENEWAL92Onyama Limba
1040Adams N DilliardItaly2026-08-29Rangoni Of Florence NEGOTIATION14Amy Elsner
1041Izzy J NestleCanada2026-09-17Chanay, Jeffrey A Esq PROPOSAL24Amy Elsner
1042Aika X MaletUnited Kingdom2026-09-11Chapman, Ross E Esq RENEWAL88Bernardo Dominic
1043Alejandro R WhobreyCanada2026-09-16Morlong Associates NEGOTIATION16Ioni Bowcher
1044Arvin U TollnerAustralia2026-09-02Morlong Associates RENEWAL47Ivan Magalhaes
1045Aruna B CampainBrazil2026-09-14Morlong Associates RENEWAL80Anna Fali
1046Jefferson Z OldroydIndia2026-09-18Benton, John B Jr NEW39Bernardo Dominic
1047Munro Q ButtItaly2026-09-20Truhlar And Truhlar Attys PROPOSAL80Asiya Javayant
1048Morrow B VocelkaItaly2026-09-02Feiner Bros PROPOSAL20Xuxue Feng
1049Faith W GillianBrazil2026-09-01Morlong Associates NEW75Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Aditya S RimIndiaStephen Shaw RENEWAL
Mujtaba E CampainGermanyElwin Sharvill QUALIFIED
Mayumi F FollerSpainXuxue Feng PROPOSAL
Rodrigues A MaletItalyIoni Bowcher QUALIFIED
Nicolas H VocelkaAustraliaElwin Sharvill NEW
Deepesh G KolmetzJapanAsiya Javayant NEGOTIATION
Izzy E OstroskyRussiaAnna Fali UNQUALIFIED
Aruna F RoysterIndiaElwin Sharvill RENEWAL
Kaitlin T BowleyItalyAsiya Javayant UNQUALIFIED
Clifford J SergiRussiaStephen Shaw NEGOTIATION
Stacey L DarakjyJapanOnyama Limba RENEWAL
Jefferson G MacleadArgentinaBernardo Dominic RENEWAL
Darci Z SlusarskiIndiaElwin Sharvill PROPOSAL
Costa I OstroskyGermanyStephen Shaw PROPOSAL
Arvin Z SaylorsSpainAmy Elsner NEW
Misaki E MorascaArgentinaStephen Shaw UNQUALIFIED
Octavia P DilliardBrazilStephen Shaw UNQUALIFIED
Tony N BriddickCanadaIoni Bowcher NEW
Julie H KolmetzJapanXuxue Feng NEGOTIATION
Isabel L IturbideUnited KingdomIvan Magalhaes NEW
Aika Y ChuiJapanIvan Magalhaes PROPOSAL
Greenwood Y FollerRussiaXuxue Feng RENEWAL
Clifford P CaldareraRussiaElwin Sharvill QUALIFIED
Jefferson V CaldareraCanadaAsiya Javayant NEGOTIATION
Deepesh T VenereCanadaOnyama Limba QUALIFIED
Costa K MaletUnited KingdomXuxue Feng UNQUALIFIED
Misaki W BowleyUnited KingdomAmy Elsner PROPOSAL
Rodrigues L CaudyAustraliaBernardo Dominic NEGOTIATION
Murillo C MaletGermanyIvan Magalhaes NEW
Morrow A MacleadJapanElwin Sharvill NEW
Kaitlin Z BologniaCanadaBernardo Dominic QUALIFIED
Munro L AlbaresGermanyIvan Magalhaes RENEWAL
Maria W SergiGermanyXuxue Feng NEW
Chavez Y SlusarskiJapanXuxue Feng NEW
Jennifer I BriddickGermanyStephen Shaw QUALIFIED
Sinclair F VocelkaRussiaAnna Fali NEW
Darci W GarufiFranceIvan Magalhaes PROPOSAL
Sinclair F FigeroaIndiaStephen Shaw NEGOTIATION
Chavez O GarufiUnited KingdomAsiya Javayant QUALIFIED
James A MacleadArgentinaAnna Fali PROPOSAL
Leja E PaprockiGermanyIoni Bowcher QUALIFIED
Smith L GarufiCanadaIvan Magalhaes NEW
Costa G FerenczUnited KingdomIvan Magalhaes NEGOTIATION
Mayumi O PaprockiSpainXuxue Feng NEW
Mujtaba L DarakjyIndiaStephen Shaw NEGOTIATION
Leon J NestleFranceIoni Bowcher UNQUALIFIED
Jennifer I VenereIndiaIvan Magalhaes NEW
Stacey K CaudyAustraliaStephen Shaw PROPOSAL
Emily N GlickItalyIoni Bowcher NEGOTIATION
Jennifer H BowleyAustraliaAnna Fali QUALIFIED
Frozen Columns
Name
Aditya R Saylors
Salvatore H Whobrey
Leon R Inouye
Greenwood X Marrier
Arvin I Bolognia
Munro Y Malet
Cody G Tollner
Wickens O Darakjy
Mayumi U Gillian
Cody H Poquette
Aruna G Flosi
Antonio W Ruta
Jeanfrancois A Iturbide
Maria Z Waycott
Izzy D Figeroa
Deepesh U Poquette
Wickens G Amigon
Deepesh R Kusko
Wickens X Vocelka
Jennifer S Tollner
Salvatore C Kolmetz
Wickens Q Malet
Silvio B Tollner
Jeanfrancois I Ostrosky
Aruna M Venere
Alejandro O Campain
Jeanfrancois E Kolmetz
Francesco Y Chui
Cody H Nicka
Rodrigues H Gaucho
Munro E Garufi
Stacey E Morasca
Jefferson O Ferencz
Izzy Z Kusko
Clifford R Amigon
Smith X Shinko
Izzy F Caldarera
Alejandro H Schemmer
Tony O Wieser
Tony P Campain
Kadeem W Stenseth
Antonio Z Rim
Greenwood S Dilliard
Silvio V Maclead
Greenwood G Amigon
Emily N Inouye
Ivar W Gillian
Silvio Y Perin
Wickens V Schemmer
Maria U Doe
IdCountryDate
1000India2026-08-30
1001Brazil2026-09-14
1002United Kingdom2026-08-27
1003Brazil2026-09-01
1004Russia2026-09-03
1005Australia2026-09-21
1006Canada2026-09-06
1007France2026-09-07
1008Brazil2026-09-04
1009United Kingdom2026-09-05
1010United Kingdom2026-09-22
1011Brazil2026-09-03
1012Germany2026-09-09
1013France2026-09-14
1014Germany2026-09-18
1015Canada2026-09-15
1016Canada2026-09-07
1017Germany2026-09-02
1018Germany2026-09-02
1019Brazil2026-08-27
1020Japan2026-09-07
1021Brazil2026-08-27
1022United Kingdom2026-09-20
1023Italy2026-09-05
1024Japan2026-09-11
1025India2026-09-08
1026Italy2026-09-23
1027Brazil2026-09-08
1028Russia2026-09-17
1029India2026-09-13
1030Spain2026-09-15
1031India2026-09-14
1032Germany2026-09-05
1033France2026-09-16
1034United Kingdom2026-09-12
1035Japan2026-09-20
1036Japan2026-09-18
1037Argentina2026-08-28
1038Italy2026-09-19
1039Brazil2026-09-21
1040Germany2026-09-16
1041Brazil2026-08-29
1042United Kingdom2026-09-21
1043Brazil2026-09-07
1044Russia2026-09-22
1045Russia2026-09-07
1046United Kingdom2026-09-15
1047Germany2026-08-28
1048Russia2026-09-17
1049France2026-09-21

On-Demand Data

NameIdCountryDate
Chavez J Nicka1000Argentina2026-08-26
Salvatore N Slusarski1001Australia2026-08-28
Murillo B Campain1002Germany2026-09-03
Izzy K Figeroa1003Argentina2026-08-31
Salvatore Z Kusko1004Russia2026-08-26
Aruna Q Albares1005Japan2026-09-10
Aruna P Perin1006Australia2026-08-31
Ashley A Tollner1007Russia2026-08-27
Jones X Stockham1008Russia2026-09-13
Aditya J Flosi1009France2026-09-16
Francesco P Ostrosky1010France2026-09-09
Maisha R Butt1011France2026-08-25
Munro N Rulapaugh1012Canada2026-09-12
Kadeem J Gaucho1013India2026-08-31
Jones N Albares1014Argentina2026-09-09
Antonio W Waycott1015United Kingdom2026-08-29
Stacey A Stenseth1016Australia2026-09-09
Ivar I Slusarski1017Australia2026-08-31
Chavez U Vocelka1018Australia2026-09-02
Adams E Ruta1019Russia2026-09-19
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan W FlosiFranceBernardo Dominic QUALIFIED
Claire G PaprockiUnited KingdomAnna Fali NEGOTIATION
Arvin Z DarakjyUnited KingdomStephen Shaw NEGOTIATION
Greenwood A GauchoFranceAsiya Javayant RENEWAL
Stacey H CaldareraBrazilElwin Sharvill UNQUALIFIED
Claire L OldroydItalyStephen Shaw UNQUALIFIED
Jefferson I MorascaFranceXuxue Feng NEW
Julie E MarrierJapanAsiya Javayant UNQUALIFIED
Francesco E SaylorsUnited KingdomIvan Magalhaes NEGOTIATION
Kaitlin E MarrierRussiaOnyama Limba QUALIFIED
Cody F RimGermanyIvan Magalhaes NEGOTIATION
Salvatore O AlbaresSpainIoni Bowcher RENEWAL
Wickens F BowleyCanadaOnyama Limba RENEWAL
Ricardo Y NestleGermanyIvan Magalhaes UNQUALIFIED
Claire U GlickCanadaIvan Magalhaes UNQUALIFIED
Johnson U BowleyFranceStephen Shaw NEW
Silvio P AlbaresSpainBernardo Dominic QUALIFIED
Murillo F FlosiJapanAmy Elsner UNQUALIFIED
Leja N GarufiRussiaXuxue Feng QUALIFIED
James W AmigonUnited KingdomIvan Magalhaes PROPOSAL
Emily V CaldareraFranceAnna Fali PROPOSAL
Emily Y WaycottUnited KingdomAnna Fali RENEWAL
Murillo B FigeroaFranceAnna Fali NEGOTIATION
Cody E WaycottBrazilOnyama Limba QUALIFIED
Smith L CaudyFranceBernardo Dominic NEW
Kaitlin F DilliardSpainIoni Bowcher QUALIFIED
Stacey R WieserAustraliaXuxue Feng UNQUALIFIED
Claire J BowleyGermanyOnyama Limba UNQUALIFIED
Sinclair W BowleyCanadaIoni Bowcher NEW
Stacey R WhobreyUnited KingdomOnyama Limba PROPOSAL
Stacey H ButtSpainIoni Bowcher NEW
Maisha Y PoquetteGermanyIvan Magalhaes NEW
Jennifer F DarakjyJapanBernardo Dominic NEW
Darci A MaletItalyStephen Shaw RENEWAL
Francesco T CampainBrazilStephen Shaw QUALIFIED
Aika U AmigonSpainAsiya Javayant UNQUALIFIED
Izzy T RutaUnited KingdomElwin Sharvill NEW
Faith E SlusarskiJapanStephen Shaw UNQUALIFIED
Francesco G DarakjyItalyAsiya Javayant NEGOTIATION
Ricardo W MaletUnited KingdomBernardo Dominic NEW

<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>