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
Aika O FigeroaCanadaAmy Elsner UNQUALIFIED
Faith H DilliardSpainXuxue Feng PROPOSAL
Murillo N SchemmerRussiaElwin Sharvill RENEWAL
Kadeem T RulapaughJapanXuxue Feng NEGOTIATION
Mujtaba N FerenczGermanyIoni Bowcher UNQUALIFIED
Leon A MacleadFranceIvan Magalhaes PROPOSAL
Maisha F DoeGermanyStephen Shaw NEW
Jones E PerinIndiaOnyama Limba UNQUALIFIED
Stacey T GlickCanadaIvan Magalhaes UNQUALIFIED
Costa F CampainItalyOnyama Limba QUALIFIED
Stacey P AlbaresBrazilAmy Elsner QUALIFIED
Arvin A DarakjyBrazilAnna Fali QUALIFIED
Antonio F AlbaresUnited KingdomElwin Sharvill RENEWAL
Cody I VenereRussiaXuxue Feng UNQUALIFIED
Murillo W CaudyUnited KingdomOnyama Limba QUALIFIED
Faith X DilliardSpainXuxue Feng PROPOSAL
Deepesh L IturbideUnited KingdomElwin Sharvill NEGOTIATION
Mayumi W StensethIndiaElwin Sharvill NEGOTIATION
Smith G PaprockiAustraliaIvan Magalhaes QUALIFIED
David H FerenczSpainBernardo Dominic NEW
Clifford S RulapaughIndiaAmy Elsner NEW
Ashley W WieserUnited KingdomBernardo Dominic NEW
Deepesh S InouyeSpainAsiya Javayant NEW
Adams A CaldareraItalyIoni Bowcher PROPOSAL
Silvio R KuskoUnited KingdomXuxue Feng PROPOSAL
Izzy W PerinBrazilAnna Fali UNQUALIFIED
Jones A MaletJapanElwin Sharvill NEGOTIATION
Leon U BowleyArgentinaStephen Shaw NEW
Claire A DarakjyRussiaAsiya Javayant NEW
Octavia J MorascaBrazilAnna Fali NEW
Mujtaba U CampainCanadaBernardo Dominic RENEWAL
Tony F StockhamArgentinaAmy Elsner NEGOTIATION
Tony C OstroskyAustraliaStephen Shaw NEW
Arvin W SergiIndiaBernardo Dominic RENEWAL
Aika G VocelkaUnited KingdomOnyama Limba RENEWAL
David S MaletItalyAnna Fali UNQUALIFIED
James K MaletIndiaOnyama Limba RENEWAL
Octavia U KuskoIndiaStephen Shaw UNQUALIFIED
Mujtaba G GlickAustraliaIoni Bowcher QUALIFIED
Arvin Q PaprockiBrazilElwin Sharvill NEGOTIATION
Stacey A RutaGermanyAsiya Javayant QUALIFIED
Munro S BowleyFranceBernardo Dominic NEW
Munro M DilliardBrazilAmy Elsner NEGOTIATION
Cody J FigeroaItalyOnyama Limba QUALIFIED
Kadeem Y NestleFranceElwin Sharvill UNQUALIFIED
Silvio A FollerItalyStephen Shaw NEGOTIATION
Faith G SergiFranceXuxue Feng UNQUALIFIED
Jones Q GarufiArgentinaAmy Elsner RENEWAL
Isabel K WaycottCanadaStephen Shaw UNQUALIFIED
Cody H CaldareraItalyXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Johnson I ButtRussiaBernardo Dominic NEGOTIATION
Sinclair H NestleFranceAsiya Javayant NEGOTIATION
Claire U SergiUnited KingdomXuxue Feng PROPOSAL
Greenwood A CampainRussiaStephen Shaw RENEWAL
Kadeem L BologniaArgentinaIoni Bowcher PROPOSAL
Isabel O PoquetteAustraliaAnna Fali UNQUALIFIED
Aika X MacleadUnited KingdomOnyama Limba NEW
Mayumi D PoquetteArgentinaXuxue Feng RENEWAL
Munro Z StensethRussiaOnyama Limba UNQUALIFIED
Kaitlin G OstroskyBrazilIvan Magalhaes PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Juan M SlusarskiUnited Kingdom2026-10-11Morlong Associates NEGOTIATION11Asiya Javayant
1001Jefferson O GillianUnited Kingdom2026-10-12Morlong Associates UNQUALIFIED67Elwin Sharvill
1002Sinclair M DilliardGermany2026-10-09Feiner Bros NEW9Onyama Limba
1003Claire O VenereArgentina2026-10-11Feiner Bros UNQUALIFIED80Stephen Shaw
1004Julie I GarufiBrazil2026-10-20Printing Dimensions NEGOTIATION35Anna Fali
1005Juan C SchemmerAustralia2026-10-01Chapman, Ross E Esq NEGOTIATION20Bernardo Dominic
1006Claire L GauchoGermany2026-09-26Chemel, James L Cpa NEW27Elwin Sharvill
1007Nicolas H IturbideItaly2026-10-02Benton, John B Jr NEW39Bernardo Dominic
1008Leja H NickaArgentina2026-10-09Chapman, Ross E Esq RENEWAL96Xuxue Feng
1009Munro J BologniaItaly2026-09-27Morlong Associates NEGOTIATION86Xuxue Feng
1010Maisha O OstroskyFrance2026-10-11Feltz Printing Service PROPOSAL71Bernardo Dominic
1011Leon S VocelkaJapan2026-10-10Rousseaux, Michael Esq UNQUALIFIED92Stephen Shaw
1012Darci Y AlbaresItaly2026-10-01Chanay, Jeffrey A Esq QUALIFIED12Xuxue Feng
1013Jennifer C WhobreyIndia2026-10-10Morlong Associates QUALIFIED69Ioni Bowcher
1014James C AlbaresJapan2026-09-29Dorl, James J Esq PROPOSAL43Amy Elsner
1015Cody K BologniaRussia2026-10-04Morlong Associates RENEWAL83Bernardo Dominic
1016Aruna K CampainUnited Kingdom2026-09-30Chapman, Ross E Esq UNQUALIFIED6Ivan Magalhaes
1017Costa K PoquetteFrance2026-10-08Printing Dimensions UNQUALIFIED79Ivan Magalhaes
1018Salvatore R MaletCanada2026-10-16Chanay, Jeffrey A Esq PROPOSAL68Elwin Sharvill
1019Stacey S SaylorsJapan2026-09-22Chanay, Jeffrey A Esq RENEWAL93Anna Fali
1020Faith D OstroskyGermany2026-10-05Printing Dimensions UNQUALIFIED30Anna Fali
1021Morrow L ShinkoItaly2026-10-15Truhlar And Truhlar Attys QUALIFIED13Bernardo Dominic
1022Aditya B FlosiArgentina2026-10-15Benton, John B Jr QUALIFIED8Stephen Shaw
1023Maria Y SergiGermany2026-09-24Chanay, Jeffrey A Esq NEW30Ivan Magalhaes
1024Emily R FigeroaArgentina2026-09-30Morlong Associates NEGOTIATION59Asiya Javayant
1025Ashley U BriddickRussia2026-10-11Printing Dimensions QUALIFIED53Xuxue Feng
1026Emily M RoysterJapan2026-10-10Rousseaux, Michael Esq PROPOSAL89Onyama Limba
1027James J AlbaresIndia2026-09-28Truhlar And Truhlar Attys PROPOSAL32Ivan Magalhaes
1028Claire Q InouyeUnited Kingdom2026-10-15Rangoni Of Florence NEW98Ivan Magalhaes
1029Munro T MarrierCanada2026-10-08King, Christopher A Esq RENEWAL32Amy Elsner
1030Claire I MorascaFrance2026-10-18Rangoni Of Florence UNQUALIFIED93Elwin Sharvill
1031James O MorascaRussia2026-10-13Feltz Printing Service RENEWAL29Xuxue Feng
1032Misaki H MarrierRussia2026-10-21Rangoni Of Florence NEGOTIATION23Onyama Limba
1033Munro L MarrierGermany2026-10-09Dorl, James J Esq UNQUALIFIED35Xuxue Feng
1034Jones U OstroskyJapan2026-10-06Rousseaux, Michael Esq NEW27Xuxue Feng
1035Ashley V MorascaUnited Kingdom2026-10-04Chapman, Ross E Esq PROPOSAL38Stephen Shaw
1036Octavia B BriddickSpain2026-10-11Buckley Miller Wright PROPOSAL42Bernardo Dominic
1037Emily L BowleyJapan2026-10-11Chanay, Jeffrey A Esq UNQUALIFIED17Asiya Javayant
1038Adams Z RutaGermany2026-09-25Commercial Press QUALIFIED43Stephen Shaw
1039Johnson K OstroskyRussia2026-10-04Chemel, James L Cpa UNQUALIFIED4Asiya Javayant
1040Jones M MorascaCanada2026-10-07Feltz Printing Service NEW6Ioni Bowcher
1041Jennifer I NestleFrance2026-10-11Chanay, Jeffrey A Esq UNQUALIFIED58Xuxue Feng
1042Chavez Y IturbideAustralia2026-10-02Printing Dimensions NEW14Stephen Shaw
1043Alejandro N MacleadSpain2026-10-13Chemel, James L Cpa UNQUALIFIED32Asiya Javayant
1044Faith U VocelkaItaly2026-09-22Truhlar And Truhlar Attys UNQUALIFIED16Xuxue Feng
1045Chavez F MorascaRussia2026-10-20Feiner Bros NEW0Elwin Sharvill
1046Ashley Q PoquetteItaly2026-10-15Benton, John B Jr NEGOTIATION94Xuxue Feng
1047Costa I RulapaughRussia2026-10-19Chemel, James L Cpa NEGOTIATION47Amy Elsner
1048Ashley F ShinkoUnited Kingdom2026-10-05King, Christopher A Esq NEW7Amy Elsner
1049Salvatore M SaylorsRussia2026-10-07Truhlar And Truhlar Attys QUALIFIED85Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
James P DilliardCanadaIvan Magalhaes UNQUALIFIED
Nicolas E SergiRussiaBernardo Dominic NEGOTIATION
Cody I KolmetzRussiaAmy Elsner UNQUALIFIED
Costa H DilliardAustraliaIoni Bowcher NEGOTIATION
Arvin M TollnerFranceIoni Bowcher NEGOTIATION
Maisha B RutaCanadaOnyama Limba PROPOSAL
Maisha Y KolmetzAustraliaStephen Shaw QUALIFIED
Aditya E MaletRussiaOnyama Limba QUALIFIED
Isabel N MacleadArgentinaXuxue Feng QUALIFIED
Misaki D AmigonAustraliaIoni Bowcher PROPOSAL
Izzy E DilliardFranceXuxue Feng UNQUALIFIED
Jefferson R CaldareraJapanOnyama Limba UNQUALIFIED
Deepesh K GlickSpainAmy Elsner QUALIFIED
Isabel P RimBrazilIvan Magalhaes NEW
Kaitlin E DilliardCanadaAmy Elsner UNQUALIFIED
David W VenereJapanStephen Shaw PROPOSAL
Maisha H DoeUnited KingdomXuxue Feng NEGOTIATION
Aditya F GlickIndiaStephen Shaw QUALIFIED
Jeanfrancois D SergiBrazilXuxue Feng PROPOSAL
Alejandro B SlusarskiRussiaIoni Bowcher NEGOTIATION
Deepesh L PoquetteIndiaStephen Shaw RENEWAL
Isabel H FlosiBrazilAmy Elsner NEW
Mayumi R NestleCanadaAmy Elsner NEGOTIATION
David M FollerSpainXuxue Feng PROPOSAL
Maria W SergiBrazilIvan Magalhaes NEGOTIATION
Francesco D RimCanadaBernardo Dominic NEGOTIATION
Salvatore T FigeroaIndiaAmy Elsner NEGOTIATION
Silvio H MarrierJapanAnna Fali QUALIFIED
Munro N WaycottFranceIoni Bowcher PROPOSAL
Ricardo Z PerinGermanyBernardo Dominic UNQUALIFIED
Isabel H NickaRussiaIvan Magalhaes NEW
Cody H StensethUnited KingdomAsiya Javayant NEW
Smith S MorascaAustraliaOnyama Limba QUALIFIED
Juan P BologniaRussiaIvan Magalhaes PROPOSAL
Aika K ChuiArgentinaAmy Elsner UNQUALIFIED
Salvatore M StensethArgentinaIoni Bowcher NEGOTIATION
Jones L KuskoIndiaBernardo Dominic UNQUALIFIED
Tony H WaycottAustraliaIoni Bowcher NEW
Nicolas U MaletArgentinaIoni Bowcher RENEWAL
Salvatore N ButtJapanAnna Fali QUALIFIED
Octavia A PoquetteIndiaIoni Bowcher UNQUALIFIED
Kadeem J InouyeArgentinaAnna Fali UNQUALIFIED
James U StockhamJapanAsiya Javayant NEGOTIATION
Juan S SergiSpainAmy Elsner NEGOTIATION
Faith O FigeroaJapanIoni Bowcher QUALIFIED
Sinclair D FlosiJapanElwin Sharvill UNQUALIFIED
Maria D BowleyItalyBernardo Dominic NEW
Leja J GauchoSpainXuxue Feng NEW
Rodrigues X FollerUnited KingdomBernardo Dominic RENEWAL
Costa J MarrierGermanyIoni Bowcher NEW
Frozen Columns
Name
Tony E Whobrey
Misaki C Ostrosky
Adams B Marrier
Arvin D Figeroa
Smith U Wieser
Emily G Bowley
Sinclair I Caldarera
Mujtaba U Inouye
Darci L Ruta
Rodrigues I Kolmetz
Aditya K Nicka
Maria S Saylors
Wickens I Butt
Jones H Wieser
Morrow D Doe
Stacey D Sergi
Aditya B Ostrosky
Leon S Maclead
Stacey V Malet
Sinclair S Campain
Claire A Slusarski
Aika J Ferencz
Ricardo P Amigon
Wickens U Nestle
Misaki W Slusarski
Jones T Ruta
Misaki D Foller
Morrow Z Gillian
Nicolas S Nicka
James D Gillian
Jeanfrancois X Garufi
Cody L Foller
Jones R Sergi
Adams B Nestle
Kadeem O Nestle
Rodrigues U Bowley
Adams G Caldarera
Antonio P Briddick
Leon H Ruta
Misaki G Poquette
Aika H Figeroa
Morrow E Venere
Adams J Marrier
Cody I Darakjy
James S Kusko
Ivar H Rim
Smith C Poquette
Arvin L Malet
Jennifer S Campain
Emily H Morasca
IdCountryDate
1000Italy2026-10-07
1001Argentina2026-10-05
1002Japan2026-10-16
1003France2026-10-14
1004Russia2026-10-04
1005India2026-10-09
1006United Kingdom2026-09-30
1007Australia2026-10-11
1008India2026-10-08
1009France2026-09-30
1010India2026-10-05
1011Spain2026-09-22
1012Japan2026-10-16
1013Brazil2026-09-28
1014Russia2026-10-14
1015Canada2026-10-18
1016Russia2026-10-19
1017Japan2026-10-17
1018Germany2026-10-06
1019Canada2026-10-20
1020Brazil2026-10-08
1021United Kingdom2026-10-01
1022United Kingdom2026-09-23
1023Australia2026-09-28
1024Brazil2026-10-11
1025Australia2026-09-28
1026Japan2026-10-14
1027Spain2026-10-19
1028Brazil2026-10-10
1029India2026-10-16
1030Spain2026-09-29
1031Australia2026-09-30
1032Italy2026-10-18
1033Argentina2026-09-23
1034Brazil2026-10-21
1035Argentina2026-10-07
1036Australia2026-09-27
1037India2026-10-17
1038Japan2026-09-24
1039Argentina2026-10-03
1040Argentina2026-10-06
1041Canada2026-09-27
1042Brazil2026-10-17
1043United Kingdom2026-10-19
1044Brazil2026-10-12
1045Argentina2026-09-27
1046Italy2026-10-16
1047Argentina2026-10-05
1048Italy2026-10-10
1049Brazil2026-10-15

