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
Sinclair O RulapaughBrazilIoni Bowcher UNQUALIFIED
Leon V RulapaughJapanAsiya Javayant NEGOTIATION
Juan D OstroskyJapanAsiya Javayant QUALIFIED
Maria H CaldareraFranceAmy Elsner NEGOTIATION
Adams L IturbideItalyXuxue Feng PROPOSAL
Darci A VenereAustraliaAnna Fali NEW
Silvio R NickaSpainIoni Bowcher QUALIFIED
Munro P StensethSpainXuxue Feng NEW
Wickens T WaycottUnited KingdomAmy Elsner QUALIFIED
James S PaprockiSpainAnna Fali NEW
Octavia G StockhamIndiaXuxue Feng RENEWAL
Deepesh W MorascaFranceXuxue Feng PROPOSAL
Isabel E DoeArgentinaBernardo Dominic NEGOTIATION
Johnson R GarufiRussiaStephen Shaw NEGOTIATION
Aika J GauchoJapanStephen Shaw NEGOTIATION
Silvio G IturbideJapanIoni Bowcher RENEWAL
Octavia D OldroydAustraliaIoni Bowcher UNQUALIFIED
Wickens G OldroydCanadaIoni Bowcher QUALIFIED
Isabel X PaprockiArgentinaAnna Fali UNQUALIFIED
Wickens F SaylorsJapanAnna Fali NEGOTIATION
Leja R DoeIndiaAsiya Javayant NEGOTIATION
Emily V PoquetteIndiaXuxue Feng UNQUALIFIED
Chavez B NestleAustraliaIoni Bowcher NEGOTIATION
Munro V BowleyAustraliaIvan Magalhaes PROPOSAL
Deepesh I FlosiRussiaStephen Shaw NEW
Johnson D NickaAustraliaAmy Elsner RENEWAL
Kaitlin K FollerIndiaAsiya Javayant UNQUALIFIED
Mujtaba O FerenczUnited KingdomOnyama Limba QUALIFIED
Mayumi U TollnerItalyBernardo Dominic NEW
Jeanfrancois N FollerCanadaElwin Sharvill NEGOTIATION
Jones F ButtIndiaStephen Shaw RENEWAL
Costa E SchemmerIndiaIvan Magalhaes UNQUALIFIED
Johnson S RutaIndiaElwin Sharvill PROPOSAL
Emily Z IturbideRussiaAmy Elsner QUALIFIED
Jennifer F WhobreyArgentinaStephen Shaw NEGOTIATION
Ricardo D MacleadIndiaAmy Elsner RENEWAL
Misaki Y MaletArgentinaIoni Bowcher NEGOTIATION
Clifford V RulapaughCanadaElwin Sharvill UNQUALIFIED
Chavez Q CaudyBrazilIoni Bowcher NEW
Jennifer R VenereItalyIoni Bowcher QUALIFIED
Faith C DilliardBrazilIoni Bowcher NEW
Antonio N FigeroaRussiaElwin Sharvill NEGOTIATION
Cody K RutaGermanyXuxue Feng PROPOSAL
Aditya C VocelkaBrazilElwin Sharvill NEW
Chavez S ShinkoArgentinaElwin Sharvill QUALIFIED
Emily Q SlusarskiGermanyAsiya Javayant PROPOSAL
Francesco C CaudySpainIoni Bowcher NEGOTIATION
Maisha E NickaItalyAsiya Javayant NEW
Stacey L OstroskyFranceAmy Elsner UNQUALIFIED
Greenwood X BowleyRussiaStephen Shaw PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Nicolas W CaudyArgentinaAnna Fali PROPOSAL
Jeanfrancois U SlusarskiJapanIoni Bowcher QUALIFIED
Ricardo S FlosiFranceAsiya Javayant UNQUALIFIED
Murillo J KolmetzArgentinaIvan Magalhaes NEGOTIATION
Munro W CaldareraArgentinaAsiya Javayant RENEWAL
Jennifer U DilliardUnited KingdomElwin Sharvill UNQUALIFIED
Nicolas G KolmetzSpainIoni Bowcher QUALIFIED
Adams X VenereUnited KingdomOnyama Limba NEGOTIATION
Smith O RulapaughJapanOnyama Limba PROPOSAL
Cody O SaylorsFranceIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues S AmigonUnited Kingdom2026-10-05Buckley Miller Wright NEGOTIATION10Amy Elsner
1001Mujtaba E FollerArgentina2026-09-30Rousseaux, Michael Esq QUALIFIED47Ivan Magalhaes
1002Tony C AmigonItaly2026-09-28Morlong Associates PROPOSAL40Onyama Limba
1003Misaki Y PaprockiFrance2026-09-19Chanay, Jeffrey A Esq PROPOSAL90Anna Fali
1004Clifford K KuskoCanada2026-09-19Dorl, James J Esq QUALIFIED33Stephen Shaw
1005Stacey M KuskoItaly2026-09-29Dorl, James J Esq NEGOTIATION68Amy Elsner
1006Johnson Z StockhamRussia2026-09-18Chapman, Ross E Esq RENEWAL62Amy Elsner
1007Octavia H InouyeIndia2026-10-15Feiner Bros NEW18Ivan Magalhaes
1008Arvin C DilliardJapan2026-10-15Chanay, Jeffrey A Esq NEW21Onyama Limba
1009Leon J NickaItaly2026-10-06Buckley Miller Wright NEGOTIATION15Ivan Magalhaes
1010Johnson M TollnerJapan2026-10-13Dorl, James J Esq QUALIFIED55Ioni Bowcher
1011Jennifer Y ChuiCanada2026-10-05Feiner Bros UNQUALIFIED17Stephen Shaw
1012Julie W SchemmerBrazil2026-10-01Rangoni Of Florence NEW89Onyama Limba
1013Arvin Q MaletUnited Kingdom2026-10-01Chanay, Jeffrey A Esq QUALIFIED49Onyama Limba
1014Leon F InouyeArgentina2026-09-17Feiner Bros NEGOTIATION51Ioni Bowcher
1015Wickens T PerinBrazil2026-09-17Rangoni Of Florence UNQUALIFIED14Amy Elsner
1016Emily Z BologniaBrazil2026-10-14Benton, John B Jr UNQUALIFIED15Asiya Javayant
1017Munro R InouyeJapan2026-10-13Rangoni Of Florence PROPOSAL52Amy Elsner
1018Faith V DilliardAustralia2026-09-19Chapman, Ross E Esq RENEWAL68Amy Elsner
1019Adams I OstroskyGermany2026-10-01Chapman, Ross E Esq RENEWAL90Elwin Sharvill
1020Aika S NestleRussia2026-10-04Commercial Press NEW40Stephen Shaw
1021Aruna Q MacleadArgentina2026-10-12Dorl, James J Esq UNQUALIFIED44Anna Fali
1022Jefferson Q SchemmerItaly2026-10-11Rousseaux, Michael Esq NEGOTIATION3Anna Fali
1023Maria R NestleBrazil2026-10-02Feltz Printing Service UNQUALIFIED44Anna Fali
1024Julie H SergiGermany2026-10-01Buckley Miller Wright QUALIFIED60Amy Elsner
1025Murillo G MaletFrance2026-09-17Printing Dimensions QUALIFIED31Anna Fali
1026Salvatore D CaldareraItaly2026-09-19Rousseaux, Michael Esq PROPOSAL36Elwin Sharvill
1027Cody X WhobreyGermany2026-10-09Truhlar And Truhlar Attys RENEWAL95Anna Fali
1028Jennifer I KolmetzRussia2026-10-14Feltz Printing Service RENEWAL86Anna Fali
1029Jeanfrancois F VocelkaRussia2026-10-01Chemel, James L Cpa NEW62Anna Fali
1030Isabel S DarakjyArgentina2026-09-19Printing Dimensions UNQUALIFIED9Asiya Javayant
1031David V PerinSpain2026-09-26Printing Dimensions NEW84Ioni Bowcher
1032Johnson A CaldareraRussia2026-10-15Chanay, Jeffrey A Esq RENEWAL84Amy Elsner
1033Deepesh R KuskoCanada2026-09-30Dorl, James J Esq PROPOSAL22Onyama Limba
1034Faith E FollerSpain2026-09-22Rangoni Of Florence NEGOTIATION76Onyama Limba
1035Juan F VocelkaJapan2026-09-29Feltz Printing Service QUALIFIED58Stephen Shaw
1036Arvin K WieserUnited Kingdom2026-10-11Benton, John B Jr UNQUALIFIED37Amy Elsner
1037Faith O FlosiCanada2026-09-20Buckley Miller Wright QUALIFIED52Anna Fali
1038Francesco E SaylorsAustralia2026-09-30Dorl, James J Esq QUALIFIED74Bernardo Dominic
1039Julie N WhobreyGermany2026-09-23Feiner Bros NEW41Ioni Bowcher
1040Jennifer U RulapaughRussia2026-09-19Rangoni Of Florence UNQUALIFIED68Stephen Shaw
1041Ricardo Z SlusarskiAustralia2026-10-03King, Christopher A Esq RENEWAL92Asiya Javayant
1042Isabel Q CaldareraFrance2026-10-02Morlong Associates QUALIFIED20Onyama Limba
1043Aruna L AlbaresJapan2026-10-10Morlong Associates RENEWAL35Ioni Bowcher
1044Nicolas X ChuiAustralia2026-10-02Truhlar And Truhlar Attys PROPOSAL27Stephen Shaw
1045Emily P PerinCanada2026-10-09Chapman, Ross E Esq RENEWAL10Xuxue Feng
1046Izzy O VenereSpain2026-10-12Truhlar And Truhlar Attys UNQUALIFIED17Amy Elsner
1047Jennifer E DilliardJapan2026-09-30Commercial Press RENEWAL4Ioni Bowcher
1048Murillo F DarakjyCanada2026-10-13Buckley Miller Wright RENEWAL4Xuxue Feng
1049Sinclair Z CaudyUnited Kingdom2026-10-15Printing Dimensions NEGOTIATION53Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Ricardo G NickaCanadaIoni Bowcher QUALIFIED
Emily A RoysterItalyIoni Bowcher RENEWAL
Tony H CaudyItalyElwin Sharvill NEGOTIATION
Isabel W InouyeGermanyStephen Shaw QUALIFIED
Darci L CaldareraBrazilIoni Bowcher UNQUALIFIED
Aruna D OstroskyRussiaAmy Elsner NEGOTIATION
Morrow K GauchoCanadaElwin Sharvill UNQUALIFIED
Smith S OldroydAustraliaAsiya Javayant RENEWAL
Deepesh H FerenczArgentinaAmy Elsner QUALIFIED
Jones J CaldareraGermanyIvan Magalhaes NEGOTIATION
Greenwood P GarufiItalyAsiya Javayant UNQUALIFIED
Stacey J IturbideJapanOnyama Limba NEW
Jennifer A FlosiSpainStephen Shaw NEGOTIATION
Jefferson C OstroskyBrazilElwin Sharvill QUALIFIED
Francesco K SaylorsRussiaIoni Bowcher QUALIFIED
David H WaycottCanadaIoni Bowcher RENEWAL
Leon G KuskoBrazilAmy Elsner RENEWAL
Jones R RulapaughItalyElwin Sharvill QUALIFIED
Nicolas Z KuskoBrazilXuxue Feng UNQUALIFIED
Clifford I SergiFranceXuxue Feng NEGOTIATION
Kaitlin C DilliardSpainAnna Fali PROPOSAL
Stacey Q DilliardUnited KingdomAsiya Javayant NEGOTIATION
Cody W PoquetteJapanBernardo Dominic NEGOTIATION
Alejandro F KuskoArgentinaIoni Bowcher NEW
Jones V ChuiIndiaIvan Magalhaes NEW
Aika S SaylorsJapanXuxue Feng UNQUALIFIED
Silvio Y DoeUnited KingdomAsiya Javayant UNQUALIFIED
Antonio D DarakjyGermanyOnyama Limba RENEWAL
Jeanfrancois S WhobreyGermanyElwin Sharvill NEW
Aika O InouyeArgentinaIoni Bowcher PROPOSAL
Arvin W NestleRussiaAmy Elsner RENEWAL
Francesco Q NickaAustraliaAmy Elsner NEW
James U CaudyFranceOnyama Limba QUALIFIED
Kaitlin E RulapaughJapanAsiya Javayant QUALIFIED
Octavia R RimGermanyAnna Fali NEGOTIATION
Maria Z FlosiIndiaStephen Shaw RENEWAL
Izzy Y ChuiAustraliaStephen Shaw UNQUALIFIED
Greenwood C SchemmerIndiaStephen Shaw NEGOTIATION
Wickens P GillianJapanXuxue Feng NEW
Leon U VenereUnited KingdomStephen Shaw QUALIFIED
Maisha C SaylorsArgentinaBernardo Dominic NEW
Claire Z GlickAustraliaXuxue Feng NEGOTIATION
Chavez O DoeUnited KingdomIvan Magalhaes NEGOTIATION
Aika J NestleAustraliaIoni Bowcher QUALIFIED
Clifford N ChuiArgentinaIvan Magalhaes NEGOTIATION
Francesco P IturbideAustraliaStephen Shaw RENEWAL
Izzy E CampainUnited KingdomIvan Magalhaes QUALIFIED
Ricardo E FollerItalyAmy Elsner NEW
Maria Y KolmetzArgentinaXuxue Feng RENEWAL
Kadeem V StockhamFranceBernardo Dominic PROPOSAL
Frozen Columns
Name
Salvatore K Saylors
Ivar C Figeroa
Salvatore P Darakjy
Maria F Bowley
Aditya O Darakjy
Sinclair H Glick
Mayumi J Vocelka
Claire Q Caudy
Greenwood H Kusko
Maria C Malet
Smith F Ferencz
Jefferson F Paprocki
Adams V Doe
Stacey G Gaucho
Jennifer S Paprocki
Arvin Y Sergi
Wickens I Vocelka
Tony D Paprocki
Murillo X Rim
Jefferson E Rim
Sinclair W Marrier
Aditya Z Paprocki
Maria S Rulapaugh
Johnson L Ruta
Greenwood S Bolognia
Julie Q Albares
Munro D Caldarera
Faith N Bolognia
Sinclair N Malet
Isabel C Bowley
Adams G Whobrey
Antonio P Schemmer
Smith E Kolmetz
Ashley X Ruta
Julie Z Campain
Morrow H Caudy
Ricardo C Chui
Antonio C Oldroyd
Jefferson A Whobrey
Deepesh Y Whobrey
Izzy Y Gillian
Smith D Chui
Claire C Flosi
Maisha V Slusarski
Darci I Morasca
Jennifer K Ferencz
Alejandro R Flosi
David I Saylors
Tony U Maclead
James F Royster
IdCountryDate
1000Australia2026-09-29
1001Germany2026-10-01
1002Argentina2026-09-17
1003India2026-09-27
1004Australia2026-09-20
1005India2026-10-09
1006India2026-09-24
1007Germany2026-10-12
1008Australia2026-09-21
1009Japan2026-10-11
1010Argentina2026-09-19
1011Japan2026-10-01
1012Argentina2026-10-10
1013France2026-09-25
1014Italy2026-09-28
1015United Kingdom2026-09-21
1016Argentina2026-10-06
1017Japan2026-10-11
1018Germany2026-10-12
1019Spain2026-09-24
1020Japan2026-09-17
1021Argentina2026-09-23
1022Argentina2026-10-13
1023Brazil2026-09-17
1024Brazil2026-09-21
1025Russia2026-10-02
1026Canada2026-09-20
1027Russia2026-10-14
1028Canada2026-09-26
1029France2026-09-21
1030Japan2026-10-03
1031United Kingdom2026-10-07
1032Russia2026-09-21
1033Canada2026-10-07
1034Australia2026-09-22
1035Germany2026-09-25
1036United Kingdom2026-09-22
1037Argentina2026-10-01
1038Spain2026-09-26
1039Australia2026-09-22
1040Japan2026-10-05
1041France2026-10-11
1042Argentina2026-09-18
1043France2026-09-22
1044Australia2026-09-17
1045Canada2026-10-09
1046United Kingdom2026-09-21
1047Brazil2026-09-16
1048India2026-10-03
1049Japan2026-09-24

