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
Wickens X MaletCanadaElwin Sharvill PROPOSAL
Johnson S VocelkaUnited KingdomXuxue Feng NEGOTIATION
Faith A SaylorsBrazilAmy Elsner RENEWAL
Wickens H VenereSpainBernardo Dominic NEGOTIATION
Maisha X MacleadFranceIoni Bowcher NEGOTIATION
Aika T KolmetzBrazilAsiya Javayant NEW
David B GarufiGermanyIvan Magalhaes RENEWAL
Kaitlin M PerinBrazilAmy Elsner PROPOSAL
Maria W RoysterRussiaAmy Elsner RENEWAL
Juan U FigeroaBrazilAsiya Javayant RENEWAL
Silvio S BriddickItalyStephen Shaw PROPOSAL
Kaitlin R MaletArgentinaXuxue Feng NEGOTIATION
Leja D NickaCanadaAsiya Javayant PROPOSAL
Kaitlin O SaylorsUnited KingdomOnyama Limba NEW
Juan W RulapaughAustraliaIvan Magalhaes RENEWAL
Stacey J DilliardGermanyAmy Elsner PROPOSAL
Johnson S CampainIndiaAnna Fali PROPOSAL
Murillo P BriddickRussiaStephen Shaw NEW
Johnson F AlbaresBrazilElwin Sharvill UNQUALIFIED
Isabel O KolmetzJapanAnna Fali NEW
Aika K MaletUnited KingdomElwin Sharvill QUALIFIED
Mujtaba M KolmetzArgentinaElwin Sharvill UNQUALIFIED
Aditya Z AmigonIndiaAnna Fali UNQUALIFIED
Salvatore F SlusarskiGermanyIoni Bowcher RENEWAL
Misaki C GauchoGermanyIvan Magalhaes UNQUALIFIED
Kadeem P IturbideJapanAsiya Javayant UNQUALIFIED
Aika U PoquetteSpainBernardo Dominic UNQUALIFIED
Kadeem D MorascaAustraliaBernardo Dominic PROPOSAL
Johnson R RutaSpainBernardo Dominic NEGOTIATION
David U CampainArgentinaStephen Shaw PROPOSAL
Juan Y SaylorsGermanyOnyama Limba NEW
Francesco G WaycottSpainAnna Fali QUALIFIED
Tony O StockhamJapanAnna Fali RENEWAL
Leja S InouyeUnited KingdomIoni Bowcher NEW
Rodrigues M MaletArgentinaElwin Sharvill NEGOTIATION
Mujtaba G InouyeAustraliaXuxue Feng NEW
Costa R FlosiArgentinaBernardo Dominic QUALIFIED
Ivar S WhobreyBrazilIvan Magalhaes QUALIFIED
Costa J RoysterUnited KingdomElwin Sharvill NEGOTIATION
Antonio V NestleBrazilStephen Shaw UNQUALIFIED
Cody F AmigonCanadaAsiya Javayant RENEWAL
Costa Z FlosiCanadaOnyama Limba NEGOTIATION
Aruna G TollnerAustraliaStephen Shaw PROPOSAL
Kadeem J MacleadCanadaIvan Magalhaes NEGOTIATION
Alejandro G StockhamAustraliaBernardo Dominic UNQUALIFIED
Kaitlin A MarrierBrazilBernardo Dominic NEW
Kaitlin G SlusarskiIndiaAmy Elsner PROPOSAL
Isabel B FollerItalyXuxue Feng QUALIFIED
Claire C MorascaUnited KingdomStephen Shaw RENEWAL
Leja E CaudySpainAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Jennifer C CaudyFranceAnna Fali PROPOSAL
Faith S FollerJapanOnyama Limba UNQUALIFIED
Aruna Y AmigonArgentinaAsiya Javayant NEGOTIATION
Izzy B NickaUnited KingdomAnna Fali NEGOTIATION
Aika L SergiBrazilIoni Bowcher PROPOSAL
Adams K SlusarskiJapanAnna Fali RENEWAL
Cody K KolmetzBrazilAnna Fali NEGOTIATION
Ricardo A DoeSpainElwin Sharvill NEGOTIATION
Ricardo W NestleUnited KingdomIvan Magalhaes NEW
Claire Z SlusarskiCanadaAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar K MacleadUnited Kingdom2026-10-03Chanay, Jeffrey A Esq NEGOTIATION93Ivan Magalhaes
1001Jones J MorascaArgentina2026-10-10Feltz Printing Service PROPOSAL60Onyama Limba
1002Rodrigues T BriddickRussia2026-10-02Dorl, James J Esq PROPOSAL30Onyama Limba
1003Juan V SergiFrance2026-10-01Rangoni Of Florence NEGOTIATION69Ioni Bowcher
1004Nicolas P WaycottIndia2026-10-12Truhlar And Truhlar Attys NEW27Stephen Shaw
1005Morrow P GauchoArgentina2026-10-04Rangoni Of Florence UNQUALIFIED74Onyama Limba
1006Aditya N SlusarskiJapan2026-10-15Dorl, James J Esq RENEWAL42Elwin Sharvill
1007Nicolas H PoquetteUnited Kingdom2026-09-28Dorl, James J Esq QUALIFIED73Bernardo Dominic
1008Salvatore A MacleadIndia2026-09-25Rousseaux, Michael Esq NEW9Ioni Bowcher
1009Wickens U BowleyUnited Kingdom2026-09-28King, Christopher A Esq NEW6Amy Elsner
1010Jennifer X KolmetzRussia2026-10-15Benton, John B Jr QUALIFIED24Ioni Bowcher
1011Nicolas H BowleyUnited Kingdom2026-09-29Rangoni Of Florence NEGOTIATION50Bernardo Dominic
1012Ivar A SlusarskiGermany2026-09-21Dorl, James J Esq NEGOTIATION9Anna Fali
1013Octavia M VocelkaGermany2026-10-03Benton, John B Jr NEGOTIATION42Elwin Sharvill
1014Costa L VenereArgentina2026-10-04King, Christopher A Esq UNQUALIFIED16Ivan Magalhaes
1015Isabel W DarakjyIndia2026-10-18Feltz Printing Service UNQUALIFIED58Xuxue Feng
1016Sinclair O GlickIndia2026-10-13Buckley Miller Wright QUALIFIED15Stephen Shaw
1017Emily N PaprockiIndia2026-10-04Chemel, James L Cpa PROPOSAL54Asiya Javayant
1018Rodrigues F StensethUnited Kingdom2026-10-11Benton, John B Jr NEGOTIATION63Anna Fali
1019Tony F FollerArgentina2026-10-19Morlong Associates QUALIFIED69Xuxue Feng
1020Ricardo Y DarakjySpain2026-10-13Feltz Printing Service UNQUALIFIED66Stephen Shaw
1021Juan E CaldareraIndia2026-10-14Dorl, James J Esq UNQUALIFIED13Amy Elsner
1022Julie M StensethJapan2026-10-05Benton, John B Jr NEW14Ioni Bowcher
1023Maria O RoysterUnited Kingdom2026-10-12Buckley Miller Wright UNQUALIFIED27Onyama Limba
1024Clifford P GillianBrazil2026-10-12Chanay, Jeffrey A Esq UNQUALIFIED1Onyama Limba
1025Izzy N MaletCanada2026-09-27Rangoni Of Florence NEGOTIATION95Elwin Sharvill
1026James Y BriddickBrazil2026-10-13Printing Dimensions NEW68Onyama Limba
1027Murillo D BologniaJapan2026-10-15Chapman, Ross E Esq UNQUALIFIED19Ioni Bowcher
1028Clifford V RimBrazil2026-10-03Printing Dimensions NEW23Anna Fali
1029Isabel Z FigeroaSpain2026-10-03Printing Dimensions QUALIFIED28Anna Fali
1030Silvio O TollnerItaly2026-10-11Rousseaux, Michael Esq RENEWAL67Elwin Sharvill
1031Mujtaba P RoysterGermany2026-09-30Chapman, Ross E Esq NEW70Elwin Sharvill
1032Darci Q NickaSpain2026-09-20King, Christopher A Esq RENEWAL25Ivan Magalhaes
1033Sinclair A GauchoAustralia2026-10-01King, Christopher A Esq QUALIFIED81Elwin Sharvill
1034Juan T NickaFrance2026-10-03Feltz Printing Service RENEWAL99Xuxue Feng
1035Greenwood L StensethArgentina2026-10-05Benton, John B Jr PROPOSAL41Elwin Sharvill
1036Morrow A IturbideUnited Kingdom2026-09-22Printing Dimensions QUALIFIED90Anna Fali
1037Aika K MorascaFrance2026-09-25Feltz Printing Service RENEWAL87Amy Elsner
1038Munro T WhobreyCanada2026-10-10Rangoni Of Florence PROPOSAL5Onyama Limba
1039Leja K GauchoIndia2026-10-17Morlong Associates PROPOSAL60Anna Fali
1040Greenwood Q KolmetzSpain2026-09-30Feltz Printing Service PROPOSAL92Elwin Sharvill
1041Ivar L KolmetzFrance2026-09-20Truhlar And Truhlar Attys UNQUALIFIED0Ivan Magalhaes
1042Francesco S KuskoAustralia2026-10-14Chanay, Jeffrey A Esq PROPOSAL90Anna Fali
1043Emily S CaudyItaly2026-10-13King, Christopher A Esq NEW41Amy Elsner
1044Leja S GillianCanada2026-10-02Printing Dimensions UNQUALIFIED31Stephen Shaw
1045Claire C IturbideBrazil2026-10-04Morlong Associates RENEWAL45Xuxue Feng
1046Ivar F WhobreyFrance2026-09-20Rangoni Of Florence PROPOSAL76Stephen Shaw
1047Arvin L RulapaughIndia2026-10-10Rangoni Of Florence UNQUALIFIED11Stephen Shaw
1048Arvin Y OstroskyBrazil2026-10-11Chapman, Ross E Esq NEGOTIATION64Ioni Bowcher
1049Salvatore C KolmetzBrazil2026-10-11Buckley Miller Wright RENEWAL82Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Aika P ButtRussiaIvan Magalhaes UNQUALIFIED
Stacey L InouyeUnited KingdomElwin Sharvill RENEWAL
Francesco M MorascaItalyIoni Bowcher UNQUALIFIED
Arvin O TollnerJapanXuxue Feng NEGOTIATION
Costa H StensethJapanAsiya Javayant NEW
Tony L WhobreyAustraliaIvan Magalhaes PROPOSAL
Jeanfrancois B MarrierAustraliaAnna Fali NEW
Maria M DoeJapanStephen Shaw UNQUALIFIED
Juan G WaycottCanadaIvan Magalhaes NEGOTIATION
Clifford S SaylorsFranceBernardo Dominic QUALIFIED
Jefferson P NickaSpainAmy Elsner RENEWAL
Nicolas U MaletJapanIoni Bowcher NEGOTIATION
Izzy E FigeroaItalyElwin Sharvill NEGOTIATION
Misaki Y FerenczBrazilXuxue Feng NEGOTIATION
Salvatore S NickaGermanyAsiya Javayant QUALIFIED
Chavez H BowleyIndiaIoni Bowcher UNQUALIFIED
Ashley B PoquetteSpainOnyama Limba NEGOTIATION
Maisha Y VenereArgentinaBernardo Dominic PROPOSAL
Chavez Z KuskoJapanOnyama Limba NEW
Ashley A AlbaresFranceIoni Bowcher PROPOSAL
Murillo L ShinkoFranceXuxue Feng RENEWAL
Octavia Y WaycottIndiaXuxue Feng UNQUALIFIED
Juan Z NickaRussiaIoni Bowcher NEW
Claire B SlusarskiItalyXuxue Feng PROPOSAL
Isabel B MaletUnited KingdomAsiya Javayant NEW
Misaki H StockhamItalyAnna Fali UNQUALIFIED
Francesco D ShinkoIndiaAmy Elsner RENEWAL
Juan Q CampainCanadaIoni Bowcher UNQUALIFIED
Ashley H PoquetteUnited KingdomIvan Magalhaes RENEWAL
Maria U SergiCanadaXuxue Feng NEW
Morrow G SchemmerCanadaAnna Fali NEGOTIATION
Chavez J FerenczBrazilAsiya Javayant PROPOSAL
Costa S CaldareraCanadaBernardo Dominic RENEWAL
Rodrigues O PerinUnited KingdomAnna Fali UNQUALIFIED
Johnson S SlusarskiItalyAmy Elsner QUALIFIED
Wickens P FollerCanadaIoni Bowcher NEGOTIATION
Costa E RimCanadaIvan Magalhaes RENEWAL
Rodrigues Q StockhamAustraliaElwin Sharvill UNQUALIFIED
Isabel X OldroydAustraliaIoni Bowcher QUALIFIED
Rodrigues P BologniaIndiaElwin Sharvill RENEWAL
Cody Q OstroskyAustraliaElwin Sharvill QUALIFIED
Greenwood N StockhamJapanOnyama Limba QUALIFIED
Francesco R SlusarskiBrazilAmy Elsner NEGOTIATION
Salvatore G PaprockiGermanyBernardo Dominic PROPOSAL
Tony O AmigonArgentinaAnna Fali NEGOTIATION
Silvio G RimArgentinaAnna Fali NEGOTIATION
Munro U RoysterArgentinaXuxue Feng NEGOTIATION
Aruna E DoeUnited KingdomOnyama Limba UNQUALIFIED
Jennifer W GauchoSpainOnyama Limba NEGOTIATION
Darci U StensethCanadaBernardo Dominic PROPOSAL
Frozen Columns
Name
Stacey T Gaucho
Julie N Iturbide
Mujtaba H Venere
Julie L Gaucho
Ashley O Saylors
Morrow B Paprocki
David B Flosi
Jefferson Y Gaucho
Aruna A Ferencz
Deepesh X Caudy
Octavia N Venere
Salvatore F Stenseth
Aika W Whobrey
Antonio E Butt
James A Paprocki
Julie O Slusarski
Aruna E Amigon
Leja H Tollner
Izzy Q Garufi
Munro A Garufi
Tony W Briddick
Juan F Stockham
Smith Q Inouye
Claire L Maclead
Adams Z Slusarski
Claire X Kolmetz
Rodrigues D Caldarera
Leon R Venere
Salvatore O Bowley
Maisha P Flosi
Smith M Malet
Jones E Maclead
Julie M Inouye
Leja D Shinko
Stacey A Butt
Mayumi F Glick
Jennifer U Ostrosky
Mujtaba Y Shinko
Emily G Doe
Clifford O Vocelka
Cody Y Amigon
Jennifer E Glick
Kadeem B Rim
Munro Y Kusko
Aruna B Tollner
Adams K Kolmetz
Jones D Figeroa
David V Perin
Aditya A Amigon
Silvio J Paprocki
IdCountryDate
1000United Kingdom2026-10-09
1001Canada2026-10-03
1002Germany2026-10-13
1003Brazil2026-09-24
1004Brazil2026-10-03
1005Japan2026-10-15
1006India2026-09-29
1007Italy2026-10-16
1008Japan2026-10-15
1009France2026-10-13
1010Germany2026-09-24
1011Russia2026-09-28
1012Japan2026-10-03
1013Japan2026-10-14
1014France2026-10-18
1015Brazil2026-10-04
1016United Kingdom2026-10-19
1017Canada2026-10-12
1018France2026-10-14
1019United Kingdom2026-09-24
1020Brazil2026-10-03
1021United Kingdom2026-10-19
1022India2026-10-13
1023Germany2026-10-06
1024Italy2026-10-15
1025Japan2026-10-04
1026France2026-09-25
1027Japan2026-10-19
1028Germany2026-09-20
1029Italy2026-10-04
1030United Kingdom2026-10-05
1031Germany2026-10-01
1032Brazil2026-10-11
1033Germany2026-10-07
1034Spain2026-09-20
1035India2026-09-29
1036United Kingdom2026-10-18
1037Argentina2026-10-05
1038Spain2026-10-13
1039Brazil2026-09-24
1040Spain2026-09-24
1041Brazil2026-10-07
1042Argentina2026-10-11
1043Australia2026-09-27
1044Brazil2026-10-14
1045Russia2026-09-25
1046United Kingdom2026-09-27
1047Spain2026-09-22
1048Australia2026-10-12
1049Brazil2026-10-04

