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
Sinclair Q SergiGermanyBernardo Dominic PROPOSAL
Arvin Z SlusarskiRussiaXuxue Feng NEGOTIATION
Octavia T WhobreyArgentinaStephen Shaw QUALIFIED
Jeanfrancois J BologniaIndiaStephen Shaw QUALIFIED
Munro Z MaletGermanyOnyama Limba QUALIFIED
Ashley B AlbaresGermanyAnna Fali QUALIFIED
Kaitlin E StockhamFranceBernardo Dominic RENEWAL
Stacey Y SergiAustraliaElwin Sharvill QUALIFIED
Faith N KolmetzItalyBernardo Dominic NEGOTIATION
Antonio F OstroskyUnited KingdomAmy Elsner NEW
Alejandro S NickaIndiaIoni Bowcher NEGOTIATION
Maisha M BowleyItalyElwin Sharvill PROPOSAL
Deepesh S KuskoRussiaIoni Bowcher QUALIFIED
Chavez I StensethArgentinaIoni Bowcher UNQUALIFIED
Francesco P PoquetteUnited KingdomOnyama Limba UNQUALIFIED
Ivar I PerinItalyBernardo Dominic UNQUALIFIED
Chavez A NickaBrazilAmy Elsner PROPOSAL
Maria X AlbaresSpainXuxue Feng PROPOSAL
Ashley S MaletIndiaStephen Shaw PROPOSAL
Munro B SchemmerBrazilAmy Elsner PROPOSAL
Morrow T ChuiSpainAnna Fali UNQUALIFIED
Wickens A FollerCanadaAsiya Javayant UNQUALIFIED
Aditya T BriddickJapanOnyama Limba PROPOSAL
Izzy H MaletFranceElwin Sharvill NEGOTIATION
Jennifer H BologniaArgentinaAnna Fali PROPOSAL
Mujtaba F GarufiGermanyAsiya Javayant QUALIFIED
David O BowleyArgentinaElwin Sharvill RENEWAL
David C GarufiJapanElwin Sharvill NEGOTIATION
Greenwood E ButtItalyStephen Shaw NEGOTIATION
Leon A GlickCanadaBernardo Dominic NEGOTIATION
Ivar S CaudyUnited KingdomElwin Sharvill QUALIFIED
Arvin M ChuiSpainIvan Magalhaes QUALIFIED
Mujtaba X CampainAustraliaAmy Elsner UNQUALIFIED
Ricardo W VocelkaRussiaElwin Sharvill QUALIFIED
Antonio G BriddickFranceStephen Shaw NEW
Greenwood V BriddickSpainStephen Shaw RENEWAL
Salvatore M SchemmerGermanyOnyama Limba QUALIFIED
Kaitlin V WieserGermanyIvan Magalhaes PROPOSAL
Munro Y TollnerBrazilOnyama Limba NEW
Salvatore B ChuiUnited KingdomElwin Sharvill PROPOSAL
Chavez C IturbideSpainAnna Fali PROPOSAL
Silvio V NestleCanadaAmy Elsner NEW
Ivar Z WieserBrazilAmy Elsner UNQUALIFIED
Aika M OldroydCanadaStephen Shaw RENEWAL
Nicolas K MacleadRussiaElwin Sharvill UNQUALIFIED
Mujtaba J KolmetzJapanBernardo Dominic NEGOTIATION
Izzy N ChuiJapanElwin Sharvill UNQUALIFIED
Adams O MaletRussiaAsiya Javayant PROPOSAL
Aika Q WaycottCanadaBernardo Dominic RENEWAL
Deepesh Z DarakjyUnited KingdomIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Mayumi W RutaSpainOnyama Limba UNQUALIFIED
Leja R GillianFranceAmy Elsner UNQUALIFIED
Mujtaba B CaudyGermanyAmy Elsner QUALIFIED
Claire T StensethIndiaAnna Fali RENEWAL
Antonio K IturbideCanadaElwin Sharvill NEGOTIATION
Izzy F WhobreyJapanStephen Shaw NEW
Wickens M FerenczRussiaAnna Fali NEGOTIATION
Kaitlin B BriddickGermanyStephen Shaw UNQUALIFIED
Costa I IturbideAustraliaAnna Fali RENEWAL
Smith F GillianRussiaIoni Bowcher QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Antonio C DilliardAustralia2026-09-29Rousseaux, Michael Esq UNQUALIFIED38Ioni Bowcher
1001Tony V CampainIndia2026-09-23Rangoni Of Florence PROPOSAL46Bernardo Dominic
1002Izzy U WieserIndia2026-09-13Truhlar And Truhlar Attys PROPOSAL75Anna Fali
1003Aruna R TollnerJapan2026-09-19Buckley Miller Wright NEGOTIATION8Ivan Magalhaes
1004Salvatore O FigeroaRussia2026-10-07Printing Dimensions NEGOTIATION65Elwin Sharvill
1005Salvatore I WaycottJapan2026-09-25Morlong Associates QUALIFIED97Stephen Shaw
1006Alejandro G CampainCanada2026-09-21Rousseaux, Michael Esq NEGOTIATION31Elwin Sharvill
1007Aditya M ChuiArgentina2026-09-26Truhlar And Truhlar Attys NEW24Amy Elsner
1008Antonio S NickaGermany2026-10-09Truhlar And Truhlar Attys UNQUALIFIED33Ioni Bowcher
1009Kadeem D VenereGermany2026-09-24Printing Dimensions UNQUALIFIED93Elwin Sharvill
1010Rodrigues W WaycottArgentina2026-10-09Dorl, James J Esq QUALIFIED97Ioni Bowcher
1011Greenwood L StensethJapan2026-10-07Truhlar And Truhlar Attys UNQUALIFIED80Stephen Shaw
1012Misaki P WhobreyItaly2026-09-20Printing Dimensions QUALIFIED27Xuxue Feng
1013Julie L CampainItaly2026-09-12Chapman, Ross E Esq NEW57Elwin Sharvill
1014Aditya B ChuiUnited Kingdom2026-10-09Truhlar And Truhlar Attys QUALIFIED27Xuxue Feng
1015Aditya P InouyeCanada2026-09-25Benton, John B Jr RENEWAL25Xuxue Feng
1016Sinclair V MaletRussia2026-09-12Benton, John B Jr UNQUALIFIED59Ioni Bowcher
1017Morrow S ButtRussia2026-09-16Rangoni Of Florence NEW89Stephen Shaw
1018Salvatore N RulapaughUnited Kingdom2026-09-13Chanay, Jeffrey A Esq UNQUALIFIED60Ioni Bowcher
1019Mayumi C NestleJapan2026-09-26Commercial Press NEW19Ivan Magalhaes
1020Kaitlin A DoeArgentina2026-09-29Feiner Bros NEGOTIATION88Amy Elsner
1021Aruna M BriddickFrance2026-09-29Morlong Associates RENEWAL42Asiya Javayant
1022Deepesh L OstroskyRussia2026-10-04Commercial Press NEGOTIATION85Amy Elsner
1023Octavia H VenereJapan2026-09-16Buckley Miller Wright PROPOSAL47Xuxue Feng
1024Faith X InouyeArgentina2026-10-05Feiner Bros NEGOTIATION7Amy Elsner
1025Juan B PaprockiBrazil2026-09-16Commercial Press UNQUALIFIED83Onyama Limba
1026Nicolas F MorascaIndia2026-09-16Commercial Press PROPOSAL56Elwin Sharvill
1027Leon Y StensethIndia2026-09-14Chanay, Jeffrey A Esq NEGOTIATION24Anna Fali
1028Leon E BologniaGermany2026-09-24Buckley Miller Wright RENEWAL6Onyama Limba
1029James S OstroskyRussia2026-09-25Benton, John B Jr NEW32Amy Elsner
1030Wickens O RoysterItaly2026-09-22Chemel, James L Cpa RENEWAL8Ioni Bowcher
1031Nicolas I SergiIndia2026-09-16King, Christopher A Esq PROPOSAL64Anna Fali
1032Jennifer N OstroskyJapan2026-10-10Benton, John B Jr NEGOTIATION61Bernardo Dominic
1033Francesco Z RulapaughAustralia2026-09-12Benton, John B Jr NEGOTIATION71Anna Fali
1034Nicolas M FollerArgentina2026-09-16Chanay, Jeffrey A Esq PROPOSAL59Ioni Bowcher
1035Aika Q FerenczRussia2026-09-15Commercial Press QUALIFIED94Elwin Sharvill
1036David B NickaItaly2026-10-03Dorl, James J Esq NEGOTIATION66Asiya Javayant
1037Nicolas L StensethItaly2026-09-12Buckley Miller Wright NEW19Elwin Sharvill
1038Murillo T MaletUnited Kingdom2026-09-25Morlong Associates PROPOSAL88Asiya Javayant
1039Arvin A MorascaJapan2026-09-18Chapman, Ross E Esq NEGOTIATION0Stephen Shaw
1040Aruna P MaletCanada2026-09-25Benton, John B Jr NEGOTIATION1Stephen Shaw
1041Claire N CaudyUnited Kingdom2026-09-26Buckley Miller Wright UNQUALIFIED82Amy Elsner
1042Maisha X DilliardRussia2026-10-03Feltz Printing Service NEGOTIATION53Asiya Javayant
1043Jefferson O MaletGermany2026-09-15Morlong Associates NEW35Ioni Bowcher
1044Izzy E DilliardItaly2026-10-03Buckley Miller Wright QUALIFIED16Asiya Javayant
1045Jennifer T RoysterSpain2026-09-22Chanay, Jeffrey A Esq QUALIFIED44Ivan Magalhaes
1046Ashley J VocelkaIndia2026-09-26Rangoni Of Florence QUALIFIED30Anna Fali
1047Nicolas F MarrierFrance2026-09-24King, Christopher A Esq PROPOSAL54Stephen Shaw
1048Jennifer T FollerAustralia2026-09-20Feiner Bros QUALIFIED15Xuxue Feng
1049Julie G CaldareraJapan2026-09-26Feltz Printing Service QUALIFIED20Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Jones G MaletAustraliaXuxue Feng UNQUALIFIED
Morrow P GauchoRussiaStephen Shaw RENEWAL
Silvio J StensethUnited KingdomIvan Magalhaes NEW
Kaitlin I CampainCanadaIoni Bowcher NEW
Leon O AlbaresIndiaElwin Sharvill NEGOTIATION
Jones A OldroydArgentinaXuxue Feng NEGOTIATION
Juan D MaletRussiaIoni Bowcher NEW
Mayumi Y FigeroaItalyXuxue Feng UNQUALIFIED
Arvin M DoeItalyAsiya Javayant RENEWAL
Kadeem J AmigonJapanBernardo Dominic NEW
Jeanfrancois R GlickBrazilAsiya Javayant NEW
Mayumi M GarufiUnited KingdomXuxue Feng UNQUALIFIED
Tony U FerenczSpainXuxue Feng NEW
Izzy X FigeroaFranceBernardo Dominic QUALIFIED
Chavez J SergiJapanXuxue Feng PROPOSAL
Alejandro A GlickIndiaAnna Fali RENEWAL
Sinclair P AlbaresFranceStephen Shaw NEW
Emily T CampainCanadaOnyama Limba NEGOTIATION
Tony O NickaArgentinaIvan Magalhaes QUALIFIED
Ashley O IturbideAustraliaIoni Bowcher PROPOSAL
Clifford T InouyeCanadaOnyama Limba UNQUALIFIED
Chavez M PaprockiGermanyXuxue Feng QUALIFIED
Clifford Y RoysterIndiaAsiya Javayant RENEWAL
Maisha X WaycottGermanyAnna Fali NEGOTIATION
Leja E OstroskyGermanyOnyama Limba NEW
Antonio C MarrierItalyAmy Elsner UNQUALIFIED
Leja I TollnerFranceIvan Magalhaes NEGOTIATION
Sinclair F NestleUnited KingdomAnna Fali PROPOSAL
Munro E BologniaSpainAnna Fali QUALIFIED
Mujtaba R SlusarskiCanadaOnyama Limba RENEWAL
Sinclair D DilliardUnited KingdomIvan Magalhaes RENEWAL
Aruna Z CaudyCanadaOnyama Limba NEGOTIATION
James H SergiJapanAsiya Javayant NEGOTIATION
Aruna R SergiArgentinaIoni Bowcher NEW
Rodrigues T RulapaughJapanAnna Fali RENEWAL
Smith M RulapaughUnited KingdomBernardo Dominic UNQUALIFIED
Silvio Q MarrierFranceIvan Magalhaes PROPOSAL
Wickens W GillianItalyBernardo Dominic UNQUALIFIED
Kadeem Z FollerAustraliaBernardo Dominic PROPOSAL
Arvin I RimRussiaStephen Shaw PROPOSAL
Jefferson P WieserFranceAsiya Javayant PROPOSAL
Mayumi P NickaItalyAmy Elsner RENEWAL
Murillo S ChuiRussiaIvan Magalhaes QUALIFIED
Maisha Z FlosiJapanBernardo Dominic NEW
Mujtaba N StockhamFranceBernardo Dominic QUALIFIED
Arvin H RulapaughBrazilIvan Magalhaes NEGOTIATION
Antonio J IturbideUnited KingdomXuxue Feng NEW
Jefferson M VenereBrazilIvan Magalhaes RENEWAL
Smith W NestleSpainElwin Sharvill RENEWAL
Alejandro Y MacleadRussiaXuxue Feng NEW
Frozen Columns
Name
Tony O Rim
Munro L Shinko
Sinclair R Amigon
James O Caudy
Wickens H Saylors
Tony F Malet
Izzy H Morasca
Mayumi D Venere
Wickens Z Garufi
Leon B Slusarski
Stacey N Malet
Johnson P Glick
Tony J Chui
Morrow Q Inouye
Alejandro V Iturbide
Arvin D Shinko
Kadeem H Gaucho
Nicolas N Dilliard
Faith F Wieser
Misaki E Nestle
Johnson T Caldarera
Kaitlin D Nestle
Jennifer G Foller
Morrow R Stenseth
Jones T Nicka
Salvatore L Ruta
Arvin C Bolognia
David W Venere
Ashley U Dilliard
Ivar L Dilliard
Claire S Nicka
Stacey D Malet
Izzy J Campain
Ivar Y Morasca
Jennifer E Morasca
Mayumi T Whobrey
Greenwood N Stockham
Leon P Whobrey
Claire O Whobrey
Sinclair T Nicka
Arvin X Briddick
Jennifer B Figeroa
David M Flosi
Ricardo M Inouye
Kaitlin I Maclead
Chavez J Stenseth
Izzy J Slusarski
Smith Q Butt
Isabel F Figeroa
David E Campain
IdCountryDate
1000Japan2026-10-09
1001Germany2026-10-03
1002India2026-10-07
1003Argentina2026-09-25
1004Japan2026-09-27
1005Brazil2026-09-27
1006Germany2026-09-11
1007Germany2026-09-19
1008Brazil2026-10-08
1009Brazil2026-10-10
1010Argentina2026-09-19
1011United Kingdom2026-09-22
1012United Kingdom2026-09-12
1013Italy2026-09-11
1014Spain2026-10-08
1015Australia2026-10-04
1016Japan2026-10-08
1017Japan2026-10-02
1018United Kingdom2026-09-15
1019Italy2026-09-17
1020Italy2026-09-20
1021Japan2026-09-22
1022Spain2026-09-11
1023Brazil2026-10-06
1024India2026-10-06
1025Germany2026-09-25
1026Italy2026-09-26
1027Brazil2026-10-03
1028Argentina2026-09-26
1029United Kingdom2026-10-07
1030Argentina2026-10-04
1031Australia2026-10-06
1032Russia2026-09-12
1033Australia2026-10-09
1034Germany2026-10-06
1035Canada2026-10-02
1036India2026-10-07
1037France2026-10-04
1038Italy2026-09-19
1039Australia2026-10-06
1040Japan2026-10-01
1041Argentina2026-10-03
1042India2026-09-13
1043Australia2026-10-01
1044Australia2026-10-03
1045Germany2026-10-02
1046Argentina2026-09-18
1047Japan2026-09-15
1048Canada2026-10-06
1049Brazil2026-09-17

