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
Ricardo K CaldareraGermanyOnyama Limba RENEWAL
Munro E FollerItalyBernardo Dominic RENEWAL
Silvio K BologniaBrazilElwin Sharvill NEGOTIATION
Misaki R CaldareraFranceIvan Magalhaes NEW
Cody A InouyeItalyStephen Shaw NEW
Mujtaba V NickaBrazilBernardo Dominic NEGOTIATION
Kaitlin D AmigonGermanyStephen Shaw QUALIFIED
Jennifer M KuskoRussiaStephen Shaw NEW
Maria L PaprockiArgentinaOnyama Limba QUALIFIED
Jennifer I PerinAustraliaBernardo Dominic NEW
Costa O FigeroaCanadaIoni Bowcher NEGOTIATION
Aruna P MacleadCanadaAnna Fali RENEWAL
Leja R KuskoSpainXuxue Feng RENEWAL
Francesco X SergiJapanIvan Magalhaes UNQUALIFIED
Emily D GlickGermanyOnyama Limba NEGOTIATION
Octavia S PerinRussiaIoni Bowcher QUALIFIED
Ricardo B CaldareraIndiaXuxue Feng UNQUALIFIED
Antonio P MorascaJapanIoni Bowcher PROPOSAL
Morrow O MaletBrazilElwin Sharvill RENEWAL
Maria D CaudyFranceStephen Shaw QUALIFIED
Deepesh B AlbaresAustraliaOnyama Limba NEW
Johnson M FlosiFranceAsiya Javayant PROPOSAL
Ashley T PoquetteGermanyOnyama Limba RENEWAL
Julie K RoysterSpainOnyama Limba UNQUALIFIED
Jennifer L MorascaSpainBernardo Dominic QUALIFIED
Octavia L GauchoRussiaIoni Bowcher UNQUALIFIED
Cody G KuskoGermanyAsiya Javayant QUALIFIED
Jennifer F FerenczGermanyStephen Shaw NEW
Cody E WhobreyFranceAsiya Javayant UNQUALIFIED
Rodrigues V VenereJapanOnyama Limba NEW
Johnson K MaletIndiaStephen Shaw NEW
Wickens G RimUnited KingdomXuxue Feng UNQUALIFIED
Costa K DarakjyBrazilBernardo Dominic RENEWAL
Sinclair N SergiFranceAmy Elsner QUALIFIED
Juan X BowleyIndiaAmy Elsner UNQUALIFIED
Mujtaba O WaycottItalyAnna Fali NEGOTIATION
Ivar W CaldareraSpainOnyama Limba NEW
Costa B AmigonSpainAsiya Javayant PROPOSAL
Jeanfrancois I MarrierRussiaAmy Elsner QUALIFIED
Jeanfrancois T RutaBrazilBernardo Dominic PROPOSAL
Juan H CaudyBrazilIoni Bowcher NEGOTIATION
Maisha J PerinIndiaAnna Fali NEW
Alejandro B MacleadUnited KingdomIvan Magalhaes RENEWAL
Morrow O AmigonAustraliaBernardo Dominic NEW
Darci Z TollnerAustraliaAnna Fali NEGOTIATION
Greenwood A DilliardGermanyStephen Shaw QUALIFIED
Clifford G CaldareraItalyIvan Magalhaes UNQUALIFIED
Morrow R GarufiAustraliaBernardo Dominic QUALIFIED
Rodrigues N SaylorsItalyAnna Fali NEW
Kadeem M MaletAustraliaStephen Shaw NEW
Horizontal
NameCountryRepresentativeStatus
Murillo F DilliardAustraliaAnna Fali NEGOTIATION
Julie A BologniaIndiaXuxue Feng RENEWAL
Clifford W MaletFranceIvan Magalhaes PROPOSAL
Juan B BriddickCanadaXuxue Feng NEW
Murillo Q KuskoItalyIvan Magalhaes QUALIFIED
Leon X ChuiIndiaElwin Sharvill QUALIFIED
Mujtaba E MorascaCanadaElwin Sharvill PROPOSAL
Wickens N AmigonSpainAnna Fali NEGOTIATION
Nicolas K PoquetteArgentinaBernardo Dominic PROPOSAL
David Z SchemmerJapanOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio H RulapaughGermany2026-11-08Rousseaux, Michael Esq NEGOTIATION51Stephen Shaw
1001Greenwood M VocelkaUnited Kingdom2026-10-31Chanay, Jeffrey A Esq QUALIFIED67Stephen Shaw
1002Nicolas V ButtIndia2026-11-10Chapman, Ross E Esq QUALIFIED81Anna Fali
1003Jones O DilliardRussia2026-10-29Feiner Bros NEGOTIATION89Xuxue Feng
1004Julie J MaletSpain2026-10-19Commercial Press QUALIFIED39Bernardo Dominic
1005Stacey P MaletArgentina2026-11-03Chanay, Jeffrey A Esq NEGOTIATION97Amy Elsner
1006Jeanfrancois Q AlbaresBrazil2026-10-19Rousseaux, Michael Esq PROPOSAL1Ioni Bowcher
1007Emily W RutaItaly2026-10-15Rangoni Of Florence PROPOSAL32Amy Elsner
1008Jefferson S MorascaRussia2026-10-29Rangoni Of Florence NEGOTIATION0Onyama Limba
1009Mayumi V GlickSpain2026-11-09Truhlar And Truhlar Attys QUALIFIED35Ioni Bowcher
1010Greenwood W GillianJapan2026-10-25Dorl, James J Esq RENEWAL29Onyama Limba
1011Ricardo O BriddickJapan2026-10-18Rangoni Of Florence UNQUALIFIED74Onyama Limba
1012Maisha X ChuiCanada2026-10-16Rangoni Of Florence QUALIFIED68Anna Fali
1013Darci B ChuiAustralia2026-10-18Rangoni Of Florence RENEWAL91Amy Elsner
1014Salvatore C SaylorsItaly2026-10-20Buckley Miller Wright UNQUALIFIED27Amy Elsner
1015Maisha E SaylorsItaly2026-10-14Rousseaux, Michael Esq NEW96Onyama Limba
1016Nicolas U SergiItaly2026-11-01Rangoni Of Florence NEW29Ioni Bowcher
1017Murillo O IturbideItaly2026-10-14Feltz Printing Service NEW99Xuxue Feng
1018Greenwood L ChuiBrazil2026-10-31Feltz Printing Service NEW88Ivan Magalhaes
1019Greenwood M MarrierJapan2026-10-31Rangoni Of Florence UNQUALIFIED30Anna Fali
1020Nicolas U ShinkoSpain2026-11-09Buckley Miller Wright NEW84Ivan Magalhaes
1021Darci Y MacleadUnited Kingdom2026-11-08Commercial Press PROPOSAL40Asiya Javayant
1022Aditya F SlusarskiFrance2026-11-05Truhlar And Truhlar Attys RENEWAL26Xuxue Feng
1023Salvatore F ButtSpain2026-10-29King, Christopher A Esq NEW2Asiya Javayant
1024Silvio S WieserIndia2026-10-22Chapman, Ross E Esq PROPOSAL98Ivan Magalhaes
1025Leja C RoysterItaly2026-11-05Commercial Press NEGOTIATION28Onyama Limba
1026Emily Q FigeroaJapan2026-10-27King, Christopher A Esq NEW69Anna Fali
1027Octavia D PerinFrance2026-10-23Morlong Associates QUALIFIED53Anna Fali
1028Aika Q IturbideIndia2026-11-02Feiner Bros UNQUALIFIED69Asiya Javayant
1029Nicolas K NickaBrazil2026-11-05Feiner Bros PROPOSAL30Ioni Bowcher
1030Julie O VenereGermany2026-10-20Truhlar And Truhlar Attys RENEWAL10Ioni Bowcher
1031Jefferson J NestleCanada2026-11-05Rangoni Of Florence QUALIFIED53Bernardo Dominic
1032Murillo V DarakjyUnited Kingdom2026-11-09Chapman, Ross E Esq PROPOSAL12Asiya Javayant
1033Alejandro R MaletIndia2026-11-10Rangoni Of Florence PROPOSAL78Anna Fali
1034Jeanfrancois S RoysterGermany2026-10-23Chanay, Jeffrey A Esq PROPOSAL12Elwin Sharvill
1035Leon O NickaBrazil2026-10-17Dorl, James J Esq PROPOSAL86Onyama Limba
1036Deepesh T MacleadFrance2026-10-27Dorl, James J Esq UNQUALIFIED83Ivan Magalhaes
1037Claire F MacleadArgentina2026-10-27Feltz Printing Service UNQUALIFIED95Ivan Magalhaes
1038Mujtaba C VocelkaAustralia2026-11-10Rousseaux, Michael Esq NEGOTIATION43Bernardo Dominic
1039Misaki U GillianFrance2026-11-09Rangoni Of Florence PROPOSAL13Elwin Sharvill
1040Rodrigues U IturbideCanada2026-10-19Rousseaux, Michael Esq UNQUALIFIED70Amy Elsner
1041Murillo T FlosiRussia2026-11-06Commercial Press NEW90Xuxue Feng
1042Aditya N ShinkoBrazil2026-10-16Morlong Associates NEW68Stephen Shaw
1043Jennifer J BologniaRussia2026-11-11Truhlar And Truhlar Attys NEW74Amy Elsner
1044Cody F VenereCanada2026-10-23Truhlar And Truhlar Attys RENEWAL0Bernardo Dominic
1045Emily L BologniaJapan2026-11-05Printing Dimensions NEW22Anna Fali
1046Ashley P GlickIndia2026-11-02Printing Dimensions PROPOSAL38Stephen Shaw
1047Isabel W AmigonCanada2026-11-07Printing Dimensions RENEWAL1Amy Elsner
1048Kaitlin D MaletItaly2026-10-18Dorl, James J Esq UNQUALIFIED40Elwin Sharvill
1049Claire Z RutaGermany2026-11-10Printing Dimensions QUALIFIED63Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Munro Q RoysterFranceStephen Shaw QUALIFIED
Salvatore S AlbaresRussiaIvan Magalhaes QUALIFIED
Maria L OstroskyAustraliaIvan Magalhaes RENEWAL
Isabel Y GarufiUnited KingdomAsiya Javayant NEGOTIATION
Francesco H KolmetzBrazilIvan Magalhaes NEGOTIATION
Misaki Z PoquetteItalyXuxue Feng NEW
Faith K GlickJapanAnna Fali QUALIFIED
Jones F StensethCanadaElwin Sharvill RENEWAL
Morrow O CaldareraJapanAnna Fali RENEWAL
Stacey Y VocelkaCanadaXuxue Feng NEW
Octavia Q GillianItalyAmy Elsner UNQUALIFIED
Stacey D IturbideIndiaIvan Magalhaes NEW
Misaki F GlickSpainAmy Elsner UNQUALIFIED
Jennifer L WieserFranceBernardo Dominic UNQUALIFIED
Smith G ShinkoSpainStephen Shaw PROPOSAL
Kaitlin M MaletUnited KingdomIoni Bowcher PROPOSAL
Silvio M DarakjyIndiaIoni Bowcher NEW
Mayumi U RutaCanadaAsiya Javayant UNQUALIFIED
Aruna P AmigonGermanyIvan Magalhaes NEGOTIATION
Adams K VocelkaAustraliaElwin Sharvill NEW
Kaitlin P StockhamRussiaStephen Shaw QUALIFIED
Jefferson W FigeroaArgentinaIvan Magalhaes NEW
Morrow A VocelkaIndiaElwin Sharvill RENEWAL
Izzy N RoysterArgentinaStephen Shaw PROPOSAL
Leon A DoeBrazilAmy Elsner PROPOSAL
Mayumi L WhobreyJapanIvan Magalhaes PROPOSAL
Misaki I MaletUnited KingdomStephen Shaw UNQUALIFIED
Clifford U PerinAustraliaOnyama Limba NEGOTIATION
Tony Q ChuiGermanyAnna Fali NEW
Maria Y FollerUnited KingdomElwin Sharvill RENEWAL
Munro X AlbaresItalyOnyama Limba QUALIFIED
Arvin L MaletIndiaOnyama Limba RENEWAL
Rodrigues M RoysterSpainXuxue Feng PROPOSAL
Claire E OstroskyCanadaElwin Sharvill PROPOSAL
Ashley E MacleadAustraliaAnna Fali PROPOSAL
Adams L SlusarskiBrazilElwin Sharvill NEGOTIATION
Emily H SlusarskiBrazilElwin Sharvill RENEWAL
Cody V MarrierSpainStephen Shaw PROPOSAL
Kaitlin K DoeCanadaBernardo Dominic QUALIFIED
Sinclair V VenereGermanyIvan Magalhaes QUALIFIED
Chavez N GlickUnited KingdomElwin Sharvill RENEWAL
Nicolas G RimSpainAmy Elsner UNQUALIFIED
Cody Q PoquetteUnited KingdomAmy Elsner PROPOSAL
Jefferson V AlbaresAustraliaBernardo Dominic PROPOSAL
Wickens Y StensethGermanyXuxue Feng PROPOSAL
Maria T StockhamArgentinaIoni Bowcher RENEWAL
Morrow G OstroskyBrazilIvan Magalhaes NEW
Arvin Z MarrierBrazilAnna Fali QUALIFIED
Mujtaba M FerenczJapanXuxue Feng RENEWAL
Mayumi L FerenczFranceIoni Bowcher PROPOSAL
Frozen Columns
Name
Jones B Gaucho
Ashley L Saylors
Salvatore Z Stenseth
Kaitlin X Stockham
Tony C Poquette
Maria S Venere
James H Bowley
Adams B Nicka
Leon Z Ostrosky
Smith T Nicka
Jones I Kolmetz
Isabel P Rim
Morrow C Darakjy
Octavia P Kolmetz
Smith H Rim
Salvatore R Stenseth
Mujtaba Z Nestle
Jeanfrancois S Sergi
Maria J Oldroyd
Stacey D Gillian
Stacey Y Marrier
Aika F Ostrosky
Jones B Iturbide
Isabel F Ruta
Faith U Venere
Morrow Y Iturbide
Mayumi R Albares
Isabel V Figeroa
Faith G Morasca
Antonio B Royster
Mayumi C Vocelka
Nicolas Z Dilliard
Cody L Slusarski
Francesco L Inouye
Stacey M Caudy
Kaitlin J Malet
David L Caldarera
Chavez C Rim
Murillo Y Schemmer
Kadeem X Amigon
Maria S Stockham
Octavia G Malet
Adams X Caldarera
Ivar B Sergi
Maria O Figeroa
Izzy R Inouye
Aruna D Nicka
Aika G Schemmer
Rodrigues Y Marrier
Deepesh M Caudy
IdCountryDate
1000Canada2026-11-08
1001Germany2026-10-14
1002Canada2026-11-09
1003Spain2026-11-09
1004United Kingdom2026-10-20
1005Italy2026-10-22
1006France2026-10-14
1007United Kingdom2026-10-17
1008Germany2026-11-10
1009Canada2026-11-06
1010Brazil2026-10-20
1011Japan2026-11-03
1012Brazil2026-10-26
1013Australia2026-10-29
1014Russia2026-10-28
1015Brazil2026-10-29
1016Italy2026-10-18
1017Japan2026-11-08
1018Brazil2026-10-16
1019Russia2026-11-05
1020France2026-10-18
1021Argentina2026-11-04
1022United Kingdom2026-10-14
1023Japan2026-10-21
1024United Kingdom2026-10-27
1025Canada2026-10-24
1026Japan2026-10-18
1027Italy2026-10-23
1028Brazil2026-10-14
1029France2026-10-24
1030France2026-11-12
1031Australia2026-10-27
1032Spain2026-10-20
1033India2026-11-08
1034Germany2026-11-04
1035Brazil2026-11-04
1036Japan2026-10-22
1037Argentina2026-10-20
1038Japan2026-10-20
1039Brazil2026-11-08
1040Japan2026-10-28
1041Argentina2026-10-15
1042France2026-10-22
1043United Kingdom2026-10-19
1044Italy2026-10-24
1045Brazil2026-10-28
1046Russia2026-10-23
1047India2026-11-10
1048Russia2026-11-12
1049India2026-10-26