On-Demand Data

NameIdCountryDate
Chavez L Venere1000Australia2026-09-22
Maria R Maclead1001France2026-09-28
Darci Y Caldarera1002Japan2026-10-14
Alejandro K Dilliard1003Argentina2026-10-05
Silvio T Figeroa1004Russia2026-09-25
Greenwood B Marrier1005Canada2026-10-17
Rodrigues N Albares1006Canada2026-10-18
Cody I Foller1007India2026-09-26
Francesco M Slusarski1008Italy2026-10-04
Aika D Butt1009Japan2026-10-14
Ashley N Stockham1010Italy2026-09-27
Deepesh P Dilliard1011United Kingdom2026-10-19
Aditya B Ferencz1012Japan2026-10-16
Faith S Sergi1013India2026-10-10
Aditya X Whobrey1014United Kingdom2026-10-06
Adams U Ruta1015Brazil2026-10-08
Izzy L Malet1016Germany2026-10-03
James A Nestle1017France2026-10-19
Smith Z Briddick1018Russia2026-10-06
Darci T Iturbide1019Canada2026-10-17
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Johnson D FlosiBrazilBernardo Dominic QUALIFIED
Emily V SergiSpainIvan Magalhaes NEW
Claire P SchemmerAustraliaXuxue Feng NEW
Munro A VocelkaRussiaAnna Fali PROPOSAL
Octavia C ShinkoGermanyAnna Fali QUALIFIED
Jefferson V VenereAustraliaIvan Magalhaes QUALIFIED
Rodrigues P MaletUnited KingdomElwin Sharvill QUALIFIED
Munro P CampainGermanyStephen Shaw NEGOTIATION
Julie I StockhamUnited KingdomStephen Shaw NEGOTIATION
Rodrigues K CaudyArgentinaOnyama Limba UNQUALIFIED
Leon M MaletItalyBernardo Dominic NEGOTIATION
Chavez L RoysterGermanyOnyama Limba RENEWAL
Adams J StensethItalyAmy Elsner NEW
Misaki X CaudyItalyElwin Sharvill QUALIFIED
Jefferson K NickaItalyAsiya Javayant QUALIFIED
Octavia O WaycottJapanXuxue Feng NEGOTIATION
Leon M VocelkaCanadaOnyama Limba UNQUALIFIED
Alejandro A RutaItalyAmy Elsner UNQUALIFIED
Darci G WhobreyArgentinaIvan Magalhaes QUALIFIED
Aika U VenereFranceOnyama Limba PROPOSAL
Deepesh I MaletRussiaElwin Sharvill RENEWAL
Clifford E OstroskyRussiaAmy Elsner NEW
Faith U NestleBrazilAsiya Javayant RENEWAL
Julie R RulapaughAustraliaElwin Sharvill NEW
David M PaprockiGermanyElwin Sharvill PROPOSAL
Jefferson S CaudyJapanAmy Elsner QUALIFIED
Izzy D AlbaresItalyIvan Magalhaes NEW
Maria S WhobreyArgentinaAnna Fali QUALIFIED
Clifford R DoeItalyOnyama Limba RENEWAL
Maisha N ButtFranceIoni Bowcher NEW
Antonio U StockhamFranceIoni Bowcher QUALIFIED
Mayumi U VenereRussiaElwin Sharvill QUALIFIED
Chavez T ChuiFranceIvan Magalhaes UNQUALIFIED
Jefferson V PaprockiArgentinaXuxue Feng NEW
Jennifer I RulapaughItalyStephen Shaw NEGOTIATION
Maisha F RimSpainXuxue Feng UNQUALIFIED
Wickens V MaletFranceOnyama Limba NEGOTIATION
Arvin U AmigonIndiaAsiya Javayant QUALIFIED
Salvatore U FerenczAustraliaAsiya Javayant NEW
Murillo R MarrierCanadaOnyama 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>