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
Wickens R CampainItalyAnna Fali RENEWAL
Jefferson L WieserJapanAsiya Javayant RENEWAL
Rodrigues G MaletAustraliaBernardo Dominic NEW
Silvio V WhobreyUnited KingdomAnna Fali RENEWAL
James E CaudyFranceBernardo Dominic RENEWAL
David V CampainFranceOnyama Limba NEW
James K AmigonIndiaAmy Elsner NEW
James M AlbaresCanadaAnna Fali QUALIFIED
Octavia O CaldareraSpainIoni Bowcher QUALIFIED
Juan I KuskoBrazilAmy Elsner NEGOTIATION
Kadeem K CaldareraFranceIoni Bowcher NEW
Smith Z FerenczUnited KingdomIoni Bowcher PROPOSAL
Morrow C RutaItalyAmy Elsner PROPOSAL
Clifford P GarufiBrazilStephen Shaw RENEWAL
Rodrigues B MarrierFranceIvan Magalhaes QUALIFIED
Rodrigues Z IturbideArgentinaAsiya Javayant PROPOSAL
Leja W FollerArgentinaIvan Magalhaes PROPOSAL
Jeanfrancois H BriddickBrazilIoni Bowcher NEW
Izzy H IturbideBrazilAmy Elsner QUALIFIED
Tony Z CampainIndiaBernardo Dominic NEW
Chavez H MaletAustraliaXuxue Feng UNQUALIFIED
Chavez A RutaRussiaAsiya Javayant QUALIFIED
Rodrigues M MarrierItalyAmy Elsner QUALIFIED
Murillo O PaprockiItalyXuxue Feng UNQUALIFIED
David D SlusarskiAustraliaIvan Magalhaes NEGOTIATION
Darci E PoquetteBrazilOnyama Limba QUALIFIED
Greenwood R SlusarskiCanadaAmy Elsner RENEWAL
Silvio D OstroskyArgentinaOnyama Limba PROPOSAL
Jennifer B ShinkoJapanIoni Bowcher NEGOTIATION
Faith S RoysterSpainOnyama Limba PROPOSAL
Clifford W StockhamFranceXuxue Feng QUALIFIED
Darci M MarrierGermanyAmy Elsner NEW
Francesco R StensethArgentinaIoni Bowcher QUALIFIED
Aditya K StockhamArgentinaOnyama Limba NEGOTIATION
Misaki I FollerGermanyBernardo Dominic NEW
Claire R DoeUnited KingdomXuxue Feng QUALIFIED
Kadeem D PerinItalyXuxue Feng UNQUALIFIED
Johnson M FlosiAustraliaBernardo Dominic RENEWAL
Izzy I CaudyRussiaOnyama Limba PROPOSAL
Arvin C CaldareraCanadaIvan Magalhaes RENEWAL
Costa A DarakjyAustraliaElwin Sharvill UNQUALIFIED
Ashley A CaldareraJapanIoni Bowcher RENEWAL
Salvatore O IturbideArgentinaElwin Sharvill UNQUALIFIED
Isabel A CampainFranceBernardo Dominic PROPOSAL
Leja W BologniaCanadaStephen Shaw QUALIFIED
Jones I VocelkaSpainAnna Fali UNQUALIFIED
Mayumi K MorascaJapanAmy Elsner NEGOTIATION
Misaki L MaletRussiaXuxue Feng NEGOTIATION
Aditya L PoquetteJapanOnyama Limba UNQUALIFIED
Mujtaba P RoysterItalyAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Costa F RulapaughBrazilAnna Fali NEW
Murillo O VocelkaJapanBernardo Dominic UNQUALIFIED
Octavia M FerenczJapanAnna Fali QUALIFIED
Nicolas T GarufiUnited KingdomOnyama Limba NEW
Aditya I RimAustraliaAmy Elsner PROPOSAL
Aika L FigeroaJapanAsiya Javayant NEGOTIATION
Jeanfrancois P AmigonBrazilIoni Bowcher UNQUALIFIED
Maisha L WaycottSpainElwin Sharvill RENEWAL
Aika A MorascaRussiaBernardo Dominic PROPOSAL
Mujtaba Z AlbaresUnited KingdomAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000James P FlosiIndia2026-08-27Chemel, James L Cpa RENEWAL14Amy Elsner
1001Izzy W PaprockiRussia2026-09-17Truhlar And Truhlar Attys PROPOSAL69Anna Fali
1002Chavez X MacleadArgentina2026-09-03Feiner Bros NEW24Bernardo Dominic
1003Salvatore B OldroydCanada2026-08-20Feltz Printing Service UNQUALIFIED59Ioni Bowcher
1004Leja F GlickItaly2026-08-21Chanay, Jeffrey A Esq PROPOSAL73Anna Fali
1005Chavez K CaudyFrance2026-08-23Chanay, Jeffrey A Esq RENEWAL98Ioni Bowcher
1006Rodrigues S WhobreyBrazil2026-09-18Feltz Printing Service QUALIFIED91Stephen Shaw
1007Darci R AmigonFrance2026-08-26Feltz Printing Service NEW48Onyama Limba
1008Emily S RoysterGermany2026-08-30Benton, John B Jr UNQUALIFIED55Ioni Bowcher
1009Jeanfrancois B SaylorsUnited Kingdom2026-08-25Chemel, James L Cpa PROPOSAL59Elwin Sharvill
1010Salvatore R BriddickFrance2026-09-12Morlong Associates UNQUALIFIED72Ioni Bowcher
1011Leja P NickaArgentina2026-09-04Chapman, Ross E Esq UNQUALIFIED22Ioni Bowcher
1012Rodrigues N ButtBrazil2026-08-20Feltz Printing Service UNQUALIFIED85Stephen Shaw
1013Cody T WhobreyIndia2026-09-03Benton, John B Jr PROPOSAL50Bernardo Dominic
1014Jennifer O DilliardItaly2026-08-25Rousseaux, Michael Esq RENEWAL16Bernardo Dominic
1015Jones S GillianIndia2026-09-13Dorl, James J Esq QUALIFIED24Anna Fali
1016Alejandro I PaprockiIndia2026-08-23Dorl, James J Esq PROPOSAL59Amy Elsner
1017Alejandro C TollnerItaly2026-09-06King, Christopher A Esq NEW3Asiya Javayant
1018Ricardo S OstroskyCanada2026-09-18Feltz Printing Service RENEWAL95Elwin Sharvill
1019Faith F MarrierArgentina2026-09-03Commercial Press PROPOSAL74Elwin Sharvill
1020Mujtaba N RutaAustralia2026-08-24Chanay, Jeffrey A Esq QUALIFIED92Bernardo Dominic
1021Ashley Q RutaItaly2026-09-07Buckley Miller Wright NEGOTIATION33Elwin Sharvill
1022Nicolas X FigeroaJapan2026-08-26Commercial Press RENEWAL94Xuxue Feng
1023Salvatore Y SergiBrazil2026-09-01Truhlar And Truhlar Attys RENEWAL9Onyama Limba
1024Emily D FigeroaItaly2026-08-28Feiner Bros NEGOTIATION51Elwin Sharvill
1025Izzy Z ButtItaly2026-09-01Dorl, James J Esq PROPOSAL74Anna Fali
1026Stacey U DarakjyRussia2026-08-23Dorl, James J Esq NEW27Ivan Magalhaes
1027Isabel G RutaItaly2026-08-20Morlong Associates RENEWAL52Asiya Javayant
1028Jefferson Y WaycottFrance2026-09-17Dorl, James J Esq QUALIFIED27Stephen Shaw
1029Morrow R OldroydUnited Kingdom2026-09-11Chemel, James L Cpa QUALIFIED20Xuxue Feng
1030Arvin I VocelkaCanada2026-09-16Dorl, James J Esq RENEWAL13Anna Fali
1031Sinclair A ShinkoFrance2026-08-28Dorl, James J Esq QUALIFIED88Asiya Javayant
1032Aika R CampainJapan2026-09-11Buckley Miller Wright NEW54Ioni Bowcher
1033Nicolas Q CaudyArgentina2026-08-28Morlong Associates UNQUALIFIED36Stephen Shaw
1034Aika H SaylorsFrance2026-09-08Truhlar And Truhlar Attys RENEWAL62Elwin Sharvill
1035Munro K BriddickItaly2026-08-23Printing Dimensions PROPOSAL58Bernardo Dominic
1036Aruna N WaycottGermany2026-09-15Chanay, Jeffrey A Esq NEGOTIATION42Xuxue Feng
1037Emily H StensethSpain2026-08-27King, Christopher A Esq RENEWAL49Bernardo Dominic
1038Murillo V DilliardFrance2026-08-30Morlong Associates PROPOSAL5Bernardo Dominic
1039Costa L RimItaly2026-09-06Chemel, James L Cpa NEW8Bernardo Dominic
1040Greenwood M FlosiFrance2026-08-28Dorl, James J Esq UNQUALIFIED8Ioni Bowcher
1041Alejandro O BologniaItaly2026-08-23Benton, John B Jr QUALIFIED25Ioni Bowcher
1042Silvio Y CaudyArgentina2026-09-10Feltz Printing Service RENEWAL34Ioni Bowcher
1043Leja R GlickFrance2026-08-27Chemel, James L Cpa RENEWAL85Anna Fali
1044Adams Z GillianIndia2026-09-12Benton, John B Jr PROPOSAL84Bernardo Dominic
1045Jefferson X PaprockiIndia2026-09-15Dorl, James J Esq NEW32Bernardo Dominic
1046Darci G OstroskyRussia2026-08-27Feltz Printing Service RENEWAL31Elwin Sharvill
1047Maria W ChuiUnited Kingdom2026-09-18King, Christopher A Esq UNQUALIFIED46Elwin Sharvill
1048Izzy C BowleyJapan2026-08-29Benton, John B Jr PROPOSAL33Anna Fali
1049Kadeem G WhobreyCanada2026-09-10Chemel, James L Cpa UNQUALIFIED27Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Jefferson N VenereIndiaStephen Shaw RENEWAL
Salvatore S FlosiIndiaBernardo Dominic QUALIFIED
Munro S RoysterJapanOnyama Limba UNQUALIFIED
Wickens A WieserCanadaAnna Fali RENEWAL
Ashley K ShinkoFranceStephen Shaw UNQUALIFIED
Jeanfrancois H ShinkoArgentinaStephen Shaw RENEWAL
Adams O FlosiCanadaOnyama Limba QUALIFIED
Ashley D SlusarskiArgentinaBernardo Dominic PROPOSAL
Costa M GarufiGermanyOnyama Limba UNQUALIFIED
Maisha C OldroydUnited KingdomStephen Shaw RENEWAL
Jefferson S InouyeCanadaAsiya Javayant PROPOSAL
Octavia Z WaycottArgentinaAmy Elsner UNQUALIFIED
Silvio H WhobreyArgentinaAnna Fali PROPOSAL
Mayumi X SaylorsItalyAnna Fali NEW
Ricardo T DilliardArgentinaBernardo Dominic RENEWAL
Smith N GarufiAustraliaAmy Elsner PROPOSAL
James K SlusarskiItalyIoni Bowcher RENEWAL
Mayumi E RimSpainIoni Bowcher QUALIFIED
Stacey P NickaBrazilIoni Bowcher NEGOTIATION
Aruna G IturbideJapanIvan Magalhaes NEGOTIATION
Aditya L RutaAustraliaXuxue Feng PROPOSAL
Murillo Z RulapaughJapanXuxue Feng NEW
Aruna Q AlbaresSpainElwin Sharvill NEGOTIATION
Jefferson M GarufiJapanAnna Fali NEGOTIATION
Johnson M SchemmerJapanBernardo Dominic NEGOTIATION
Misaki C VenereGermanyAnna Fali QUALIFIED
Johnson Z ShinkoArgentinaStephen Shaw NEGOTIATION
Jones W RimUnited KingdomAsiya Javayant NEGOTIATION
Mayumi L ChuiJapanAsiya Javayant QUALIFIED
Deepesh Z TollnerAustraliaAsiya Javayant RENEWAL
Johnson M RutaArgentinaAmy Elsner NEW
Jones J SlusarskiArgentinaIvan Magalhaes QUALIFIED
Julie P PoquetteUnited KingdomStephen Shaw RENEWAL
Kadeem T InouyeCanadaIvan Magalhaes QUALIFIED
Costa B MaletFranceBernardo Dominic UNQUALIFIED
Jefferson I WhobreyArgentinaIvan Magalhaes NEGOTIATION
Stacey Y AlbaresRussiaIoni Bowcher NEGOTIATION
Jefferson K VenereFranceBernardo Dominic QUALIFIED
Izzy C PaprockiIndiaAmy Elsner PROPOSAL
Emily F SergiBrazilAnna Fali RENEWAL
Maisha H BowleyIndiaOnyama Limba RENEWAL
Juan Y BologniaUnited KingdomOnyama Limba PROPOSAL
Maria G SlusarskiIndiaAsiya Javayant UNQUALIFIED
Wickens F MorascaUnited KingdomAsiya Javayant NEGOTIATION
Johnson U CampainJapanAmy Elsner RENEWAL
Misaki K SaylorsAustraliaIoni Bowcher NEGOTIATION
Nicolas P RulapaughArgentinaAnna Fali NEGOTIATION
Kadeem Y DilliardAustraliaAnna Fali NEGOTIATION
Silvio B DilliardSpainBernardo Dominic UNQUALIFIED
Salvatore Z AlbaresItalyOnyama Limba NEGOTIATION
Frozen Columns
Name
Leon P Flosi
Darci J Caldarera
Juan G Campain
Ashley V Nestle
Salvatore D Tollner
Leon L Oldroyd
Faith N Inouye
Jefferson H Chui
Emily U Figeroa
Jeanfrancois B Rulapaugh
James L Rulapaugh
Salvatore S Stenseth
Izzy Q Ostrosky
Jennifer J Tollner
Emily X Stockham
Jones Y Malet
Leon P Ferencz
Faith B Oldroyd
Adams L Venere
Ashley A Butt
Mujtaba H Ferencz
Leja K Caudy
Stacey K Garufi
Jones X Chui
Julie D Bowley
Deepesh N Venere
Maisha L Oldroyd
Aruna J Gaucho
Johnson V Royster
Stacey Y Flosi
Jones S Nicka
Morrow I Albares
Darci A Venere
Arvin E Marrier
Izzy D Inouye
Francesco D Schemmer
Nicolas M Tollner
Antonio B Whobrey
Jones N Butt
Antonio P Gillian
Misaki W Dilliard
Faith R Morasca
Arvin X Wieser
Jefferson W Ostrosky
David W Poquette
Ivar I Ostrosky
Mujtaba P Garufi
Alejandro K Caudy
Rodrigues U Rulapaugh
Alejandro U Saylors
IdCountryDate
1000Germany2026-09-01
1001Spain2026-08-25
1002Germany2026-08-23
1003Brazil2026-09-17
1004Germany2026-09-03
1005Canada2026-09-01
1006Spain2026-08-20
1007United Kingdom2026-08-31
1008India2026-09-15
1009Italy2026-09-14
1010Argentina2026-08-21
1011France2026-09-13
1012Argentina2026-08-26
1013Argentina2026-09-02
1014Russia2026-08-28
1015France2026-08-29
1016Japan2026-09-13
1017Brazil2026-09-18
1018Italy2026-09-08
1019Germany2026-08-31
1020Germany2026-08-21
1021Russia2026-09-12
1022Italy2026-09-18
1023India2026-09-15
1024Spain2026-09-17
1025Italy2026-09-14
1026Spain2026-09-06
1027Argentina2026-08-30
1028India2026-09-11
1029India2026-08-25
1030Germany2026-08-24
1031Brazil2026-09-17
1032Japan2026-09-15
1033Australia2026-08-20
1034Spain2026-08-29
1035Brazil2026-09-03
1036Russia2026-09-01
1037Spain2026-08-28
1038Argentina2026-09-10
1039Argentina2026-09-11
1040United Kingdom2026-09-07
1041Italy2026-09-02
1042Italy2026-09-07
1043Russia2026-09-04
1044Brazil2026-09-05
1045Spain2026-08-22
1046Brazil2026-08-27
1047Brazil2026-09-15
1048India2026-09-02
1049France2026-09-04