On-Demand Data

NameIdCountryDate
Darci U Perin1000United Kingdom2026-11-01
Arvin R Royster1001Italy2026-10-26
Aika B Chui1002Argentina2026-11-07
Ricardo E Rulapaugh1003Spain2026-10-27
Morrow F Gillian1004Germany2026-10-26
Jennifer Z Darakjy1005Italy2026-11-06
Emily K Ruta1006Canada2026-11-09
Salvatore N Ostrosky1007Argentina2026-11-09
Johnson C Briddick1008India2026-11-08
Kadeem V Ferencz1009Australia2026-10-20
Ricardo O Inouye1010Italy2026-11-10
Jeanfrancois P Marrier1011Spain2026-10-20
Mujtaba I Rulapaugh1012Germany2026-10-26
Aditya W Amigon1013Argentina2026-11-12
Jennifer V Albares1014India2026-10-31
Wickens O Marrier1015France2026-10-17
Tony O Rulapaugh1016Spain2026-10-24
Greenwood Z Maclead1017Australia2026-11-07
Costa F Inouye1018India2026-11-09
Kaitlin W Venere1019Brazil2026-10-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones F MarrierItalyAsiya Javayant PROPOSAL
Stacey U ButtItalyXuxue Feng QUALIFIED
Silvio D NestleRussiaElwin Sharvill RENEWAL
David E RoysterFranceAsiya Javayant QUALIFIED
Silvio X CaudyBrazilAsiya Javayant NEGOTIATION
Mayumi H FollerIndiaElwin Sharvill QUALIFIED
Adams Z GarufiGermanyAmy Elsner NEGOTIATION
Munro V BologniaCanadaAsiya Javayant RENEWAL
Francesco U StockhamItalyAnna Fali NEGOTIATION
Mayumi M VocelkaSpainOnyama Limba QUALIFIED
Ashley R BowleyJapanXuxue Feng RENEWAL
Faith D InouyeGermanyBernardo Dominic RENEWAL
Jennifer J InouyeItalyAnna Fali UNQUALIFIED
Jennifer W CaldareraFranceAsiya Javayant PROPOSAL
Nicolas D BowleyArgentinaAnna Fali RENEWAL
Octavia G OstroskyItalyAmy Elsner QUALIFIED
Aditya B IturbideSpainBernardo Dominic NEGOTIATION
Ricardo W FollerGermanyElwin Sharvill NEW
Aika L PerinBrazilAmy Elsner QUALIFIED
Rodrigues V SaylorsJapanBernardo Dominic PROPOSAL
Ashley J PaprockiAustraliaAsiya Javayant UNQUALIFIED
Kaitlin G VocelkaItalyStephen Shaw UNQUALIFIED
Mujtaba G WaycottArgentinaAnna Fali UNQUALIFIED
Nicolas M SlusarskiRussiaIoni Bowcher RENEWAL
Jeanfrancois T ChuiGermanyAnna Fali RENEWAL
Emily S GillianCanadaElwin Sharvill NEGOTIATION
Antonio U InouyeGermanyXuxue Feng RENEWAL
Alejandro M CaudyGermanyStephen Shaw NEW
Munro M FerenczArgentinaBernardo Dominic UNQUALIFIED
Izzy Z GarufiGermanyElwin Sharvill NEGOTIATION
Claire K FerenczGermanyElwin Sharvill PROPOSAL
Wickens K ChuiFranceOnyama Limba NEGOTIATION
Ricardo P PaprockiSpainXuxue Feng PROPOSAL
Nicolas C FerenczUnited KingdomIoni Bowcher NEW
Rodrigues W FigeroaArgentinaAsiya Javayant RENEWAL
Jennifer M AlbaresBrazilOnyama Limba PROPOSAL
James J RutaGermanyBernardo Dominic PROPOSAL
Nicolas Q BriddickUnited KingdomAmy Elsner QUALIFIED
Aruna T SergiItalyIoni Bowcher PROPOSAL
Adams D BowleyGermanyBernardo Dominic PROPOSAL

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