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
Cody J RoysterFranceIvan Magalhaes QUALIFIED
David W FollerSpainOnyama Limba RENEWAL
Wickens O RulapaughAustraliaIvan Magalhaes UNQUALIFIED
Alejandro P VocelkaCanadaStephen Shaw NEW
Munro O VocelkaFranceElwin Sharvill QUALIFIED
Clifford S AlbaresRussiaAnna Fali UNQUALIFIED
Tony Z FerenczSpainBernardo Dominic UNQUALIFIED
David G GillianFranceAmy Elsner PROPOSAL
Munro E SaylorsFranceIvan Magalhaes NEGOTIATION
Leja T CaldareraRussiaAnna Fali RENEWAL
Chavez Z BriddickAustraliaAnna Fali PROPOSAL
Ashley T OstroskyGermanyStephen Shaw QUALIFIED
Izzy H FollerFranceXuxue Feng NEGOTIATION
Jennifer J MaletRussiaAmy Elsner UNQUALIFIED
Mujtaba K RoysterIndiaXuxue Feng NEW
Darci M WaycottCanadaAnna Fali QUALIFIED
Adams D DarakjyFranceOnyama Limba PROPOSAL
Morrow M ShinkoSpainAmy Elsner NEGOTIATION
James O MorascaItalyAsiya Javayant NEW
Jefferson U VocelkaGermanyAsiya Javayant PROPOSAL
Jones L FlosiUnited KingdomAsiya Javayant PROPOSAL
Wickens X MorascaGermanyIoni Bowcher UNQUALIFIED
Chavez K KolmetzAustraliaAsiya Javayant UNQUALIFIED
Izzy Q VocelkaRussiaIoni Bowcher UNQUALIFIED
Jones X SchemmerRussiaIvan Magalhaes RENEWAL
Leon Z BowleyUnited KingdomIvan Magalhaes NEGOTIATION
Octavia G KolmetzUnited KingdomXuxue Feng NEW
Jennifer X DarakjySpainAmy Elsner QUALIFIED
Johnson O GillianRussiaAsiya Javayant NEW
Jefferson T RutaItalyIoni Bowcher RENEWAL
Aika N ButtIndiaStephen Shaw RENEWAL
Antonio U IturbideFranceAnna Fali UNQUALIFIED
Isabel G InouyeArgentinaOnyama Limba UNQUALIFIED
Kadeem T WhobreyFranceIvan Magalhaes UNQUALIFIED
Adams I SchemmerCanadaIoni Bowcher RENEWAL
Antonio G VenereFranceStephen Shaw NEW
Morrow G SchemmerFranceAmy Elsner RENEWAL
Mayumi T RulapaughItalyOnyama Limba NEW
Nicolas Z CaudyCanadaElwin Sharvill PROPOSAL
Wickens H NestleIndiaElwin Sharvill UNQUALIFIED
Octavia Q MaletCanadaIvan Magalhaes PROPOSAL
Ricardo Y WieserJapanBernardo Dominic RENEWAL
Francesco K AlbaresFranceAsiya Javayant UNQUALIFIED
Aika A AlbaresBrazilAsiya Javayant PROPOSAL
Smith B DoeArgentinaBernardo Dominic RENEWAL
Juan N SergiJapanBernardo Dominic NEW
Aditya F GauchoItalyBernardo Dominic NEW
Deepesh I MaletUnited KingdomAmy Elsner NEGOTIATION
Kadeem T FollerRussiaXuxue Feng PROPOSAL
Jefferson K BowleyIndiaXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Mujtaba H NickaArgentinaOnyama Limba QUALIFIED
Cody Y RutaCanadaAmy Elsner PROPOSAL
Johnson T FlosiAustraliaIvan Magalhaes RENEWAL
Alejandro A AlbaresRussiaAnna Fali PROPOSAL
Rodrigues N FlosiIndiaIvan Magalhaes PROPOSAL
Adams J SergiGermanyBernardo Dominic NEW
Misaki P NickaArgentinaElwin Sharvill RENEWAL
Mujtaba Q SaylorsJapanAmy Elsner NEW
Aditya H BologniaGermanyAsiya Javayant UNQUALIFIED
Jones I DarakjyGermanyXuxue Feng QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Cody J RutaUnited Kingdom2026-10-15Truhlar And Truhlar Attys PROPOSAL39Onyama Limba
1001James I RutaBrazil2026-10-11Dorl, James J Esq RENEWAL69Onyama Limba
1002Silvio W RulapaughItaly2026-10-12Rousseaux, Michael Esq UNQUALIFIED47Ivan Magalhaes
1003Aditya R KuskoIndia2026-10-02Chemel, James L Cpa PROPOSAL94Bernardo Dominic
1004Smith P BologniaFrance2026-10-24Printing Dimensions NEW56Onyama Limba
1005Ashley M OstroskyBrazil2026-10-09Dorl, James J Esq RENEWAL52Xuxue Feng
1006Darci N DoeSpain2026-10-03Benton, John B Jr UNQUALIFIED49Xuxue Feng
1007Faith U WhobreyIndia2026-10-29Benton, John B Jr QUALIFIED42Elwin Sharvill
1008Jeanfrancois N DarakjyUnited Kingdom2026-10-21Chemel, James L Cpa QUALIFIED99Ivan Magalhaes
1009Kaitlin C InouyeAustralia2026-10-20Truhlar And Truhlar Attys UNQUALIFIED81Ivan Magalhaes
1010Ricardo W CampainSpain2026-10-06Rousseaux, Michael Esq NEGOTIATION61Anna Fali
1011Adams M ShinkoIndia2026-10-15Morlong Associates QUALIFIED86Bernardo Dominic
1012Claire T MaletItaly2026-10-02Benton, John B Jr NEW48Asiya Javayant
1013Izzy V BologniaAustralia2026-10-09Commercial Press NEW92Elwin Sharvill
1014Greenwood T FerenczUnited Kingdom2026-10-04Chanay, Jeffrey A Esq PROPOSAL61Amy Elsner
1015Rodrigues D RimAustralia2026-10-20Feltz Printing Service NEW91Ioni Bowcher
1016Faith Z ChuiSpain2026-10-12Chanay, Jeffrey A Esq NEW62Elwin Sharvill
1017Maisha D GillianRussia2026-10-22Chemel, James L Cpa NEW73Amy Elsner
1018Maria T MaletJapan2026-10-28Dorl, James J Esq RENEWAL50Onyama Limba
1019Francesco Z NestleUnited Kingdom2026-10-01Morlong Associates NEW23Bernardo Dominic
1020Alejandro T CaldareraFrance2026-10-23King, Christopher A Esq UNQUALIFIED46Ivan Magalhaes
1021Nicolas V PoquetteJapan2026-10-22Chemel, James L Cpa QUALIFIED30Ioni Bowcher
1022Chavez O NestleRussia2026-10-05Morlong Associates RENEWAL39Elwin Sharvill
1023Stacey Y ShinkoArgentina2026-10-23Rousseaux, Michael Esq PROPOSAL60Elwin Sharvill
1024Mayumi J FigeroaSpain2026-10-14Dorl, James J Esq UNQUALIFIED72Ivan Magalhaes
1025Smith Z GauchoFrance2026-10-28Benton, John B Jr NEW95Ivan Magalhaes
1026Stacey H BowleyFrance2026-10-09Chanay, Jeffrey A Esq RENEWAL26Xuxue Feng
1027Leon U ButtBrazil2026-10-15Benton, John B Jr RENEWAL22Ivan Magalhaes
1028Maria Q VocelkaSpain2026-10-08Rangoni Of Florence QUALIFIED33Onyama Limba
1029Leon N ChuiGermany2026-10-12Chapman, Ross E Esq NEW6Asiya Javayant
1030James Y AmigonArgentina2026-10-08Rangoni Of Florence NEGOTIATION56Anna Fali
1031Isabel J WhobreyRussia2026-10-13Benton, John B Jr RENEWAL34Ioni Bowcher
1032Jefferson G NestleRussia2026-10-13Chanay, Jeffrey A Esq UNQUALIFIED71Elwin Sharvill
1033Adams O ChuiSpain2026-10-29Chanay, Jeffrey A Esq RENEWAL45Stephen Shaw
1034Juan J NestleIndia2026-10-24Rangoni Of Florence NEW57Stephen Shaw
1035Ivar E TollnerAustralia2026-10-18Chapman, Ross E Esq NEW51Onyama Limba
1036Morrow U GarufiItaly2026-10-03Chanay, Jeffrey A Esq RENEWAL64Ioni Bowcher
1037Nicolas X AlbaresFrance2026-09-30Feltz Printing Service PROPOSAL24Anna Fali
1038Chavez D FerenczGermany2026-10-21King, Christopher A Esq QUALIFIED14Stephen Shaw
1039Cody U FerenczIndia2026-10-20Commercial Press PROPOSAL87Amy Elsner
1040Murillo M SchemmerCanada2026-10-07Buckley Miller Wright NEW5Onyama Limba
1041Jennifer A AmigonFrance2026-10-24Rangoni Of Florence UNQUALIFIED12Bernardo Dominic
1042Claire C GarufiIndia2026-10-09Buckley Miller Wright PROPOSAL14Onyama Limba
1043Salvatore O GillianCanada2026-10-03Printing Dimensions NEGOTIATION0Onyama Limba
1044Kadeem C OstroskyItaly2026-10-28Chapman, Ross E Esq UNQUALIFIED33Elwin Sharvill
1045Alejandro Y DilliardGermany2026-10-04Printing Dimensions QUALIFIED51Anna Fali
1046Rodrigues W BriddickCanada2026-10-20Truhlar And Truhlar Attys NEW70Stephen Shaw
1047Cody Q PaprockiBrazil2026-10-22Dorl, James J Esq PROPOSAL63Anna Fali
1048Nicolas H GlickUnited Kingdom2026-10-26Feiner Bros QUALIFIED40Ivan Magalhaes
1049Nicolas E VocelkaArgentina2026-10-10Truhlar And Truhlar Attys NEW47Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Izzy U StockhamCanadaOnyama Limba NEW
Francesco U PerinBrazilOnyama Limba RENEWAL
Claire D RutaUnited KingdomIvan Magalhaes PROPOSAL
Claire C MarrierCanadaBernardo Dominic UNQUALIFIED
Alejandro G RimFranceStephen Shaw QUALIFIED
Juan Y NickaItalyElwin Sharvill QUALIFIED
Munro C FollerSpainAsiya Javayant NEGOTIATION
Faith Z StensethSpainElwin Sharvill NEGOTIATION
James S WhobreyJapanElwin Sharvill RENEWAL
Jeanfrancois J DoeIndiaIvan Magalhaes QUALIFIED
Nicolas E ShinkoItalyStephen Shaw QUALIFIED
Greenwood I GlickItalyOnyama Limba PROPOSAL
Arvin G CaudyBrazilAmy Elsner RENEWAL
Smith Q SchemmerIndiaAnna Fali NEGOTIATION
Antonio F DilliardJapanAmy Elsner UNQUALIFIED
Adams I WhobreyFranceStephen Shaw PROPOSAL
Arvin I SaylorsUnited KingdomElwin Sharvill QUALIFIED
Aika H PerinFranceIoni Bowcher NEGOTIATION
Munro P MaletUnited KingdomStephen Shaw UNQUALIFIED
Emily W GlickSpainAsiya Javayant PROPOSAL
Johnson A SergiJapanAmy Elsner UNQUALIFIED
Kadeem N StockhamUnited KingdomAsiya Javayant NEW
Octavia J ChuiArgentinaStephen Shaw NEGOTIATION
Jeanfrancois V RutaRussiaOnyama Limba RENEWAL
Stacey H WieserFranceAsiya Javayant UNQUALIFIED
Clifford W WaycottItalyStephen Shaw RENEWAL
Izzy X NestleGermanyBernardo Dominic UNQUALIFIED
Antonio U FlosiSpainBernardo Dominic QUALIFIED
Rodrigues Z RutaCanadaIvan Magalhaes NEGOTIATION
Claire F AmigonSpainAmy Elsner PROPOSAL
Johnson S BriddickSpainAnna Fali NEGOTIATION
Salvatore X SchemmerRussiaAnna Fali NEW
Clifford B RoysterBrazilAmy Elsner NEGOTIATION
Greenwood L OldroydItalyIvan Magalhaes QUALIFIED
Stacey Y PoquetteArgentinaIoni Bowcher RENEWAL
Leja X NickaFranceOnyama Limba NEGOTIATION
Kaitlin Q StockhamIndiaBernardo Dominic PROPOSAL
Antonio L CaudyItalyIvan Magalhaes RENEWAL
Izzy P GlickFranceIvan Magalhaes PROPOSAL
Maria A PerinAustraliaAmy Elsner QUALIFIED
Aditya Q DoeBrazilOnyama Limba QUALIFIED
Smith U FollerSpainAmy Elsner RENEWAL
Leja J VenereUnited KingdomIoni Bowcher NEW
Isabel D FerenczAustraliaAmy Elsner PROPOSAL
Murillo Q FerenczJapanBernardo Dominic UNQUALIFIED
Jennifer F FlosiItalyIvan Magalhaes PROPOSAL
Claire J PaprockiSpainAsiya Javayant QUALIFIED
Johnson L DarakjyRussiaAnna Fali UNQUALIFIED
Salvatore M GarufiRussiaElwin Sharvill UNQUALIFIED
David W BowleyItalyIoni Bowcher NEGOTIATION
Frozen Columns
Name
Juan K Bolognia
Ivar L Iturbide
Mujtaba V Tollner
Ricardo R Darakjy
Claire X Stenseth
Chavez R Chui
Mujtaba M Rim
Tony A Wieser
Faith K Sergi
Adams W Perin
Mayumi U Campain
Maria K Flosi
Aditya V Vocelka
Darci W Venere
Claire K Saylors
Salvatore O Chui
Morrow G Morasca
Juan Q Sergi
Chavez G Ferencz
Leon M Royster
Ivar A Sergi
Adams A Campain
Cody N Figeroa
Ashley P Kusko
Jones C Butt
Aditya L Marrier
Mayumi Y Campain
Kaitlin B Dilliard
Johnson Q Flosi
David A Marrier
Antonio F Briddick
Ricardo V Royster
Murillo P Rulapaugh
Izzy G Darakjy
Julie T Garufi
Juan Q Chui
Rodrigues A Marrier
Salvatore Z Ostrosky
Maisha A Ruta
Leon B Shinko
Adams H Figeroa
Izzy H Bolognia
Darci G Perin
Aika N Whobrey
Clifford N Stockham
Silvio V Foller
Jefferson N Caudy
Cody N Ruta
Aika D Kolmetz
Murillo J Amigon
IdCountryDate
1000Argentina2026-10-24
1001France2026-10-20
1002Germany2026-10-01
1003Brazil2026-10-12
1004Brazil2026-10-27
1005Australia2026-10-29
1006Spain2026-10-19
1007Spain2026-10-18
1008Japan2026-10-18
1009Russia2026-10-04
1010United Kingdom2026-10-17
1011Italy2026-10-06
1012Australia2026-10-04
1013Russia2026-10-28
1014Japan2026-10-17
1015Italy2026-10-20
1016Canada2026-10-03
1017Germany2026-10-17
1018Germany2026-10-01
1019Russia2026-10-18
1020Australia2026-10-24
1021Spain2026-10-12
1022France2026-10-12
1023Italy2026-09-30
1024Brazil2026-10-19
1025Russia2026-10-24
1026Germany2026-10-16
1027Japan2026-10-22
1028United Kingdom2026-10-20
1029Australia2026-10-05
1030United Kingdom2026-10-25
1031Canada2026-10-12
1032Spain2026-10-19
1033Italy2026-10-06
1034Argentina2026-10-18
1035Germany2026-10-19
1036Argentina2026-10-26
1037Spain2026-10-24
1038Canada2026-10-22
1039Australia2026-10-05
1040Canada2026-10-18
1041India2026-10-11
1042Italy2026-10-24
1043Russia2026-10-16
1044France2026-10-07
1045Germany2026-10-22
1046United Kingdom2026-10-20
1047India2026-10-10
1048Brazil2026-10-23
1049India2026-10-26

