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
Murillo M GarufiUnited KingdomAsiya Javayant NEW
David D GlickJapanXuxue Feng RENEWAL
Aika Q WieserAustraliaBernardo Dominic QUALIFIED
Kadeem L OldroydSpainAsiya Javayant NEW
Murillo A FerenczFranceXuxue Feng UNQUALIFIED
Jennifer J RulapaughUnited KingdomAsiya Javayant NEW
Octavia R DoeSpainAsiya Javayant NEGOTIATION
Misaki Z PoquetteAustraliaAmy Elsner NEW
Clifford M VocelkaBrazilAnna Fali PROPOSAL
Mujtaba B BriddickCanadaAsiya Javayant PROPOSAL
Arvin T GillianItalyIoni Bowcher NEW
Greenwood E RimBrazilAsiya Javayant UNQUALIFIED
Octavia W DoeBrazilIoni Bowcher UNQUALIFIED
Costa T MaletBrazilIvan Magalhaes NEGOTIATION
Aditya X RulapaughAustraliaIoni Bowcher NEGOTIATION
Antonio R VenereArgentinaIvan Magalhaes PROPOSAL
Juan Z FigeroaUnited KingdomAmy Elsner PROPOSAL
Julie O SlusarskiAustraliaElwin Sharvill RENEWAL
Maria J CampainBrazilStephen Shaw NEGOTIATION
Leja D MacleadUnited KingdomOnyama Limba RENEWAL
Morrow S SlusarskiBrazilBernardo Dominic UNQUALIFIED
Emily X ShinkoRussiaIoni Bowcher QUALIFIED
Aruna J MaletGermanyBernardo Dominic QUALIFIED
Clifford R SlusarskiUnited KingdomXuxue Feng NEGOTIATION
James M ShinkoAustraliaStephen Shaw RENEWAL
Ricardo Z NestleSpainBernardo Dominic UNQUALIFIED
Aika Q DilliardGermanyStephen Shaw PROPOSAL
Rodrigues N MaletUnited KingdomAnna Fali PROPOSAL
Munro Q AlbaresJapanXuxue Feng NEGOTIATION
Aditya T IturbideFranceIoni Bowcher NEGOTIATION
Silvio O NestleCanadaAnna Fali NEGOTIATION
Deepesh M BowleyUnited KingdomAmy Elsner UNQUALIFIED
Adams N GillianFranceElwin Sharvill NEGOTIATION
Silvio A FollerBrazilBernardo Dominic NEGOTIATION
James Y MaletRussiaElwin Sharvill RENEWAL
Costa W GauchoIndiaAsiya Javayant QUALIFIED
Adams D RimCanadaAsiya Javayant QUALIFIED
Rodrigues H RimArgentinaOnyama Limba NEGOTIATION
Misaki O MorascaGermanyAmy Elsner UNQUALIFIED
Johnson Q InouyeIndiaElwin Sharvill PROPOSAL
Ivar M BologniaBrazilXuxue Feng QUALIFIED
Sinclair T GlickUnited KingdomAsiya Javayant PROPOSAL
Jones W GauchoArgentinaStephen Shaw RENEWAL
Leja P FlosiCanadaAnna Fali NEGOTIATION
Munro K OstroskyIndiaIvan Magalhaes NEGOTIATION
Ricardo L SergiArgentinaIoni Bowcher NEGOTIATION
Darci L AmigonAustraliaAmy Elsner UNQUALIFIED
Juan H PoquetteJapanStephen Shaw RENEWAL
Aditya P GauchoUnited KingdomBernardo Dominic UNQUALIFIED
Aika H BowleyJapanStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Munro F AmigonAustraliaXuxue Feng NEW
Aruna C GlickRussiaIvan Magalhaes RENEWAL
Deepesh N BologniaItalyBernardo Dominic RENEWAL
Aruna B GlickJapanAsiya Javayant NEGOTIATION
Ivar N MaletJapanIvan Magalhaes NEGOTIATION
Izzy V MarrierJapanAnna Fali NEW
Darci P SergiFranceOnyama Limba PROPOSAL
Antonio S VenereItalyIoni Bowcher NEGOTIATION
Jefferson B RoysterBrazilOnyama Limba NEW
Kadeem V PaprockiGermanyElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair Z BriddickArgentina2026-10-16Morlong Associates NEGOTIATION4Ioni Bowcher
1001Salvatore Q PerinBrazil2026-09-29Truhlar And Truhlar Attys PROPOSAL89Amy Elsner
1002Mujtaba J OldroydUnited Kingdom2026-10-21Dorl, James J Esq QUALIFIED13Stephen Shaw
1003Tony H SchemmerIndia2026-10-20Chemel, James L Cpa UNQUALIFIED81Ioni Bowcher
1004Aika U NickaGermany2026-10-16Chapman, Ross E Esq NEGOTIATION14Ioni Bowcher
1005Adams H IturbideRussia2026-10-13Benton, John B Jr NEGOTIATION8Xuxue Feng
1006Morrow K TollnerCanada2026-09-30Commercial Press NEW57Bernardo Dominic
1007Kadeem V WaycottSpain2026-10-04Benton, John B Jr QUALIFIED86Elwin Sharvill
1008Octavia S GauchoIndia2026-09-26Rangoni Of Florence QUALIFIED56Bernardo Dominic
1009Murillo H FollerUnited Kingdom2026-10-13Rousseaux, Michael Esq UNQUALIFIED13Bernardo Dominic
1010Kaitlin V BowleyUnited Kingdom2026-09-26Feltz Printing Service NEW95Ioni Bowcher
1011Greenwood F OstroskyBrazil2026-10-05Printing Dimensions UNQUALIFIED38Amy Elsner
1012Murillo P GillianFrance2026-10-12Chanay, Jeffrey A Esq QUALIFIED92Elwin Sharvill
1013Nicolas Z GauchoArgentina2026-09-26Rangoni Of Florence QUALIFIED21Asiya Javayant
1014Cody Y FlosiUnited Kingdom2026-10-24Truhlar And Truhlar Attys PROPOSAL10Ioni Bowcher
1015Adams V TollnerRussia2026-10-21Chanay, Jeffrey A Esq RENEWAL48Asiya Javayant
1016Ricardo W CaldareraItaly2026-10-07Printing Dimensions QUALIFIED13Onyama Limba
1017Juan O ShinkoFrance2026-09-27Benton, John B Jr UNQUALIFIED50Bernardo Dominic
1018Ricardo X IturbideArgentina2026-10-14Morlong Associates RENEWAL2Xuxue Feng
1019Adams R FerenczAustralia2026-10-03Morlong Associates NEGOTIATION10Onyama Limba
1020Smith Q KolmetzArgentina2026-10-22Feltz Printing Service RENEWAL54Elwin Sharvill
1021Jones A MaletBrazil2026-10-23Chapman, Ross E Esq PROPOSAL39Elwin Sharvill
1022Stacey F IturbideAustralia2026-10-08Commercial Press NEGOTIATION40Xuxue Feng
1023Claire I KuskoArgentina2026-10-25Commercial Press UNQUALIFIED73Onyama Limba
1024Jefferson G VenereJapan2026-10-09Chanay, Jeffrey A Esq RENEWAL54Amy Elsner
1025Adams M FollerAustralia2026-10-17Feiner Bros PROPOSAL60Ivan Magalhaes
1026Stacey A AlbaresBrazil2026-10-04King, Christopher A Esq QUALIFIED36Bernardo Dominic
1027Silvio A PoquetteFrance2026-10-17Chanay, Jeffrey A Esq QUALIFIED88Ivan Magalhaes
1028Costa Z SaylorsIndia2026-09-27Dorl, James J Esq QUALIFIED99Asiya Javayant
1029Julie C CaudySpain2026-10-15Commercial Press NEGOTIATION51Ivan Magalhaes
1030Leon J ShinkoRussia2026-10-19Chemel, James L Cpa UNQUALIFIED81Asiya Javayant
1031Adams B KuskoCanada2026-09-29Feltz Printing Service RENEWAL37Ioni Bowcher
1032Kadeem Z PaprockiSpain2026-10-05Dorl, James J Esq NEW43Amy Elsner
1033Greenwood J KolmetzIndia2026-10-11Morlong Associates RENEWAL81Amy Elsner
1034Antonio H PaprockiJapan2026-10-22Chanay, Jeffrey A Esq RENEWAL86Asiya Javayant
1035Jefferson S GlickSpain2026-10-23Buckley Miller Wright UNQUALIFIED10Bernardo Dominic
1036Greenwood U PerinSpain2026-10-09Feltz Printing Service NEGOTIATION6Ioni Bowcher
1037James K GillianArgentina2026-09-27Buckley Miller Wright PROPOSAL43Ivan Magalhaes
1038Sinclair S MarrierCanada2026-10-18Commercial Press RENEWAL47Bernardo Dominic
1039Munro X StensethJapan2026-10-11Rangoni Of Florence RENEWAL8Asiya Javayant
1040Greenwood H KuskoItaly2026-10-18Benton, John B Jr NEGOTIATION4Onyama Limba
1041Misaki T IturbideUnited Kingdom2026-10-09Commercial Press UNQUALIFIED8Bernardo Dominic
1042James O RulapaughJapan2026-10-18Feltz Printing Service PROPOSAL5Anna Fali
1043Leja L WhobreyUnited Kingdom2026-09-28Feiner Bros QUALIFIED88Ivan Magalhaes
1044Arvin U SlusarskiSpain2026-10-25Feiner Bros QUALIFIED80Bernardo Dominic
1045Aruna Z CaudyCanada2026-10-19Rousseaux, Michael Esq RENEWAL44Xuxue Feng
1046Alejandro G BowleyGermany2026-10-24Chemel, James L Cpa UNQUALIFIED98Ivan Magalhaes
1047Jennifer Z MaletItaly2026-10-23Feltz Printing Service NEW77Bernardo Dominic
1048Aditya O DilliardRussia2026-10-17Chapman, Ross E Esq QUALIFIED41Amy Elsner
1049Salvatore N VocelkaAustralia2026-10-15Buckley Miller Wright PROPOSAL94Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Wickens Q FollerCanadaOnyama Limba RENEWAL
Aika W MaletItalyIvan Magalhaes NEW
Isabel M InouyeSpainAsiya Javayant PROPOSAL
Octavia I ChuiGermanyStephen Shaw PROPOSAL
Isabel M FollerGermanyIoni Bowcher PROPOSAL
Misaki T TollnerCanadaBernardo Dominic PROPOSAL
Stacey N WhobreyIndiaOnyama Limba RENEWAL
Mayumi F PerinItalyElwin Sharvill UNQUALIFIED
Cody W VocelkaUnited KingdomAnna Fali NEW
Arvin P WhobreyAustraliaIvan Magalhaes NEGOTIATION
Morrow Y InouyeFranceOnyama Limba QUALIFIED
Morrow S VenereSpainIoni Bowcher PROPOSAL
Julie K AlbaresGermanyAmy Elsner NEW
Antonio E StockhamItalyAnna Fali NEGOTIATION
Juan W DoeFranceStephen Shaw UNQUALIFIED
Faith G RulapaughFranceAsiya Javayant NEW
Kadeem X TollnerIndiaAsiya Javayant UNQUALIFIED
Jones Z SchemmerGermanyBernardo Dominic PROPOSAL
Faith T BriddickUnited KingdomAsiya Javayant NEW
Tony D GauchoJapanAnna Fali UNQUALIFIED
Ashley S KuskoGermanyBernardo Dominic RENEWAL
Kadeem W WhobreyRussiaAmy Elsner PROPOSAL
Maria B KuskoBrazilStephen Shaw UNQUALIFIED
Nicolas C ShinkoCanadaStephen Shaw RENEWAL
Murillo R FlosiFranceIoni Bowcher UNQUALIFIED
Faith B DilliardItalyAsiya Javayant UNQUALIFIED
Murillo U CaudyGermanyAnna Fali QUALIFIED
Johnson C VenereFranceIoni Bowcher NEW
Emily D RutaGermanyIvan Magalhaes RENEWAL
Julie N VocelkaUnited KingdomAmy Elsner NEGOTIATION
Deepesh B KuskoAustraliaAmy Elsner UNQUALIFIED
Tony I GlickIndiaIvan Magalhaes PROPOSAL
David H NestleArgentinaAmy Elsner QUALIFIED
Maisha Q GarufiSpainIoni Bowcher UNQUALIFIED
Tony T SaylorsIndiaStephen Shaw NEW
Jennifer J AmigonJapanStephen Shaw UNQUALIFIED
Mujtaba U WieserJapanOnyama Limba PROPOSAL
Aika V MaletArgentinaXuxue Feng NEW
Kaitlin D PaprockiUnited KingdomBernardo Dominic PROPOSAL
Emily W SaylorsBrazilXuxue Feng NEW
Leja Y MarrierArgentinaOnyama Limba NEGOTIATION
Mayumi V OstroskyItalyElwin Sharvill NEGOTIATION
Morrow Z BologniaItalyAnna Fali NEGOTIATION
Jennifer X FigeroaRussiaElwin Sharvill PROPOSAL
Julie S VenereUnited KingdomAnna Fali RENEWAL
Arvin Z KuskoSpainAnna Fali NEGOTIATION
Murillo Y BriddickArgentinaAnna Fali RENEWAL
Costa S PoquetteSpainStephen Shaw PROPOSAL
Munro W MaletItalyStephen Shaw RENEWAL
Jefferson U OstroskyBrazilOnyama Limba PROPOSAL
Frozen Columns
Name
Mayumi G Sergi
Morrow A Bowley
David D Figeroa
Misaki C Slusarski
Stacey U Glick
Izzy M Bolognia
Wickens P Nicka
Murillo S Malet
Alejandro H Darakjy
David E Oldroyd
Jefferson L Ruta
Juan J Maclead
Chavez H Flosi
Aruna E Sergi
Arvin Q Nicka
Nicolas N Sergi
Claire W Oldroyd
Murillo B Oldroyd
Emily Z Figeroa
Alejandro F Chui
Adams K Rulapaugh
Chavez H Iturbide
Arvin B Morasca
Isabel I Paprocki
Jennifer W Morasca
Ashley X Bolognia
Jeanfrancois Q Albares
Octavia D Oldroyd
Aditya W Malet
Emily K Nicka
Emily N Darakjy
Silvio A Figeroa
Rodrigues F Butt
Sinclair L Vocelka
Wickens G Bowley
Murillo U Waycott
Mayumi G Malet
David V Nestle
Isabel R Whobrey
Juan U Ruta
Morrow T Whobrey
Cody F Whobrey
Salvatore L Whobrey
Ricardo H Iturbide
Mayumi U Paprocki
Antonio Z Caudy
Aditya F Figeroa
Jennifer P Ferencz
Munro J Caudy
Aika C Tollner
IdCountryDate
1000Australia2026-10-05
1001Japan2026-10-07
1002India2026-09-30
1003Italy2026-10-20
1004Canada2026-09-26
1005United Kingdom2026-10-07
1006Russia2026-10-22
1007Japan2026-10-01
1008Brazil2026-10-12
1009Japan2026-10-15
1010Argentina2026-10-04
1011Japan2026-09-28
1012United Kingdom2026-09-26
1013India2026-09-26
1014France2026-10-21
1015Brazil2026-10-02
1016Germany2026-10-12
1017Canada2026-10-06
1018Italy2026-10-05
1019Italy2026-10-06
1020Germany2026-10-08
1021Italy2026-10-07
1022Argentina2026-10-13
1023India2026-10-16
1024Brazil2026-10-24
1025United Kingdom2026-10-15
1026Australia2026-10-01
1027Japan2026-10-15
1028Australia2026-10-04
1029Italy2026-10-17
1030France2026-10-11
1031Russia2026-10-23
1032Canada2026-10-23
1033Japan2026-10-10
1034Brazil2026-10-01
1035Italy2026-10-15
1036India2026-10-16
1037India2026-09-28
1038Germany2026-10-12
1039Japan2026-09-29
1040France2026-10-03
1041Argentina2026-09-27
1042Spain2026-10-03
1043Japan2026-10-25
1044Russia2026-10-05
1045France2026-10-02
1046Japan2026-09-30
1047Spain2026-09-27
1048United Kingdom2026-10-09
1049Canada2026-10-08

