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
Alejandro Y OstroskyCanadaIvan Magalhaes PROPOSAL
Francesco U PerinJapanAnna Fali QUALIFIED
Morrow G WhobreyItalyStephen Shaw RENEWAL
Maisha K RutaSpainIoni Bowcher PROPOSAL
Jennifer S VenereItalyAsiya Javayant PROPOSAL
Silvio C TollnerUnited KingdomAsiya Javayant UNQUALIFIED
Octavia Z SlusarskiArgentinaAmy Elsner RENEWAL
Faith W ButtItalyOnyama Limba NEW
David C SlusarskiItalyIoni Bowcher PROPOSAL
Leon S VenereAustraliaElwin Sharvill NEW
Mayumi S VocelkaArgentinaIvan Magalhaes RENEWAL
Ricardo M CaudySpainXuxue Feng NEW
Maisha F IturbideFranceBernardo Dominic RENEWAL
Munro I BriddickCanadaBernardo Dominic NEW
Ivar L GillianRussiaOnyama Limba NEW
Ashley A MorascaRussiaBernardo Dominic NEW
Leon P ChuiBrazilBernardo Dominic NEW
Arvin N WhobreyAustraliaBernardo Dominic QUALIFIED
Ivar Q NestleFranceAsiya Javayant NEW
Deepesh Y IturbideGermanyAnna Fali RENEWAL
Jeanfrancois M FlosiFranceIoni Bowcher NEW
David R RulapaughRussiaAmy Elsner RENEWAL
Greenwood L WhobreyRussiaIoni Bowcher RENEWAL
Antonio Z RutaArgentinaIoni Bowcher NEGOTIATION
Ivar O GarufiJapanAsiya Javayant NEW
Kadeem U FigeroaUnited KingdomIvan Magalhaes QUALIFIED
Kadeem S NestleCanadaIvan Magalhaes NEGOTIATION
Johnson H TollnerBrazilXuxue Feng NEW
Aditya T SaylorsItalyIoni Bowcher PROPOSAL
Chavez R VocelkaGermanyOnyama Limba NEGOTIATION
Misaki D TollnerUnited KingdomAsiya Javayant PROPOSAL
Ashley K KuskoSpainBernardo Dominic NEW
Ricardo L MorascaCanadaAnna Fali RENEWAL
Leja J BowleyCanadaBernardo Dominic NEW
Kaitlin V CaldareraUnited KingdomBernardo Dominic QUALIFIED
Johnson U NickaUnited KingdomAsiya Javayant QUALIFIED
Jeanfrancois O ChuiRussiaIoni Bowcher QUALIFIED
Murillo U ButtFranceOnyama Limba RENEWAL
Wickens P MarrierIndiaXuxue Feng NEW
Octavia J PerinUnited KingdomXuxue Feng NEW
Rodrigues Y PerinCanadaOnyama Limba UNQUALIFIED
Wickens C FigeroaItalyIvan Magalhaes NEW
Sinclair F NickaFranceBernardo Dominic PROPOSAL
Chavez K KolmetzFranceOnyama Limba UNQUALIFIED
Smith O OldroydSpainAsiya Javayant NEW
Chavez D IturbideSpainElwin Sharvill UNQUALIFIED
Deepesh V InouyeCanadaAnna Fali NEW
Murillo G FerenczSpainIvan Magalhaes RENEWAL
Maria T RulapaughCanadaIvan Magalhaes UNQUALIFIED
Jeanfrancois O FollerGermanyBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Cody B SlusarskiAustraliaStephen Shaw NEW
Antonio W WieserAustraliaIoni Bowcher NEW
Murillo I PerinSpainIvan Magalhaes PROPOSAL
Greenwood H StockhamGermanyStephen Shaw RENEWAL
Maisha H CampainBrazilStephen Shaw NEW
Octavia B StensethSpainIvan Magalhaes RENEWAL
Greenwood C MarrierRussiaAmy Elsner NEGOTIATION
Arvin H RulapaughRussiaElwin Sharvill NEGOTIATION
Sinclair E TollnerRussiaStephen Shaw PROPOSAL
Nicolas O ChuiJapanBernardo Dominic RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Arvin J FollerCanada2026-10-03Printing Dimensions RENEWAL98Ioni Bowcher
1001Isabel H AlbaresArgentina2026-10-16Feltz Printing Service QUALIFIED81Elwin Sharvill
1002Sinclair F FollerAustralia2026-10-08Printing Dimensions UNQUALIFIED71Onyama Limba
1003Darci L IturbideUnited Kingdom2026-10-09Feiner Bros RENEWAL50Ivan Magalhaes
1004Greenwood Z GarufiAustralia2026-10-15Buckley Miller Wright NEW41Asiya Javayant
1005Julie Q DilliardRussia2026-10-17Commercial Press QUALIFIED63Elwin Sharvill
1006Murillo T AmigonFrance2026-10-02Printing Dimensions QUALIFIED45Elwin Sharvill
1007Octavia N NestleJapan2026-10-13Rangoni Of Florence NEW17Asiya Javayant
1008Jeanfrancois H FlosiBrazil2026-10-24Chapman, Ross E Esq UNQUALIFIED70Bernardo Dominic
1009Salvatore O GillianJapan2026-10-10Feltz Printing Service RENEWAL21Bernardo Dominic
1010Octavia C KolmetzGermany2026-10-16Rangoni Of Florence QUALIFIED0Ivan Magalhaes
1011Antonio K RulapaughIndia2026-10-27Chanay, Jeffrey A Esq RENEWAL25Asiya Javayant
1012Wickens O FlosiArgentina2026-10-31Feltz Printing Service PROPOSAL85Ioni Bowcher
1013Izzy V MarrierJapan2026-10-16Feltz Printing Service RENEWAL33Stephen Shaw
1014Kaitlin Y DoeSpain2026-10-14Chemel, James L Cpa NEGOTIATION67Onyama Limba
1015Sinclair Z SchemmerBrazil2026-10-08Truhlar And Truhlar Attys UNQUALIFIED99Onyama Limba
1016Octavia F IturbideRussia2026-10-12Truhlar And Truhlar Attys QUALIFIED63Stephen Shaw
1017Stacey C SaylorsUnited Kingdom2026-10-30Printing Dimensions QUALIFIED87Amy Elsner
1018Arvin A VenereRussia2026-10-08Feltz Printing Service QUALIFIED90Bernardo Dominic
1019Cody E NestleRussia2026-10-10Rousseaux, Michael Esq NEGOTIATION96Xuxue Feng
1020Maria J VocelkaBrazil2026-10-11Benton, John B Jr PROPOSAL5Stephen Shaw
1021Adams Z AmigonSpain2026-10-07Commercial Press UNQUALIFIED81Stephen Shaw
1022Greenwood M GlickBrazil2026-10-22King, Christopher A Esq NEGOTIATION19Xuxue Feng
1023Kaitlin Q NestleIndia2026-10-13Rousseaux, Michael Esq UNQUALIFIED10Ioni Bowcher
1024Mayumi J SergiCanada2026-10-31Dorl, James J Esq UNQUALIFIED9Ivan Magalhaes
1025Ivar P SchemmerBrazil2026-10-28Chemel, James L Cpa NEW96Elwin Sharvill
1026Isabel A PaprockiItaly2026-10-16Chemel, James L Cpa QUALIFIED49Onyama Limba
1027Francesco W AlbaresFrance2026-10-29Morlong Associates QUALIFIED79Ivan Magalhaes
1028Aruna J FlosiBrazil2026-10-07Feltz Printing Service QUALIFIED9Onyama Limba
1029Ashley K DilliardSpain2026-10-29Dorl, James J Esq NEGOTIATION73Elwin Sharvill
1030Alejandro M MorascaJapan2026-10-08Dorl, James J Esq QUALIFIED89Asiya Javayant
1031James X GauchoFrance2026-10-20Feltz Printing Service RENEWAL41Anna Fali
1032Tony B CampainUnited Kingdom2026-10-02Truhlar And Truhlar Attys PROPOSAL54Bernardo Dominic
1033Maria H ShinkoJapan2026-10-28Chapman, Ross E Esq PROPOSAL4Asiya Javayant
1034Ricardo N OstroskyAustralia2026-10-19Morlong Associates NEGOTIATION33Amy Elsner
1035Tony L FerenczAustralia2026-10-31Truhlar And Truhlar Attys RENEWAL77Stephen Shaw
1036Costa C DilliardJapan2026-10-25Feltz Printing Service RENEWAL52Stephen Shaw
1037Darci J GlickGermany2026-10-26Chapman, Ross E Esq NEGOTIATION83Xuxue Feng
1038Kadeem F VocelkaBrazil2026-10-06Dorl, James J Esq NEGOTIATION72Ioni Bowcher
1039Rodrigues X ChuiUnited Kingdom2026-10-08Chemel, James L Cpa UNQUALIFIED52Elwin Sharvill
1040Ricardo H TollnerArgentina2026-10-02Chanay, Jeffrey A Esq NEW77Onyama Limba
1041David P StensethRussia2026-10-13Buckley Miller Wright UNQUALIFIED2Ivan Magalhaes
1042Wickens X NestleFrance2026-10-25Chanay, Jeffrey A Esq UNQUALIFIED90Onyama Limba
1043Leon D StockhamJapan2026-10-29Feiner Bros NEGOTIATION95Amy Elsner
1044Sinclair D StensethRussia2026-10-29Rousseaux, Michael Esq UNQUALIFIED91Anna Fali
1045Mujtaba Q RulapaughIndia2026-10-02Truhlar And Truhlar Attys RENEWAL68Onyama Limba
1046Maisha T ShinkoSpain2026-10-24Truhlar And Truhlar Attys QUALIFIED13Elwin Sharvill
1047Munro S TollnerItaly2026-10-04King, Christopher A Esq RENEWAL24Ioni Bowcher
1048Leja S DoeItaly2026-10-23Dorl, James J Esq PROPOSAL66Bernardo Dominic
1049Rodrigues B StensethGermany2026-10-05Chemel, James L Cpa UNQUALIFIED73Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Jefferson E GillianBrazilIoni Bowcher NEGOTIATION
Leja Z SaylorsJapanXuxue Feng UNQUALIFIED
Alejandro T WhobreyCanadaIoni Bowcher PROPOSAL
Greenwood H FerenczSpainOnyama Limba RENEWAL
Faith O NestleIndiaIoni Bowcher NEGOTIATION
Juan S SergiItalyElwin Sharvill NEW
Deepesh D PoquetteArgentinaXuxue Feng RENEWAL
Darci W GauchoJapanAmy Elsner NEW
Morrow C PaprockiIndiaIoni Bowcher RENEWAL
Francesco H StockhamItalyAnna Fali NEGOTIATION
Maria Q SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Darci U GlickItalyElwin Sharvill RENEWAL
Kadeem D SaylorsUnited KingdomBernardo Dominic NEW
Murillo E TollnerUnited KingdomIvan Magalhaes NEW
Mujtaba P IturbideJapanBernardo Dominic QUALIFIED
Julie O GlickFranceAmy Elsner QUALIFIED
Mayumi M ChuiUnited KingdomElwin Sharvill QUALIFIED
Jones I DoeCanadaOnyama Limba NEGOTIATION
Maria D KolmetzIndiaBernardo Dominic UNQUALIFIED
Leon J DilliardArgentinaAmy Elsner PROPOSAL
Jefferson W NickaGermanyAsiya Javayant UNQUALIFIED
Wickens Y RimCanadaOnyama Limba UNQUALIFIED
Maisha D MacleadGermanyStephen Shaw UNQUALIFIED
Leja I SlusarskiBrazilStephen Shaw UNQUALIFIED
Jones W TollnerSpainIvan Magalhaes NEGOTIATION
Juan V AmigonAustraliaBernardo Dominic UNQUALIFIED
Darci G ButtGermanyOnyama Limba PROPOSAL
Faith Q MacleadJapanIvan Magalhaes NEW
Juan Y CaldareraJapanAsiya Javayant RENEWAL
Maria Q SaylorsSpainXuxue Feng QUALIFIED
Francesco F FollerGermanyOnyama Limba NEGOTIATION
Izzy Q RulapaughBrazilStephen Shaw NEGOTIATION
Murillo Z CampainFranceBernardo Dominic QUALIFIED
Chavez Q PoquetteSpainXuxue Feng PROPOSAL
Aika Q FollerIndiaXuxue Feng QUALIFIED
Jennifer U BriddickArgentinaElwin Sharvill UNQUALIFIED
Juan C FlosiGermanyAsiya Javayant UNQUALIFIED
Ivar T PoquetteFranceElwin Sharvill RENEWAL
Greenwood N RimArgentinaStephen Shaw UNQUALIFIED
Ivar T FerenczSpainAmy Elsner PROPOSAL
Rodrigues P WhobreyItalyAmy Elsner NEGOTIATION
Izzy N FlosiSpainOnyama Limba PROPOSAL
Maisha J SchemmerGermanyOnyama Limba RENEWAL
Juan Q FollerAustraliaElwin Sharvill RENEWAL
Mujtaba F NickaSpainIvan Magalhaes UNQUALIFIED
Deepesh O WhobreyBrazilAmy Elsner NEW
Adams Z GlickFranceElwin Sharvill PROPOSAL
Julie F DilliardGermanyXuxue Feng PROPOSAL
Adams F SchemmerFranceAsiya Javayant NEGOTIATION
Emily C FerenczSpainAnna Fali RENEWAL
Frozen Columns
Name
Misaki I Malet
Darci U Garufi
Murillo M Shinko
Nicolas G Figeroa
Wickens Y Ostrosky
Misaki L Gaucho
Faith O Dilliard
Chavez F Briddick
Johnson R Caldarera
Clifford K Rim
Leon Q Iturbide
Leon Q Wieser
Jones V Stenseth
Maisha S Slusarski
Jennifer M Doe
Izzy S Poquette
Murillo B Bowley
Aruna F Paprocki
Aditya O Amigon
Maria I Shinko
Maria G Oldroyd
Jeanfrancois R Nestle
Kadeem V Tollner
Mayumi V Darakjy
Johnson Z Rim
James Y Ruta
Johnson S Saylors
James H Stockham
Mayumi C Oldroyd
Arvin M Briddick
Clifford Z Caldarera
Costa L Iturbide
Clifford R Gaucho
Murillo J Garufi
Ricardo E Albares
Juan V Garufi
Silvio U Sergi
Sinclair R Figeroa
Clifford L Malet
Claire E Bolognia
Alejandro G Wieser
Arvin W Iturbide
Izzy C Nicka
Morrow A Wieser
Rodrigues T Glick
Clifford M Foller
Aruna M Glick
Francesco L Paprocki
Silvio B Saylors
Claire I Ferencz
IdCountryDate
1000Japan2026-10-03
1001Brazil2026-10-04
1002Australia2026-10-22
1003Japan2026-10-17
1004United Kingdom2026-10-20
1005Spain2026-10-08
1006India2026-10-14
1007United Kingdom2026-10-13
1008Italy2026-10-04
1009Canada2026-10-15
1010Japan2026-10-27
1011India2026-10-11
1012Russia2026-10-03
1013Japan2026-10-19
1014United Kingdom2026-10-07
1015Germany2026-10-10
1016United Kingdom2026-10-27
1017Argentina2026-10-21
1018France2026-10-12
1019Russia2026-10-07
1020Japan2026-10-31
1021Germany2026-10-27
1022United Kingdom2026-10-27
1023France2026-10-19
1024Spain2026-10-25
1025Australia2026-10-24
1026Brazil2026-10-13
1027Italy2026-10-08
1028Spain2026-10-08
1029France2026-10-22
1030Germany2026-10-23
1031Spain2026-10-23
1032Argentina2026-10-26
1033Russia2026-10-17
1034Canada2026-10-04
1035France2026-10-19
1036Argentina2026-10-28
1037India2026-10-22
1038India2026-10-21
1039Brazil2026-10-04
1040United Kingdom2026-10-17
1041United Kingdom2026-10-24
1042Argentina2026-10-13
1043Argentina2026-10-23
1044India2026-10-16
1045Australia2026-10-06
1046India2026-10-30
1047Germany2026-10-20
1048Japan2026-10-24
1049Russia2026-10-15

