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
Claire F MaletAustraliaOnyama Limba PROPOSAL
Julie I KolmetzRussiaStephen Shaw NEGOTIATION
Maisha L CaudyFranceAsiya Javayant NEGOTIATION
Smith P VocelkaSpainAnna Fali QUALIFIED
Jefferson F GillianGermanyAnna Fali UNQUALIFIED
Izzy F FerenczFranceAsiya Javayant UNQUALIFIED
Leja V RimCanadaIvan Magalhaes UNQUALIFIED
Stacey U MaletAustraliaIvan Magalhaes NEGOTIATION
Cody D ShinkoFranceElwin Sharvill PROPOSAL
Greenwood Q DilliardSpainXuxue Feng UNQUALIFIED
Misaki L AlbaresCanadaIvan Magalhaes NEGOTIATION
Deepesh L RutaBrazilXuxue Feng RENEWAL
Mayumi R SergiIndiaStephen Shaw PROPOSAL
Misaki B MarrierArgentinaAnna Fali QUALIFIED
Emily S VenereArgentinaXuxue Feng NEGOTIATION
Octavia A GlickAustraliaXuxue Feng RENEWAL
Adams Z MarrierGermanyAsiya Javayant QUALIFIED
Juan B GillianFranceOnyama Limba QUALIFIED
Jeanfrancois G MacleadRussiaOnyama Limba NEW
Costa Y PerinArgentinaElwin Sharvill NEW
Arvin O StockhamFranceBernardo Dominic UNQUALIFIED
Alejandro K RulapaughFranceOnyama Limba UNQUALIFIED
Jefferson R VenereUnited KingdomAsiya Javayant UNQUALIFIED
Julie C PaprockiAustraliaBernardo Dominic PROPOSAL
Maisha V MacleadItalyXuxue Feng UNQUALIFIED
Claire D AlbaresRussiaStephen Shaw UNQUALIFIED
Juan Q InouyeItalyXuxue Feng NEW
Wickens U WieserCanadaAsiya Javayant UNQUALIFIED
Tony M DoeSpainIoni Bowcher QUALIFIED
Maisha M FerenczSpainAsiya Javayant PROPOSAL
Mayumi D BowleyBrazilIvan Magalhaes NEGOTIATION
Adams N RimFranceIvan Magalhaes UNQUALIFIED
Mujtaba M FerenczFranceBernardo Dominic NEGOTIATION
Mayumi V RoysterSpainAnna Fali NEGOTIATION
Antonio H WieserBrazilAnna Fali NEGOTIATION
Julie V ChuiArgentinaBernardo Dominic PROPOSAL
Cody K BriddickUnited KingdomElwin Sharvill NEW
Jones Y OldroydUnited KingdomStephen Shaw QUALIFIED
Arvin S NickaFranceElwin Sharvill NEGOTIATION
Tony V FerenczIndiaOnyama Limba UNQUALIFIED
Jennifer Z CampainGermanyAmy Elsner QUALIFIED
Arvin S WhobreyUnited KingdomAmy Elsner NEGOTIATION
Francesco V VenereFranceAmy Elsner UNQUALIFIED
Darci B RimArgentinaBernardo Dominic RENEWAL
Kadeem V NickaBrazilIvan Magalhaes RENEWAL
Jefferson K DarakjyIndiaStephen Shaw QUALIFIED
Ricardo W WaycottAustraliaAsiya Javayant QUALIFIED
Maria H ChuiGermanyIvan Magalhaes QUALIFIED
Maria N MacleadUnited KingdomStephen Shaw UNQUALIFIED
Ricardo Z CaldareraIndiaIoni Bowcher QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maria M PerinFranceIoni Bowcher NEW
Julie D CaldareraJapanOnyama Limba QUALIFIED
Chavez B SaylorsItalyIoni Bowcher NEW
Costa W StockhamCanadaElwin Sharvill NEW
Salvatore Z NickaFranceAmy Elsner RENEWAL
Jennifer Q MarrierGermanyIvan Magalhaes NEGOTIATION
Johnson C BologniaFranceXuxue Feng UNQUALIFIED
Ricardo V FlosiBrazilOnyama Limba QUALIFIED
Smith U FigeroaIndiaAmy Elsner QUALIFIED
Stacey O AmigonFranceAnna Fali PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar O KuskoFrance2026-09-20Dorl, James J Esq NEGOTIATION57Ioni Bowcher
1001Kadeem A MaletGermany2026-10-11Chapman, Ross E Esq RENEWAL75Onyama Limba
1002Claire G FerenczBrazil2026-10-06Printing Dimensions RENEWAL98Ivan Magalhaes
1003Deepesh G BowleyFrance2026-09-25Dorl, James J Esq PROPOSAL78Ioni Bowcher
1004Silvio K KuskoJapan2026-09-26Feiner Bros NEGOTIATION18Elwin Sharvill
1005Mujtaba O InouyeFrance2026-10-03Rangoni Of Florence QUALIFIED68Ivan Magalhaes
1006Greenwood Q IturbideCanada2026-10-07Commercial Press NEW76Onyama Limba
1007Arvin O DoeSpain2026-09-21Feltz Printing Service PROPOSAL94Ioni Bowcher
1008Leon U BologniaCanada2026-09-23Commercial Press QUALIFIED75Bernardo Dominic
1009Ashley S KuskoBrazil2026-10-14Feiner Bros NEGOTIATION83Amy Elsner
1010Clifford S ShinkoCanada2026-09-30Morlong Associates UNQUALIFIED64Ioni Bowcher
1011Leja M SlusarskiAustralia2026-09-22Buckley Miller Wright NEW5Stephen Shaw
1012Leja N MaletAustralia2026-10-10King, Christopher A Esq NEGOTIATION27Stephen Shaw
1013Jones Z CaldareraItaly2026-10-12Rangoni Of Florence NEW68Stephen Shaw
1014Deepesh O GarufiGermany2026-09-28Dorl, James J Esq PROPOSAL51Stephen Shaw
1015Ivar T ChuiBrazil2026-10-07Feiner Bros NEW17Xuxue Feng
1016Leja A OldroydFrance2026-10-09Truhlar And Truhlar Attys PROPOSAL51Xuxue Feng
1017Adams X VenereGermany2026-10-07Rousseaux, Michael Esq UNQUALIFIED56Anna Fali
1018Kadeem Y DilliardJapan2026-10-11Benton, John B Jr QUALIFIED99Elwin Sharvill
1019Sinclair W FlosiArgentina2026-09-24King, Christopher A Esq QUALIFIED89Asiya Javayant
1020Maria L InouyeGermany2026-10-07Chemel, James L Cpa PROPOSAL3Bernardo Dominic
1021Morrow F MorascaJapan2026-09-24Dorl, James J Esq NEGOTIATION59Ioni Bowcher
1022Claire T ButtArgentina2026-10-17Feltz Printing Service UNQUALIFIED50Ivan Magalhaes
1023Ashley M KuskoSpain2026-09-22Feltz Printing Service QUALIFIED67Xuxue Feng
1024James Z TollnerCanada2026-10-05Buckley Miller Wright UNQUALIFIED37Asiya Javayant
1025Wickens R SlusarskiBrazil2026-10-02Feltz Printing Service QUALIFIED85Asiya Javayant
1026Julie Z CaldareraCanada2026-09-24Truhlar And Truhlar Attys RENEWAL14Ivan Magalhaes
1027Aika R FollerItaly2026-10-01Rangoni Of Florence NEGOTIATION12Anna Fali
1028Claire G StensethItaly2026-10-04Morlong Associates RENEWAL50Anna Fali
1029Juan A ShinkoItaly2026-10-12Feltz Printing Service QUALIFIED25Ioni Bowcher
1030Izzy U ShinkoSpain2026-09-27Chemel, James L Cpa UNQUALIFIED70Xuxue Feng
1031Clifford C CaldareraCanada2026-10-16Chanay, Jeffrey A Esq RENEWAL98Bernardo Dominic
1032Chavez T TollnerSpain2026-09-21Rangoni Of Florence QUALIFIED30Xuxue Feng
1033Smith B ShinkoAustralia2026-09-27Printing Dimensions PROPOSAL80Elwin Sharvill
1034Mayumi G WieserBrazil2026-10-11Rangoni Of Florence QUALIFIED51Ioni Bowcher
1035James A OldroydFrance2026-09-23Rangoni Of Florence UNQUALIFIED87Ivan Magalhaes
1036Munro P SaylorsJapan2026-10-10Morlong Associates QUALIFIED12Stephen Shaw
1037Rodrigues Y InouyeBrazil2026-10-14Rousseaux, Michael Esq NEGOTIATION43Ioni Bowcher
1038Isabel A GarufiSpain2026-10-01Benton, John B Jr PROPOSAL0Xuxue Feng
1039Kadeem A WieserSpain2026-10-05Buckley Miller Wright QUALIFIED15Ivan Magalhaes
1040Clifford U GarufiArgentina2026-10-17Commercial Press QUALIFIED96Elwin Sharvill
1041Alejandro J OstroskyArgentina2026-10-13Rangoni Of Florence QUALIFIED24Anna Fali
1042Julie B ShinkoCanada2026-10-09Benton, John B Jr NEGOTIATION42Ioni Bowcher
1043James A ButtItaly2026-10-14Chapman, Ross E Esq NEGOTIATION26Stephen Shaw
1044Stacey T RoysterIndia2026-10-13Rousseaux, Michael Esq PROPOSAL17Asiya Javayant
1045Aruna X KolmetzGermany2026-10-08Feiner Bros NEW59Ioni Bowcher
1046Stacey J AmigonArgentina2026-10-15Buckley Miller Wright UNQUALIFIED36Anna Fali
1047Aruna J BriddickFrance2026-10-14Chanay, Jeffrey A Esq PROPOSAL84Elwin Sharvill
1048Izzy P KolmetzRussia2026-10-11Morlong Associates QUALIFIED9Asiya Javayant
1049Tony W StockhamArgentina2026-10-18Feltz Printing Service RENEWAL64Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Greenwood H OldroydGermanyAsiya Javayant NEGOTIATION
Tony H ShinkoRussiaBernardo Dominic NEGOTIATION
Smith P StensethItalyElwin Sharvill UNQUALIFIED
Misaki C GauchoGermanyElwin Sharvill NEGOTIATION
Faith Q CampainUnited KingdomOnyama Limba PROPOSAL
Murillo G BologniaIndiaIvan Magalhaes RENEWAL
Murillo F FigeroaItalyAsiya Javayant QUALIFIED
Kadeem X CaudyIndiaBernardo Dominic NEW
Izzy N CampainSpainElwin Sharvill PROPOSAL
Sinclair W OldroydRussiaOnyama Limba NEGOTIATION
Sinclair Q CampainUnited KingdomAmy Elsner NEGOTIATION
Maria C SergiRussiaOnyama Limba NEW
Aruna H MacleadRussiaIoni Bowcher PROPOSAL
Costa F FollerJapanAmy Elsner NEW
Claire P StockhamRussiaIoni Bowcher NEGOTIATION
Leon M SchemmerRussiaAsiya Javayant RENEWAL
Jefferson R FigeroaArgentinaOnyama Limba NEW
Sinclair G RulapaughJapanAnna Fali QUALIFIED
Deepesh I CampainArgentinaIvan Magalhaes UNQUALIFIED
Maisha X AmigonGermanyAnna Fali PROPOSAL
Nicolas S FlosiItalyElwin Sharvill NEW
Leja A NickaItalyAnna Fali PROPOSAL
Maria Y WieserAustraliaAsiya Javayant PROPOSAL
Mujtaba S TollnerJapanAsiya Javayant UNQUALIFIED
Leon G WhobreyBrazilOnyama Limba QUALIFIED
Aika N NickaFranceBernardo Dominic PROPOSAL
James Q FollerAustraliaIvan Magalhaes PROPOSAL
Octavia K MaletAustraliaXuxue Feng QUALIFIED
Greenwood M MarrierJapanAnna Fali PROPOSAL
Leja B PerinFranceOnyama Limba NEGOTIATION
Morrow D MaletIndiaAmy Elsner NEW
Faith Z SergiUnited KingdomElwin Sharvill RENEWAL
Aditya V BowleyBrazilAsiya Javayant UNQUALIFIED
Maria I RulapaughRussiaAnna Fali RENEWAL
Claire L StockhamAustraliaIvan Magalhaes QUALIFIED
David X VocelkaBrazilAsiya Javayant QUALIFIED
James L GillianRussiaAsiya Javayant RENEWAL
Murillo N WaycottItalyAnna Fali UNQUALIFIED
Adams V KuskoUnited KingdomIvan Magalhaes NEGOTIATION
Leon N NickaArgentinaAmy Elsner NEW
Francesco Q CampainRussiaElwin Sharvill UNQUALIFIED
Murillo M GlickRussiaIoni Bowcher RENEWAL
Alejandro R FlosiBrazilStephen Shaw RENEWAL
Darci V ButtArgentinaElwin Sharvill PROPOSAL
Ricardo P GauchoFranceAsiya Javayant QUALIFIED
Deepesh V MaletAustraliaIoni Bowcher NEGOTIATION
Chavez T DarakjyCanadaAmy Elsner UNQUALIFIED
Alejandro O FerenczCanadaIoni Bowcher QUALIFIED
Mujtaba Z CaldareraFranceIoni Bowcher UNQUALIFIED
Kadeem H AmigonArgentinaAnna Fali PROPOSAL
Frozen Columns
Name
Wickens A Wieser
Arvin J Royster
Sinclair U Royster
Greenwood R Gillian
Darci M Darakjy
Johnson N Stenseth
Emily L Maclead
Claire O Bolognia
Leon L Flosi
Murillo K Flosi
Sinclair O Bowley
Maria D Maclead
Sinclair R Malet
Kaitlin Q Paprocki
Salvatore V Kolmetz
Julie C Stockham
Salvatore I Stockham
Misaki D Venere
Leon L Oldroyd
Izzy G Gaucho
Munro W Tollner
Costa R Glick
Izzy E Rulapaugh
Jeanfrancois H Ferencz
Johnson D Kolmetz
Maria V Shinko
Kadeem W Iturbide
Faith A Campain
Francesco W Briddick
Arvin O Amigon
Chavez Z Ferencz
Greenwood U Maclead
Aruna T Ruta
Aika H Marrier
Deepesh D Stenseth
Jefferson J Saylors
Johnson H Gillian
Tony C Paprocki
Francesco L Stockham
Jefferson J Albares
Jefferson Q Wieser
Aditya D Rulapaugh
Nicolas J Waycott
Kadeem I Garufi
Claire O Flosi
Aruna C Rulapaugh
Greenwood C Briddick
Maisha Z Perin
Leon X Stockham
Octavia N Rulapaugh
IdCountryDate
1000Russia2026-10-10
1001France2026-09-22
1002India2026-10-16
1003Japan2026-10-07
1004Japan2026-10-10
1005United Kingdom2026-10-15
1006Argentina2026-10-13
1007Germany2026-10-01
1008France2026-09-26
1009Russia2026-10-17
1010India2026-10-04
1011India2026-09-22
1012Italy2026-10-01
1013Russia2026-09-28
1014Australia2026-09-23
1015United Kingdom2026-10-13
1016Canada2026-10-15
1017Russia2026-10-10
1018Italy2026-09-21
1019India2026-09-30
1020India2026-10-10
1021Italy2026-10-16
1022Japan2026-10-10
1023Spain2026-10-12
1024Spain2026-09-30
1025Japan2026-10-07
1026United Kingdom2026-10-05
1027India2026-09-20
1028Italy2026-10-06
1029Japan2026-10-12
1030Japan2026-09-24
1031Australia2026-10-18
1032Japan2026-10-15
1033Australia2026-09-21
1034France2026-10-07
1035Japan2026-10-04
1036Canada2026-10-05
1037Canada2026-10-04
1038Japan2026-10-13
1039United Kingdom2026-10-09
1040Italy2026-10-11
1041Brazil2026-10-09
1042Germany2026-10-02
1043Japan2026-10-18
1044Argentina2026-10-08
1045Russia2026-10-08
1046Brazil2026-10-14
1047Italy2026-09-23
1048United Kingdom2026-09-26
1049Argentina2026-10-01