On-Demand Data

NameIdCountryDate
Misaki W Sergi1000Argentina2026-10-08
Mujtaba J Chui1001France2026-10-09
Costa J Bowley1002Canada2026-09-16
Juan Z Briddick1003Canada2026-09-20
Aika X Gaucho1004Germany2026-09-12
Adams A Stenseth1005Spain2026-09-26
Emily B Rulapaugh1006Canada2026-09-14
Ricardo N Tollner1007Russia2026-10-07
Isabel M Poquette1008India2026-09-17
Rodrigues Q Nicka1009Russia2026-09-26
Clifford E Bowley1010Spain2026-10-02
Aika Y Paprocki1011Spain2026-10-03
Clifford Z Perin1012Canada2026-09-14
Sinclair P Marrier1013Brazil2026-09-19
Greenwood V Marrier1014India2026-09-25
Emily X Vocelka1015Italy2026-10-08
Clifford Z Poquette1016Australia2026-09-28
Leon Z Sergi1017France2026-10-07
Kadeem M Slusarski1018Italy2026-09-27
Aika T Bolognia1019Japan2026-09-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aditya B KolmetzItalyStephen Shaw UNQUALIFIED
Mayumi F SlusarskiArgentinaIoni Bowcher NEW
Leja Z StockhamAustraliaStephen Shaw QUALIFIED
Deepesh J VenereItalyAsiya Javayant NEGOTIATION
Silvio Q TollnerFranceStephen Shaw PROPOSAL
Jennifer L GarufiBrazilAnna Fali NEGOTIATION
Kadeem X NickaUnited KingdomIoni Bowcher RENEWAL
David E OldroydCanadaIvan Magalhaes UNQUALIFIED
Maisha U IturbideItalyOnyama Limba PROPOSAL
Costa A MorascaBrazilOnyama Limba NEW
Julie I BowleyItalyBernardo Dominic RENEWAL
Octavia K DilliardIndiaOnyama Limba PROPOSAL
Costa F MacleadCanadaAmy Elsner QUALIFIED
Nicolas B RutaBrazilElwin Sharvill QUALIFIED
Juan D ChuiUnited KingdomAsiya Javayant RENEWAL
Ricardo J CampainRussiaAmy Elsner QUALIFIED
James T FigeroaFranceXuxue Feng NEGOTIATION
Emily F ButtCanadaElwin Sharvill NEW
Ivar O PerinBrazilAmy Elsner UNQUALIFIED
Jones P FollerUnited KingdomAnna Fali QUALIFIED
David Q SaylorsRussiaAnna Fali PROPOSAL
Rodrigues I SchemmerArgentinaXuxue Feng NEGOTIATION
Chavez G FollerSpainBernardo Dominic PROPOSAL
Stacey A NickaRussiaIvan Magalhaes RENEWAL
Jennifer O GlickBrazilAmy Elsner NEW
Adams A GillianAustraliaIvan Magalhaes RENEWAL
Faith V ButtSpainXuxue Feng QUALIFIED
Aika H MaletUnited KingdomElwin Sharvill PROPOSAL
Tony B DarakjyJapanOnyama Limba NEW
Claire I RulapaughAustraliaAsiya Javayant NEW
Salvatore Y SchemmerFranceOnyama Limba QUALIFIED
Izzy G FigeroaArgentinaAsiya Javayant NEW
Maisha I RutaArgentinaOnyama Limba PROPOSAL
Emily P StockhamSpainXuxue Feng QUALIFIED
Jefferson C AmigonItalyXuxue Feng RENEWAL
Izzy O CaudyBrazilOnyama Limba UNQUALIFIED
Mujtaba V SaylorsJapanIvan Magalhaes NEW
Munro O AmigonCanadaIoni Bowcher RENEWAL
Wickens K SergiBrazilStephen Shaw NEGOTIATION
Kadeem J SergiRussiaElwin 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>