On-Demand Data

NameIdCountryDate
Izzy X Butt1000Italy2026-10-05
Leja V Bolognia1001Japan2026-10-12
Claire F Briddick1002United Kingdom2026-10-28
Jefferson V Paprocki1003Japan2026-10-31
Claire G Slusarski1004Brazil2026-10-13
Kadeem H Paprocki1005Spain2026-10-05
Leja B Nestle1006India2026-10-29
Sinclair E Albares1007Canada2026-10-04
Ricardo L Vocelka1008United Kingdom2026-10-07
Arvin E Poquette1009Spain2026-10-27
Alejandro J Royster1010Brazil2026-10-26
Leon Y Caldarera1011Brazil2026-10-13
Antonio M Waycott1012Spain2026-10-13
Jefferson U Vocelka1013Japan2026-10-30
Aditya U Royster1014Canada2026-10-13
Francesco H Bolognia1015Spain2026-10-26
Salvatore I Briddick1016Brazil2026-10-10
Johnson T Nicka1017Japan2026-10-25
Jeanfrancois F Paprocki1018Spain2026-10-14
Costa H Ferencz1019Russia2026-10-12
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo Y ButtCanadaAmy Elsner NEW
Deepesh H TollnerSpainIvan Magalhaes QUALIFIED
Nicolas X WieserFranceIvan Magalhaes PROPOSAL
Murillo T VocelkaUnited KingdomAsiya Javayant NEW
Antonio J TollnerIndiaElwin Sharvill NEGOTIATION
David F OstroskyBrazilAsiya Javayant NEW
Nicolas X CaldareraGermanyStephen Shaw PROPOSAL
Smith G GlickAustraliaAmy Elsner NEGOTIATION
Greenwood R GarufiUnited KingdomOnyama Limba RENEWAL
Claire K IturbideRussiaIvan Magalhaes QUALIFIED
Munro E KuskoJapanIoni Bowcher PROPOSAL
Sinclair P PaprockiItalyStephen Shaw NEGOTIATION
Izzy L FlosiItalyAnna Fali UNQUALIFIED
Nicolas B WaycottAustraliaAnna Fali UNQUALIFIED
Sinclair T TollnerRussiaAsiya Javayant NEGOTIATION
Rodrigues B OldroydAustraliaXuxue Feng RENEWAL
Adams M KolmetzUnited KingdomXuxue Feng QUALIFIED
Silvio B WieserRussiaAnna Fali RENEWAL
Leja G OstroskyBrazilElwin Sharvill QUALIFIED
Tony Z GauchoJapanStephen Shaw NEW
Silvio O PoquetteRussiaBernardo Dominic NEGOTIATION
Aika P ChuiCanadaXuxue Feng NEW
Aika C KuskoAustraliaElwin Sharvill PROPOSAL
Johnson E CaldareraUnited KingdomStephen Shaw NEGOTIATION
Leon H MarrierItalyIvan Magalhaes NEGOTIATION
Isabel Z OldroydArgentinaElwin Sharvill NEW
Antonio R RulapaughAustraliaStephen Shaw RENEWAL
Rodrigues E AlbaresArgentinaOnyama Limba QUALIFIED
Aditya F KolmetzItalyAmy Elsner NEGOTIATION
Tony W NickaIndiaIvan Magalhaes PROPOSAL
Maria H SlusarskiAustraliaIoni Bowcher NEGOTIATION
Sinclair L GillianItalyIvan Magalhaes PROPOSAL
Kaitlin I ChuiUnited KingdomAnna Fali UNQUALIFIED
Adams P MarrierAustraliaIvan Magalhaes PROPOSAL
Claire B BologniaIndiaBernardo Dominic PROPOSAL
Antonio H BowleyIndiaIoni Bowcher PROPOSAL
Clifford Y AlbaresUnited KingdomOnyama Limba NEW
Aditya H ShinkoFranceElwin Sharvill QUALIFIED
Jeanfrancois P SergiIndiaElwin Sharvill QUALIFIED
Murillo G BriddickArgentinaIvan Magalhaes UNQUALIFIED

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