On-Demand Data

NameIdCountryDate
Cody R Caudy1000United Kingdom2026-10-02
Julie J Oldroyd1001Germany2026-10-10
Francesco U Caudy1002India2026-10-08
Arvin S Marrier1003Australia2026-09-27
Jeanfrancois O Paprocki1004Russia2026-10-09
Arvin I Schemmer1005France2026-10-06
Kadeem A Morasca1006Russia2026-10-16
Maria V Malet1007India2026-09-30
Jefferson B Dilliard1008Russia2026-10-03
Greenwood F Morasca1009Russia2026-10-08
Salvatore Z Albares1010Canada2026-09-22
Nicolas Y Bolognia1011India2026-09-30
Johnson Z Waycott1012United Kingdom2026-09-23
Aruna Y Bowley1013Germany2026-10-05
Jones I Shinko1014Argentina2026-10-16
Sinclair K Kolmetz1015Canada2026-09-26
Sinclair I Wieser1016Japan2026-10-03
Misaki Q Sergi1017Italy2026-10-12
Ivar J Saylors1018United Kingdom2026-09-21
Misaki Q Marrier1019Russia2026-10-07
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas F IturbideItalyIoni Bowcher PROPOSAL
Ivar Q RutaIndiaAmy Elsner NEW
Ashley W FerenczArgentinaStephen Shaw QUALIFIED
Juan R GillianIndiaAmy Elsner PROPOSAL
Izzy Q ChuiRussiaOnyama Limba UNQUALIFIED
Juan U MaletUnited KingdomAsiya Javayant UNQUALIFIED
Aruna W PaprockiGermanyIvan Magalhaes NEGOTIATION
Aditya X MaletIndiaAmy Elsner PROPOSAL
Adams H KolmetzGermanyAmy Elsner NEW
Johnson K SlusarskiAustraliaElwin Sharvill UNQUALIFIED
Jeanfrancois M KolmetzGermanyAsiya Javayant UNQUALIFIED
Maria T OldroydGermanyIoni Bowcher NEGOTIATION
Jennifer I AlbaresFranceIoni Bowcher NEGOTIATION
Aika F RoysterAustraliaIoni Bowcher NEGOTIATION
David L MaletSpainOnyama Limba UNQUALIFIED
Murillo X MaletBrazilBernardo Dominic QUALIFIED
Misaki H InouyeArgentinaXuxue Feng UNQUALIFIED
Silvio W VocelkaRussiaAsiya Javayant UNQUALIFIED
Leja M BowleyFranceBernardo Dominic UNQUALIFIED
Munro R FerenczCanadaElwin Sharvill UNQUALIFIED
Darci T BowleyRussiaXuxue Feng NEW
Salvatore Y BologniaAustraliaBernardo Dominic NEW
Aika V RoysterCanadaAmy Elsner NEGOTIATION
Chavez L AlbaresAustraliaAmy Elsner PROPOSAL
Ivar C OldroydSpainOnyama Limba QUALIFIED
David J FigeroaFranceBernardo Dominic UNQUALIFIED
Aruna Z RimSpainAnna Fali NEW
Chavez W FerenczFranceIvan Magalhaes QUALIFIED
Juan Z MaletCanadaOnyama Limba NEGOTIATION
Nicolas Q StockhamItalyOnyama Limba RENEWAL
Stacey E BriddickJapanXuxue Feng NEW
Clifford X PoquetteGermanyElwin Sharvill NEW
Emily K TollnerCanadaStephen Shaw QUALIFIED
Morrow Z MacleadGermanyStephen Shaw PROPOSAL
Claire Q PoquetteIndiaAnna Fali NEW
Tony K OldroydGermanyAnna Fali PROPOSAL
Greenwood Y AmigonUnited KingdomXuxue Feng PROPOSAL
Leja G StensethBrazilIoni Bowcher NEGOTIATION
Cody U OldroydSpainBernardo Dominic NEGOTIATION
Kadeem A DarakjyUnited KingdomOnyama Limba PROPOSAL

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