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
Aika F VenereItalyBernardo Dominic UNQUALIFIED
Mayumi N StensethIndiaElwin Sharvill QUALIFIED
Arvin F WaycottArgentinaIoni Bowcher NEGOTIATION
Isabel X AmigonBrazilOnyama Limba QUALIFIED
Jennifer J WaycottGermanyAsiya Javayant UNQUALIFIED
Clifford B NickaSpainAnna Fali RENEWAL
Emily Q VocelkaBrazilElwin Sharvill QUALIFIED
Jeanfrancois J KolmetzBrazilAnna Fali PROPOSAL
Cody O FerenczUnited KingdomOnyama Limba RENEWAL
Julie Q GlickRussiaElwin Sharvill RENEWAL
Arvin F OldroydItalyAnna Fali NEW
Juan O GillianRussiaStephen Shaw PROPOSAL
Morrow W KolmetzArgentinaElwin Sharvill PROPOSAL
Francesco K FigeroaRussiaIvan Magalhaes UNQUALIFIED
Ashley N ButtItalyIvan Magalhaes UNQUALIFIED
Leja T ShinkoSpainAsiya Javayant NEW
Silvio U VocelkaFranceBernardo Dominic QUALIFIED
Francesco K FerenczAustraliaElwin Sharvill UNQUALIFIED
Rodrigues W NestleBrazilOnyama Limba UNQUALIFIED
Costa K AmigonRussiaElwin Sharvill NEGOTIATION
David I BowleyCanadaIoni Bowcher QUALIFIED
Ricardo J RimUnited KingdomAmy Elsner RENEWAL
Ashley J FlosiRussiaAmy Elsner RENEWAL
Faith X InouyeBrazilAmy Elsner NEGOTIATION
Mujtaba I FollerIndiaBernardo Dominic PROPOSAL
Chavez O InouyeSpainIvan Magalhaes NEGOTIATION
Johnson R RutaSpainIvan Magalhaes PROPOSAL
Darci I ShinkoSpainXuxue Feng NEW
Adams G RoysterUnited KingdomAsiya Javayant NEGOTIATION
Misaki R RutaArgentinaStephen Shaw UNQUALIFIED
Jefferson J BowleyFranceBernardo Dominic RENEWAL
Greenwood M VenereAustraliaXuxue Feng NEW
Isabel D NestleRussiaStephen Shaw PROPOSAL
Juan N OldroydAustraliaAnna Fali UNQUALIFIED
Leja S OstroskyIndiaIoni Bowcher PROPOSAL
Aika I RoysterAustraliaOnyama Limba NEGOTIATION
Murillo O CaudyArgentinaXuxue Feng PROPOSAL
Emily D MaletItalyIvan Magalhaes UNQUALIFIED
Costa U SlusarskiGermanyStephen Shaw QUALIFIED
Faith A RimRussiaBernardo Dominic QUALIFIED
Claire L MaletUnited KingdomAnna Fali QUALIFIED
Leja I SaylorsFranceElwin Sharvill UNQUALIFIED
Izzy J DoeIndiaXuxue Feng PROPOSAL
Aditya Q BriddickBrazilAmy Elsner NEW
Arvin S GarufiItalyAsiya Javayant RENEWAL
David D FollerBrazilIoni Bowcher QUALIFIED
Emily S NickaGermanyAmy Elsner QUALIFIED
Misaki G BriddickUnited KingdomIoni Bowcher NEGOTIATION
Octavia K SlusarskiArgentinaOnyama Limba PROPOSAL
Morrow W BologniaItalyBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Clifford N MarrierRussiaStephen Shaw QUALIFIED
Munro U DarakjyRussiaAsiya Javayant NEGOTIATION
Kaitlin C VocelkaIndiaElwin Sharvill NEGOTIATION
Julie B MaletAustraliaAmy Elsner PROPOSAL
James E WhobreyIndiaBernardo Dominic PROPOSAL
Ashley B RulapaughUnited KingdomBernardo Dominic PROPOSAL
Chavez B BriddickBrazilAsiya Javayant PROPOSAL
Mujtaba U AmigonBrazilXuxue Feng UNQUALIFIED
Maria R SchemmerGermanyOnyama Limba RENEWAL
Misaki A VenereUnited KingdomAnna Fali NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair A WhobreyRussia2026-09-08Chemel, James L Cpa RENEWAL20Onyama Limba
1001Faith N KolmetzFrance2026-09-10Buckley Miller Wright UNQUALIFIED88Amy Elsner
1002Nicolas J GillianAustralia2026-09-26Chemel, James L Cpa UNQUALIFIED11Xuxue Feng
1003Aika Y RoysterFrance2026-09-13Rousseaux, Michael Esq NEGOTIATION49Onyama Limba
1004Cody I NestleItaly2026-09-07Chemel, James L Cpa UNQUALIFIED67Ivan Magalhaes
1005Smith X BowleyItaly2026-09-11Feiner Bros RENEWAL40Ioni Bowcher
1006Mayumi V GlickRussia2026-09-28Commercial Press RENEWAL72Xuxue Feng
1007James G WaycottFrance2026-09-30Dorl, James J Esq NEW71Ivan Magalhaes
1008Stacey Q GarufiBrazil2026-10-04Truhlar And Truhlar Attys QUALIFIED61Amy Elsner
1009Greenwood T GillianUnited Kingdom2026-09-25Rangoni Of Florence NEGOTIATION51Anna Fali
1010Murillo T RoysterIndia2026-09-13Chemel, James L Cpa UNQUALIFIED1Asiya Javayant
1011Alejandro Z IturbideArgentina2026-10-04Printing Dimensions UNQUALIFIED46Onyama Limba
1012Isabel Z DilliardGermany2026-09-11Rangoni Of Florence NEW79Anna Fali
1013Claire M MaletJapan2026-09-24Chemel, James L Cpa PROPOSAL71Asiya Javayant
1014Jennifer R CampainRussia2026-09-20Chapman, Ross E Esq UNQUALIFIED93Ioni Bowcher
1015Jones B RulapaughGermany2026-09-19King, Christopher A Esq PROPOSAL29Ivan Magalhaes
1016Clifford J FlosiArgentina2026-09-11Truhlar And Truhlar Attys QUALIFIED19Elwin Sharvill
1017Aditya N KolmetzItaly2026-09-26Benton, John B Jr UNQUALIFIED77Elwin Sharvill
1018Alejandro F OldroydUnited Kingdom2026-09-23Commercial Press NEGOTIATION25Stephen Shaw
1019Nicolas A InouyeIndia2026-09-25Chemel, James L Cpa NEW1Asiya Javayant
1020Maisha J WieserSpain2026-09-24Chanay, Jeffrey A Esq RENEWAL3Bernardo Dominic
1021Arvin Z RulapaughJapan2026-09-25Chapman, Ross E Esq UNQUALIFIED66Bernardo Dominic
1022Munro E InouyeBrazil2026-10-05Feltz Printing Service NEGOTIATION76Bernardo Dominic
1023Nicolas Q MacleadArgentina2026-09-06Printing Dimensions QUALIFIED11Onyama Limba
1024Maria R NestleItaly2026-09-26Feltz Printing Service QUALIFIED76Xuxue Feng
1025Leja Q NestleJapan2026-09-11Benton, John B Jr NEGOTIATION75Elwin Sharvill
1026Julie T BowleyCanada2026-09-22Chemel, James L Cpa RENEWAL97Elwin Sharvill
1027Morrow L PerinSpain2026-09-23Feltz Printing Service PROPOSAL30Elwin Sharvill
1028Ricardo X DilliardGermany2026-10-02Printing Dimensions RENEWAL57Xuxue Feng
1029Mayumi H FlosiIndia2026-09-16Benton, John B Jr QUALIFIED59Stephen Shaw
1030Jeanfrancois Z OstroskyItaly2026-09-22King, Christopher A Esq QUALIFIED31Onyama Limba
1031Munro O AmigonIndia2026-10-02Buckley Miller Wright RENEWAL57Ioni Bowcher
1032Maisha M ChuiJapan2026-09-11Rousseaux, Michael Esq RENEWAL47Anna Fali
1033Leon B PerinIndia2026-09-21Chapman, Ross E Esq UNQUALIFIED7Asiya Javayant
1034Mayumi I PerinBrazil2026-09-06Printing Dimensions RENEWAL11Ivan Magalhaes
1035Izzy L StensethJapan2026-10-05Dorl, James J Esq RENEWAL37Elwin Sharvill
1036Nicolas F KolmetzItaly2026-09-25King, Christopher A Esq UNQUALIFIED73Elwin Sharvill
1037Tony R RulapaughIndia2026-09-12Chemel, James L Cpa NEW95Bernardo Dominic
1038Wickens F OldroydGermany2026-10-03Buckley Miller Wright RENEWAL99Amy Elsner
1039Mujtaba X GlickAustralia2026-09-21Feltz Printing Service QUALIFIED71Stephen Shaw
1040Ivar X DoeAustralia2026-09-21Morlong Associates PROPOSAL3Elwin Sharvill
1041Alejandro D MaletAustralia2026-09-13Chapman, Ross E Esq RENEWAL17Elwin Sharvill
1042Wickens D MorascaItaly2026-09-25Chapman, Ross E Esq UNQUALIFIED5Elwin Sharvill
1043Jennifer D RulapaughBrazil2026-09-13Chanay, Jeffrey A Esq PROPOSAL71Asiya Javayant
1044Munro B WhobreyFrance2026-09-13Truhlar And Truhlar Attys NEW18Anna Fali
1045Juan D FlosiAustralia2026-09-29Printing Dimensions RENEWAL28Onyama Limba
1046Jones U VenereIndia2026-09-06Morlong Associates UNQUALIFIED5Ivan Magalhaes
1047Francesco Y MacleadGermany2026-09-06Chanay, Jeffrey A Esq QUALIFIED79Ivan Magalhaes
1048Tony T OldroydSpain2026-09-20Morlong Associates QUALIFIED92Ivan Magalhaes
1049Mujtaba G WhobreyCanada2026-09-25Commercial Press RENEWAL80Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Murillo Y FlosiGermanyIvan Magalhaes RENEWAL
Jeanfrancois V CaldareraSpainIoni Bowcher NEGOTIATION
Leja R DoeBrazilAnna Fali RENEWAL
Sinclair W BologniaAustraliaElwin Sharvill NEGOTIATION
Greenwood Y BriddickArgentinaElwin Sharvill UNQUALIFIED
Arvin R DarakjyUnited KingdomAmy Elsner NEW
Sinclair P NestleAustraliaOnyama Limba NEW
Isabel R DarakjyItalyStephen Shaw UNQUALIFIED
Ricardo K VocelkaCanadaBernardo Dominic PROPOSAL
Wickens G ButtIndiaAmy Elsner PROPOSAL
Kaitlin Q DarakjyAustraliaXuxue Feng QUALIFIED
Darci O RutaJapanElwin Sharvill PROPOSAL
David Q RimArgentinaStephen Shaw PROPOSAL
Jeanfrancois C WieserBrazilOnyama Limba QUALIFIED
Leon C DilliardSpainStephen Shaw PROPOSAL
Misaki R SaylorsJapanBernardo Dominic NEGOTIATION
Mujtaba B NickaFranceAsiya Javayant UNQUALIFIED
Tony N FerenczAustraliaElwin Sharvill NEW
Nicolas S WaycottGermanyIoni Bowcher RENEWAL
Antonio T PoquetteItalyBernardo Dominic QUALIFIED
Silvio S GillianBrazilXuxue Feng RENEWAL
Aditya R SaylorsUnited KingdomAmy Elsner QUALIFIED
James T DarakjyUnited KingdomIvan Magalhaes NEGOTIATION
Salvatore J IturbideCanadaIvan Magalhaes UNQUALIFIED
Jones G BriddickItalyIoni Bowcher NEW
Ricardo V NestleSpainAnna Fali RENEWAL
Aika X MaletFranceStephen Shaw NEGOTIATION
Aditya H FollerRussiaAnna Fali UNQUALIFIED
Arvin I WieserUnited KingdomAnna Fali RENEWAL
Maria X DoeArgentinaAnna Fali QUALIFIED
Sinclair V AlbaresAustraliaOnyama Limba PROPOSAL
Jennifer F CaldareraFranceOnyama Limba RENEWAL
James J FerenczRussiaXuxue Feng RENEWAL
Jeanfrancois R CaudyGermanyStephen Shaw NEW
Francesco B VenereItalyBernardo Dominic QUALIFIED
Tony I DarakjyIndiaAsiya Javayant UNQUALIFIED
Clifford Y GarufiJapanAsiya Javayant NEGOTIATION
Morrow E MaletBrazilElwin Sharvill PROPOSAL
Kaitlin P FollerRussiaOnyama Limba QUALIFIED
Tony X GauchoAustraliaIvan Magalhaes RENEWAL
Faith D NestleFranceIoni Bowcher PROPOSAL
Antonio M WaycottArgentinaBernardo Dominic RENEWAL
Munro B GlickJapanXuxue Feng NEGOTIATION
Izzy X ButtBrazilXuxue Feng UNQUALIFIED
Johnson X OstroskyBrazilStephen Shaw QUALIFIED
Francesco Z TollnerAustraliaXuxue Feng NEGOTIATION
Alejandro I PaprockiFranceAmy Elsner QUALIFIED
David Y VenereGermanyStephen Shaw QUALIFIED
Aruna R CaudyUnited KingdomElwin Sharvill RENEWAL
Antonio M GlickGermanyAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Costa V Marrier
Munro Y Inouye
Stacey Q Doe
Jones Q Albares
Aika F Maclead
Claire U Maclead
James A Flosi
Salvatore R Venere
Julie M Venere
Emily Z Royster
Kaitlin Y Iturbide
Kadeem B Perin
Munro D Butt
Johnson G Maclead
Silvio R Ruta
Maria W Caldarera
Julie A Sergi
Nicolas B Slusarski
Aika C Stenseth
Claire Z Stockham
Smith V Butt
Jeanfrancois Z Bowley
Aika K Chui
Jennifer Z Chui
Alejandro Z Chui
Adams P Schemmer
Salvatore P Tollner
Darci N Slusarski
Ivar H Royster
Maria A Ferencz
Salvatore R Briddick
Ricardo V Wieser
Sinclair I Butt
Kaitlin F Stenseth
Munro P Perin
Ashley G Butt
Julie J Caldarera
Kaitlin F Malet
Arvin M Venere
Juan H Figeroa
Chavez M Kusko
Leja W Malet
Johnson D Kusko
Faith W Slusarski
Mujtaba H Flosi
Sinclair V Shinko
Misaki B Briddick
Darci I Glick
Juan K Ostrosky
Chavez D Darakjy
IdCountryDate
1000Argentina2026-10-02
1001Canada2026-09-23
1002Canada2026-10-01
1003Brazil2026-09-06
1004Australia2026-09-18
1005Australia2026-09-24
1006Argentina2026-09-24
1007Germany2026-09-14
1008Spain2026-09-27
1009France2026-09-29
1010Germany2026-10-04
1011Australia2026-09-30
1012Japan2026-09-24
1013Argentina2026-09-12
1014Argentina2026-09-06
1015Argentina2026-09-10
1016Germany2026-09-08
1017Italy2026-09-08
1018Japan2026-09-28
1019Spain2026-09-27
1020Japan2026-09-30
1021India2026-09-27
1022Japan2026-09-23
1023Japan2026-09-17
1024Argentina2026-10-05
1025Germany2026-09-22
1026Italy2026-09-15
1027Australia2026-09-16
1028Argentina2026-09-16
1029Italy2026-09-12
1030Italy2026-09-11
1031Spain2026-10-01
1032France2026-09-21
1033Japan2026-09-29
1034Brazil2026-09-30
1035Russia2026-09-29
1036United Kingdom2026-10-02
1037Russia2026-09-19
1038Spain2026-09-23
1039Germany2026-09-16
1040Brazil2026-09-12
1041Germany2026-09-28
1042United Kingdom2026-09-17
1043Japan2026-09-21
1044United Kingdom2026-09-22
1045Brazil2026-09-08
1046Brazil2026-09-09
1047Brazil2026-09-25
1048Japan2026-09-30
1049Brazil2026-09-23

