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
Juan L MaletAustraliaBernardo Dominic NEGOTIATION
Isabel V GlickRussiaOnyama Limba NEGOTIATION
Nicolas B MarrierFranceStephen Shaw PROPOSAL
Kaitlin D FigeroaSpainOnyama Limba PROPOSAL
Aditya W AlbaresArgentinaAsiya Javayant QUALIFIED
Izzy E PerinFranceStephen Shaw NEW
Jones G FollerAustraliaXuxue Feng NEW
Sinclair H IturbideIndiaXuxue Feng UNQUALIFIED
Chavez A SlusarskiItalyStephen Shaw PROPOSAL
Julie B CampainFranceXuxue Feng UNQUALIFIED
Faith R PaprockiJapanElwin Sharvill NEW
Aditya R StockhamGermanyAsiya Javayant PROPOSAL
Jeanfrancois U GillianUnited KingdomAsiya Javayant NEGOTIATION
Jefferson A VocelkaFranceOnyama Limba NEGOTIATION
Izzy N MarrierGermanyIoni Bowcher NEGOTIATION
Costa Z MarrierArgentinaIoni Bowcher NEGOTIATION
Alejandro M WieserAustraliaBernardo Dominic PROPOSAL
Cody O BologniaCanadaOnyama Limba NEGOTIATION
Ivar N DarakjyItalyIvan Magalhaes NEGOTIATION
Octavia U DoeItalyBernardo Dominic NEGOTIATION
Octavia K FlosiArgentinaIoni Bowcher RENEWAL
Francesco N CaldareraItalyAnna Fali RENEWAL
Kaitlin E MaletBrazilBernardo Dominic NEW
Sinclair A BriddickJapanStephen Shaw NEW
Munro F FerenczRussiaAsiya Javayant RENEWAL
Darci X StockhamArgentinaXuxue Feng QUALIFIED
Johnson Z RoysterBrazilAsiya Javayant NEW
Clifford H WhobreyAustraliaIoni Bowcher UNQUALIFIED
Juan Z MaletItalyXuxue Feng PROPOSAL
Aditya W NickaRussiaElwin Sharvill RENEWAL
Ivar F FerenczCanadaElwin Sharvill RENEWAL
Jennifer D GlickArgentinaIoni Bowcher UNQUALIFIED
Izzy U SaylorsBrazilStephen Shaw RENEWAL
Maria M GarufiGermanyIvan Magalhaes NEGOTIATION
Jennifer H VocelkaArgentinaAmy Elsner RENEWAL
Emily B CaldareraIndiaElwin Sharvill NEW
Darci R VenereJapanIoni Bowcher QUALIFIED
Silvio E AlbaresSpainOnyama Limba UNQUALIFIED
Morrow H VocelkaCanadaStephen Shaw RENEWAL
Johnson E BologniaArgentinaOnyama Limba NEGOTIATION
Sinclair V RimUnited KingdomAsiya Javayant PROPOSAL
Wickens M WaycottAustraliaAsiya Javayant RENEWAL
Clifford N RimJapanAsiya Javayant NEGOTIATION
Chavez B VenereFranceStephen Shaw RENEWAL
Greenwood Q AmigonGermanyBernardo Dominic UNQUALIFIED
Greenwood S BowleyCanadaStephen Shaw PROPOSAL
Leon L SlusarskiGermanyOnyama Limba QUALIFIED
Tony Y BriddickSpainAnna Fali QUALIFIED
Deepesh A SaylorsCanadaBernardo Dominic NEW
Aruna S FollerCanadaAsiya Javayant PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Greenwood K OstroskyArgentinaElwin Sharvill PROPOSAL
Claire O MarrierIndiaStephen Shaw UNQUALIFIED
Kadeem A WhobreyJapanAnna Fali QUALIFIED
Stacey E GlickCanadaOnyama Limba QUALIFIED
Ricardo P KuskoBrazilBernardo Dominic NEGOTIATION
Munro Z MorascaCanadaAnna Fali QUALIFIED
Aruna M SlusarskiIndiaAmy Elsner NEGOTIATION
Cody J RutaArgentinaIvan Magalhaes NEGOTIATION
Jefferson C StensethRussiaIvan Magalhaes UNQUALIFIED
Mujtaba W AlbaresArgentinaIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Silvio G MacleadCanada2026-10-08Truhlar And Truhlar Attys QUALIFIED35Onyama Limba
1001Johnson T PoquetteIndia2026-10-15Morlong Associates NEW7Bernardo Dominic
1002Murillo I SchemmerIndia2026-10-31Rousseaux, Michael Esq NEW36Stephen Shaw
1003Darci J PoquetteBrazil2026-11-02Morlong Associates NEW77Amy Elsner
1004Juan I OstroskyBrazil2026-10-21Chapman, Ross E Esq RENEWAL29Elwin Sharvill
1005Murillo X FlosiJapan2026-10-26Chemel, James L Cpa UNQUALIFIED24Ivan Magalhaes
1006Adams X FigeroaAustralia2026-10-31Chemel, James L Cpa QUALIFIED86Ivan Magalhaes
1007Ashley H FollerCanada2026-11-02Chanay, Jeffrey A Esq PROPOSAL2Ioni Bowcher
1008Jefferson M AlbaresGermany2026-10-21Chemel, James L Cpa UNQUALIFIED31Anna Fali
1009Adams Y IturbideUnited Kingdom2026-10-31Buckley Miller Wright NEGOTIATION77Xuxue Feng
1010Smith C ShinkoSpain2026-10-25Feiner Bros RENEWAL43Elwin Sharvill
1011Leja V KuskoFrance2026-11-03Truhlar And Truhlar Attys RENEWAL22Bernardo Dominic
1012Sinclair F BowleyJapan2026-11-04Dorl, James J Esq QUALIFIED79Onyama Limba
1013Darci J GillianBrazil2026-10-26Buckley Miller Wright NEW30Ivan Magalhaes
1014Ivar M WhobreyGermany2026-10-22King, Christopher A Esq RENEWAL90Elwin Sharvill
1015Tony R FerenczRussia2026-10-20Benton, John B Jr NEGOTIATION19Onyama Limba
1016Sinclair Q KuskoBrazil2026-11-05Dorl, James J Esq UNQUALIFIED33Xuxue Feng
1017Jeanfrancois K ButtBrazil2026-10-27Morlong Associates UNQUALIFIED84Anna Fali
1018Kaitlin J PoquetteIndia2026-10-20King, Christopher A Esq PROPOSAL37Onyama Limba
1019Isabel N NickaArgentina2026-11-05Chapman, Ross E Esq NEGOTIATION4Onyama Limba
1020Wickens B FerenczGermany2026-10-09Truhlar And Truhlar Attys RENEWAL34Anna Fali
1021Munro G BologniaItaly2026-10-21Chapman, Ross E Esq NEGOTIATION6Ivan Magalhaes
1022Juan R CaldareraArgentina2026-10-10Commercial Press RENEWAL32Stephen Shaw
1023Kadeem P GlickIndia2026-11-02King, Christopher A Esq PROPOSAL18Elwin Sharvill
1024Greenwood N CaudyArgentina2026-10-21Feiner Bros UNQUALIFIED48Elwin Sharvill
1025Izzy J SergiJapan2026-10-30Feiner Bros NEGOTIATION22Amy Elsner
1026Maisha B WieserSpain2026-10-19Printing Dimensions UNQUALIFIED8Amy Elsner
1027Kadeem W PaprockiAustralia2026-11-01Printing Dimensions RENEWAL6Asiya Javayant
1028Jones D VenereArgentina2026-10-27Rousseaux, Michael Esq QUALIFIED34Ioni Bowcher
1029Misaki Q MaletBrazil2026-10-25Feltz Printing Service RENEWAL93Amy Elsner
1030Mujtaba I SchemmerRussia2026-10-10Morlong Associates PROPOSAL48Bernardo Dominic
1031Aika I ShinkoArgentina2026-10-07Chemel, James L Cpa QUALIFIED42Onyama Limba
1032Aruna T GauchoIndia2026-11-04Rousseaux, Michael Esq UNQUALIFIED14Onyama Limba
1033Faith Z CaldareraSpain2026-10-19Chanay, Jeffrey A Esq UNQUALIFIED91Bernardo Dominic
1034Arvin N PoquetteItaly2026-10-07Buckley Miller Wright RENEWAL55Ioni Bowcher
1035Maria X StensethFrance2026-10-22Morlong Associates UNQUALIFIED40Ivan Magalhaes
1036James C StockhamFrance2026-10-09King, Christopher A Esq NEGOTIATION56Elwin Sharvill
1037Misaki C RulapaughArgentina2026-10-18Chapman, Ross E Esq UNQUALIFIED4Onyama Limba
1038Emily N RoysterUnited Kingdom2026-10-29Feiner Bros RENEWAL65Amy Elsner
1039Darci Z KuskoIndia2026-10-18Feiner Bros RENEWAL99Ioni Bowcher
1040Johnson A FigeroaGermany2026-10-17Feiner Bros NEGOTIATION71Bernardo Dominic
1041Greenwood Q OldroydFrance2026-10-21Chapman, Ross E Esq RENEWAL0Asiya Javayant
1042Kaitlin H CampainGermany2026-10-14Feltz Printing Service PROPOSAL0Ivan Magalhaes
1043Aditya D TollnerRussia2026-10-28Chanay, Jeffrey A Esq RENEWAL13Anna Fali
1044Silvio L SlusarskiItaly2026-10-18King, Christopher A Esq UNQUALIFIED11Anna Fali
1045Kaitlin T DarakjyCanada2026-10-30Commercial Press NEW35Anna Fali
1046Wickens L AlbaresRussia2026-10-24King, Christopher A Esq RENEWAL41Onyama Limba
1047Maisha R VocelkaBrazil2026-10-28Buckley Miller Wright QUALIFIED41Stephen Shaw
1048Costa T InouyeFrance2026-10-30Dorl, James J Esq RENEWAL68Asiya Javayant
1049Kadeem Z KolmetzIndia2026-10-12Truhlar And Truhlar Attys RENEWAL59Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Aditya I IturbideUnited KingdomIvan Magalhaes NEGOTIATION
Maria N PerinItalyIoni Bowcher UNQUALIFIED
Antonio B DarakjyAustraliaBernardo Dominic UNQUALIFIED
Kadeem E SaylorsAustraliaElwin Sharvill NEGOTIATION
Salvatore Y CaldareraBrazilAsiya Javayant NEW
Octavia M DilliardArgentinaAnna Fali NEW
Ricardo A MorascaIndiaAnna Fali QUALIFIED
Misaki S GlickAustraliaXuxue Feng NEGOTIATION
Stacey U BowleyAustraliaBernardo Dominic UNQUALIFIED
Darci D DilliardBrazilIoni Bowcher QUALIFIED
Chavez R VenereGermanyIvan Magalhaes RENEWAL
Kaitlin P RutaItalyAmy Elsner RENEWAL
Cody D DoeAustraliaBernardo Dominic PROPOSAL
James N NestleBrazilStephen Shaw QUALIFIED
Ricardo T OldroydGermanyIoni Bowcher UNQUALIFIED
Murillo M SlusarskiItalyXuxue Feng UNQUALIFIED
Cody D FigeroaSpainAmy Elsner NEGOTIATION
Costa I BriddickBrazilAsiya Javayant NEW
Emily X BriddickJapanIoni Bowcher PROPOSAL
Salvatore R MarrierSpainAnna Fali NEGOTIATION
Jeanfrancois U FlosiSpainIvan Magalhaes RENEWAL
Nicolas M RoysterCanadaAmy Elsner PROPOSAL
James K NickaArgentinaAnna Fali PROPOSAL
Julie N KuskoAustraliaOnyama Limba UNQUALIFIED
Darci F PerinRussiaAnna Fali UNQUALIFIED
Johnson B TollnerSpainElwin Sharvill QUALIFIED
Greenwood P PaprockiRussiaBernardo Dominic QUALIFIED
Jennifer P KuskoAustraliaXuxue Feng NEW
Salvatore K TollnerSpainAnna Fali NEGOTIATION
Aditya Z GarufiBrazilAmy Elsner QUALIFIED
Adams U DarakjyItalyStephen Shaw QUALIFIED
Cody K CaudyGermanyIoni Bowcher NEW
Clifford P OstroskyFranceElwin Sharvill RENEWAL
Jones L OstroskyGermanyXuxue Feng RENEWAL
Kaitlin F CaudyUnited KingdomBernardo Dominic NEW
Silvio Y StensethRussiaXuxue Feng PROPOSAL
Arvin R DoeIndiaOnyama Limba UNQUALIFIED
Isabel A MarrierFranceAsiya Javayant NEW
Leja N RimSpainAnna Fali UNQUALIFIED
Maria V FlosiArgentinaIoni Bowcher PROPOSAL
Maisha R FlosiItalyBernardo Dominic QUALIFIED
Salvatore Y CampainRussiaAsiya Javayant NEGOTIATION
Clifford U InouyeBrazilStephen Shaw UNQUALIFIED
Silvio Q OldroydUnited KingdomStephen Shaw NEGOTIATION
Claire A GlickJapanIoni Bowcher QUALIFIED
Francesco Z SaylorsAustraliaAsiya Javayant PROPOSAL
Stacey X MorascaAustraliaIoni Bowcher PROPOSAL
Emily B SergiFranceXuxue Feng UNQUALIFIED
Adams T PaprockiAustraliaStephen Shaw PROPOSAL
Cody B SergiRussiaAsiya Javayant QUALIFIED
Frozen Columns
Name
Alejandro I Kolmetz
Ricardo L Nicka
Mujtaba A Saylors
Aditya M Morasca
Aika E Shinko
James S Perin
Adams R Darakjy
Sinclair E Nestle
Aditya N Caldarera
Leja V Malet
Greenwood K Chui
Arvin M Oldroyd
Antonio F Slusarski
Misaki C Gaucho
Greenwood U Inouye
Leon A Whobrey
Murillo S Rim
Darci S Ferencz
Kaitlin W Whobrey
Clifford V Marrier
Mayumi Q Gillian
Tony M Venere
Julie U Foller
David M Tollner
Chavez Q Royster
Clifford I Slusarski
Kadeem L Ferencz
Jennifer H Caldarera
Ivar D Royster
Adams T Perin
Ricardo X Schemmer
Johnson I Kusko
David S Schemmer
Ivar J Chui
Ivar C Gillian
Cody H Doe
Arvin F Albares
Octavia B Nicka
Maisha U Gillian
Smith Y Flosi
Arvin F Stenseth
Murillo V Kusko
Ricardo I Amigon
Leja A Slusarski
David C Gillian
Kaitlin L Morasca
Darci H Oldroyd
Sinclair Z Ostrosky
Maria Y Stockham
Salvatore A Glick
IdCountryDate
1000Russia2026-10-23
1001Russia2026-11-03
1002Spain2026-10-21
1003United Kingdom2026-10-21
1004India2026-10-10
1005Spain2026-10-10
1006Brazil2026-10-29
1007Spain2026-10-29
1008Italy2026-10-10
1009Spain2026-10-30
1010United Kingdom2026-10-21
1011Russia2026-10-08
1012Italy2026-11-04
1013Japan2026-10-27
1014Spain2026-10-31
1015Italy2026-10-29
1016Argentina2026-10-14
1017Russia2026-10-21
1018France2026-10-27
1019United Kingdom2026-10-10
1020Spain2026-10-28
1021Australia2026-10-11
1022Canada2026-10-27
1023India2026-10-18
1024Australia2026-10-21
1025Japan2026-10-17
1026Australia2026-10-12
1027Brazil2026-10-13
1028India2026-10-17
1029Italy2026-10-19
1030Italy2026-10-10
1031Italy2026-10-31
1032United Kingdom2026-10-12
1033Germany2026-10-13
1034Spain2026-10-07
1035Italy2026-10-26
1036Japan2026-10-12
1037Germany2026-10-07
1038Germany2026-10-15
1039Russia2026-10-23
1040Italy2026-11-05
1041United Kingdom2026-10-21
1042Argentina2026-11-04
1043Germany2026-10-17
1044Russia2026-10-23
1045Germany2026-10-09
1046Argentina2026-10-16
1047Brazil2026-10-17
1048Brazil2026-11-03
1049Brazil2026-10-13

