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
Claire K MorascaGermanyIvan Magalhaes NEGOTIATION
David N GauchoIndiaAnna Fali PROPOSAL
Faith A KolmetzAustraliaIoni Bowcher PROPOSAL
Antonio H FlosiJapanAsiya Javayant QUALIFIED
Leon A WhobreyItalyStephen Shaw NEW
Octavia P RulapaughIndiaElwin Sharvill NEW
Adams O VocelkaFranceAsiya Javayant PROPOSAL
Misaki U CaldareraFranceAmy Elsner PROPOSAL
Aika D MaletArgentinaOnyama Limba RENEWAL
Jennifer A MorascaCanadaXuxue Feng RENEWAL
Wickens J RulapaughSpainAsiya Javayant PROPOSAL
Deepesh O FlosiUnited KingdomAsiya Javayant QUALIFIED
Jones G IturbideIndiaOnyama Limba NEGOTIATION
Leon B MacleadSpainAmy Elsner NEGOTIATION
Silvio S OldroydUnited KingdomBernardo Dominic UNQUALIFIED
Mayumi L SergiUnited KingdomOnyama Limba QUALIFIED
Silvio M SlusarskiJapanAnna Fali QUALIFIED
Aika O OldroydRussiaOnyama Limba RENEWAL
Ashley Y RoysterCanadaElwin Sharvill QUALIFIED
Leon E RutaRussiaAsiya Javayant NEW
Juan X RimCanadaAnna Fali NEW
Misaki S AlbaresAustraliaAsiya Javayant UNQUALIFIED
Jennifer G DarakjyCanadaBernardo Dominic RENEWAL
Deepesh L WieserSpainElwin Sharvill RENEWAL
Sinclair H InouyeSpainXuxue Feng NEGOTIATION
Greenwood H SergiGermanyBernardo Dominic NEW
Emily R MaletFranceAmy Elsner NEW
Aika Z InouyeRussiaAmy Elsner NEGOTIATION
Jones B PoquetteJapanIoni Bowcher RENEWAL
Kaitlin X GauchoGermanyElwin Sharvill QUALIFIED
Munro O RulapaughArgentinaIoni Bowcher QUALIFIED
Costa K BowleyRussiaAnna Fali QUALIFIED
Wickens X GlickIndiaStephen Shaw NEGOTIATION
Aruna M GillianUnited KingdomAsiya Javayant NEGOTIATION
Leja X MorascaJapanElwin Sharvill RENEWAL
Octavia Z GauchoBrazilIoni Bowcher UNQUALIFIED
Aika S InouyeIndiaAmy Elsner NEW
Antonio N TollnerUnited KingdomXuxue Feng RENEWAL
Clifford C IturbideIndiaXuxue Feng PROPOSAL
Alejandro W VocelkaGermanyIvan Magalhaes RENEWAL
Morrow W FollerSpainAsiya Javayant PROPOSAL
Silvio A WieserJapanAnna Fali NEGOTIATION
Maria H ButtBrazilStephen Shaw NEGOTIATION
Aditya S CaldareraArgentinaXuxue Feng NEGOTIATION
Isabel V PaprockiItalyAnna Fali QUALIFIED
Deepesh S MaletUnited KingdomIvan Magalhaes RENEWAL
Nicolas V PerinArgentinaStephen Shaw QUALIFIED
Wickens J StockhamSpainIvan Magalhaes PROPOSAL
Sinclair O WieserIndiaAsiya Javayant NEW
Arvin Q DarakjyFranceAsiya Javayant QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Francesco T NestleFranceElwin Sharvill PROPOSAL
Mujtaba G GillianGermanyAsiya Javayant QUALIFIED
Ricardo O FollerFranceIvan Magalhaes NEGOTIATION
Cody I CampainJapanAnna Fali QUALIFIED
James Y FollerAustraliaIvan Magalhaes UNQUALIFIED
Ashley J ShinkoGermanyElwin Sharvill PROPOSAL
Clifford P BowleySpainBernardo Dominic QUALIFIED
Ivar W CampainCanadaOnyama Limba PROPOSAL
Johnson P GillianSpainAmy Elsner NEW
Izzy J CampainItalyAmy Elsner NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna G GlickFrance2026-09-14Rousseaux, Michael Esq UNQUALIFIED87Stephen Shaw
1001Kaitlin V KuskoArgentina2026-09-11Rangoni Of Florence RENEWAL82Xuxue Feng
1002Clifford R DilliardAustralia2026-10-03Printing Dimensions RENEWAL68Asiya Javayant
1003Leja J VocelkaFrance2026-10-03Rangoni Of Florence PROPOSAL18Xuxue Feng
1004Morrow E FerenczItaly2026-10-07Chapman, Ross E Esq QUALIFIED65Xuxue Feng
1005Deepesh V RulapaughJapan2026-09-27Chanay, Jeffrey A Esq PROPOSAL77Ivan Magalhaes
1006Aika N SlusarskiBrazil2026-09-29Rousseaux, Michael Esq PROPOSAL5Xuxue Feng
1007Maria N CampainAustralia2026-09-17Rousseaux, Michael Esq PROPOSAL31Asiya Javayant
1008Octavia T WieserSpain2026-09-17Printing Dimensions PROPOSAL36Amy Elsner
1009Chavez B WhobreyArgentina2026-09-30Printing Dimensions QUALIFIED90Asiya Javayant
1010Costa J BriddickGermany2026-09-28Feiner Bros PROPOSAL22Onyama Limba
1011Murillo D CampainItaly2026-09-17Feiner Bros PROPOSAL4Ivan Magalhaes
1012Leon Y DilliardAustralia2026-09-21Rangoni Of Florence RENEWAL25Ioni Bowcher
1013Aruna F WhobreyFrance2026-10-02Rousseaux, Michael Esq NEW73Elwin Sharvill
1014Arvin M DoeSpain2026-10-07Feltz Printing Service NEW9Xuxue Feng
1015Alejandro V DilliardUnited Kingdom2026-09-16Buckley Miller Wright NEW8Ioni Bowcher
1016David N CaldareraFrance2026-09-15Dorl, James J Esq NEGOTIATION0Bernardo Dominic
1017David M CaudyUnited Kingdom2026-09-16Truhlar And Truhlar Attys PROPOSAL71Ivan Magalhaes
1018Sinclair S DoeGermany2026-10-08Morlong Associates RENEWAL29Amy Elsner
1019Nicolas S GlickGermany2026-09-27Rousseaux, Michael Esq NEGOTIATION47Bernardo Dominic
1020Mayumi N TollnerAustralia2026-09-21Chemel, James L Cpa NEGOTIATION86Asiya Javayant
1021Faith W MarrierBrazil2026-09-15Buckley Miller Wright PROPOSAL23Xuxue Feng
1022Wickens R NestleIndia2026-10-09Commercial Press QUALIFIED67Xuxue Feng
1023Mujtaba X WieserSpain2026-09-22Rangoni Of Florence NEGOTIATION51Stephen Shaw
1024Smith K GarufiSpain2026-09-29Printing Dimensions NEW44Asiya Javayant
1025Jones C PaprockiSpain2026-10-06Rangoni Of Florence RENEWAL51Ivan Magalhaes
1026Jefferson T SlusarskiArgentina2026-09-25Chemel, James L Cpa NEGOTIATION19Ioni Bowcher
1027Stacey L TollnerUnited Kingdom2026-09-26Morlong Associates UNQUALIFIED22Stephen Shaw
1028Octavia F CampainBrazil2026-09-23Chanay, Jeffrey A Esq NEGOTIATION64Anna Fali
1029Adams B CaudySpain2026-10-07King, Christopher A Esq NEGOTIATION3Amy Elsner
1030Greenwood Z DarakjyAustralia2026-10-06Chanay, Jeffrey A Esq RENEWAL52Ivan Magalhaes
1031Salvatore R WieserBrazil2026-09-11Commercial Press NEGOTIATION40Bernardo Dominic
1032Isabel B DilliardJapan2026-10-07Morlong Associates NEGOTIATION3Asiya Javayant
1033Deepesh F SaylorsFrance2026-09-14Chemel, James L Cpa QUALIFIED95Onyama Limba
1034Costa D DilliardIndia2026-09-28King, Christopher A Esq NEW46Amy Elsner
1035Aruna H SchemmerIndia2026-09-17Chanay, Jeffrey A Esq UNQUALIFIED64Amy Elsner
1036Izzy J StockhamAustralia2026-09-19Benton, John B Jr PROPOSAL44Ioni Bowcher
1037Murillo B VocelkaJapan2026-09-30Morlong Associates NEW55Stephen Shaw
1038Darci L DarakjyArgentina2026-09-20Feltz Printing Service QUALIFIED69Bernardo Dominic
1039Adams W CaldareraRussia2026-10-01Chemel, James L Cpa QUALIFIED97Ioni Bowcher
1040Rodrigues T BowleyIndia2026-10-08Morlong Associates PROPOSAL57Stephen Shaw
1041Silvio O IturbideIndia2026-10-02Truhlar And Truhlar Attys NEGOTIATION42Elwin Sharvill
1042Murillo D ChuiArgentina2026-09-26Dorl, James J Esq PROPOSAL77Bernardo Dominic
1043James I GlickJapan2026-10-02King, Christopher A Esq UNQUALIFIED72Xuxue Feng
1044Juan C FollerItaly2026-09-10Rangoni Of Florence RENEWAL55Stephen Shaw
1045Juan C VenereArgentina2026-09-17Benton, John B Jr UNQUALIFIED1Onyama Limba
1046Juan J FerenczRussia2026-10-03Rangoni Of Florence UNQUALIFIED52Ivan Magalhaes
1047Murillo R AmigonSpain2026-10-05Benton, John B Jr PROPOSAL93Amy Elsner
1048Claire A ShinkoBrazil2026-09-19Feiner Bros PROPOSAL1Amy Elsner
1049Octavia L MaletBrazil2026-10-04Buckley Miller Wright RENEWAL9Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Izzy T DilliardSpainAmy Elsner QUALIFIED
Jennifer R VenereArgentinaOnyama Limba RENEWAL
Jeanfrancois U FollerFranceStephen Shaw PROPOSAL
Tony H RulapaughUnited KingdomAmy Elsner QUALIFIED
Salvatore A ShinkoFranceElwin Sharvill RENEWAL
Tony X FigeroaGermanyStephen Shaw QUALIFIED
Chavez S ShinkoSpainIoni Bowcher NEW
Francesco J MorascaGermanyXuxue Feng UNQUALIFIED
Morrow J OstroskyIndiaBernardo Dominic NEGOTIATION
Jefferson U RoysterArgentinaBernardo Dominic NEW
Ashley K DarakjyAustraliaIvan Magalhaes QUALIFIED
Maria E IturbideFranceIoni Bowcher UNQUALIFIED
Isabel A MarrierAustraliaXuxue Feng UNQUALIFIED
Jefferson X TollnerAustraliaAnna Fali UNQUALIFIED
Jefferson V MarrierItalyElwin Sharvill PROPOSAL
Kaitlin C NickaSpainIvan Magalhaes RENEWAL
Greenwood C KolmetzGermanyElwin Sharvill RENEWAL
Kaitlin N OldroydSpainStephen Shaw UNQUALIFIED
Clifford D PoquetteIndiaXuxue Feng QUALIFIED
Johnson X FerenczBrazilIoni Bowcher NEGOTIATION
Mayumi I AlbaresGermanyOnyama Limba NEW
Sinclair A OstroskyItalyXuxue Feng UNQUALIFIED
Morrow E MaletUnited KingdomAnna Fali UNQUALIFIED
Clifford U VenereGermanyAsiya Javayant RENEWAL
Kaitlin S NickaUnited KingdomXuxue Feng PROPOSAL
James L SaylorsUnited KingdomAsiya Javayant NEGOTIATION
Cody W MorascaArgentinaAsiya Javayant RENEWAL
Aditya X CaldareraCanadaIvan Magalhaes NEW
Aika H PerinItalyAsiya Javayant PROPOSAL
Morrow Z FlosiCanadaIoni Bowcher NEW
Murillo E DilliardBrazilIoni Bowcher NEGOTIATION
Emily E TollnerUnited KingdomAmy Elsner RENEWAL
Greenwood B PaprockiJapanOnyama Limba RENEWAL
Jones Y RutaGermanyAsiya Javayant UNQUALIFIED
Aruna Q WhobreyFranceElwin Sharvill NEGOTIATION
Leon U RutaRussiaIoni Bowcher UNQUALIFIED
Mujtaba P DilliardSpainIoni Bowcher RENEWAL
Izzy J SaylorsAustraliaIoni Bowcher QUALIFIED
Greenwood A GarufiCanadaOnyama Limba QUALIFIED
Adams X InouyeCanadaElwin Sharvill NEGOTIATION
Kaitlin J RimGermanyBernardo Dominic NEGOTIATION
Wickens D DilliardUnited KingdomStephen Shaw NEGOTIATION
Isabel Y CaudyBrazilAnna Fali NEW
David F OldroydFranceAnna Fali RENEWAL
Munro F VocelkaBrazilOnyama Limba NEW
James O FlosiBrazilIvan Magalhaes QUALIFIED
Emily W FlosiAustraliaElwin Sharvill RENEWAL
Arvin T BologniaCanadaBernardo Dominic UNQUALIFIED
Sinclair Y CaudyArgentinaStephen Shaw PROPOSAL
Ivar E RulapaughArgentinaAnna Fali QUALIFIED
Frozen Columns
Name
Leja A Stockham
Aditya P Tollner
Misaki W Darakjy
Juan L Venere
Misaki J Nestle
Silvio E Inouye
Costa D Stockham
Alejandro J Royster
Julie P Wieser
Maisha N Morasca
Faith K Caldarera
Adams V Tollner
Cody O Perin
Aruna F Foller
Cody U Ostrosky
Kadeem R Albares
Arvin U Sergi
Munro B Nicka
Aruna P Chui
Aditya H Kolmetz
Antonio G Schemmer
Leon W Caldarera
Clifford X Butt
Aditya P Venere
Izzy O Gaucho
Aditya X Marrier
Sinclair L Iturbide
Cody Z Stenseth
Francesco G Flosi
Jones P Stockham
Murillo X Waycott
Misaki U Iturbide
Leja U Sergi
Johnson P Figeroa
Francesco K Gaucho
Wickens C Caudy
Rodrigues P Paprocki
Juan U Rulapaugh
Wickens G Ruta
Stacey T Ferencz
Ivar E Nicka
Claire E Butt
Tony B Butt
Emily A Caldarera
Darci G Ferencz
Francesco X Briddick
Johnson M Whobrey
Emily W Poquette
Darci H Briddick
Arvin O Caldarera
IdCountryDate
1000India2026-09-24
1001Argentina2026-09-18
1002United Kingdom2026-10-07
1003France2026-09-28
1004Brazil2026-10-01
1005Japan2026-09-26
1006France2026-09-14
1007India2026-09-13
1008Russia2026-09-18
1009Brazil2026-09-11
1010Japan2026-09-24
1011Russia2026-09-18
1012France2026-09-12
1013Spain2026-10-06
1014Australia2026-10-08
1015India2026-10-06
1016Spain2026-10-03
1017United Kingdom2026-09-28
1018United Kingdom2026-10-05
1019Japan2026-09-20
1020Russia2026-10-03
1021Australia2026-09-21
1022Canada2026-09-14
1023Argentina2026-09-28
1024Canada2026-09-24
1025Canada2026-09-16
1026Canada2026-10-04
1027Canada2026-09-28
1028France2026-10-07
1029United Kingdom2026-10-08
1030Italy2026-10-02
1031France2026-09-30
1032Australia2026-09-17
1033Brazil2026-10-03
1034Brazil2026-10-08
1035Germany2026-09-10
1036Spain2026-09-27
1037Italy2026-09-15
1038Italy2026-10-03
1039France2026-09-21
1040Australia2026-09-20
1041Spain2026-09-27
1042Italy2026-09-21
1043United Kingdom2026-09-23
1044Canada2026-09-24
1045India2026-10-08
1046Brazil2026-10-06
1047Canada2026-10-03
1048Argentina2026-10-08
1049Argentina2026-10-07

