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
Ashley N VocelkaRussiaBernardo Dominic NEGOTIATION
Maria T KuskoIndiaStephen Shaw UNQUALIFIED
Wickens G KolmetzSpainIoni Bowcher QUALIFIED
Ivar Z CampainRussiaAnna Fali PROPOSAL
Nicolas P InouyeAustraliaAmy Elsner NEW
Maria I GauchoCanadaStephen Shaw NEGOTIATION
Mayumi Z ChuiRussiaAsiya Javayant UNQUALIFIED
David K MorascaArgentinaElwin Sharvill RENEWAL
Nicolas B MarrierSpainOnyama Limba NEGOTIATION
Nicolas R RimJapanAsiya Javayant NEGOTIATION
Kaitlin A PerinSpainAmy Elsner NEW
Deepesh T SlusarskiFranceOnyama Limba UNQUALIFIED
Costa E AlbaresJapanBernardo Dominic QUALIFIED
Salvatore D KolmetzUnited KingdomAsiya Javayant PROPOSAL
Rodrigues P SergiGermanyAmy Elsner RENEWAL
Murillo R StensethBrazilXuxue Feng NEGOTIATION
Misaki M SaylorsRussiaIoni Bowcher PROPOSAL
Adams F MaletFranceAsiya Javayant NEGOTIATION
Misaki E DoeBrazilOnyama Limba RENEWAL
Mayumi T CaudyJapanIoni Bowcher NEGOTIATION
Antonio P DilliardUnited KingdomIvan Magalhaes QUALIFIED
Maisha E ButtArgentinaIvan Magalhaes UNQUALIFIED
Tony M RoysterUnited KingdomAsiya Javayant PROPOSAL
Juan D InouyeSpainAsiya Javayant NEGOTIATION
Mujtaba O StensethGermanyXuxue Feng UNQUALIFIED
Wickens L RoysterGermanyIvan Magalhaes QUALIFIED
Aditya X ButtArgentinaAsiya Javayant QUALIFIED
Greenwood H FollerItalyAsiya Javayant NEGOTIATION
Mayumi B InouyeSpainElwin Sharvill PROPOSAL
Kaitlin K CaudyCanadaIvan Magalhaes NEGOTIATION
Greenwood R RimAustraliaOnyama Limba NEGOTIATION
Morrow D FlosiSpainStephen Shaw PROPOSAL
Antonio P ShinkoArgentinaElwin Sharvill QUALIFIED
Jeanfrancois Z OstroskyArgentinaIoni Bowcher QUALIFIED
Jennifer J PaprockiUnited KingdomAsiya Javayant NEGOTIATION
Jones D AlbaresAustraliaElwin Sharvill NEW
David L GauchoAustraliaStephen Shaw QUALIFIED
Antonio K SergiRussiaBernardo Dominic NEGOTIATION
Jones S CaudyIndiaAnna Fali UNQUALIFIED
Francesco X FigeroaBrazilAmy Elsner UNQUALIFIED
Silvio E DoeUnited KingdomAmy Elsner RENEWAL
Costa Y KuskoCanadaStephen Shaw QUALIFIED
Jefferson P DilliardJapanAmy Elsner UNQUALIFIED
Leon Y FollerSpainAnna Fali PROPOSAL
Murillo T VenereCanadaElwin Sharvill PROPOSAL
Arvin P MorascaItalyIoni Bowcher RENEWAL
Nicolas O VenereJapanAnna Fali RENEWAL
Octavia H KolmetzUnited KingdomElwin Sharvill QUALIFIED
Ricardo S FigeroaFranceStephen Shaw PROPOSAL
Deepesh K MacleadArgentinaAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Deepesh C WieserArgentinaOnyama Limba QUALIFIED
Leon A MarrierJapanOnyama Limba NEGOTIATION
Deepesh L RoysterGermanyAnna Fali RENEWAL
Aika Z WaycottAustraliaBernardo Dominic NEW
Leja T DarakjyGermanyIoni Bowcher RENEWAL
Ashley H PerinJapanAmy Elsner NEGOTIATION
Maria I MaletJapanAsiya Javayant QUALIFIED
Munro J KuskoCanadaAsiya Javayant UNQUALIFIED
Stacey O SaylorsJapanBernardo Dominic NEW
Murillo R RimBrazilOnyama Limba NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Julie F SlusarskiArgentina2026-10-04Chemel, James L Cpa NEW87Stephen Shaw
1001Ivar D VocelkaBrazil2026-10-09Benton, John B Jr RENEWAL4Xuxue Feng
1002Leja I IturbideFrance2026-10-09Chapman, Ross E Esq QUALIFIED56Xuxue Feng
1003Jefferson G MarrierJapan2026-09-23Dorl, James J Esq RENEWAL98Ivan Magalhaes
1004Leja D MaletBrazil2026-09-28Rangoni Of Florence RENEWAL38Onyama Limba
1005Antonio Q TollnerRussia2026-09-28Chanay, Jeffrey A Esq PROPOSAL61Onyama Limba
1006Salvatore L GauchoAustralia2026-09-21Truhlar And Truhlar Attys NEGOTIATION93Anna Fali
1007Maria C DilliardJapan2026-10-09Commercial Press NEGOTIATION68Bernardo Dominic
1008Misaki Y MorascaSpain2026-10-01Buckley Miller Wright RENEWAL31Ioni Bowcher
1009Leja F RoysterAustralia2026-09-29King, Christopher A Esq NEW59Stephen Shaw
1010Antonio L RulapaughBrazil2026-09-30Dorl, James J Esq NEGOTIATION2Ivan Magalhaes
1011Antonio F BowleyItaly2026-09-22Truhlar And Truhlar Attys RENEWAL88Amy Elsner
1012Emily A VocelkaIndia2026-09-18Truhlar And Truhlar Attys PROPOSAL86Asiya Javayant
1013Kaitlin O AmigonBrazil2026-10-11Commercial Press NEGOTIATION3Xuxue Feng
1014Munro Y RoysterUnited Kingdom2026-10-14Chemel, James L Cpa UNQUALIFIED6Stephen Shaw
1015Jennifer P DarakjyJapan2026-10-05Buckley Miller Wright RENEWAL34Onyama Limba
1016Misaki A PerinBrazil2026-09-19Feiner Bros NEGOTIATION12Asiya Javayant
1017Arvin Y MarrierFrance2026-09-22Feltz Printing Service PROPOSAL86Stephen Shaw
1018Clifford R ShinkoItaly2026-10-05Printing Dimensions RENEWAL27Xuxue Feng
1019Emily U GauchoSpain2026-09-24Dorl, James J Esq UNQUALIFIED2Ivan Magalhaes
1020Deepesh D GarufiFrance2026-09-22Chemel, James L Cpa UNQUALIFIED39Stephen Shaw
1021Maria C FollerItaly2026-10-01Feiner Bros PROPOSAL13Xuxue Feng
1022Leon V SaylorsCanada2026-10-01Printing Dimensions RENEWAL39Stephen Shaw
1023Arvin B MaletArgentina2026-09-25Chemel, James L Cpa UNQUALIFIED14Anna Fali
1024Tony K KuskoCanada2026-10-07Feltz Printing Service QUALIFIED56Onyama Limba
1025Antonio V StockhamIndia2026-10-02Feiner Bros PROPOSAL70Anna Fali
1026Izzy A NickaRussia2026-10-04Rousseaux, Michael Esq NEW92Xuxue Feng
1027Faith H RutaGermany2026-10-10Chapman, Ross E Esq NEGOTIATION15Ioni Bowcher
1028Salvatore K IturbideArgentina2026-10-15Rangoni Of Florence PROPOSAL74Ivan Magalhaes
1029Jeanfrancois B FlosiItaly2026-09-18Commercial Press NEGOTIATION67Xuxue Feng
1030Claire O OstroskyCanada2026-09-19Chanay, Jeffrey A Esq NEW20Xuxue Feng
1031Juan E CaudyJapan2026-09-21Chemel, James L Cpa RENEWAL57Xuxue Feng
1032David K OstroskyItaly2026-09-24Chanay, Jeffrey A Esq PROPOSAL49Xuxue Feng
1033Greenwood F AmigonUnited Kingdom2026-10-09Feltz Printing Service NEGOTIATION21Elwin Sharvill
1034Morrow T VenereArgentina2026-10-12Chapman, Ross E Esq NEW25Xuxue Feng
1035Aditya T DilliardSpain2026-09-24Buckley Miller Wright NEW22Xuxue Feng
1036Cody H DoeGermany2026-09-25Chapman, Ross E Esq NEW61Ivan Magalhaes
1037Mayumi L NickaRussia2026-10-12Truhlar And Truhlar Attys RENEWAL72Ioni Bowcher
1038Salvatore C DarakjyAustralia2026-10-07Commercial Press PROPOSAL19Xuxue Feng
1039Ashley N ChuiJapan2026-09-22Rangoni Of Florence PROPOSAL39Onyama Limba
1040Clifford I FlosiIndia2026-10-05Truhlar And Truhlar Attys NEW39Asiya Javayant
1041Juan I DarakjyCanada2026-09-25Chapman, Ross E Esq NEGOTIATION10Ioni Bowcher
1042James S FigeroaGermany2026-10-08Truhlar And Truhlar Attys NEGOTIATION57Xuxue Feng
1043Octavia Q CampainUnited Kingdom2026-10-13Buckley Miller Wright QUALIFIED56Stephen Shaw
1044Arvin R MaletSpain2026-09-22Feiner Bros PROPOSAL76Ioni Bowcher
1045Izzy I GillianJapan2026-09-23Morlong Associates QUALIFIED39Asiya Javayant
1046Kadeem R NestleItaly2026-10-16Dorl, James J Esq NEW58Ioni Bowcher
1047Ricardo V GlickItaly2026-09-21Feiner Bros PROPOSAL65Bernardo Dominic
1048Izzy V MaletJapan2026-09-30Rangoni Of Florence NEW23Anna Fali
1049Munro V ChuiGermany2026-09-21Truhlar And Truhlar Attys NEGOTIATION56Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Salvatore H AlbaresItalyBernardo Dominic UNQUALIFIED
Murillo T VenereJapanBernardo Dominic NEW
Aditya A RoysterBrazilOnyama Limba QUALIFIED
Aika V MaletRussiaAmy Elsner UNQUALIFIED
Kadeem B RoysterItalyXuxue Feng NEW
Stacey F IturbideRussiaStephen Shaw NEW
Aika O RulapaughCanadaIoni Bowcher QUALIFIED
Morrow S MaletItalyBernardo Dominic RENEWAL
Maria E NestleArgentinaAsiya Javayant QUALIFIED
Mujtaba S MarrierIndiaXuxue Feng PROPOSAL
Julie D SchemmerFranceAsiya Javayant NEGOTIATION
Arvin E CaldareraFranceIoni Bowcher QUALIFIED
Kadeem H TollnerGermanyOnyama Limba PROPOSAL
Munro Q KolmetzItalyXuxue Feng PROPOSAL
Munro Z RoysterBrazilOnyama Limba NEW
Misaki E AlbaresAustraliaStephen Shaw QUALIFIED
Kaitlin Z NestleSpainAmy Elsner PROPOSAL
Mujtaba U MacleadIndiaAsiya Javayant RENEWAL
Aditya F ButtIndiaIoni Bowcher NEW
Jennifer R MarrierItalyBernardo Dominic UNQUALIFIED
Antonio A PoquetteJapanStephen Shaw NEGOTIATION
Silvio Z OstroskyCanadaBernardo Dominic UNQUALIFIED
Adams Z DarakjyArgentinaStephen Shaw PROPOSAL
Morrow A BologniaSpainIvan Magalhaes NEW
Antonio K MorascaArgentinaIvan Magalhaes RENEWAL
Wickens J AlbaresSpainAmy Elsner RENEWAL
Aika X SergiJapanBernardo Dominic NEW
Murillo M IturbideJapanElwin Sharvill UNQUALIFIED
Cody R CampainGermanyAsiya Javayant PROPOSAL
Greenwood V FlosiAustraliaElwin Sharvill QUALIFIED
Octavia T SchemmerIndiaXuxue Feng QUALIFIED
Antonio P InouyeFranceXuxue Feng UNQUALIFIED
Wickens N TollnerBrazilIoni Bowcher RENEWAL
Emily R RoysterItalyIoni Bowcher NEGOTIATION
Izzy G GauchoJapanAmy Elsner UNQUALIFIED
Octavia I StockhamGermanyAsiya Javayant UNQUALIFIED
Sinclair E StensethSpainBernardo Dominic RENEWAL
Chavez D SaylorsUnited KingdomAmy Elsner RENEWAL
Aika Y CaldareraArgentinaIvan Magalhaes QUALIFIED
Julie L OldroydIndiaElwin Sharvill RENEWAL
Johnson U FollerIndiaAnna Fali PROPOSAL
Claire X GillianIndiaBernardo Dominic PROPOSAL
Claire T BologniaCanadaOnyama Limba RENEWAL
Mujtaba F OldroydUnited KingdomStephen Shaw UNQUALIFIED
Rodrigues U NestleItalyAmy Elsner RENEWAL
Clifford A GarufiIndiaIoni Bowcher QUALIFIED
Alejandro T GlickGermanyXuxue Feng RENEWAL
Kaitlin V ButtRussiaAmy Elsner UNQUALIFIED
Darci H AmigonArgentinaElwin Sharvill NEW
Maria J PoquetteGermanyIoni Bowcher RENEWAL
Frozen Columns
Name
Jones R Rim
Johnson B Albares
Isabel I Garufi
Julie M Shinko
Ashley I Chui
Julie E Gillian
Silvio U Ruta
Kadeem R Kusko
Chavez Q Gaucho
Izzy J Marrier
Maisha R Bowley
Leon B Darakjy
Maisha J Stenseth
Claire B Dilliard
Darci Y Ruta
Ashley R Stockham
Murillo V Gaucho
Kaitlin L Stockham
Maria A Foller
Sinclair U Tollner
Munro A Malet
Aika U Ostrosky
Morrow J Dilliard
Wickens U Caldarera
Tony P Amigon
Leja S Nestle
Chavez I Stockham
Isabel V Venere
Aditya A Gillian
Greenwood X Kusko
Chavez W Poquette
Aditya O Sergi
Octavia B Maclead
Faith J Glick
Darci U Ruta
Emily J Albares
Claire L Rim
Aditya S Kolmetz
Cody I Rim
Wickens S Perin
Aika I Doe
Mujtaba B Nestle
Murillo C Stenseth
Stacey J Tollner
Ivar F Butt
Johnson E Venere
Jennifer V Kolmetz
Greenwood O Whobrey
Jones J Rulapaugh
Jennifer D Albares
IdCountryDate
1000Russia2026-10-01
1001India2026-09-23
1002United Kingdom2026-09-18
1003Russia2026-09-18
1004Argentina2026-09-29
1005Russia2026-09-22
1006Japan2026-10-12
1007Italy2026-09-18
1008India2026-10-08
1009Germany2026-10-09
1010France2026-09-24
1011Argentina2026-09-26
1012Brazil2026-10-11
1013India2026-10-10
1014Australia2026-10-11
1015India2026-10-16
1016Australia2026-10-05
1017France2026-10-15
1018Spain2026-10-12
1019Argentina2026-09-21
1020Canada2026-10-06
1021United Kingdom2026-09-23
1022India2026-10-15
1023Brazil2026-10-14
1024Japan2026-09-28
1025Spain2026-09-24
1026Canada2026-09-26
1027France2026-09-29
1028Spain2026-10-06
1029Japan2026-09-19
1030Argentina2026-09-19
1031Australia2026-10-09
1032Australia2026-10-09
1033Russia2026-10-15
1034Argentina2026-10-13
1035Argentina2026-09-23
1036Canada2026-10-13
1037United Kingdom2026-09-21
1038India2026-09-24
1039India2026-10-12
1040Australia2026-10-02
1041Australia2026-10-08
1042Canada2026-09-18
1043Japan2026-10-16
1044United Kingdom2026-10-15
1045Russia2026-09-26
1046Russia2026-10-02
1047Australia2026-09-25
1048Brazil2026-10-03
1049India2026-09-21

