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
Emily K FlosiJapanIvan Magalhaes UNQUALIFIED
Emily A DilliardArgentinaElwin Sharvill QUALIFIED
Mayumi K RulapaughAustraliaIoni Bowcher PROPOSAL
Aruna C ShinkoArgentinaIvan Magalhaes NEGOTIATION
Aditya I GillianUnited KingdomIvan Magalhaes NEW
Stacey C WaycottRussiaStephen Shaw NEW
Kadeem U StockhamArgentinaAnna Fali NEW
Morrow Z PoquetteFranceStephen Shaw UNQUALIFIED
Alejandro P GlickUnited KingdomStephen Shaw NEW
Ivar V CampainFranceElwin Sharvill PROPOSAL
Kaitlin S FigeroaAustraliaElwin Sharvill QUALIFIED
Sinclair Q MacleadFranceAmy Elsner NEW
Stacey H MarrierCanadaIvan Magalhaes NEGOTIATION
Maisha V FerenczRussiaAmy Elsner UNQUALIFIED
Ivar N KuskoBrazilAnna Fali RENEWAL
Kaitlin O MaletJapanOnyama Limba NEGOTIATION
Costa B OstroskyBrazilAnna Fali NEW
Costa O DoeUnited KingdomAmy Elsner UNQUALIFIED
Kadeem D RoysterIndiaAnna Fali NEW
Kaitlin X PerinRussiaIoni Bowcher RENEWAL
Arvin J GarufiItalyOnyama Limba NEGOTIATION
Morrow X ButtUnited KingdomStephen Shaw NEGOTIATION
Silvio O IturbideFranceXuxue Feng UNQUALIFIED
Ivar O MarrierJapanIvan Magalhaes NEW
Mujtaba K WhobreyUnited KingdomAmy Elsner NEW
Izzy A StensethRussiaOnyama Limba UNQUALIFIED
Nicolas S FerenczCanadaAnna Fali PROPOSAL
David I DoeJapanStephen Shaw NEGOTIATION
Silvio Z SchemmerFranceElwin Sharvill RENEWAL
Nicolas F StensethFranceElwin Sharvill RENEWAL
Nicolas K MacleadUnited KingdomOnyama Limba PROPOSAL
Mujtaba N SergiGermanyIvan Magalhaes RENEWAL
Arvin O GillianIndiaBernardo Dominic PROPOSAL
Ivar A SergiUnited KingdomAmy Elsner NEGOTIATION
Greenwood V GillianJapanAsiya Javayant QUALIFIED
Leja M WhobreyJapanAnna Fali PROPOSAL
James Z ShinkoAustraliaXuxue Feng PROPOSAL
David O FigeroaBrazilIoni Bowcher NEGOTIATION
Stacey B AlbaresItalyElwin Sharvill NEW
Chavez O ShinkoUnited KingdomAsiya Javayant RENEWAL
Leon G OldroydAustraliaAsiya Javayant NEGOTIATION
Isabel A PerinIndiaElwin Sharvill NEW
Misaki K GarufiJapanIvan Magalhaes NEW
Francesco B PaprockiFranceAsiya Javayant RENEWAL
Cody L PerinRussiaAmy Elsner NEGOTIATION
Deepesh S SaylorsItalyIoni Bowcher NEW
Aruna Z AlbaresItalyIvan Magalhaes UNQUALIFIED
Aruna I IturbideRussiaElwin Sharvill NEGOTIATION
Darci V MacleadIndiaAmy Elsner RENEWAL
Adams C KuskoRussiaIvan Magalhaes PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Arvin T CaudyArgentinaAnna Fali UNQUALIFIED
Octavia K MaletGermanyIvan Magalhaes RENEWAL
Aruna F VenereSpainAsiya Javayant QUALIFIED
Francesco Q IturbideUnited KingdomIoni Bowcher QUALIFIED
Murillo O MaletSpainStephen Shaw RENEWAL
Salvatore G MorascaItalyIvan Magalhaes NEGOTIATION
Juan V FerenczRussiaIoni Bowcher RENEWAL
Kadeem Q GlickItalyBernardo Dominic RENEWAL
Deepesh U MorascaSpainAmy Elsner NEGOTIATION
Izzy J MaletFranceAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues T StensethItaly2026-11-06Rousseaux, Michael Esq PROPOSAL97Ioni Bowcher
1001Izzy P NickaArgentina2026-10-14Feiner Bros NEGOTIATION98Bernardo Dominic
1002Kadeem Q PaprockiCanada2026-10-19Chanay, Jeffrey A Esq NEGOTIATION42Stephen Shaw
1003Aditya C WaycottAustralia2026-10-11Feltz Printing Service PROPOSAL46Elwin Sharvill
1004Jeanfrancois W PerinArgentina2026-10-22Rangoni Of Florence UNQUALIFIED38Bernardo Dominic
1005David P FlosiArgentina2026-10-27Rousseaux, Michael Esq PROPOSAL18Ioni Bowcher
1006Jennifer T WhobreyFrance2026-10-20Dorl, James J Esq PROPOSAL41Amy Elsner
1007Ricardo H BowleyJapan2026-11-04Buckley Miller Wright RENEWAL73Anna Fali
1008Adams X MorascaIndia2026-10-19Rangoni Of Florence PROPOSAL96Onyama Limba
1009Claire G GillianJapan2026-10-20Printing Dimensions NEGOTIATION18Elwin Sharvill
1010Kadeem Q NestleAustralia2026-10-16Chemel, James L Cpa PROPOSAL5Stephen Shaw
1011Greenwood P RoysterArgentina2026-11-06Commercial Press QUALIFIED91Xuxue Feng
1012Tony H SergiIndia2026-10-15Commercial Press NEGOTIATION38Asiya Javayant
1013Jeanfrancois C BriddickArgentina2026-11-06Chapman, Ross E Esq NEGOTIATION56Asiya Javayant
1014Smith J RimAustralia2026-10-26Truhlar And Truhlar Attys UNQUALIFIED50Bernardo Dominic
1015Kaitlin Y TollnerUnited Kingdom2026-11-09Feltz Printing Service NEGOTIATION63Ioni Bowcher
1016Octavia E RutaSpain2026-11-03Chapman, Ross E Esq UNQUALIFIED94Elwin Sharvill
1017Silvio Q GauchoItaly2026-11-04Morlong Associates UNQUALIFIED64Bernardo Dominic
1018Kaitlin L RulapaughGermany2026-11-07Feltz Printing Service QUALIFIED2Bernardo Dominic
1019Kadeem K GauchoRussia2026-10-22Printing Dimensions UNQUALIFIED36Ivan Magalhaes
1020Emily D RoysterCanada2026-10-19Benton, John B Jr UNQUALIFIED54Stephen Shaw
1021Johnson I AlbaresRussia2026-10-28Printing Dimensions PROPOSAL42Xuxue Feng
1022Nicolas M BologniaUnited Kingdom2026-10-25Benton, John B Jr NEW8Elwin Sharvill
1023Aika H SlusarskiUnited Kingdom2026-10-20Rangoni Of Florence NEW74Stephen Shaw
1024Aditya S MaletFrance2026-10-15Morlong Associates NEGOTIATION38Anna Fali
1025Adams K CaldareraBrazil2026-11-08Chanay, Jeffrey A Esq NEGOTIATION12Xuxue Feng
1026Salvatore G IturbideRussia2026-10-19King, Christopher A Esq RENEWAL7Asiya Javayant
1027Silvio P FlosiArgentina2026-10-23Dorl, James J Esq QUALIFIED67Elwin Sharvill
1028Mayumi E BowleyIndia2026-10-17Rangoni Of Florence PROPOSAL61Onyama Limba
1029Costa N VenereBrazil2026-11-03Benton, John B Jr UNQUALIFIED17Stephen Shaw
1030Tony Z GauchoUnited Kingdom2026-11-03Morlong Associates NEGOTIATION94Stephen Shaw
1031Francesco L WieserJapan2026-11-04Rousseaux, Michael Esq UNQUALIFIED95Stephen Shaw
1032Aruna D PoquetteUnited Kingdom2026-10-18Truhlar And Truhlar Attys PROPOSAL36Elwin Sharvill
1033Johnson D FigeroaRussia2026-10-13Rousseaux, Michael Esq UNQUALIFIED58Stephen Shaw
1034Mujtaba P NestleGermany2026-10-19Chapman, Ross E Esq RENEWAL33Xuxue Feng
1035Kaitlin Q FlosiCanada2026-11-08Morlong Associates NEW3Ioni Bowcher
1036Francesco C MacleadBrazil2026-10-26Truhlar And Truhlar Attys UNQUALIFIED45Anna Fali
1037Greenwood Y CaudyCanada2026-10-28Truhlar And Truhlar Attys UNQUALIFIED57Xuxue Feng
1038Deepesh U OldroydItaly2026-10-24Truhlar And Truhlar Attys QUALIFIED3Ivan Magalhaes
1039Greenwood A PerinFrance2026-10-23Morlong Associates NEGOTIATION11Elwin Sharvill
1040Chavez K AlbaresUnited Kingdom2026-10-29Chapman, Ross E Esq NEGOTIATION59Bernardo Dominic
1041Nicolas E DoeUnited Kingdom2026-10-14Chapman, Ross E Esq QUALIFIED5Asiya Javayant
1042Octavia B RutaUnited Kingdom2026-11-03Chapman, Ross E Esq NEGOTIATION76Xuxue Feng
1043Misaki P NestleItaly2026-10-13Feltz Printing Service RENEWAL56Ivan Magalhaes
1044Johnson G TollnerRussia2026-10-29Rousseaux, Michael Esq RENEWAL54Onyama Limba
1045Jefferson M PerinIndia2026-11-01Chemel, James L Cpa NEW83Ivan Magalhaes
1046Munro G DarakjyGermany2026-10-28Feltz Printing Service QUALIFIED21Bernardo Dominic
1047Stacey I StensethAustralia2026-10-22King, Christopher A Esq NEGOTIATION9Onyama Limba
1048Kaitlin E AlbaresIndia2026-10-28Truhlar And Truhlar Attys PROPOSAL72Asiya Javayant
1049Mayumi D BologniaFrance2026-10-17Commercial Press NEGOTIATION9Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Wickens H StockhamRussiaStephen Shaw QUALIFIED
David C StensethJapanOnyama Limba UNQUALIFIED
James O MacleadGermanyElwin Sharvill PROPOSAL
Johnson N OstroskySpainXuxue Feng QUALIFIED
Jones Z FigeroaGermanyIvan Magalhaes NEW
Deepesh O OldroydBrazilAmy Elsner NEW
Emily P InouyeArgentinaIoni Bowcher RENEWAL
Adams A ShinkoArgentinaXuxue Feng RENEWAL
David Q FerenczFranceOnyama Limba NEW
Wickens S MaletFranceAmy Elsner UNQUALIFIED
Adams I DarakjyRussiaElwin Sharvill NEGOTIATION
Mujtaba W NickaGermanyIvan Magalhaes RENEWAL
Aditya V FigeroaGermanyIoni Bowcher QUALIFIED
Leon H VocelkaArgentinaIvan Magalhaes UNQUALIFIED
Costa C ShinkoFranceElwin Sharvill RENEWAL
Costa Z BologniaAustraliaIvan Magalhaes UNQUALIFIED
Johnson E ButtSpainXuxue Feng QUALIFIED
Leon E NickaSpainIvan Magalhaes PROPOSAL
Johnson X KuskoArgentinaOnyama Limba RENEWAL
Greenwood I BriddickFranceStephen Shaw NEW
Francesco E FollerBrazilElwin Sharvill PROPOSAL
Ivar V RulapaughBrazilAnna Fali NEW
Octavia L SlusarskiUnited KingdomAmy Elsner PROPOSAL
Johnson X WieserGermanyBernardo Dominic PROPOSAL
David G BologniaAustraliaOnyama Limba RENEWAL
Johnson F SlusarskiFranceElwin Sharvill PROPOSAL
David Q GarufiIndiaIoni Bowcher NEGOTIATION
Stacey N MaletArgentinaIoni Bowcher PROPOSAL
Costa S IturbideSpainElwin Sharvill RENEWAL
James G OldroydItalyXuxue Feng PROPOSAL
Silvio N ShinkoArgentinaElwin Sharvill NEW
Rodrigues X FlosiJapanOnyama Limba QUALIFIED
Jefferson N ShinkoJapanAsiya Javayant NEGOTIATION
Clifford R PerinCanadaIvan Magalhaes PROPOSAL
Deepesh G StockhamAustraliaIoni Bowcher NEW
Leon A FollerGermanyElwin Sharvill NEGOTIATION
Wickens U CaldareraGermanyAnna Fali NEGOTIATION
Octavia Y ChuiAustraliaIoni Bowcher RENEWAL
Stacey B RulapaughArgentinaElwin Sharvill UNQUALIFIED
Jeanfrancois J OstroskyRussiaXuxue Feng UNQUALIFIED
Johnson U VocelkaBrazilStephen Shaw PROPOSAL
Adams N InouyeUnited KingdomElwin Sharvill NEW
Chavez R GarufiArgentinaAsiya Javayant UNQUALIFIED
Tony D GarufiSpainAsiya Javayant QUALIFIED
Sinclair N MorascaAustraliaElwin Sharvill NEW
David H MarrierUnited KingdomAnna Fali UNQUALIFIED
Tony I MaletArgentinaAsiya Javayant QUALIFIED
Misaki Z WhobreyIndiaXuxue Feng NEW
Isabel V KuskoBrazilBernardo Dominic UNQUALIFIED
Adams M StockhamIndiaAnna Fali NEGOTIATION
Frozen Columns
Name
Rodrigues G Slusarski
Adams N Nicka
Sinclair O Figeroa
Darci F Amigon
Faith B Ostrosky
Stacey Z Butt
Maria J Rulapaugh
Mayumi M Royster
Izzy H Stockham
David Z Whobrey
Misaki P Morasca
Emily A Waycott
Leon Z Marrier
Jennifer E Chui
Wickens M Whobrey
Aruna Y Sergi
Murillo A Bowley
Antonio R Kolmetz
Morrow I Perin
Ricardo Z Maclead
Jeanfrancois H Ferencz
Salvatore M Morasca
Mayumi T Caldarera
Morrow X Stenseth
Emily W Inouye
Aditya S Inouye
Jennifer V Poquette
Leon Y Darakjy
Kaitlin P Marrier
Maria R Ostrosky
Jennifer C Stockham
Faith C Paprocki
Arvin I Sergi
Jones B Albares
Faith P Glick
Wickens F Waycott
Johnson L Ostrosky
Chavez R Marrier
Stacey R Saylors
Ivar Z Rulapaugh
Sinclair O Royster
Smith D Flosi
Antonio C Foller
Cody S Doe
Smith F Kolmetz
Emily L Schemmer
Morrow X Venere
Munro H Slusarski
Silvio E Oldroyd
Adams H Schemmer
IdCountryDate
1000Russia2026-11-08
1001Argentina2026-10-15
1002Canada2026-10-17
1003Australia2026-10-20
1004Brazil2026-10-29
1005India2026-11-04
1006Italy2026-11-02
1007India2026-11-08
1008India2026-10-29
1009Russia2026-11-06
1010United Kingdom2026-10-14
1011Russia2026-10-13
1012France2026-10-21
1013Italy2026-10-12
1014Italy2026-10-16
1015India2026-10-12
1016France2026-10-14
1017Spain2026-10-14
1018Italy2026-11-01
1019France2026-11-09
1020Australia2026-10-17
1021Argentina2026-11-05
1022Canada2026-10-14
1023Brazil2026-10-14
1024Russia2026-10-11
1025Italy2026-10-24
1026India2026-11-04
1027Argentina2026-10-23
1028Australia2026-10-14
1029Brazil2026-10-13
1030Canada2026-11-09
1031Canada2026-10-11
1032Japan2026-10-28
1033Italy2026-10-26
1034Japan2026-10-25
1035Canada2026-11-09
1036United Kingdom2026-10-13
1037United Kingdom2026-11-01
1038Germany2026-11-02
1039France2026-10-27
1040Argentina2026-10-27
1041Germany2026-11-09
1042Canada2026-11-03
1043Australia2026-11-09
1044India2026-10-22
1045Spain2026-10-28
1046Japan2026-10-19
1047Brazil2026-10-23
1048Brazil2026-10-18
1049Australia2026-11-09