On-Demand Data

NameIdCountryDate
Isabel J Ruta1000Italy2026-08-30
Julie L Kusko1001Spain2026-09-05
Murillo C Inouye1002Russia2026-09-06
Deepesh W Marrier1003Brazil2026-09-11
Mayumi Y Marrier1004France2026-08-25
Adams Y Amigon1005Russia2026-08-26
Faith E Stockham1006Italy2026-09-18
Ivar O Inouye1007Spain2026-08-26
Rodrigues P Waycott1008Canada2026-08-31
Greenwood Z Maclead1009Spain2026-09-02
Ivar Z Royster1010United Kingdom2026-09-06
Silvio Q Stenseth1011Australia2026-09-13
Kadeem T Butt1012India2026-09-01
Emily R Bolognia1013Brazil2026-08-24
Claire Y Wieser1014Brazil2026-09-11
Juan E Kusko1015Australia2026-08-30
Izzy A Stenseth1016Japan2026-09-06
Francesco X Tollner1017Germany2026-09-14
Stacey Y Tollner1018Japan2026-09-03
Adams B Bowley1019France2026-08-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues C ButtBrazilElwin Sharvill PROPOSAL
Smith J AmigonUnited KingdomIoni Bowcher NEW
Faith J InouyeUnited KingdomIoni Bowcher UNQUALIFIED
Mayumi Y DarakjyGermanyAmy Elsner QUALIFIED
Mujtaba H MaletCanadaAsiya Javayant NEGOTIATION
Salvatore L PoquetteIndiaStephen Shaw PROPOSAL
Leon I WhobreyRussiaElwin Sharvill QUALIFIED
Aditya Q ChuiJapanStephen Shaw NEGOTIATION
Jefferson D MaletRussiaIoni Bowcher RENEWAL
James A CaldareraFranceBernardo Dominic RENEWAL
Morrow J CampainGermanyAmy Elsner UNQUALIFIED
Salvatore O OstroskyIndiaElwin Sharvill PROPOSAL
Chavez Y SaylorsUnited KingdomElwin Sharvill NEW
Kadeem X IturbideGermanyElwin Sharvill UNQUALIFIED
Smith C TollnerFranceIoni Bowcher UNQUALIFIED
Leja I ShinkoIndiaOnyama Limba QUALIFIED
Leja L AmigonItalyAsiya Javayant NEGOTIATION
Murillo I FerenczAustraliaIoni Bowcher PROPOSAL
Leja X PaprockiJapanStephen Shaw NEGOTIATION
Octavia K SlusarskiSpainOnyama Limba QUALIFIED
Claire F MacleadGermanyStephen Shaw RENEWAL
Izzy V IturbideSpainAsiya Javayant NEGOTIATION
Murillo S AmigonBrazilIvan Magalhaes PROPOSAL
David B MorascaJapanElwin Sharvill NEW
Ashley L VocelkaFranceAmy Elsner UNQUALIFIED
Leja H KolmetzJapanStephen Shaw NEW
Chavez O SergiCanadaStephen Shaw NEGOTIATION
Greenwood Q GillianCanadaAnna Fali NEW
Juan A FlosiSpainIoni Bowcher UNQUALIFIED
Jennifer H MaletArgentinaElwin Sharvill NEW
Cody U SaylorsJapanBernardo Dominic UNQUALIFIED
Alejandro V AmigonFranceAnna Fali RENEWAL
Faith N FollerGermanyOnyama Limba UNQUALIFIED
Juan T BologniaAustraliaIvan Magalhaes UNQUALIFIED
Juan H IturbideItalyAnna Fali UNQUALIFIED
Mayumi C CampainBrazilAsiya Javayant NEW
Costa M OldroydFranceIoni Bowcher RENEWAL
Smith O RulapaughFranceBernardo Dominic NEGOTIATION
Tony B MacleadCanadaIoni Bowcher NEW
Ivar U AlbaresFranceAmy Elsner RENEWAL

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