On-Demand Data

NameIdCountryDate
Murillo L Glick1000Argentina2026-09-28
Salvatore U Marrier1001Canada2026-09-19
Morrow I Malet1002Argentina2026-09-24
Antonio H Whobrey1003Italy2026-10-04
Greenwood K Albares1004Japan2026-09-28
Tony O Royster1005Brazil2026-10-13
Aruna A Stockham1006Italy2026-09-16
Morrow A Ruta1007Italy2026-09-29
Faith K Sergi1008France2026-09-19
David J Slusarski1009United Kingdom2026-09-30
Johnson D Rulapaugh1010Italy2026-09-25
Ashley D Slusarski1011Germany2026-10-04
David V Dilliard1012India2026-09-29
Emily B Amigon1013Argentina2026-10-06
Jefferson J Doe1014France2026-09-18
Isabel P Morasca1015France2026-09-27
Smith Z Bolognia1016Argentina2026-10-12
Rodrigues D Perin1017Australia2026-09-19
Mayumi U Malet1018France2026-09-27
Mujtaba U Stockham1019France2026-09-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio N SergiFranceBernardo Dominic QUALIFIED
Clifford W OldroydItalyAmy Elsner PROPOSAL
Stacey P BriddickCanadaAsiya Javayant QUALIFIED
Leon V SergiArgentinaAsiya Javayant RENEWAL
Adams F BologniaBrazilIoni Bowcher NEW
Darci J FerenczGermanyStephen Shaw UNQUALIFIED
Munro Z StockhamSpainIvan Magalhaes PROPOSAL
Salvatore Y FlosiGermanyAnna Fali PROPOSAL
Jennifer B PerinCanadaOnyama Limba RENEWAL
Leja Z GauchoFranceBernardo Dominic PROPOSAL
Morrow Y FigeroaArgentinaBernardo Dominic RENEWAL
Emily Z RimRussiaXuxue Feng UNQUALIFIED
Izzy K BriddickGermanyXuxue Feng UNQUALIFIED
Clifford Y BriddickGermanyIoni Bowcher NEW
Ivar S CaudyCanadaAnna Fali UNQUALIFIED
Costa Q BriddickGermanyBernardo Dominic NEW
Rodrigues V GillianRussiaAsiya Javayant PROPOSAL
Misaki F VocelkaIndiaStephen Shaw PROPOSAL
Murillo E OldroydUnited KingdomIvan Magalhaes UNQUALIFIED
Maria Z StensethGermanyAmy Elsner PROPOSAL
Maria P BriddickArgentinaAnna Fali PROPOSAL
Smith Q BologniaAustraliaBernardo Dominic UNQUALIFIED
Cody Y CaldareraJapanBernardo Dominic NEW
Ivar J BriddickIndiaAmy Elsner PROPOSAL
Jefferson O FerenczItalyBernardo Dominic NEW
Julie P SlusarskiArgentinaXuxue Feng PROPOSAL
Jennifer D KuskoIndiaOnyama Limba PROPOSAL
Arvin A DilliardUnited KingdomStephen Shaw RENEWAL
Morrow H RoysterFranceXuxue Feng QUALIFIED
Tony A SergiSpainAsiya Javayant QUALIFIED
Silvio T StockhamUnited KingdomAsiya Javayant RENEWAL
Arvin K SchemmerAustraliaAsiya Javayant UNQUALIFIED
Sinclair W PoquetteCanadaElwin Sharvill QUALIFIED
Adams R CaldareraSpainIvan Magalhaes UNQUALIFIED
Silvio X RulapaughAustraliaAnna Fali UNQUALIFIED
Silvio Q AlbaresArgentinaElwin Sharvill UNQUALIFIED
Leon V OstroskyAustraliaOnyama Limba UNQUALIFIED
Francesco E VocelkaArgentinaAnna Fali NEW
Rodrigues I FollerAustraliaBernardo Dominic PROPOSAL
Ashley G KolmetzGermanyAnna Fali UNQUALIFIED

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