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
Darci G MaletFranceStephen Shaw UNQUALIFIED
Ivar V DarakjyBrazilElwin Sharvill NEW
Ashley K WaycottAustraliaOnyama Limba QUALIFIED
Costa C KuskoRussiaElwin Sharvill UNQUALIFIED
Aika G CaudyIndiaXuxue Feng NEW
Maisha Z FollerFranceAnna Fali QUALIFIED
Smith D DilliardArgentinaAnna Fali NEW
Sinclair K RoysterSpainXuxue Feng UNQUALIFIED
Claire G GillianAustraliaIoni Bowcher NEGOTIATION
Jeanfrancois S FigeroaUnited KingdomAnna Fali NEGOTIATION
Maisha E SaylorsSpainXuxue Feng NEGOTIATION
Alejandro P SchemmerJapanAnna Fali NEW
Stacey D AlbaresSpainIoni Bowcher QUALIFIED
Aditya B KuskoUnited KingdomOnyama Limba UNQUALIFIED
Ashley O KolmetzIndiaAnna Fali NEW
Faith J SlusarskiArgentinaAnna Fali NEW
Nicolas H VocelkaArgentinaIoni Bowcher PROPOSAL
Wickens M MorascaFranceAnna Fali PROPOSAL
Adams O NickaJapanElwin Sharvill RENEWAL
Aruna Y WaycottCanadaAmy Elsner UNQUALIFIED
Aditya Z SlusarskiAustraliaBernardo Dominic RENEWAL
Leja X AlbaresFranceElwin Sharvill RENEWAL
Smith Z WieserSpainBernardo Dominic QUALIFIED
Darci P CampainGermanyIoni Bowcher NEGOTIATION
Francesco R ChuiRussiaIvan Magalhaes NEW
Julie G IturbideSpainOnyama Limba NEGOTIATION
Aruna Q GarufiJapanXuxue Feng RENEWAL
Wickens B OldroydIndiaStephen Shaw RENEWAL
Aika D GlickSpainAnna Fali NEGOTIATION
Ashley W CampainAustraliaBernardo Dominic QUALIFIED
Jennifer B PoquetteFranceElwin Sharvill RENEWAL
Ricardo C KuskoItalyStephen Shaw UNQUALIFIED
Chavez E KolmetzIndiaIoni Bowcher PROPOSAL
James M MorascaGermanyAsiya Javayant PROPOSAL
Cody D DilliardCanadaOnyama Limba QUALIFIED
James G FlosiFranceXuxue Feng UNQUALIFIED
Leja Z BowleyIndiaXuxue Feng QUALIFIED
Julie E FerenczCanadaOnyama Limba PROPOSAL
Isabel Q MaletAustraliaBernardo Dominic QUALIFIED
Sinclair W CampainArgentinaBernardo Dominic QUALIFIED
Aditya L BologniaIndiaStephen Shaw RENEWAL
Silvio N AlbaresFranceElwin Sharvill PROPOSAL
Maisha P IturbideJapanXuxue Feng UNQUALIFIED
Aruna M WieserGermanyBernardo Dominic UNQUALIFIED
Morrow P MarrierItalyOnyama Limba UNQUALIFIED
Faith Y PaprockiArgentinaAnna Fali PROPOSAL
James A AlbaresAustraliaIoni Bowcher UNQUALIFIED
Ricardo O ButtUnited KingdomOnyama Limba RENEWAL
Salvatore V CaldareraIndiaAmy Elsner QUALIFIED
Maria H KolmetzIndiaElwin Sharvill QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Maria D RulapaughFranceOnyama Limba NEGOTIATION
Ricardo H TollnerArgentinaIvan Magalhaes RENEWAL
Francesco R PaprockiUnited KingdomOnyama Limba NEW
Jones G SergiGermanyIoni Bowcher PROPOSAL
Octavia B ChuiJapanAmy Elsner NEGOTIATION
Wickens N ButtUnited KingdomIvan Magalhaes RENEWAL
David Y PoquetteRussiaXuxue Feng PROPOSAL
Leon T RutaAustraliaAnna Fali RENEWAL
Rodrigues Q FerenczAustraliaXuxue Feng NEW
Johnson I OldroydAustraliaIvan Magalhaes NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jennifer B GillianUnited Kingdom2026-10-19King, Christopher A Esq NEGOTIATION18Anna Fali
1001Julie G MacleadAustralia2026-10-20Chapman, Ross E Esq NEW17Asiya Javayant
1002Jefferson W VenereRussia2026-10-04Buckley Miller Wright UNQUALIFIED37Stephen Shaw
1003Salvatore Z RoysterUnited Kingdom2026-10-09Chanay, Jeffrey A Esq NEGOTIATION58Stephen Shaw
1004Isabel M FerenczRussia2026-10-25Truhlar And Truhlar Attys RENEWAL74Elwin Sharvill
1005Aika F StockhamGermany2026-10-10Chapman, Ross E Esq QUALIFIED18Elwin Sharvill
1006Johnson G MorascaGermany2026-10-27Chanay, Jeffrey A Esq UNQUALIFIED2Bernardo Dominic
1007Claire E KolmetzJapan2026-10-25Chanay, Jeffrey A Esq UNQUALIFIED64Anna Fali
1008Emily Y SergiFrance2026-10-03Printing Dimensions PROPOSAL71Onyama Limba
1009Antonio S PaprockiBrazil2026-10-24Printing Dimensions RENEWAL6Stephen Shaw
1010Aruna B MaletBrazil2026-10-28Feltz Printing Service NEGOTIATION35Ioni Bowcher
1011Ashley L ShinkoArgentina2026-10-16Dorl, James J Esq PROPOSAL92Bernardo Dominic
1012Arvin K VenereIndia2026-10-25Chemel, James L Cpa UNQUALIFIED98Amy Elsner
1013Rodrigues O SergiSpain2026-10-23Chemel, James L Cpa NEGOTIATION55Bernardo Dominic
1014Mayumi S CaldareraArgentina2026-10-28Commercial Press RENEWAL60Stephen Shaw
1015Kadeem Y BriddickSpain2026-10-12Truhlar And Truhlar Attys QUALIFIED72Bernardo Dominic
1016Darci H MaletGermany2026-10-24Rousseaux, Michael Esq RENEWAL75Anna Fali
1017Claire B FerenczArgentina2026-10-03Morlong Associates NEW79Ivan Magalhaes
1018Ashley S CaldareraSpain2026-10-06Chemel, James L Cpa UNQUALIFIED68Elwin Sharvill
1019Kadeem V OldroydArgentina2026-10-16Rangoni Of Florence NEGOTIATION29Amy Elsner
1020Stacey Q CaudyGermany2026-10-05Buckley Miller Wright UNQUALIFIED41Ioni Bowcher
1021Deepesh B VenereCanada2026-10-27Chanay, Jeffrey A Esq QUALIFIED63Xuxue Feng
1022Nicolas Q RutaArgentina2026-10-16Rangoni Of Florence RENEWAL19Anna Fali
1023Claire A FigeroaBrazil2026-10-16Dorl, James J Esq QUALIFIED95Ioni Bowcher
1024Johnson Q CaldareraBrazil2026-10-01Morlong Associates PROPOSAL93Onyama Limba
1025Kadeem L RulapaughIndia2026-10-22Commercial Press UNQUALIFIED93Xuxue Feng
1026Munro I SaylorsRussia2026-10-24King, Christopher A Esq RENEWAL98Onyama Limba
1027Leon K AlbaresUnited Kingdom2026-10-17Buckley Miller Wright NEW1Onyama Limba
1028Jones V IturbideFrance2026-10-01Chanay, Jeffrey A Esq UNQUALIFIED23Stephen Shaw
1029Chavez C FerenczJapan2026-10-20King, Christopher A Esq PROPOSAL24Ioni Bowcher
1030Tony W MaletUnited Kingdom2026-10-05Morlong Associates RENEWAL93Ivan Magalhaes
1031Deepesh Z ButtJapan2026-10-07Chanay, Jeffrey A Esq UNQUALIFIED10Amy Elsner
1032Kadeem A CaldareraArgentina2026-10-22Morlong Associates NEGOTIATION27Ivan Magalhaes
1033Rodrigues G PoquetteRussia2026-10-15Printing Dimensions UNQUALIFIED3Ioni Bowcher
1034Aika N PoquetteAustralia2026-10-21Truhlar And Truhlar Attys UNQUALIFIED96Onyama Limba
1035Francesco X SergiBrazil2026-09-30Chanay, Jeffrey A Esq QUALIFIED99Ivan Magalhaes
1036Greenwood L MacleadCanada2026-10-01King, Christopher A Esq NEGOTIATION9Stephen Shaw
1037Greenwood R FigeroaItaly2026-10-18Feltz Printing Service RENEWAL14Onyama Limba
1038Adams U CampainJapan2026-10-24Benton, John B Jr RENEWAL27Elwin Sharvill
1039Adams Q TollnerCanada2026-10-27Morlong Associates RENEWAL64Bernardo Dominic
1040Kadeem K PaprockiCanada2026-10-18Chanay, Jeffrey A Esq PROPOSAL53Ivan Magalhaes
1041Juan V WaycottGermany2026-10-16Rangoni Of Florence NEW14Bernardo Dominic
1042Chavez C SlusarskiSpain2026-10-27Rousseaux, Michael Esq UNQUALIFIED47Ioni Bowcher
1043Sinclair O StockhamArgentina2026-10-18Rousseaux, Michael Esq PROPOSAL60Amy Elsner
1044David R MorascaUnited Kingdom2026-10-08Rangoni Of Florence RENEWAL65Elwin Sharvill
1045Smith H GlickJapan2026-10-28Truhlar And Truhlar Attys NEW42Onyama Limba
1046Aruna U RoysterAustralia2026-10-18Chanay, Jeffrey A Esq NEW88Elwin Sharvill
1047Aditya S GarufiRussia2026-09-30Buckley Miller Wright UNQUALIFIED48Asiya Javayant
1048Kaitlin C VocelkaIndia2026-10-01Truhlar And Truhlar Attys NEGOTIATION39Ivan Magalhaes
1049Arvin E RulapaughGermany2026-10-04Printing Dimensions RENEWAL79Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Sinclair T KuskoBrazilAnna Fali RENEWAL
Kaitlin I GlickItalyBernardo Dominic QUALIFIED
Silvio J MaletJapanStephen Shaw QUALIFIED
Leja Y OstroskyFranceXuxue Feng PROPOSAL
Emily H AlbaresRussiaStephen Shaw NEGOTIATION
Nicolas W RulapaughFranceIoni Bowcher NEGOTIATION
Silvio V RulapaughFranceStephen Shaw UNQUALIFIED
Ashley W MarrierCanadaAsiya Javayant UNQUALIFIED
Jeanfrancois J VocelkaRussiaIvan Magalhaes PROPOSAL
Clifford K BriddickArgentinaXuxue Feng PROPOSAL
Claire T MaletAustraliaStephen Shaw NEW
Izzy J CaldareraBrazilXuxue Feng QUALIFIED
Aruna C FigeroaRussiaIvan Magalhaes NEW
Leon L TollnerGermanyAsiya Javayant RENEWAL
Izzy E PaprockiJapanBernardo Dominic QUALIFIED
Ashley B WaycottItalyStephen Shaw NEGOTIATION
Silvio Z DarakjyUnited KingdomIvan Magalhaes NEGOTIATION
Alejandro Q AmigonIndiaElwin Sharvill NEW
Salvatore U IturbideRussiaAnna Fali UNQUALIFIED
Kaitlin H GarufiRussiaStephen Shaw QUALIFIED
Maisha F DilliardGermanyXuxue Feng NEGOTIATION
Chavez I FlosiArgentinaOnyama Limba RENEWAL
Julie E KuskoJapanIoni Bowcher RENEWAL
Jones N GillianUnited KingdomOnyama Limba UNQUALIFIED
Sinclair H ChuiBrazilXuxue Feng NEW
Julie R WieserBrazilBernardo Dominic PROPOSAL
Deepesh H NestleUnited KingdomBernardo Dominic RENEWAL
Silvio O KolmetzBrazilAnna Fali NEGOTIATION
Salvatore I StensethArgentinaIoni Bowcher QUALIFIED
Costa O StensethSpainOnyama Limba RENEWAL
David O NickaFranceAmy Elsner RENEWAL
Cody L FlosiAustraliaIvan Magalhaes UNQUALIFIED
Maria C ButtSpainAnna Fali RENEWAL
Leon J SaylorsBrazilIoni Bowcher PROPOSAL
Kadeem D KuskoCanadaXuxue Feng RENEWAL
Ricardo U BologniaSpainXuxue Feng NEW
Aditya C KuskoIndiaIoni Bowcher PROPOSAL
Maisha P StensethGermanyOnyama Limba UNQUALIFIED
Aika B TollnerBrazilXuxue Feng NEGOTIATION
Francesco S CampainBrazilIoni Bowcher QUALIFIED
Johnson S VocelkaJapanOnyama Limba QUALIFIED
Aika Y WhobreyItalyAmy Elsner QUALIFIED
Emily B StockhamRussiaAsiya Javayant RENEWAL
Adams J GlickRussiaAmy Elsner NEGOTIATION
Francesco Z MaletBrazilIvan Magalhaes UNQUALIFIED
Octavia K WieserJapanElwin Sharvill NEGOTIATION
Sinclair I RulapaughJapanIoni Bowcher UNQUALIFIED
Juan H GillianFranceAmy Elsner QUALIFIED
Rodrigues D MarrierSpainAnna Fali NEGOTIATION
Ashley P SergiUnited KingdomStephen Shaw NEGOTIATION
Frozen Columns
Name
Cody Z Whobrey
Tony C Gillian
Salvatore Z Saylors
Johnson O Malet
Nicolas S Kolmetz
Murillo B Wieser
Aditya W Gaucho
Julie W Caldarera
Francesco W Perin
Clifford X Butt
Deepesh T Schemmer
Leon Q Chui
Octavia K Iturbide
Cody U Flosi
Costa B Nicka
Kadeem W Garufi
Faith W Schemmer
Maisha U Oldroyd
Nicolas Q Ruta
Maria C Perin
Kadeem R Schemmer
Darci T Darakjy
Octavia W Schemmer
Isabel T Royster
Adams Q Rulapaugh
Izzy G Figeroa
Emily O Poquette
Greenwood K Bolognia
Silvio E Kolmetz
Izzy L Royster
Jennifer Z Stenseth
Ashley O Rulapaugh
Ivar J Stockham
Silvio X Paprocki
Greenwood L Darakjy
Cody R Rulapaugh
Ivar S Bolognia
Sinclair X Ruta
Silvio C Shinko
Mujtaba N Ostrosky
Darci F Dilliard
Maria U Chui
Silvio B Albares
Jeanfrancois K Malet
Stacey P Tollner
Aruna X Albares
Aruna W Whobrey
Costa Q Vocelka
Morrow Z Caldarera
Juan G Rim
IdCountryDate
1000United Kingdom2026-10-02
1001Germany2026-10-08
1002Japan2026-10-09
1003Japan2026-10-05
1004Australia2026-09-30
1005Spain2026-10-09
1006United Kingdom2026-10-13
1007Canada2026-10-24
1008Argentina2026-10-15
1009Argentina2026-10-17
1010France2026-10-18
1011Germany2026-10-26
1012Canada2026-10-14
1013Russia2026-10-01
1014Japan2026-10-16
1015Japan2026-10-25
1016Japan2026-09-29
1017Germany2026-10-04
1018India2026-10-19
1019United Kingdom2026-10-15
1020Japan2026-10-07
1021Spain2026-10-14
1022Argentina2026-10-17
1023Canada2026-10-10
1024Russia2026-10-10
1025Argentina2026-10-03
1026Germany2026-10-17
1027Spain2026-10-14
1028United Kingdom2026-10-16
1029Canada2026-10-02
1030France2026-10-28
1031France2026-10-04
1032Brazil2026-10-25
1033Australia2026-10-20
1034Argentina2026-10-27
1035Spain2026-10-05
1036Italy2026-10-08
1037Canada2026-10-25
1038France2026-10-11
1039Japan2026-10-16
1040France2026-10-16
1041Australia2026-10-11
1042Argentina2026-10-09
1043Argentina2026-10-02
1044India2026-10-17
1045Italy2026-10-04
1046Spain2026-10-27
1047Canada2026-10-12
1048United Kingdom2026-10-24
1049Argentina2026-10-19