On-Demand Data

NameIdCountryDate
Salvatore Q Royster1000Italy2026-10-22
Isabel G Ruta1001India2026-10-11
Aditya O Perin1002Canada2026-10-25
Kaitlin L Butt1003Australia2026-10-30
Kadeem W Gillian1004Russia2026-10-26
Greenwood L Foller1005Russia2026-11-01
Faith M Saylors1006Spain2026-10-11
Mayumi W Kusko1007Germany2026-11-08
Aika L Slusarski1008France2026-10-15
Cody M Iturbide1009Japan2026-10-12
Darci D Royster1010Italy2026-10-22
Cody F Flosi1011Italy2026-11-01
James S Rulapaugh1012Canada2026-11-01
Rodrigues E Inouye1013Japan2026-10-14
Ashley Y Tollner1014Brazil2026-10-28
Julie D Morasca1015Spain2026-11-09
Leja A Royster1016United Kingdom2026-10-22
Antonio V Ferencz1017Italy2026-11-09
Aditya O Vocelka1018Japan2026-10-29
Emily A Iturbide1019France2026-10-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aruna P SlusarskiUnited KingdomStephen Shaw UNQUALIFIED
Stacey V ChuiArgentinaAmy Elsner UNQUALIFIED
Smith K FigeroaCanadaAmy Elsner PROPOSAL
Johnson H GillianSpainXuxue Feng QUALIFIED
Darci U GarufiFranceIoni Bowcher NEW
Mayumi I AlbaresFranceIoni Bowcher NEGOTIATION
Wickens V MaletIndiaAmy Elsner RENEWAL
Wickens M SergiGermanyElwin Sharvill NEGOTIATION
Kadeem P SaylorsSpainIvan Magalhaes NEGOTIATION
Julie L TollnerGermanyAnna Fali RENEWAL
Stacey D InouyeRussiaElwin Sharvill UNQUALIFIED
Silvio N MaletAustraliaIoni Bowcher NEW
Adams F SaylorsSpainIvan Magalhaes NEGOTIATION
Johnson O MorascaSpainIvan Magalhaes UNQUALIFIED
Munro Q VenereJapanBernardo Dominic NEW
Adams C VenereAustraliaAmy Elsner QUALIFIED
Salvatore D OstroskyItalyXuxue Feng NEW
Jefferson A KolmetzRussiaStephen Shaw RENEWAL
Costa K MaletUnited KingdomAmy Elsner NEW
Murillo I DarakjyAustraliaAnna Fali NEW
Greenwood D DilliardSpainStephen Shaw UNQUALIFIED
James H DoeCanadaStephen Shaw NEGOTIATION
Cody E GlickIndiaAmy Elsner NEW
David N RimUnited KingdomAmy Elsner NEW
Johnson U NickaSpainXuxue Feng NEW
Faith W FigeroaCanadaStephen Shaw PROPOSAL
Clifford L GlickBrazilIvan Magalhaes NEW
Ricardo S FlosiCanadaXuxue Feng UNQUALIFIED
Munro I MaletFranceIoni Bowcher PROPOSAL
Aika J AlbaresCanadaAnna Fali NEW
Darci F FerenczAustraliaBernardo Dominic PROPOSAL
Izzy D BriddickCanadaBernardo Dominic PROPOSAL
Adams X MacleadCanadaAsiya Javayant NEW
Greenwood Y RulapaughIndiaElwin Sharvill UNQUALIFIED
Emily N WaycottGermanyBernardo Dominic UNQUALIFIED
Stacey J VocelkaJapanAnna Fali NEGOTIATION
Adams A GarufiRussiaXuxue Feng QUALIFIED
Julie I AlbaresFranceAnna Fali UNQUALIFIED
Mujtaba V WieserAustraliaStephen Shaw RENEWAL
Nicolas P ButtJapanStephen Shaw 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>