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
Octavia C TollnerItalyAsiya Javayant NEW
Smith I MaletUnited KingdomIoni Bowcher RENEWAL
Johnson B StensethArgentinaIvan Magalhaes PROPOSAL
Clifford K StensethSpainAmy Elsner QUALIFIED
Salvatore E FerenczUnited KingdomAnna Fali RENEWAL
Tony P CaudyFranceBernardo Dominic RENEWAL
Munro W InouyeSpainXuxue Feng UNQUALIFIED
Kadeem F MacleadBrazilAnna Fali NEW
Morrow P RimCanadaAmy Elsner PROPOSAL
Aruna E SaylorsRussiaStephen Shaw QUALIFIED
Wickens B ButtBrazilElwin Sharvill PROPOSAL
Julie Y FigeroaJapanIoni Bowcher UNQUALIFIED
Smith B DoeAustraliaIoni Bowcher NEGOTIATION
Darci B DoeRussiaIvan Magalhaes NEGOTIATION
Ivar Y StockhamFranceElwin Sharvill QUALIFIED
Clifford E GauchoRussiaXuxue Feng QUALIFIED
Jennifer K GillianCanadaAnna Fali UNQUALIFIED
Leon I WhobreyBrazilAsiya Javayant RENEWAL
Sinclair I AlbaresSpainIvan Magalhaes QUALIFIED
Jeanfrancois K RulapaughIndiaIoni Bowcher UNQUALIFIED
David Z RutaBrazilAmy Elsner NEGOTIATION
Deepesh F FerenczFranceAmy Elsner RENEWAL
Mujtaba P CaldareraCanadaIvan Magalhaes RENEWAL
Greenwood R SaylorsItalyElwin Sharvill NEGOTIATION
Leon L ButtArgentinaAmy Elsner NEW
Antonio W MarrierGermanyAsiya Javayant QUALIFIED
Stacey S PaprockiItalyStephen Shaw NEGOTIATION
Adams F MacleadGermanyBernardo Dominic QUALIFIED
Izzy O BowleyBrazilAsiya Javayant QUALIFIED
Aika L CaldareraCanadaBernardo Dominic RENEWAL
Silvio P MorascaAustraliaAsiya Javayant NEGOTIATION
Octavia R KuskoBrazilAnna Fali UNQUALIFIED
Clifford X BriddickItalyOnyama Limba NEGOTIATION
Salvatore S AmigonAustraliaXuxue Feng UNQUALIFIED
Arvin H MaletArgentinaStephen Shaw QUALIFIED
Stacey K IturbideItalyIvan Magalhaes PROPOSAL
Octavia H ChuiUnited KingdomOnyama Limba NEGOTIATION
Antonio M OstroskyBrazilAnna Fali NEW
Faith O AmigonUnited KingdomStephen Shaw NEW
David L ChuiIndiaAsiya Javayant PROPOSAL
Misaki F WieserIndiaXuxue Feng UNQUALIFIED
Leja H BologniaJapanXuxue Feng PROPOSAL
Silvio H FlosiFranceBernardo Dominic PROPOSAL
Stacey L GlickGermanyAmy Elsner NEW
Misaki X IturbideFranceXuxue Feng NEGOTIATION
Claire K MarrierAustraliaElwin Sharvill UNQUALIFIED
Aditya O KuskoIndiaIvan Magalhaes NEW
Francesco A StensethSpainXuxue Feng UNQUALIFIED
Clifford R BriddickGermanyOnyama Limba RENEWAL
Wickens J SchemmerRussiaElwin Sharvill NEW
Horizontal
NameCountryRepresentativeStatus
Faith W SaylorsFranceElwin Sharvill RENEWAL
Octavia O PaprockiCanadaIoni Bowcher QUALIFIED
Ricardo A GlickItalyIoni Bowcher NEGOTIATION
Chavez I FollerSpainIoni Bowcher PROPOSAL
Aditya P InouyeIndiaAsiya Javayant NEW
Tony Y KuskoRussiaElwin Sharvill NEGOTIATION
Antonio F AmigonRussiaStephen Shaw UNQUALIFIED
Maisha K BologniaJapanBernardo Dominic PROPOSAL
Ricardo N NestleJapanBernardo Dominic QUALIFIED
Juan W IturbideItalyIvan Magalhaes NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jones T KolmetzAustralia2026-09-10Buckley Miller Wright RENEWAL57Stephen Shaw
1001Mayumi I RulapaughFrance2026-09-11Buckley Miller Wright NEW78Ivan Magalhaes
1002Izzy E CaldareraFrance2026-09-06Chemel, James L Cpa NEGOTIATION44Stephen Shaw
1003Francesco K AlbaresAustralia2026-09-15Chemel, James L Cpa PROPOSAL1Elwin Sharvill
1004Jefferson M KuskoBrazil2026-09-19Chanay, Jeffrey A Esq UNQUALIFIED18Elwin Sharvill
1005Silvio Y MacleadCanada2026-09-28Truhlar And Truhlar Attys NEGOTIATION93Ivan Magalhaes
1006Stacey I TollnerRussia2026-09-16Chemel, James L Cpa NEGOTIATION64Bernardo Dominic
1007Tony W IturbideItaly2026-09-06Rangoni Of Florence PROPOSAL46Onyama Limba
1008Maria I PaprockiUnited Kingdom2026-09-24Feltz Printing Service NEGOTIATION49Bernardo Dominic
1009Jefferson D StensethUnited Kingdom2026-09-18Morlong Associates UNQUALIFIED29Stephen Shaw
1010Leja G ChuiArgentina2026-09-08Printing Dimensions NEW85Bernardo Dominic
1011Clifford B CaudyJapan2026-09-20Chemel, James L Cpa PROPOSAL59Ioni Bowcher
1012Maisha Q RulapaughAustralia2026-09-10Buckley Miller Wright RENEWAL25Bernardo Dominic
1013Greenwood W ChuiArgentina2026-09-16Buckley Miller Wright RENEWAL57Amy Elsner
1014Adams H NestleIndia2026-09-26Commercial Press RENEWAL95Ivan Magalhaes
1015Claire Z AmigonRussia2026-09-27Morlong Associates RENEWAL1Xuxue Feng
1016Aditya H AmigonItaly2026-09-22Chanay, Jeffrey A Esq UNQUALIFIED99Ioni Bowcher
1017Jennifer R StensethAustralia2026-09-23Feiner Bros RENEWAL29Onyama Limba
1018Faith R OldroydFrance2026-09-30Chanay, Jeffrey A Esq NEGOTIATION91Asiya Javayant
1019Jennifer V BologniaItaly2026-09-02Buckley Miller Wright NEW38Stephen Shaw
1020Munro E WieserItaly2026-09-28Printing Dimensions NEW89Ivan Magalhaes
1021Emily W WieserUnited Kingdom2026-09-10Dorl, James J Esq NEW93Amy Elsner
1022James F CaldareraArgentina2026-09-27Printing Dimensions UNQUALIFIED12Onyama Limba
1023Ashley G AlbaresIndia2026-09-26Truhlar And Truhlar Attys NEW95Onyama Limba
1024Sinclair F OstroskyAustralia2026-09-25King, Christopher A Esq QUALIFIED81Elwin Sharvill
1025Kaitlin D FlosiAustralia2026-09-23Feiner Bros PROPOSAL3Stephen Shaw
1026Misaki P OldroydItaly2026-09-26Buckley Miller Wright NEGOTIATION22Elwin Sharvill
1027Julie V DarakjyGermany2026-09-06King, Christopher A Esq QUALIFIED95Onyama Limba
1028Murillo D ShinkoJapan2026-09-29Commercial Press RENEWAL24Amy Elsner
1029Deepesh P TollnerIndia2026-09-17Rangoni Of Florence UNQUALIFIED0Xuxue Feng
1030Stacey I DoeArgentina2026-09-04Rangoni Of Florence RENEWAL32Xuxue Feng
1031David V GarufiBrazil2026-09-11Rousseaux, Michael Esq UNQUALIFIED16Ivan Magalhaes
1032Aditya N RulapaughUnited Kingdom2026-09-09Truhlar And Truhlar Attys PROPOSAL4Xuxue Feng
1033Ashley W VocelkaAustralia2026-09-14Chemel, James L Cpa QUALIFIED61Ivan Magalhaes
1034Adams L MarrierItaly2026-09-23Feltz Printing Service RENEWAL49Elwin Sharvill
1035Nicolas P BowleyFrance2026-09-14Chapman, Ross E Esq RENEWAL47Bernardo Dominic
1036Greenwood L PerinIndia2026-09-14Truhlar And Truhlar Attys RENEWAL23Amy Elsner
1037Octavia W DoeArgentina2026-09-11Feltz Printing Service QUALIFIED93Elwin Sharvill
1038Claire D KolmetzArgentina2026-09-26Printing Dimensions NEW10Stephen Shaw
1039Julie S WhobreyBrazil2026-09-21King, Christopher A Esq UNQUALIFIED55Asiya Javayant
1040Juan A KolmetzBrazil2026-09-17Chanay, Jeffrey A Esq RENEWAL35Anna Fali
1041Rodrigues P IturbideGermany2026-09-27Buckley Miller Wright QUALIFIED55Amy Elsner
1042Cody U AlbaresUnited Kingdom2026-09-29Chemel, James L Cpa PROPOSAL69Anna Fali
1043Leon A OstroskyGermany2026-09-21Truhlar And Truhlar Attys QUALIFIED67Stephen Shaw
1044Leon K RoysterGermany2026-09-19Truhlar And Truhlar Attys NEW41Anna Fali
1045Juan N WieserItaly2026-09-04Rousseaux, Michael Esq RENEWAL97Asiya Javayant
1046Darci O NickaIndia2026-09-21Chanay, Jeffrey A Esq RENEWAL0Elwin Sharvill
1047Jeanfrancois C RimArgentina2026-09-17Truhlar And Truhlar Attys QUALIFIED93Ivan Magalhaes
1048Costa W FigeroaItaly2026-09-29Dorl, James J Esq RENEWAL53Anna Fali
1049Alejandro K GauchoAustralia2026-09-23Chapman, Ross E Esq NEW41Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Sinclair M MarrierArgentinaOnyama Limba UNQUALIFIED
Alejandro D IturbideSpainXuxue Feng RENEWAL
Emily Y RoysterGermanyAsiya Javayant QUALIFIED
Claire J RimSpainAnna Fali UNQUALIFIED
Antonio N MaletCanadaAnna Fali PROPOSAL
Cody D ButtArgentinaBernardo Dominic QUALIFIED
Francesco J GlickFranceElwin Sharvill NEGOTIATION
Greenwood Q KolmetzCanadaStephen Shaw UNQUALIFIED
Mayumi W FigeroaRussiaAmy Elsner RENEWAL
Jefferson U GauchoUnited KingdomAmy Elsner QUALIFIED
Johnson Q MarrierAustraliaIoni Bowcher PROPOSAL
Jefferson Y WhobreyCanadaAmy Elsner NEGOTIATION
Aditya L ButtRussiaStephen Shaw NEW
Salvatore R PoquetteBrazilAnna Fali UNQUALIFIED
Claire O FollerAustraliaOnyama Limba NEW
Aditya W NickaAustraliaAmy Elsner QUALIFIED
Ivar J MaletJapanAmy Elsner RENEWAL
Kadeem Z SaylorsBrazilAsiya Javayant NEGOTIATION
Maisha D SlusarskiSpainAsiya Javayant NEGOTIATION
Emily E RulapaughIndiaOnyama Limba RENEWAL
Kaitlin Y OstroskyArgentinaIoni Bowcher NEGOTIATION
Clifford G IturbideBrazilIoni Bowcher RENEWAL
Misaki H FollerCanadaIoni Bowcher QUALIFIED
Kadeem H VenereIndiaIvan Magalhaes RENEWAL
Morrow P CampainJapanOnyama Limba NEW
Julie K MaletUnited KingdomBernardo Dominic NEW
Kadeem M WaycottCanadaBernardo Dominic QUALIFIED
Jennifer T FerenczSpainStephen Shaw NEGOTIATION
Leja P VocelkaRussiaAsiya Javayant QUALIFIED
Murillo I CaldareraItalyXuxue Feng NEW
Cody Y PerinUnited KingdomAnna Fali RENEWAL
Clifford E VocelkaGermanyAnna Fali NEGOTIATION
Chavez I RulapaughArgentinaOnyama Limba RENEWAL
Ivar S GarufiSpainIvan Magalhaes QUALIFIED
Leon E VocelkaJapanStephen Shaw QUALIFIED
Izzy C WaycottBrazilElwin Sharvill QUALIFIED
Munro W MorascaRussiaAnna Fali NEGOTIATION
Morrow S RoysterArgentinaStephen Shaw PROPOSAL
Ashley T AlbaresArgentinaAnna Fali RENEWAL
Johnson A DilliardArgentinaIoni Bowcher QUALIFIED
Juan Z ChuiSpainStephen Shaw UNQUALIFIED
Maria B NickaArgentinaElwin Sharvill PROPOSAL
Aika C VenereSpainIoni Bowcher NEW
Rodrigues D AmigonAustraliaAmy Elsner UNQUALIFIED
Nicolas F SlusarskiJapanAnna Fali RENEWAL
Alejandro M DarakjyGermanyBernardo Dominic NEW
David E RimCanadaElwin Sharvill NEGOTIATION
Johnson Z CaldareraCanadaElwin Sharvill UNQUALIFIED
Maisha L OstroskySpainAmy Elsner RENEWAL
Jennifer B PerinJapanAmy Elsner NEW
Frozen Columns
Name
Arvin D Caldarera
Cody O Glick
Aika C Morasca
Morrow V Campain
Mayumi O Nestle
Izzy M Saylors
Greenwood S Bowley
Octavia O Ruta
Alejandro N Ferencz
Greenwood T Maclead
David D Schemmer
Clifford M Ostrosky
Maria M Schemmer
Smith V Ferencz
Morrow G Vocelka
Jeanfrancois M Amigon
Jennifer U Ostrosky
Kadeem L Amigon
Aika K Iturbide
Jones K Tollner
Smith C Morasca
Chavez G Royster
Faith C Butt
Rodrigues U Paprocki
Johnson N Gillian
James M Marrier
Aruna G Shinko
Munro V Schemmer
Jennifer E Ferencz
Aruna C Gillian
Aruna K Dilliard
Mayumi M Rulapaugh
Aditya E Marrier
Stacey C Schemmer
Maisha L Oldroyd
Aruna V Paprocki
Mayumi H Garufi
Kadeem C Maclead
Wickens V Kolmetz
Tony X Morasca
Sinclair S Nestle
Aditya I Nestle
Munro F Paprocki
Jefferson U Bowley
Aika E Poquette
Aruna M Amigon
Smith C Poquette
Claire K Doe
Misaki H Whobrey
Mayumi B Nestle
IdCountryDate
1000Australia2026-09-05
1001France2026-09-27
1002United Kingdom2026-09-04
1003France2026-09-17
1004Italy2026-09-12
1005Brazil2026-09-14
1006United Kingdom2026-09-19
1007Italy2026-09-23
1008Russia2026-09-02
1009Russia2026-09-12
1010Canada2026-09-06
1011United Kingdom2026-09-17
1012Canada2026-09-14
1013Russia2026-09-16
1014Japan2026-09-11
1015Spain2026-09-16
1016Germany2026-09-13
1017United Kingdom2026-09-03
1018Russia2026-09-03
1019Canada2026-09-29
1020Japan2026-09-03
1021India2026-09-19
1022France2026-09-04
1023United Kingdom2026-09-19
1024Brazil2026-09-03
1025France2026-09-20
1026France2026-09-06
1027Australia2026-09-10
1028France2026-09-15
1029Australia2026-09-07
1030Spain2026-09-18
1031France2026-09-07
1032Australia2026-09-09
1033Australia2026-09-19
1034Japan2026-09-07
1035Japan2026-09-10
1036Spain2026-09-27
1037Brazil2026-09-08
1038Russia2026-09-10
1039Australia2026-09-26
1040Spain2026-09-03
1041Spain2026-09-26
1042Germany2026-09-16
1043Germany2026-09-14
1044Germany2026-09-03
1045Italy2026-09-26
1046Australia2026-09-27
1047Italy2026-09-18
1048Spain2026-09-20
1049United Kingdom2026-09-12