On-Demand Data

NameIdCountryDate
Arvin Z Slusarski1000Argentina2026-10-04
Jones G Slusarski1001Australia2026-10-12
Kadeem S Perin1002Japan2026-09-27
Faith F Marrier1003United Kingdom2026-10-24
Jeanfrancois C Briddick1004Germany2026-10-04
Leja V Inouye1005Brazil2026-09-27
Ashley D Gillian1006Russia2026-10-12
Morrow W Bolognia1007Italy2026-10-18
Leon V Amigon1008Brazil2026-10-07
Misaki L Garufi1009France2026-10-23
Nicolas K Saylors1010Argentina2026-10-01
Sinclair K Glick1011Germany2026-10-23
Murillo Y Stockham1012Italy2026-10-08
Kadeem P Stenseth1013Italy2026-09-28
Jones O Venere1014Spain2026-10-12
Sinclair J Vocelka1015India2026-10-12
Maisha W Stenseth1016Italy2026-10-07
Wickens C Stenseth1017Brazil2026-09-27
Maria P Amigon1018Canada2026-09-26
Mujtaba F Wieser1019Japan2026-09-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James W NestleUnited KingdomBernardo Dominic UNQUALIFIED
Greenwood F VocelkaCanadaStephen Shaw NEGOTIATION
Mujtaba Y OldroydSpainAnna Fali UNQUALIFIED
Ashley P MarrierItalyAmy Elsner QUALIFIED
Silvio Q BologniaRussiaXuxue Feng RENEWAL
Leon P SchemmerArgentinaOnyama Limba PROPOSAL
Isabel G BologniaIndiaIoni Bowcher QUALIFIED
Darci G PoquetteCanadaIoni Bowcher RENEWAL
Ricardo Y FigeroaRussiaElwin Sharvill PROPOSAL
Johnson R OldroydSpainXuxue Feng QUALIFIED
Wickens L GarufiUnited KingdomAsiya Javayant PROPOSAL
Jones N RoysterFranceStephen Shaw PROPOSAL
Darci L StockhamArgentinaElwin Sharvill NEGOTIATION
Ricardo P VenereAustraliaStephen Shaw UNQUALIFIED
Leon V MaletItalyAsiya Javayant NEW
Darci E GauchoArgentinaAsiya Javayant RENEWAL
Adams I MaletIndiaAmy Elsner NEW
Aruna I VocelkaSpainBernardo Dominic QUALIFIED
Costa N RutaFranceAmy Elsner RENEWAL
Maisha V KolmetzArgentinaBernardo Dominic PROPOSAL
Aika T FigeroaUnited KingdomStephen Shaw QUALIFIED
Kaitlin P SaylorsItalyAnna Fali PROPOSAL
Ricardo L RoysterSpainOnyama Limba NEGOTIATION
Julie J ButtArgentinaAmy Elsner PROPOSAL
Darci B BowleyCanadaAmy Elsner RENEWAL
Rodrigues V CaudyItalyBernardo Dominic RENEWAL
Deepesh N VenereGermanyBernardo Dominic PROPOSAL
Mujtaba Q MacleadCanadaIoni Bowcher NEW
Jeanfrancois Q RimFranceElwin Sharvill NEW
Clifford X GarufiSpainAsiya Javayant NEW
Kadeem R SchemmerAustraliaStephen Shaw QUALIFIED
Silvio W RoysterFranceIoni Bowcher PROPOSAL
Juan Z AlbaresAustraliaBernardo Dominic UNQUALIFIED
Rodrigues V ShinkoUnited KingdomAmy Elsner NEW
Darci U RimSpainAnna Fali UNQUALIFIED
Cody G OldroydJapanAnna Fali NEGOTIATION
Jeanfrancois O RulapaughFranceIoni Bowcher NEW
Francesco I VenereSpainIvan Magalhaes QUALIFIED
Munro J IturbideItalyAsiya Javayant NEW
Kadeem U GlickArgentinaIoni Bowcher NEGOTIATION

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