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
Misaki F KolmetzIndiaBernardo Dominic NEGOTIATION
Izzy F NickaRussiaAsiya Javayant UNQUALIFIED
Adams I GauchoFranceIoni Bowcher NEGOTIATION
Aika P FollerCanadaAsiya Javayant NEW
Morrow L NestleGermanyStephen Shaw QUALIFIED
Claire D SchemmerRussiaElwin Sharvill UNQUALIFIED
Nicolas H CaudyGermanyAmy Elsner NEGOTIATION
Faith J WieserSpainBernardo Dominic UNQUALIFIED
Chavez L RutaUnited KingdomIvan Magalhaes NEGOTIATION
Sinclair S SchemmerItalyIvan Magalhaes PROPOSAL
Claire P DoeFranceAsiya Javayant UNQUALIFIED
Smith Y PerinIndiaBernardo Dominic RENEWAL
Faith S VenereCanadaAnna Fali QUALIFIED
Jeanfrancois D FollerIndiaIvan Magalhaes NEGOTIATION
Faith R KolmetzUnited KingdomXuxue Feng PROPOSAL
Mujtaba X NickaCanadaIvan Magalhaes NEGOTIATION
Sinclair Y MaletBrazilIoni Bowcher RENEWAL
Leon K WieserBrazilAsiya Javayant UNQUALIFIED
Munro O BriddickSpainStephen Shaw QUALIFIED
Jefferson F DarakjyArgentinaStephen Shaw RENEWAL
Nicolas H StensethCanadaAmy Elsner RENEWAL
Aruna L CaldareraGermanyAmy Elsner QUALIFIED
Darci F PerinBrazilXuxue Feng QUALIFIED
Emily C VenereRussiaAsiya Javayant UNQUALIFIED
Costa F StockhamGermanyXuxue Feng UNQUALIFIED
Arvin D PaprockiArgentinaXuxue Feng UNQUALIFIED
Mayumi N WaycottGermanyAnna Fali QUALIFIED
Ashley V SchemmerJapanElwin Sharvill NEW
Jeanfrancois C PoquetteBrazilBernardo Dominic NEW
Cody Y DilliardCanadaBernardo Dominic NEW
Stacey Y TollnerJapanBernardo Dominic RENEWAL
Ricardo R MarrierIndiaAsiya Javayant QUALIFIED
Tony V RutaCanadaBernardo Dominic QUALIFIED
Alejandro H ButtUnited KingdomAmy Elsner NEW
Leon H FigeroaArgentinaIvan Magalhaes NEGOTIATION
Clifford B MarrierAustraliaIoni Bowcher NEGOTIATION
Arvin F FerenczArgentinaAmy Elsner NEGOTIATION
Cody T SergiUnited KingdomXuxue Feng RENEWAL
Aditya B DilliardSpainOnyama Limba NEGOTIATION
Rodrigues E PerinUnited KingdomElwin Sharvill QUALIFIED
Munro M DarakjySpainIvan Magalhaes NEGOTIATION
Morrow G MarrierFranceIvan Magalhaes UNQUALIFIED
Isabel K KolmetzUnited KingdomIoni Bowcher RENEWAL
Francesco Z SergiIndiaIoni Bowcher QUALIFIED
Ricardo V RulapaughGermanyAnna Fali RENEWAL
Mujtaba Y StockhamGermanyBernardo Dominic RENEWAL
Greenwood E RulapaughGermanyIoni Bowcher PROPOSAL
Juan K OldroydBrazilAsiya Javayant NEGOTIATION
Arvin X RulapaughJapanXuxue Feng NEW
Chavez O WaycottJapanAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Sinclair P FlosiCanadaElwin Sharvill NEGOTIATION
Mujtaba J GlickFranceOnyama Limba UNQUALIFIED
Aditya P SergiFranceAsiya Javayant RENEWAL
Deepesh W ButtUnited KingdomElwin Sharvill QUALIFIED
Sinclair P DoeIndiaElwin Sharvill QUALIFIED
Ivar J MarrierSpainBernardo Dominic PROPOSAL
Deepesh I StockhamJapanIoni Bowcher UNQUALIFIED
Stacey K NickaCanadaStephen Shaw RENEWAL
Rodrigues R MarrierCanadaAsiya Javayant UNQUALIFIED
Adams Z MaletBrazilBernardo Dominic NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily K StensethSpain2026-09-11Feiner Bros RENEWAL58Xuxue Feng
1001Emily W MaletSpain2026-09-06Truhlar And Truhlar Attys RENEWAL18Ivan Magalhaes
1002Chavez Z SchemmerCanada2026-09-27Truhlar And Truhlar Attys NEW33Amy Elsner
1003Isabel M PerinAustralia2026-09-17Rousseaux, Michael Esq QUALIFIED51Elwin Sharvill
1004Octavia S DilliardArgentina2026-09-20Chapman, Ross E Esq UNQUALIFIED17Anna Fali
1005Maria N InouyeRussia2026-09-11Chanay, Jeffrey A Esq QUALIFIED35Xuxue Feng
1006Leon B ShinkoCanada2026-09-02Rangoni Of Florence NEW50Bernardo Dominic
1007Ivar O ChuiRussia2026-09-17King, Christopher A Esq QUALIFIED45Ioni Bowcher
1008Ivar E GauchoItaly2026-08-31Chapman, Ross E Esq RENEWAL71Xuxue Feng
1009Greenwood K BologniaFrance2026-09-10Dorl, James J Esq NEW23Bernardo Dominic
1010Arvin S AmigonRussia2026-09-24Truhlar And Truhlar Attys PROPOSAL69Ioni Bowcher
1011Kaitlin B RulapaughIndia2026-09-08Benton, John B Jr UNQUALIFIED99Ioni Bowcher
1012Mujtaba V BowleyAustralia2026-09-05Feltz Printing Service QUALIFIED28Ivan Magalhaes
1013Francesco O FollerItaly2026-09-16Chanay, Jeffrey A Esq UNQUALIFIED32Ivan Magalhaes
1014Nicolas X MorascaItaly2026-09-06Buckley Miller Wright NEGOTIATION82Ioni Bowcher
1015Antonio F BologniaRussia2026-09-08Feiner Bros RENEWAL20Bernardo Dominic
1016Leon N PoquetteItaly2026-09-05Rousseaux, Michael Esq NEGOTIATION14Anna Fali
1017Munro Y FollerFrance2026-09-07Feltz Printing Service RENEWAL77Ivan Magalhaes
1018Julie O SergiItaly2026-08-31Commercial Press NEW40Onyama Limba
1019Johnson Q VenereItaly2026-09-11Chemel, James L Cpa PROPOSAL49Ivan Magalhaes
1020Isabel T FigeroaJapan2026-09-19Commercial Press UNQUALIFIED14Amy Elsner
1021Tony I WieserRussia2026-09-13Truhlar And Truhlar Attys NEGOTIATION6Anna Fali
1022Leja W DoeRussia2026-09-16Chanay, Jeffrey A Esq QUALIFIED69Anna Fali
1023Claire U KuskoSpain2026-09-01Rangoni Of Florence RENEWAL19Onyama Limba
1024Tony L GillianCanada2026-09-07Rousseaux, Michael Esq QUALIFIED51Ivan Magalhaes
1025Mayumi Y AlbaresCanada2026-09-04Morlong Associates UNQUALIFIED30Asiya Javayant
1026Jones U RoysterGermany2026-09-28Rangoni Of Florence UNQUALIFIED41Elwin Sharvill
1027Emily K WieserRussia2026-09-25Morlong Associates QUALIFIED59Bernardo Dominic
1028Aditya N AlbaresSpain2026-09-27Chapman, Ross E Esq NEW5Elwin Sharvill
1029Kaitlin U AlbaresFrance2026-09-06Dorl, James J Esq NEW89Ioni Bowcher
1030Tony U PaprockiJapan2026-09-23Rangoni Of Florence QUALIFIED43Bernardo Dominic
1031Leja L OldroydArgentina2026-09-12Truhlar And Truhlar Attys PROPOSAL65Asiya Javayant
1032Kaitlin C OstroskyJapan2026-09-03Printing Dimensions PROPOSAL80Bernardo Dominic
1033Arvin X GarufiAustralia2026-09-16Morlong Associates RENEWAL1Bernardo Dominic
1034Maisha P DilliardAustralia2026-09-03Chanay, Jeffrey A Esq NEGOTIATION7Stephen Shaw
1035James B RulapaughIndia2026-09-24Rangoni Of Florence QUALIFIED40Elwin Sharvill
1036Clifford K BologniaIndia2026-09-21Dorl, James J Esq NEW47Onyama Limba
1037Emily S RimFrance2026-09-03Commercial Press NEW58Ivan Magalhaes
1038Morrow K SaylorsSpain2026-09-20Dorl, James J Esq NEGOTIATION93Ioni Bowcher
1039Leja H AmigonJapan2026-09-10Printing Dimensions PROPOSAL12Xuxue Feng
1040Arvin G PerinIndia2026-08-31Printing Dimensions PROPOSAL75Asiya Javayant
1041Morrow Z MacleadIndia2026-09-19Rousseaux, Michael Esq PROPOSAL48Elwin Sharvill
1042Leja D FigeroaRussia2026-09-28Feiner Bros NEGOTIATION53Ioni Bowcher
1043David Y SchemmerCanada2026-09-19Rousseaux, Michael Esq PROPOSAL24Stephen Shaw
1044Kadeem F PoquetteJapan2026-09-18Dorl, James J Esq RENEWAL58Elwin Sharvill
1045Aruna Q StensethArgentina2026-09-24Feltz Printing Service PROPOSAL58Ioni Bowcher
1046Maria H RimJapan2026-09-22Dorl, James J Esq UNQUALIFIED44Asiya Javayant
1047Francesco Q BologniaCanada2026-09-18Commercial Press NEGOTIATION49Ivan Magalhaes
1048Octavia S ButtIndia2026-09-07Printing Dimensions RENEWAL76Ioni Bowcher
1049Jennifer F StockhamIndia2026-09-04Feltz Printing Service NEGOTIATION39Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Misaki S PerinIndiaStephen Shaw RENEWAL
Tony J SaylorsAustraliaBernardo Dominic QUALIFIED
Ivar N GauchoAustraliaElwin Sharvill UNQUALIFIED
Adams T SchemmerUnited KingdomIoni Bowcher UNQUALIFIED
Nicolas D PaprockiAustraliaIvan Magalhaes RENEWAL
Maisha N ButtCanadaIoni Bowcher RENEWAL
Arvin H CaudySpainAsiya Javayant RENEWAL
Jones Q BologniaSpainOnyama Limba QUALIFIED
Jefferson W MacleadRussiaStephen Shaw UNQUALIFIED
Jones F OldroydRussiaAmy Elsner UNQUALIFIED
Sinclair W DilliardGermanyBernardo Dominic RENEWAL
Ivar U RulapaughUnited KingdomStephen Shaw PROPOSAL
Ashley U RulapaughGermanyAmy Elsner RENEWAL
Sinclair M FerenczArgentinaOnyama Limba RENEWAL
David J DarakjyRussiaOnyama Limba RENEWAL
Wickens R SergiItalyOnyama Limba UNQUALIFIED
Julie S OstroskySpainBernardo Dominic NEW
Arvin H KuskoAustraliaAsiya Javayant PROPOSAL
Ivar G NickaArgentinaAmy Elsner UNQUALIFIED
Emily M RutaIndiaIoni Bowcher NEGOTIATION
Deepesh K PerinIndiaAnna Fali UNQUALIFIED
Jeanfrancois H AlbaresSpainIoni Bowcher NEGOTIATION
Rodrigues N BriddickFranceIvan Magalhaes UNQUALIFIED
James U DilliardUnited KingdomElwin Sharvill PROPOSAL
Deepesh A StockhamBrazilElwin Sharvill RENEWAL
Greenwood Q WaycottItalyAnna Fali PROPOSAL
Clifford B WieserUnited KingdomIvan Magalhaes NEGOTIATION
Mayumi C MarrierUnited KingdomIvan Magalhaes RENEWAL
Cody R KolmetzRussiaAnna Fali QUALIFIED
Cody M BriddickAustraliaElwin Sharvill NEGOTIATION
Octavia A MaletItalyElwin Sharvill NEW
Greenwood B DarakjyCanadaAmy Elsner NEGOTIATION
Juan M MorascaRussiaOnyama Limba RENEWAL
Maisha L GlickFranceStephen Shaw NEGOTIATION
Silvio E PerinUnited KingdomBernardo Dominic UNQUALIFIED
Morrow M BriddickUnited KingdomOnyama Limba RENEWAL
Octavia R DarakjyAustraliaIvan Magalhaes PROPOSAL
Kadeem O FlosiRussiaAsiya Javayant NEGOTIATION
Jones O RimArgentinaOnyama Limba PROPOSAL
Murillo Z KolmetzFranceAsiya Javayant NEGOTIATION
Sinclair W AmigonFranceElwin Sharvill PROPOSAL
Jefferson M RutaBrazilIvan Magalhaes NEW
Nicolas N WaycottArgentinaAsiya Javayant NEW
Greenwood I BologniaIndiaIoni Bowcher QUALIFIED
Kadeem O WaycottFranceAsiya Javayant QUALIFIED
Clifford O SaylorsCanadaAnna Fali NEGOTIATION
Izzy M FerenczJapanOnyama Limba QUALIFIED
Adams I FerenczJapanXuxue Feng PROPOSAL
Mayumi W PerinUnited KingdomAnna Fali NEW
Maisha Y MaletCanadaAmy Elsner UNQUALIFIED
Frozen Columns
Name
Wickens N Butt
Silvio J Campain
Ashley G Oldroyd
Kaitlin H Butt
Leja S Kolmetz
Darci C Morasca
Jones W Venere
Aruna J Kolmetz
Jennifer O Dilliard
Clifford Q Kolmetz
Salvatore D Perin
Kadeem F Glick
Maria A Poquette
Julie H Amigon
Nicolas Z Inouye
Darci X Venere
Rodrigues N Chui
Salvatore O Chui
Kadeem K Stockham
Leja C Waycott
Stacey M Sergi
Julie C Butt
Stacey J Perin
Salvatore W Vocelka
Alejandro Z Flosi
Isabel C Rulapaugh
Johnson H Gillian
Morrow C Caudy
Wickens X Flosi
Maisha R Nicka
Chavez O Rim
James D Tollner
Cody C Iturbide
Juan P Whobrey
Juan M Inouye
Tony L Marrier
Nicolas Q Tollner
Claire S Briddick
Nicolas Q Gillian
Arvin N Wieser
Ashley E Paprocki
Aruna B Saylors
Kadeem W Albares
Arvin M Vocelka
Silvio A Rim
Antonio Q Albares
Aruna J Nestle
Smith H Perin
Munro J Malet
Julie I Gillian
IdCountryDate
1000Spain2026-09-15
1001Brazil2026-09-13
1002Spain2026-09-19
1003Brazil2026-09-09
1004Italy2026-09-22
1005India2026-08-30
1006India2026-09-27
1007Brazil2026-09-22
1008Argentina2026-09-16
1009Italy2026-09-09
1010Spain2026-09-13
1011Brazil2026-09-20
1012Canada2026-09-14
1013Australia2026-08-31
1014Russia2026-09-24
1015Russia2026-09-20
1016Canada2026-09-09
1017Canada2026-09-26
1018India2026-09-06
1019Russia2026-09-15
1020Italy2026-09-28
1021Italy2026-09-02
1022Spain2026-09-25
1023Argentina2026-09-28
1024Brazil2026-09-28
1025Australia2026-09-04
1026Spain2026-09-20
1027Italy2026-08-31
1028India2026-09-27
1029United Kingdom2026-09-15
1030France2026-09-18
1031Japan2026-09-01
1032India2026-09-13
1033Japan2026-09-04
1034Australia2026-09-13
1035Argentina2026-09-06
1036Japan2026-09-22
1037United Kingdom2026-09-06
1038Italy2026-09-17
1039Australia2026-09-26
1040United Kingdom2026-09-21
1041Germany2026-09-01
1042Japan2026-09-01
1043Russia2026-09-04
1044Russia2026-09-15
1045Italy2026-09-04
1046Spain2026-09-25
1047Japan2026-09-08
1048Australia2026-09-07
1049India2026-09-15