On-Demand Data

NameIdCountryDate
Mayumi M Kolmetz1000Russia2026-10-03
Jefferson H Kolmetz1001Canada2026-09-27
Adams A Waycott1002United Kingdom2026-10-13
Aditya Z Marrier1003India2026-10-04
Juan W Waycott1004United Kingdom2026-09-28
Smith W Nicka1005Australia2026-10-12
Maisha P Waycott1006Canada2026-10-03
Stacey Y Inouye1007France2026-10-05
Julie L Albares1008Russia2026-10-01
Tony A Shinko1009Japan2026-09-24
Jefferson V Kolmetz1010Australia2026-10-16
Deepesh W Poquette1011Italy2026-10-20
Sinclair D Inouye1012India2026-10-11
Sinclair C Butt1013Germany2026-10-01
Kadeem K Bowley1014India2026-10-01
Munro G Garufi1015Brazil2026-09-25
Murillo Y Whobrey1016Brazil2026-10-16
Ricardo G Doe1017United Kingdom2026-09-24
Chavez N Royster1018France2026-10-13
Sinclair N Ferencz1019Canada2026-10-10
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi C SchemmerBrazilAsiya Javayant UNQUALIFIED
Juan O FigeroaAustraliaStephen Shaw PROPOSAL
Kaitlin K GlickFranceIoni Bowcher QUALIFIED
Maria F WhobreyIndiaAnna Fali UNQUALIFIED
Nicolas O DilliardBrazilIoni Bowcher NEGOTIATION
Maria E GillianUnited KingdomStephen Shaw NEW
Maisha M RoysterJapanStephen Shaw NEW
Leon K FerenczCanadaIvan Magalhaes UNQUALIFIED
Maisha J KolmetzSpainXuxue Feng PROPOSAL
Johnson R FerenczJapanXuxue Feng PROPOSAL
Cody E VocelkaCanadaStephen Shaw NEGOTIATION
Darci H MaletRussiaIoni Bowcher RENEWAL
Stacey N BologniaIndiaElwin Sharvill QUALIFIED
Claire Y DilliardArgentinaXuxue Feng NEW
Alejandro W VocelkaBrazilBernardo Dominic QUALIFIED
Jennifer P MorascaItalyXuxue Feng PROPOSAL
Mayumi V ChuiIndiaBernardo Dominic NEW
Ivar U SaylorsBrazilOnyama Limba NEGOTIATION
Aditya K RulapaughSpainAmy Elsner NEW
Julie Q DilliardUnited KingdomOnyama Limba RENEWAL
Kaitlin S BowleyGermanyAnna Fali NEGOTIATION
Costa X SergiFranceXuxue Feng QUALIFIED
Aditya U CaldareraCanadaOnyama Limba QUALIFIED
Greenwood E VenereArgentinaStephen Shaw QUALIFIED
Stacey J IturbideUnited KingdomXuxue Feng NEGOTIATION
Isabel P WieserCanadaElwin Sharvill QUALIFIED
Claire I GillianSpainOnyama Limba NEGOTIATION
Leja K StensethUnited KingdomBernardo Dominic NEGOTIATION
James S NickaFranceBernardo Dominic NEGOTIATION
Murillo J CaudyBrazilStephen Shaw NEGOTIATION
Julie G GarufiCanadaElwin Sharvill PROPOSAL
Wickens S BriddickUnited KingdomOnyama Limba NEW
Darci U TollnerItalyElwin Sharvill NEW
Misaki C RoysterItalyAnna Fali NEGOTIATION
Faith E ButtRussiaIvan Magalhaes RENEWAL
Leon U RulapaughGermanyIvan Magalhaes UNQUALIFIED
Rodrigues Y RimItalyXuxue Feng NEW
Jones P CaudyArgentinaAsiya Javayant RENEWAL
Jones D WhobreyBrazilAnna Fali NEW
Nicolas F FollerJapanIoni Bowcher 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>