On-Demand Data

NameIdCountryDate
Ivar Z Gaucho1000India2026-09-10
Octavia U Saylors1001Argentina2026-10-09
Leon L Ruta1002Spain2026-10-07
Jennifer U Malet1003Germany2026-10-07
Maisha M Chui1004Australia2026-10-09
Murillo Y Doe1005Argentina2026-09-27
James G Inouye1006Brazil2026-09-23
Nicolas A Figeroa1007India2026-09-17
Morrow O Ostrosky1008Argentina2026-09-30
Deepesh I Venere1009Japan2026-10-06
Deepesh A Perin1010Japan2026-09-10
Leon L Stenseth1011Russia2026-10-01
Aditya J Bowley1012United Kingdom2026-09-27
Darci M Darakjy1013Japan2026-09-28
Murillo I Nicka1014Germany2026-09-19
Jennifer H Gillian1015Russia2026-10-06
Jennifer O Shinko1016Argentina2026-10-06
Sinclair X Darakjy1017Russia2026-09-13
Nicolas L Poquette1018Brazil2026-09-13
Chavez A Figeroa1019Japan2026-09-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Francesco I AlbaresCanadaIoni Bowcher PROPOSAL
Aruna D MaletArgentinaBernardo Dominic UNQUALIFIED
Morrow W SlusarskiBrazilIoni Bowcher NEW
Stacey Z CampainJapanIvan Magalhaes NEW
Kaitlin X InouyeBrazilAmy Elsner RENEWAL
Cody D SaylorsJapanIoni Bowcher NEW
Smith L FerenczBrazilAsiya Javayant NEW
Leja P FollerJapanAmy Elsner UNQUALIFIED
Salvatore T NestleSpainIvan Magalhaes UNQUALIFIED
Isabel E SaylorsArgentinaAsiya Javayant UNQUALIFIED
Leon X SchemmerGermanyAsiya Javayant QUALIFIED
Jefferson O FollerRussiaAmy Elsner PROPOSAL
Antonio K WieserIndiaIoni Bowcher UNQUALIFIED
Stacey R BologniaItalyStephen Shaw NEGOTIATION
Morrow F ButtGermanyXuxue Feng NEW
Tony W GauchoArgentinaAsiya Javayant QUALIFIED
Costa P DilliardArgentinaAnna Fali NEGOTIATION
Julie K FollerGermanyIvan Magalhaes QUALIFIED
Adams U BologniaRussiaElwin Sharvill RENEWAL
Clifford O SaylorsAustraliaStephen Shaw RENEWAL
Maisha D SergiArgentinaIoni Bowcher NEGOTIATION
Jeanfrancois X SaylorsJapanOnyama Limba RENEWAL
Morrow B MorascaCanadaAmy Elsner NEGOTIATION
Alejandro H NestleIndiaIoni Bowcher UNQUALIFIED
Ivar W VenereArgentinaAsiya Javayant RENEWAL
Salvatore H RoysterGermanyAmy Elsner RENEWAL
Silvio K OstroskyJapanAnna Fali QUALIFIED
Julie X RulapaughRussiaAsiya Javayant PROPOSAL
Greenwood A CampainIndiaElwin Sharvill NEGOTIATION
Alejandro F ButtItalyXuxue Feng RENEWAL
Deepesh N ButtCanadaAmy Elsner RENEWAL
Ricardo O RimSpainAmy Elsner UNQUALIFIED
Munro J OldroydRussiaAmy Elsner QUALIFIED
Silvio R NickaSpainXuxue Feng NEGOTIATION
Faith P CaudyIndiaIoni Bowcher UNQUALIFIED
Antonio E MacleadAustraliaIvan Magalhaes NEW
Izzy N BologniaFranceAnna Fali PROPOSAL
Stacey L GarufiAustraliaIoni Bowcher UNQUALIFIED
Faith Q NestleSpainXuxue Feng UNQUALIFIED
Adams B StockhamRussiaIoni Bowcher 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>