On-Demand Data

NameIdCountryDate
Cody Q Briddick1000Italy2026-10-11
Rodrigues E Marrier1001India2026-10-02
Deepesh E Vocelka1002Brazil2026-09-29
Kaitlin W Gaucho1003Germany2026-10-06
Rodrigues O Dilliard1004Italy2026-09-25
Faith E Oldroyd1005Germany2026-09-26
Morrow L Foller1006Canada2026-09-27
Wickens F Saylors1007Australia2026-09-27
Maria R Flosi1008Canada2026-09-24
Jones W Campain1009Japan2026-09-21
Kadeem K Rulapaugh1010Brazil2026-09-18
Leja I Nicka1011Russia2026-09-20
Izzy R Wieser1012France2026-10-01
Jennifer Y Darakjy1013Brazil2026-10-14
Alejandro F Schemmer1014Argentina2026-10-10
Nicolas Z Shinko1015Australia2026-10-12
Darci K Stockham1016Japan2026-09-30
Munro W Marrier1017Germany2026-09-28
Murillo H Nestle1018Russia2026-09-27
Costa P Shinko1019Italy2026-09-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones X SlusarskiCanadaXuxue Feng RENEWAL
Claire X GarufiSpainIvan Magalhaes NEGOTIATION
Greenwood U BriddickItalyOnyama Limba NEGOTIATION
Mayumi S SaylorsFranceElwin Sharvill RENEWAL
Clifford Y MaletItalyIvan Magalhaes QUALIFIED
Wickens F DoeAustraliaElwin Sharvill NEGOTIATION
Leon A KolmetzArgentinaBernardo Dominic PROPOSAL
Maria P WaycottRussiaBernardo Dominic PROPOSAL
Isabel V FollerRussiaAnna Fali NEGOTIATION
Smith B CaudyRussiaStephen Shaw RENEWAL
Jones P VocelkaCanadaIoni Bowcher RENEWAL
Mayumi E VocelkaAustraliaStephen Shaw RENEWAL
Adams J AmigonSpainIvan Magalhaes PROPOSAL
Juan B OstroskyBrazilElwin Sharvill PROPOSAL
Wickens W DarakjyArgentinaAsiya Javayant RENEWAL
Stacey R RoysterArgentinaXuxue Feng NEW
Jones X FlosiSpainIvan Magalhaes PROPOSAL
Faith G PoquetteGermanyOnyama Limba QUALIFIED
Greenwood R GlickItalyIvan Magalhaes NEGOTIATION
Ashley B ButtFranceElwin Sharvill NEW
Ricardo F PerinFranceAsiya Javayant RENEWAL
Darci K StensethArgentinaIvan Magalhaes QUALIFIED
Octavia V CaldareraCanadaAsiya Javayant UNQUALIFIED
Rodrigues U NestleIndiaIoni Bowcher NEGOTIATION
Ricardo F SlusarskiJapanAmy Elsner NEGOTIATION
Octavia S BowleyArgentinaBernardo Dominic NEW
Leja O DarakjyBrazilOnyama Limba NEGOTIATION
Aditya D FollerGermanyOnyama Limba RENEWAL
Leon P InouyeGermanyIoni Bowcher NEW
Antonio N PerinGermanyBernardo Dominic QUALIFIED
Johnson G DarakjyGermanyBernardo Dominic UNQUALIFIED
Rodrigues I CampainAustraliaAmy Elsner NEW
Tony X MaletGermanyBernardo Dominic QUALIFIED
Leon O SlusarskiIndiaAsiya Javayant UNQUALIFIED
Sinclair Y FollerGermanyElwin Sharvill NEGOTIATION
Maria O VenereBrazilElwin Sharvill QUALIFIED
Salvatore P VenereArgentinaAnna Fali NEGOTIATION
Johnson C NickaCanadaIoni Bowcher RENEWAL
Murillo Y CampainGermanyXuxue Feng RENEWAL
Maria F CaldareraRussiaAmy Elsner QUALIFIED

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