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
Misaki G TollnerGermanyElwin Sharvill PROPOSAL
Leja L DilliardCanadaStephen Shaw QUALIFIED
Chavez F KolmetzGermanyAsiya Javayant PROPOSAL
Johnson K RoysterBrazilIvan Magalhaes NEGOTIATION
Misaki U DilliardRussiaBernardo Dominic PROPOSAL
Smith L SergiIndiaOnyama Limba RENEWAL
Chavez I RutaFranceXuxue Feng UNQUALIFIED
Aika Q SchemmerSpainAnna Fali NEW
Aditya C TollnerAustraliaOnyama Limba NEW
Rodrigues P GarufiUnited KingdomAnna Fali PROPOSAL
Adams X FigeroaBrazilXuxue Feng NEW
Antonio O GlickSpainAsiya Javayant NEGOTIATION
Darci Y OstroskyRussiaXuxue Feng PROPOSAL
Darci E SergiIndiaIvan Magalhaes NEGOTIATION
David P DoeBrazilStephen Shaw NEGOTIATION
David L GauchoItalyOnyama Limba RENEWAL
Aika U FlosiRussiaStephen Shaw NEGOTIATION
Ivar H SaylorsFranceXuxue Feng PROPOSAL
Jones J DarakjyUnited KingdomXuxue Feng NEGOTIATION
Antonio S GlickRussiaStephen Shaw RENEWAL
Aika Z BriddickCanadaIvan Magalhaes PROPOSAL
Nicolas U TollnerRussiaBernardo Dominic QUALIFIED
Johnson N PerinBrazilAsiya Javayant RENEWAL
Murillo C InouyeSpainIoni Bowcher PROPOSAL
Stacey N MorascaSpainIoni Bowcher NEW
Murillo Z BriddickJapanAsiya Javayant UNQUALIFIED
Francesco A FigeroaItalyIoni Bowcher RENEWAL
Jeanfrancois N RimItalyAmy Elsner RENEWAL
Wickens Z IturbideArgentinaXuxue Feng QUALIFIED
Adams K DilliardAustraliaOnyama Limba PROPOSAL
Munro M BologniaFranceOnyama Limba NEGOTIATION
Claire D MacleadRussiaAmy Elsner PROPOSAL
Izzy M IturbideArgentinaIoni Bowcher RENEWAL
Cody X MorascaIndiaBernardo Dominic NEGOTIATION
Adams T FerenczSpainStephen Shaw UNQUALIFIED
Wickens Y BriddickBrazilElwin Sharvill NEW
Leja X VenereCanadaAnna Fali UNQUALIFIED
Costa M PaprockiGermanyBernardo Dominic RENEWAL
Julie K CaudyUnited KingdomBernardo Dominic PROPOSAL
Morrow J StockhamAustraliaElwin Sharvill PROPOSAL
Antonio T MarrierSpainIoni Bowcher NEGOTIATION
Smith U FerenczFranceAmy Elsner NEGOTIATION
David C DarakjyGermanyAsiya Javayant PROPOSAL
Munro H SergiItalyElwin Sharvill QUALIFIED
Clifford X PaprockiRussiaElwin Sharvill UNQUALIFIED
Ivar K BriddickFranceStephen Shaw QUALIFIED
Kadeem W CaudyBrazilIoni Bowcher NEW
Kadeem D RutaSpainIvan Magalhaes UNQUALIFIED
Leja Y WieserAustraliaIvan Magalhaes QUALIFIED
Ashley J GarufiIndiaIvan Magalhaes UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Tony U KuskoIndiaElwin Sharvill NEGOTIATION
Ivar F CaudyGermanyAsiya Javayant QUALIFIED
Leja X GarufiFranceIvan Magalhaes RENEWAL
Jefferson L GauchoFranceElwin Sharvill UNQUALIFIED
Jefferson H NestleGermanyStephen Shaw PROPOSAL
Mayumi Q StensethRussiaAsiya Javayant UNQUALIFIED
Silvio G SlusarskiAustraliaIvan Magalhaes UNQUALIFIED
Darci H BologniaArgentinaBernardo Dominic NEW
Sinclair K TollnerFranceElwin Sharvill QUALIFIED
Morrow Y ButtIndiaOnyama Limba PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Clifford T GlickJapan2026-09-27Feiner Bros NEGOTIATION64Bernardo Dominic
1001Costa C SchemmerJapan2026-09-20Chapman, Ross E Esq NEW65Ioni Bowcher
1002Isabel F FigeroaItaly2026-10-14Dorl, James J Esq QUALIFIED12Asiya Javayant
1003Faith U MacleadJapan2026-10-06Rousseaux, Michael Esq PROPOSAL14Ivan Magalhaes
1004Greenwood Q PerinAustralia2026-09-23Rousseaux, Michael Esq PROPOSAL24Bernardo Dominic
1005Johnson B RoysterIndia2026-09-24Rousseaux, Michael Esq RENEWAL33Xuxue Feng
1006Stacey I TollnerGermany2026-09-28Feltz Printing Service PROPOSAL78Onyama Limba
1007Mayumi X SchemmerIndia2026-09-17Chapman, Ross E Esq UNQUALIFIED92Stephen Shaw
1008Octavia O RoysterItaly2026-10-07Morlong Associates UNQUALIFIED14Amy Elsner
1009Stacey K NickaRussia2026-09-20Chapman, Ross E Esq NEW15Ivan Magalhaes
1010Alejandro D FlosiAustralia2026-10-06Chemel, James L Cpa NEW7Stephen Shaw
1011Julie E SchemmerArgentina2026-09-20Rangoni Of Florence UNQUALIFIED49Onyama Limba
1012Darci V IturbideIndia2026-09-17Commercial Press RENEWAL85Anna Fali
1013Antonio K OstroskySpain2026-09-15Chanay, Jeffrey A Esq NEGOTIATION68Ivan Magalhaes
1014Clifford T VenereItaly2026-09-27Benton, John B Jr QUALIFIED88Xuxue Feng
1015Kaitlin L AlbaresAustralia2026-10-08Feltz Printing Service QUALIFIED0Anna Fali
1016Jennifer X IturbideGermany2026-09-28Benton, John B Jr QUALIFIED11Asiya Javayant
1017Darci M MorascaGermany2026-09-15Dorl, James J Esq NEGOTIATION94Ivan Magalhaes
1018Johnson K StensethJapan2026-10-13Printing Dimensions NEW12Amy Elsner
1019Tony Z RoysterGermany2026-10-04Commercial Press UNQUALIFIED5Stephen Shaw
1020Maria P GauchoJapan2026-09-22Truhlar And Truhlar Attys NEGOTIATION31Elwin Sharvill
1021Claire F AlbaresIndia2026-10-02Printing Dimensions NEGOTIATION8Xuxue Feng
1022Greenwood P StockhamUnited Kingdom2026-09-30Benton, John B Jr QUALIFIED7Bernardo Dominic
1023Ricardo H MacleadGermany2026-10-11Dorl, James J Esq UNQUALIFIED66Xuxue Feng
1024Aruna L FigeroaGermany2026-09-18Chapman, Ross E Esq QUALIFIED34Ivan Magalhaes
1025Emily H MorascaRussia2026-09-26Feiner Bros NEGOTIATION14Ivan Magalhaes
1026Maria X AlbaresAustralia2026-10-01Dorl, James J Esq PROPOSAL32Ivan Magalhaes
1027Adams U KolmetzRussia2026-10-08Rangoni Of Florence NEW81Elwin Sharvill
1028Salvatore T BriddickJapan2026-09-25Truhlar And Truhlar Attys NEW53Anna Fali
1029Aika O VocelkaBrazil2026-10-07Printing Dimensions NEW29Asiya Javayant
1030Johnson Q OldroydIndia2026-10-01Benton, John B Jr PROPOSAL56Asiya Javayant
1031Misaki M DarakjyCanada2026-09-18Printing Dimensions NEW0Anna Fali
1032Antonio G KuskoIndia2026-09-22Buckley Miller Wright NEW37Onyama Limba
1033Francesco G VocelkaIndia2026-09-17Dorl, James J Esq NEGOTIATION10Xuxue Feng
1034Cody V CampainGermany2026-10-12Truhlar And Truhlar Attys PROPOSAL24Asiya Javayant
1035Jefferson R DilliardRussia2026-09-25Chanay, Jeffrey A Esq NEW58Bernardo Dominic
1036Ivar K StensethArgentina2026-10-07Chanay, Jeffrey A Esq RENEWAL12Stephen Shaw
1037Aditya K RutaJapan2026-09-24King, Christopher A Esq UNQUALIFIED0Ivan Magalhaes
1038Tony M FollerBrazil2026-10-02Chemel, James L Cpa UNQUALIFIED60Ivan Magalhaes
1039Kaitlin R KuskoItaly2026-09-22Benton, John B Jr UNQUALIFIED90Stephen Shaw
1040Arvin W OldroydItaly2026-10-06Dorl, James J Esq RENEWAL93Asiya Javayant
1041Deepesh F StensethIndia2026-09-16Printing Dimensions NEGOTIATION0Bernardo Dominic
1042Julie D SaylorsArgentina2026-10-05King, Christopher A Esq RENEWAL96Ivan Magalhaes
1043Jeanfrancois A CampainGermany2026-09-20Dorl, James J Esq UNQUALIFIED68Onyama Limba
1044Ivar L BriddickBrazil2026-09-22Printing Dimensions UNQUALIFIED10Amy Elsner
1045Aika T CampainBrazil2026-10-05Benton, John B Jr QUALIFIED40Amy Elsner
1046Leja D GarufiCanada2026-10-07Benton, John B Jr PROPOSAL98Ivan Magalhaes
1047Salvatore U FollerIndia2026-09-19Truhlar And Truhlar Attys RENEWAL25Asiya Javayant
1048Claire X VenereIndia2026-09-27Chapman, Ross E Esq QUALIFIED44Anna Fali
1049Nicolas V OstroskyAustralia2026-10-12Rangoni Of Florence PROPOSAL59Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Misaki P OstroskyFranceIoni Bowcher UNQUALIFIED
James E NickaFranceElwin Sharvill NEGOTIATION
Julie H FerenczAustraliaXuxue Feng UNQUALIFIED
Deepesh F PerinAustraliaAnna Fali QUALIFIED
Jeanfrancois J WaycottArgentinaIoni Bowcher PROPOSAL
Alejandro N FerenczCanadaXuxue Feng NEW
Costa F OstroskyCanadaAnna Fali RENEWAL
Aika X VenereArgentinaElwin Sharvill NEW
Munro R BriddickIndiaXuxue Feng QUALIFIED
Izzy N CaldareraBrazilIvan Magalhaes PROPOSAL
Octavia Z WieserItalyAnna Fali QUALIFIED
Faith D SaylorsGermanyAsiya Javayant PROPOSAL
Tony F WaycottIndiaIvan Magalhaes RENEWAL
Maisha E InouyeJapanOnyama Limba RENEWAL
Jefferson I GauchoSpainIvan Magalhaes QUALIFIED
Rodrigues O NickaSpainStephen Shaw UNQUALIFIED
Deepesh Z InouyeGermanyOnyama Limba PROPOSAL
Stacey G NestleRussiaAsiya Javayant QUALIFIED
Chavez T NestleAustraliaStephen Shaw NEGOTIATION
Francesco Y TollnerFranceBernardo Dominic QUALIFIED
Jeanfrancois M MarrierBrazilAnna Fali QUALIFIED
Darci Q DilliardUnited KingdomBernardo Dominic PROPOSAL
Claire V ChuiCanadaIoni Bowcher PROPOSAL
Adams U DoeAustraliaElwin Sharvill RENEWAL
Rodrigues G MorascaGermanyIoni Bowcher UNQUALIFIED
Julie V OldroydBrazilStephen Shaw RENEWAL
Nicolas L MaletJapanAnna Fali RENEWAL
Mujtaba Y AmigonFranceAnna Fali PROPOSAL
Murillo R GarufiIndiaAsiya Javayant PROPOSAL
Greenwood D VocelkaJapanIvan Magalhaes NEW
Stacey C NickaItalyBernardo Dominic QUALIFIED
Wickens G DoeFranceBernardo Dominic PROPOSAL
Jones I KolmetzAustraliaIoni Bowcher NEW
Alejandro C RulapaughIndiaIoni Bowcher PROPOSAL
Emily M AmigonIndiaOnyama Limba QUALIFIED
Claire V NestleFranceAmy Elsner NEGOTIATION
Morrow O NestleUnited KingdomIoni Bowcher RENEWAL
Greenwood U FlosiCanadaAnna Fali QUALIFIED
Kaitlin N CaudyRussiaIoni Bowcher NEGOTIATION
Clifford U ShinkoRussiaIoni Bowcher NEGOTIATION
Kaitlin O GillianArgentinaElwin Sharvill QUALIFIED
Clifford S MaletSpainStephen Shaw RENEWAL
Faith L GlickAustraliaIoni Bowcher NEW
Francesco L FerenczAustraliaElwin Sharvill UNQUALIFIED
Aruna D PoquetteSpainAnna Fali NEGOTIATION
Aruna T GlickCanadaXuxue Feng NEW
Morrow R GarufiRussiaAnna Fali PROPOSAL
Jefferson F ButtItalyBernardo Dominic PROPOSAL
Murillo N GlickAustraliaIvan Magalhaes QUALIFIED
Juan M IturbideUnited KingdomElwin Sharvill PROPOSAL
Frozen Columns
Name
Salvatore E Tollner
Faith N Oldroyd
Aika Z Waycott
Greenwood Q Malet
Costa O Paprocki
Misaki Y Figeroa
Rodrigues W Ostrosky
Johnson I Bolognia
Leon B Kolmetz
Silvio I Dilliard
Clifford L Vocelka
Misaki Y Kusko
Antonio X Waycott
Jeanfrancois B Chui
Maisha T Caudy
Kadeem J Ferencz
Aditya N Venere
Deepesh T Stenseth
Murillo T Vocelka
Ricardo J Ruta
Francesco M Caudy
Aditya X Campain
Arvin V Caldarera
Tony G Morasca
Greenwood M Caldarera
Salvatore A Gaucho
Mayumi U Perin
Jones C Gaucho
Costa Q Bowley
Aditya A Saylors
Mayumi A Shinko
Maisha X Foller
Adams V Briddick
Chavez D Caudy
Juan C Stockham
Maisha G Saylors
Costa U Rim
Munro V Chui
Stacey J Nestle
Julie O Garufi
Chavez O Foller
Emily K Tollner
Jefferson Q Oldroyd
Kadeem E Briddick
Kaitlin B Glick
Johnson D Briddick
Mayumi B Slusarski
Adams A Figeroa
Aika B Iturbide
Adams U Tollner
IdCountryDate
1000Canada2026-10-14
1001Russia2026-10-03
1002Australia2026-09-17
1003Germany2026-09-16
1004Japan2026-10-06
1005Brazil2026-09-24
1006France2026-10-08
1007France2026-09-29
1008Germany2026-10-10
1009Japan2026-09-18
1010Russia2026-10-12
1011France2026-10-02
1012Brazil2026-09-15
1013Italy2026-09-28
1014Russia2026-10-13
1015France2026-09-16
1016Brazil2026-09-22
1017Canada2026-10-13
1018Japan2026-10-10
1019France2026-10-01
1020Japan2026-09-27
1021India2026-09-28
1022Russia2026-09-21
1023Brazil2026-09-22
1024Argentina2026-10-01
1025Japan2026-10-14
1026India2026-10-03
1027Spain2026-09-15
1028Canada2026-09-22
1029France2026-09-25
1030Australia2026-10-04
1031Germany2026-10-13
1032Argentina2026-09-24
1033France2026-10-01
1034India2026-10-13
1035United Kingdom2026-09-15
1036Spain2026-09-25
1037Russia2026-09-20
1038Japan2026-09-25
1039Russia2026-09-22
1040Brazil2026-09-23
1041Canada2026-09-22
1042Russia2026-09-18
1043France2026-10-12
1044Russia2026-09-28
1045Russia2026-10-14
1046Russia2026-10-08
1047Spain2026-09-21
1048Canada2026-09-18
1049Spain2026-09-20