On-Demand Data

NameIdCountryDate
Nicolas J Schemmer1000France2026-10-08
Cody Q Briddick1001Spain2026-10-02
Wickens P Inouye1002Russia2026-10-06
Stacey P Foller1003France2026-10-19
Antonio H Bolognia1004Russia2026-10-03
Kadeem F Saylors1005Australia2026-10-28
Jeanfrancois H Briddick1006United Kingdom2026-10-22
Adams R Caldarera1007France2026-10-08
Juan H Gillian1008France2026-10-11
Chavez L Inouye1009Germany2026-10-23
Ashley L Figeroa1010Germany2026-10-25
David I Stenseth1011Germany2026-10-24
Juan K Kusko1012Australia2026-10-16
Mayumi P Kusko1013Germany2026-10-04
Smith N Slusarski1014France2026-10-28
Johnson G Rulapaugh1015Russia2026-10-05
Faith F Kusko1016Russia2026-10-10
Isabel W Paprocki1017Australia2026-10-14
Octavia X Flosi1018Spain2026-10-16
Emily D Kusko1019United Kingdom2026-09-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio H WhobreyRussiaOnyama Limba NEGOTIATION
Aruna B BologniaAustraliaAmy Elsner UNQUALIFIED
Nicolas E SlusarskiIndiaIvan Magalhaes RENEWAL
Ricardo Q AlbaresAustraliaIoni Bowcher UNQUALIFIED
Deepesh S WhobreyCanadaElwin Sharvill UNQUALIFIED
Chavez I WhobreyFranceOnyama Limba NEW
Kadeem G SlusarskiJapanElwin Sharvill UNQUALIFIED
Izzy G TollnerSpainAnna Fali NEGOTIATION
Costa A SlusarskiIndiaAnna Fali PROPOSAL
Smith I OstroskyJapanBernardo Dominic PROPOSAL
Silvio A NickaBrazilOnyama Limba NEGOTIATION
Kaitlin N NestleUnited KingdomAsiya Javayant PROPOSAL
Cody R TollnerGermanyIoni Bowcher QUALIFIED
Munro D FlosiItalyAmy Elsner PROPOSAL
Faith N MacleadArgentinaBernardo Dominic NEGOTIATION
Wickens V SaylorsUnited KingdomIvan Magalhaes NEGOTIATION
Murillo P MorascaFranceElwin Sharvill NEW
Greenwood J RulapaughArgentinaAmy Elsner RENEWAL
Jeanfrancois F VocelkaJapanBernardo Dominic RENEWAL
Aditya O NestleIndiaStephen Shaw PROPOSAL
Arvin P SaylorsUnited KingdomElwin Sharvill NEW
Jones M DarakjyJapanElwin Sharvill NEW
Sinclair L KuskoIndiaIvan Magalhaes PROPOSAL
David C GlickBrazilStephen Shaw PROPOSAL
Clifford P MacleadCanadaOnyama Limba QUALIFIED
Misaki W OldroydUnited KingdomOnyama Limba NEGOTIATION
Francesco R ShinkoItalyIvan Magalhaes UNQUALIFIED
Leja A MorascaJapanAmy Elsner QUALIFIED
Misaki O InouyeJapanBernardo Dominic UNQUALIFIED
Maria S BowleyJapanIvan Magalhaes NEGOTIATION
Jefferson B AmigonItalyBernardo Dominic QUALIFIED
Costa R BowleyAustraliaXuxue Feng UNQUALIFIED
Greenwood S SlusarskiBrazilElwin Sharvill NEW
Sinclair C SlusarskiItalyStephen Shaw UNQUALIFIED
Deepesh T PerinJapanElwin Sharvill RENEWAL
David U VenereBrazilBernardo Dominic QUALIFIED
Costa H KuskoCanadaIoni Bowcher UNQUALIFIED
Jennifer Y PoquetteCanadaAsiya Javayant NEW
Leon H MaletArgentinaXuxue Feng RENEWAL
Kadeem W RimBrazilAnna Fali 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>