On-Demand Data

NameIdCountryDate
Tony B Foller1000Italy2026-09-01
Smith W Ruta1001Japan2026-08-31
Greenwood L Glick1002Canada2026-09-10
Chavez L Shinko1003Australia2026-09-02
Francesco L Oldroyd1004Germany2026-08-31
Sinclair U Venere1005Germany2026-09-22
Julie A Vocelka1006Argentina2026-09-08
Leon X Rim1007India2026-09-01
Misaki A Tollner1008Germany2026-09-17
Morrow W Maclead1009Japan2026-09-17
Juan X Tollner1010United Kingdom2026-09-25
David Q Flosi1011France2026-09-17
Aditya B Figeroa1012Argentina2026-09-10
Johnson R Waycott1013Italy2026-09-12
Maria Z Tollner1014India2026-09-16
Murillo N Schemmer1015Japan2026-09-12
Chavez P Vocelka1016Brazil2026-09-08
Greenwood J Malet1017Italy2026-09-02
Morrow J Gaucho1018Spain2026-09-20
Kadeem W Ostrosky1019Germany2026-09-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley R TollnerSpainBernardo Dominic UNQUALIFIED
David V MaletFranceIvan Magalhaes UNQUALIFIED
Munro A MarrierBrazilIvan Magalhaes PROPOSAL
Jefferson Y DoeSpainStephen Shaw UNQUALIFIED
Costa V MacleadCanadaXuxue Feng PROPOSAL
Cody I MorascaArgentinaIvan Magalhaes RENEWAL
Misaki N MacleadRussiaAmy Elsner PROPOSAL
Adams A AmigonUnited KingdomAnna Fali PROPOSAL
Julie B WieserBrazilElwin Sharvill PROPOSAL
Francesco W OstroskyArgentinaAnna Fali NEGOTIATION
Jeanfrancois C SlusarskiJapanAnna Fali NEGOTIATION
Cody W BologniaArgentinaAsiya Javayant RENEWAL
Ashley A ButtUnited KingdomElwin Sharvill NEW
Faith H RoysterAustraliaStephen Shaw NEW
Ivar G FollerJapanAnna Fali RENEWAL
Smith V OstroskySpainElwin Sharvill NEGOTIATION
Jennifer U WaycottRussiaElwin Sharvill UNQUALIFIED
Jones C InouyeArgentinaAsiya Javayant RENEWAL
Maisha M SchemmerItalyElwin Sharvill RENEWAL
Juan S VocelkaBrazilAmy Elsner PROPOSAL
Julie C RulapaughArgentinaStephen Shaw NEW
Leja H MarrierCanadaElwin Sharvill NEW
Stacey S RulapaughGermanyXuxue Feng RENEWAL
Cody Q OstroskyIndiaAnna Fali UNQUALIFIED
Rodrigues N BowleyArgentinaAnna Fali QUALIFIED
Aditya U DilliardUnited KingdomElwin Sharvill UNQUALIFIED
Greenwood S NestleJapanAnna Fali QUALIFIED
Salvatore F CampainBrazilAnna Fali QUALIFIED
Jefferson Q GlickAustraliaBernardo Dominic NEGOTIATION
Juan H AmigonBrazilBernardo Dominic NEW
Munro F FlosiIndiaAsiya Javayant NEGOTIATION
Kadeem S FigeroaCanadaIoni Bowcher QUALIFIED
Emily C GlickSpainIoni Bowcher RENEWAL
Emily R PoquetteCanadaAmy Elsner PROPOSAL
Maria Q BowleyGermanyBernardo Dominic RENEWAL
Alejandro W SchemmerJapanElwin Sharvill NEGOTIATION
Sinclair A GarufiSpainIoni Bowcher NEGOTIATION
Isabel X FerenczGermanyElwin Sharvill NEW
Ricardo J RoysterIndiaAnna Fali PROPOSAL
Jones G KolmetzAustraliaAsiya Javayant QUALIFIED

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