On-Demand Data

NameIdCountryDate
Arvin B Campain1000India2026-10-02
Murillo H Malet1001United Kingdom2026-10-10
Emily K Doe1002Germany2026-10-09
Smith L Malet1003Japan2026-09-18
Aditya T Glick1004Italy2026-09-26
Salvatore E Whobrey1005United Kingdom2026-09-15
Jones M Paprocki1006Argentina2026-10-13
Emily G Darakjy1007Japan2026-09-25
Stacey S Whobrey1008Russia2026-10-11
Cody V Flosi1009Canada2026-10-09
Kadeem J Flosi1010Brazil2026-10-07
Smith K Campain1011United Kingdom2026-10-02
Ricardo C Albares1012Germany2026-09-23
Johnson V Venere1013Italy2026-09-28
Kadeem P Darakjy1014United Kingdom2026-09-30
Clifford T Inouye1015Russia2026-10-03
Jeanfrancois A Kusko1016United Kingdom2026-09-28
Deepesh Z Nicka1017Italy2026-10-06
Jeanfrancois L Nestle1018Germany2026-09-18
Kadeem D Doe1019United Kingdom2026-10-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki F SchemmerCanadaIvan Magalhaes NEGOTIATION
Isabel X DilliardBrazilBernardo Dominic PROPOSAL
David T IturbideJapanBernardo Dominic UNQUALIFIED
Cody T ButtCanadaXuxue Feng PROPOSAL
Claire H StockhamSpainAsiya Javayant PROPOSAL
Claire X KolmetzItalyOnyama Limba NEGOTIATION
Costa I RutaRussiaOnyama Limba NEW
Julie O SaylorsAustraliaAmy Elsner RENEWAL
Mayumi F WaycottAustraliaStephen Shaw NEW
James N BriddickAustraliaStephen Shaw NEGOTIATION
Chavez H CaldareraIndiaBernardo Dominic RENEWAL
Aditya G AlbaresAustraliaAnna Fali UNQUALIFIED
Morrow V RulapaughFranceAmy Elsner QUALIFIED
Murillo H NickaAustraliaAsiya Javayant UNQUALIFIED
Chavez P FlosiFranceIoni Bowcher NEW
David A VenereIndiaBernardo Dominic PROPOSAL
Emily O RutaRussiaAsiya Javayant RENEWAL
Isabel X RutaArgentinaXuxue Feng PROPOSAL
Claire I BologniaAustraliaAsiya Javayant RENEWAL
Izzy D SlusarskiBrazilStephen Shaw PROPOSAL
Aditya S ChuiUnited KingdomXuxue Feng NEW
Aruna G SaylorsUnited KingdomAnna Fali RENEWAL
Claire X StensethSpainAmy Elsner NEGOTIATION
Wickens S AmigonFranceAsiya Javayant NEW
Ivar I NickaFranceXuxue Feng NEGOTIATION
Maisha U MarrierCanadaAsiya Javayant NEGOTIATION
Aika Q MarrierBrazilIoni Bowcher NEGOTIATION
Johnson G MacleadArgentinaElwin Sharvill NEW
James J FerenczFranceIvan Magalhaes UNQUALIFIED
Silvio M FlosiBrazilElwin Sharvill NEW
Salvatore W StensethIndiaAmy Elsner RENEWAL
Kadeem R NickaArgentinaBernardo Dominic QUALIFIED
Arvin M ChuiCanadaStephen Shaw QUALIFIED
Adams I OldroydRussiaAmy Elsner NEGOTIATION
Aditya T GillianAustraliaIoni Bowcher PROPOSAL
Mujtaba A CaldareraFranceAsiya Javayant UNQUALIFIED
Greenwood Z BriddickJapanAmy Elsner NEGOTIATION
Darci Q CaldareraSpainAnna Fali UNQUALIFIED
Misaki Z GillianFranceAsiya Javayant RENEWAL
Kadeem V FerenczSpainStephen Shaw NEW

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