On-Demand Data

NameIdCountryDate
Smith Q Ruta1000United Kingdom2026-10-01
Smith R Stenseth1001Brazil2026-09-14
Jeanfrancois G Schemmer1002India2026-09-18
Jeanfrancois A Dilliard1003Italy2026-09-14
Alejandro R Oldroyd1004Canada2026-09-10
Smith C Paprocki1005Australia2026-09-29
Clifford J Gaucho1006Spain2026-10-05
David K Paprocki1007India2026-10-02
Emily P Bowley1008Australia2026-09-09
Costa R Maclead1009Italy2026-09-13
Octavia X Waycott1010Japan2026-10-05
Jefferson B Briddick1011Russia2026-09-22
Munro B Wieser1012Spain2026-09-09
Stacey P Darakjy1013India2026-09-13
Salvatore A Shinko1014Japan2026-09-24
Ivar Y Garufi1015Brazil2026-09-06
Smith I Butt1016Canada2026-09-09
Wickens V Stockham1017France2026-09-19
Kadeem K Sergi1018Canada2026-09-13
Faith S Flosi1019Spain2026-10-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba C RimIndiaAmy Elsner RENEWAL
Kaitlin N GillianCanadaElwin Sharvill UNQUALIFIED
Adams E IturbideIndiaIoni Bowcher NEW
Ricardo O DoeArgentinaAsiya Javayant NEGOTIATION
Stacey C GillianJapanStephen Shaw NEW
Aika Z AmigonBrazilAnna Fali NEGOTIATION
Jefferson Y WaycottJapanStephen Shaw NEGOTIATION
Jefferson M OldroydItalyStephen Shaw NEW
Nicolas X OldroydIndiaAnna Fali NEW
Aditya Q NickaCanadaElwin Sharvill NEW
Smith Z ButtRussiaIvan Magalhaes PROPOSAL
Ashley S BriddickAustraliaIoni Bowcher QUALIFIED
Juan K StockhamFranceAnna Fali UNQUALIFIED
Ashley L AmigonFranceOnyama Limba UNQUALIFIED
Izzy K DarakjySpainIoni Bowcher QUALIFIED
Aruna T GauchoRussiaAnna Fali NEGOTIATION
Wickens F SchemmerFranceXuxue Feng PROPOSAL
Leja U DoeBrazilIvan Magalhaes UNQUALIFIED
Deepesh G BowleyUnited KingdomAsiya Javayant PROPOSAL
Murillo B SergiIndiaIoni Bowcher NEW
James Y AmigonItalyOnyama Limba RENEWAL
Aditya B WhobreyUnited KingdomOnyama Limba NEGOTIATION
Isabel V TollnerGermanyAsiya Javayant QUALIFIED
Mujtaba K TollnerAustraliaStephen Shaw PROPOSAL
Octavia M PerinGermanyAnna Fali QUALIFIED
Alejandro G BriddickItalyStephen Shaw PROPOSAL
Aditya I SchemmerFranceStephen Shaw RENEWAL
Faith U SergiIndiaXuxue Feng RENEWAL
Jennifer N FlosiArgentinaStephen Shaw NEGOTIATION
Arvin M MacleadCanadaStephen Shaw RENEWAL
Leja V FlosiGermanyAnna Fali PROPOSAL
Aditya G CaudyJapanElwin Sharvill QUALIFIED
Darci G BriddickArgentinaOnyama Limba NEGOTIATION
Salvatore C RoysterSpainAnna Fali RENEWAL
Ashley Y VenereFranceAsiya Javayant NEW
Silvio W DarakjyIndiaXuxue Feng UNQUALIFIED
Darci B PerinArgentinaIvan Magalhaes NEGOTIATION
Mujtaba G OstroskyGermanyBernardo Dominic RENEWAL
Jennifer Y VenereCanadaIoni Bowcher NEGOTIATION
Adams A GillianSpainAsiya Javayant 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>