On-Demand Data

NameIdCountryDate
Juan L Waycott1000Argentina2026-10-18
Jennifer A Venere1001United Kingdom2026-10-18
James R Foller1002United Kingdom2026-10-14
Stacey S Butt1003Australia2026-10-27
Ivar U Schemmer1004India2026-10-01
Murillo Q Malet1005France2026-10-27
Octavia P Royster1006Germany2026-10-03
Emily I Waycott1007Germany2026-10-12
Jennifer H Campain1008Germany2026-10-06
Salvatore C Slusarski1009Canada2026-10-11
Salvatore M Wieser1010Spain2026-10-08
Morrow U Figeroa1011Brazil2026-10-22
Octavia K Kusko1012Japan2026-09-30
Aruna X Bolognia1013United Kingdom2026-10-04
Kadeem V Maclead1014Brazil2026-10-07
Francesco B Bolognia1015Italy2026-10-22
Kaitlin V Marrier1016France2026-10-07
Munro Y Ruta1017Spain2026-10-26
Chavez K Doe1018Canada2026-10-03
Ashley K Poquette1019India2026-10-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore T CampainJapanAsiya Javayant NEGOTIATION
Wickens L OstroskyBrazilElwin Sharvill NEW
Rodrigues X MorascaJapanBernardo Dominic NEW
Leon Q VenereRussiaXuxue Feng UNQUALIFIED
Izzy T FigeroaUnited KingdomAnna Fali PROPOSAL
Deepesh S BriddickRussiaIoni Bowcher PROPOSAL
Ashley P FigeroaSpainAnna Fali UNQUALIFIED
David N StensethItalyIoni Bowcher RENEWAL
Tony V IturbideIndiaIoni Bowcher PROPOSAL
Aruna S OldroydItalyIvan Magalhaes QUALIFIED
Misaki S CampainBrazilIoni Bowcher PROPOSAL
Maisha O MarrierAustraliaAmy Elsner QUALIFIED
Wickens A DoeGermanyIvan Magalhaes UNQUALIFIED
Emily V FlosiItalyXuxue Feng RENEWAL
Antonio T AlbaresAustraliaAsiya Javayant NEW
Chavez N CaudyAustraliaAsiya Javayant NEW
Maria A MaletArgentinaAnna Fali NEGOTIATION
Antonio Q GlickItalyXuxue Feng RENEWAL
Jennifer N DarakjyRussiaElwin Sharvill NEGOTIATION
Mayumi B FollerIndiaAsiya Javayant QUALIFIED
Costa N InouyeJapanIvan Magalhaes QUALIFIED
Isabel C NestleUnited KingdomOnyama Limba PROPOSAL
Adams H StensethUnited KingdomStephen Shaw NEW
Greenwood K MaletArgentinaElwin Sharvill UNQUALIFIED
Kaitlin P MorascaAustraliaOnyama Limba NEW
Silvio Z StockhamBrazilStephen Shaw PROPOSAL
Salvatore R PerinIndiaOnyama Limba QUALIFIED
Costa E SchemmerRussiaOnyama Limba NEW
Leon I CaudyItalyStephen Shaw NEGOTIATION
Wickens B BowleyAustraliaElwin Sharvill UNQUALIFIED
Jeanfrancois F VenereItalyIvan Magalhaes UNQUALIFIED
Nicolas K OstroskyAustraliaBernardo Dominic NEGOTIATION
Jennifer G BowleySpainAmy Elsner QUALIFIED
Smith T DilliardSpainIvan Magalhaes RENEWAL
Aika Z AmigonArgentinaElwin Sharvill RENEWAL
Ashley U NestleIndiaAnna Fali RENEWAL
Smith Z NestleGermanyElwin Sharvill QUALIFIED
Johnson C DilliardIndiaXuxue Feng NEGOTIATION
Rodrigues G DoeAustraliaXuxue Feng NEW
Aruna J PaprockiCanadaElwin Sharvill 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>