On-Demand Data

NameIdCountryDate
Stacey H Saylors1000Spain2026-10-18
Ivar Y Saylors1001France2026-10-15
Aruna U Albares1002Italy2026-10-27
Silvio C Vocelka1003Italy2026-11-05
Jefferson E Figeroa1004Canada2026-10-31
Murillo F Albares1005France2026-10-25
Octavia C Malet1006Canada2026-11-05
Alejandro U Tollner1007Australia2026-10-29
Aditya A Nicka1008Germany2026-11-02
Jefferson T Poquette1009Argentina2026-10-31
Ricardo Z Sergi1010Australia2026-10-16
Wickens F Rim1011Argentina2026-10-23
Silvio M Oldroyd1012Russia2026-10-17
Leon I Perin1013Germany2026-10-18
Nicolas V Morasca1014United Kingdom2026-10-27
Johnson Y Caudy1015United Kingdom2026-10-22
Costa C Sergi1016Japan2026-10-31
Clifford A Gaucho1017Spain2026-11-02
Murillo R Malet1018Japan2026-10-25
Isabel P Vocelka1019Australia2026-10-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi Z SlusarskiFranceIoni Bowcher NEGOTIATION
Jennifer D IturbideUnited KingdomIvan Magalhaes UNQUALIFIED
Antonio W OldroydFranceStephen Shaw RENEWAL
Ashley Z FlosiBrazilAsiya Javayant UNQUALIFIED
James P FollerIndiaAmy Elsner NEGOTIATION
Izzy G MaletCanadaStephen Shaw QUALIFIED
Greenwood Z CampainIndiaXuxue Feng NEGOTIATION
Leon K NestleJapanOnyama Limba NEGOTIATION
Misaki K BriddickGermanyElwin Sharvill PROPOSAL
Mujtaba N RulapaughCanadaStephen Shaw RENEWAL
Ashley S WieserFranceOnyama Limba RENEWAL
Jefferson U VocelkaJapanAnna Fali RENEWAL
James W RoysterIndiaAsiya Javayant NEW
Murillo R IturbideItalyBernardo Dominic NEGOTIATION
Maria B PaprockiBrazilBernardo Dominic QUALIFIED
Kadeem B DilliardUnited KingdomOnyama Limba UNQUALIFIED
Costa D StensethGermanyElwin Sharvill RENEWAL
Greenwood V BowleyAustraliaAsiya Javayant QUALIFIED
Tony V NickaGermanyIoni Bowcher RENEWAL
Costa N FollerItalyStephen Shaw NEW
Aruna Q SergiRussiaIvan Magalhaes QUALIFIED
Mujtaba V AlbaresAustraliaAsiya Javayant NEGOTIATION
Aruna C DoeFranceAsiya Javayant PROPOSAL
David C MarrierCanadaAmy Elsner NEW
Adams N MaletArgentinaAnna Fali NEW
Aika N AlbaresCanadaIvan Magalhaes QUALIFIED
Jeanfrancois A PerinArgentinaXuxue Feng NEW
Jennifer K SergiBrazilOnyama Limba QUALIFIED
Aika J PerinAustraliaIvan Magalhaes PROPOSAL
Leon A RimArgentinaAnna Fali PROPOSAL
Kadeem F PoquetteFranceAmy Elsner NEW
David D ShinkoIndiaStephen Shaw QUALIFIED
Adams T DarakjyRussiaIvan Magalhaes QUALIFIED
Ashley Q SchemmerJapanElwin Sharvill NEW
Rodrigues C OstroskyArgentinaXuxue Feng NEGOTIATION
Darci B DoeJapanXuxue Feng NEW
Kaitlin H CaudyUnited KingdomAsiya Javayant QUALIFIED
Greenwood U RimSpainBernardo Dominic NEW
Izzy Q OldroydCanadaAnna Fali QUALIFIED
James K FerenczAustraliaStephen Shaw 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>