On-Demand Data

NameIdCountryDate
Silvio Z Morasca1000Russia2026-09-30
Maria R Garufi1001Australia2026-09-29
Cody O Ruta1002Germany2026-09-22
Johnson N Venere1003Brazil2026-09-17
Jeanfrancois A Royster1004Italy2026-09-23
Munro U Chui1005Australia2026-09-04
Misaki A Briddick1006France2026-09-07
Izzy I Whobrey1007Italy2026-09-26
Aditya Q Vocelka1008Canada2026-09-29
Izzy S Albares1009Russia2026-09-10
Jones B Sergi1010Australia2026-09-07
Alejandro F Perin1011Russia2026-09-13
James Q Kusko1012United Kingdom2026-09-02
Costa P Bowley1013Italy2026-09-21
Antonio A Malet1014Australia2026-09-12
Leon Y Kusko1015Spain2026-09-18
Rodrigues L Caudy1016Italy2026-09-27
Leja R Glick1017Japan2026-09-06
Wickens P Ruta1018Australia2026-09-20
Aika S Vocelka1019Russia2026-09-13
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Sinclair V BowleyCanadaIoni Bowcher UNQUALIFIED
Juan S AlbaresAustraliaAmy Elsner NEGOTIATION
Jones W FigeroaIndiaAnna Fali UNQUALIFIED
Mujtaba E WhobreyUnited KingdomIvan Magalhaes NEGOTIATION
Jeanfrancois B StockhamArgentinaIvan Magalhaes UNQUALIFIED
Tony Y CampainGermanyOnyama Limba RENEWAL
Aruna M IturbideSpainStephen Shaw UNQUALIFIED
Leja J StensethAustraliaStephen Shaw PROPOSAL
Kadeem O IturbideItalyStephen Shaw NEGOTIATION
Jones O MorascaJapanAsiya Javayant UNQUALIFIED
Tony W SaylorsSpainAnna Fali PROPOSAL
Kaitlin Q SergiIndiaXuxue Feng NEGOTIATION
Maria M DoeIndiaElwin Sharvill UNQUALIFIED
Smith T FlosiFranceOnyama Limba NEW
Mujtaba Z NestleBrazilIvan Magalhaes NEGOTIATION
Aika F WieserAustraliaOnyama Limba NEGOTIATION
Juan O OldroydAustraliaStephen Shaw QUALIFIED
Ashley S GillianArgentinaBernardo Dominic NEW
Clifford Z SchemmerAustraliaIvan Magalhaes NEGOTIATION
Juan P KolmetzRussiaAnna Fali NEW
Faith I MarrierIndiaAmy Elsner NEGOTIATION
Izzy M SchemmerJapanBernardo Dominic UNQUALIFIED
Faith C BologniaSpainIoni Bowcher NEW
Cody Q VocelkaFranceOnyama Limba PROPOSAL
Clifford T BologniaFranceOnyama Limba NEW
Jennifer G SergiIndiaXuxue Feng UNQUALIFIED
Jennifer R VocelkaBrazilIoni Bowcher QUALIFIED
Kaitlin J ButtRussiaIoni Bowcher RENEWAL
Wickens E KuskoAustraliaOnyama Limba NEW
Kadeem M StockhamUnited KingdomXuxue Feng NEGOTIATION
Johnson I RoysterBrazilIoni Bowcher NEGOTIATION
Ivar Y PerinSpainIoni Bowcher PROPOSAL
Leon K RoysterFranceIvan Magalhaes PROPOSAL
Leon P DarakjyFranceElwin Sharvill NEW
Isabel W BriddickCanadaStephen Shaw UNQUALIFIED
David E FigeroaUnited KingdomAmy Elsner QUALIFIED
Morrow X MorascaUnited KingdomIoni Bowcher QUALIFIED
Aditya C ButtGermanyBernardo Dominic PROPOSAL
Johnson Z KolmetzItalyBernardo Dominic NEGOTIATION
Francesco H DarakjyJapanAnna Fali 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>