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 R CampainAustraliaAnna Fali PROPOSAL
Rodrigues V BriddickIndiaStephen Shaw NEGOTIATION
Johnson B NickaIndiaAmy Elsner QUALIFIED
Antonio U WhobreyArgentinaXuxue Feng NEW
Cody O CaudyJapanXuxue Feng NEGOTIATION
Jennifer N KuskoAustraliaIvan Magalhaes NEW
Cody M MaletUnited KingdomIoni Bowcher PROPOSAL
Smith T GlickBrazilAsiya Javayant NEW
Stacey H MacleadUnited KingdomAmy Elsner NEGOTIATION
Ashley G FollerArgentinaAmy Elsner PROPOSAL
Izzy L GauchoJapanXuxue Feng RENEWAL
Darci C KolmetzGermanyElwin Sharvill PROPOSAL
Octavia T RutaSpainXuxue Feng RENEWAL
Jones T MaletBrazilIoni Bowcher NEW
Nicolas P RulapaughRussiaIvan Magalhaes NEGOTIATION
Adams R OstroskyBrazilStephen Shaw NEGOTIATION
Greenwood Z GillianUnited KingdomOnyama Limba PROPOSAL
Jeanfrancois L VocelkaCanadaAnna Fali QUALIFIED
Kaitlin K NickaItalyBernardo Dominic UNQUALIFIED
Wickens M BologniaItalyStephen Shaw UNQUALIFIED
Rodrigues J FerenczArgentinaBernardo Dominic UNQUALIFIED
Stacey T PoquetteJapanAmy Elsner NEGOTIATION
Mayumi I RutaFranceIoni Bowcher NEW
Wickens D PoquetteRussiaStephen Shaw PROPOSAL
Jennifer D CampainFranceIvan Magalhaes NEGOTIATION
Silvio H BologniaAustraliaStephen Shaw NEGOTIATION
Alejandro Q CaudyGermanyAsiya Javayant RENEWAL
Darci O PerinJapanAmy Elsner QUALIFIED
Costa M ChuiItalyStephen Shaw NEW
Nicolas T VocelkaSpainAsiya Javayant NEW
Alejandro F SlusarskiGermanyAmy Elsner NEW
Murillo B MacleadItalyStephen Shaw RENEWAL
Maisha X NickaIndiaIvan Magalhaes NEGOTIATION
Maria W MaletCanadaStephen Shaw UNQUALIFIED
Leja Z BologniaGermanyAnna Fali QUALIFIED
Claire D WhobreyAustraliaXuxue Feng PROPOSAL
Darci W PaprockiUnited KingdomAmy Elsner UNQUALIFIED
Murillo M GarufiSpainAnna Fali UNQUALIFIED
Nicolas Z RulapaughFranceAmy Elsner UNQUALIFIED
Arvin J FollerUnited KingdomAmy Elsner QUALIFIED
Jeanfrancois H KuskoArgentinaOnyama Limba UNQUALIFIED
Maisha X CaldareraUnited KingdomBernardo Dominic RENEWAL
Octavia S PaprockiItalyAmy Elsner NEGOTIATION
Claire W FerenczFranceIoni Bowcher PROPOSAL
Chavez L FigeroaUnited KingdomStephen Shaw QUALIFIED
Johnson N SaylorsItalyAsiya Javayant QUALIFIED
Jones C ButtBrazilElwin Sharvill NEW
Claire Y DilliardBrazilIoni Bowcher NEGOTIATION
Kaitlin N RulapaughSpainAsiya Javayant NEW
Arvin Z StensethArgentinaAnna Fali UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Ashley O IturbideFranceIoni Bowcher UNQUALIFIED
Mujtaba D SlusarskiAustraliaAnna Fali RENEWAL
Nicolas V RimIndiaAmy Elsner NEGOTIATION
Octavia J SlusarskiAustraliaOnyama Limba RENEWAL
Wickens K TollnerJapanStephen Shaw NEGOTIATION
Silvio Q MacleadUnited KingdomAnna Fali NEGOTIATION
Aditya J SergiIndiaAsiya Javayant NEW
Kaitlin S WieserUnited KingdomBernardo Dominic RENEWAL
Mayumi O MarrierAustraliaBernardo Dominic NEGOTIATION
James E NestleGermanyOnyama Limba RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kadeem I MacleadAustralia2026-09-15Printing Dimensions QUALIFIED11Ivan Magalhaes
1001Jefferson Q FigeroaIndia2026-09-13Buckley Miller Wright NEW88Onyama Limba
1002Aika P CaudySpain2026-09-30Feltz Printing Service QUALIFIED7Asiya Javayant
1003Aditya U GlickArgentina2026-10-01Rousseaux, Michael Esq UNQUALIFIED21Ivan Magalhaes
1004Mujtaba G FlosiCanada2026-09-24Feltz Printing Service RENEWAL55Asiya Javayant
1005Kadeem G SlusarskiJapan2026-09-20Feltz Printing Service UNQUALIFIED76Ivan Magalhaes
1006Faith G SergiRussia2026-09-10Chapman, Ross E Esq NEGOTIATION96Elwin Sharvill
1007Kaitlin V PerinCanada2026-10-02Dorl, James J Esq QUALIFIED64Amy Elsner
1008Misaki A RoysterSpain2026-09-11Chapman, Ross E Esq NEGOTIATION73Onyama Limba
1009Ashley T WhobreyCanada2026-09-08Chemel, James L Cpa PROPOSAL19Ioni Bowcher
1010Antonio V StensethSpain2026-10-05Benton, John B Jr QUALIFIED27Xuxue Feng
1011David F ChuiFrance2026-09-27Truhlar And Truhlar Attys QUALIFIED53Stephen Shaw
1012Murillo Q FerenczAustralia2026-09-15Chemel, James L Cpa UNQUALIFIED30Asiya Javayant
1013Leon O FollerItaly2026-09-16Dorl, James J Esq QUALIFIED42Elwin Sharvill
1014Murillo H PaprockiJapan2026-09-28Chapman, Ross E Esq NEW28Ivan Magalhaes
1015Kadeem Y SergiJapan2026-10-01Rousseaux, Michael Esq RENEWAL65Xuxue Feng
1016Nicolas A CaldareraGermany2026-09-19Printing Dimensions QUALIFIED49Xuxue Feng
1017Morrow U RulapaughGermany2026-09-10Chanay, Jeffrey A Esq UNQUALIFIED42Elwin Sharvill
1018Kadeem A MorascaItaly2026-09-27Chemel, James L Cpa RENEWAL0Stephen Shaw
1019Chavez V FlosiBrazil2026-09-15King, Christopher A Esq UNQUALIFIED41Stephen Shaw
1020Aditya Q MaletGermany2026-09-25Morlong Associates NEGOTIATION69Ivan Magalhaes
1021Wickens D DilliardIndia2026-09-28Morlong Associates UNQUALIFIED38Asiya Javayant
1022Aditya S RutaAustralia2026-09-13Feltz Printing Service NEGOTIATION55Xuxue Feng
1023Kaitlin M AlbaresItaly2026-09-07Morlong Associates RENEWAL88Xuxue Feng
1024Misaki E MarrierFrance2026-09-29Benton, John B Jr PROPOSAL72Anna Fali
1025Jones Q AlbaresArgentina2026-09-30Chemel, James L Cpa UNQUALIFIED47Elwin Sharvill
1026Adams F DarakjyArgentina2026-09-15Chemel, James L Cpa PROPOSAL53Amy Elsner
1027Nicolas B NickaAustralia2026-09-21Feiner Bros NEGOTIATION0Onyama Limba
1028Chavez H MorascaCanada2026-10-01Commercial Press UNQUALIFIED82Asiya Javayant
1029Murillo S ShinkoGermany2026-09-17Truhlar And Truhlar Attys PROPOSAL37Asiya Javayant
1030Arvin C SaylorsIndia2026-09-18Printing Dimensions NEW46Amy Elsner
1031Julie R GauchoRussia2026-10-05Morlong Associates NEGOTIATION69Ioni Bowcher
1032Francesco P RoysterItaly2026-09-14King, Christopher A Esq NEGOTIATION22Xuxue Feng
1033Maisha K PaprockiItaly2026-10-03Feltz Printing Service PROPOSAL56Ioni Bowcher
1034Wickens H NickaAustralia2026-10-03Chemel, James L Cpa NEGOTIATION85Amy Elsner
1035Antonio X ShinkoSpain2026-09-10King, Christopher A Esq NEGOTIATION48Asiya Javayant
1036Cody O WaycottGermany2026-09-26Chapman, Ross E Esq QUALIFIED93Ivan Magalhaes
1037Mayumi P DarakjyItaly2026-09-13Benton, John B Jr NEGOTIATION95Elwin Sharvill
1038Rodrigues B GauchoCanada2026-09-26Morlong Associates NEGOTIATION31Asiya Javayant
1039Costa Y ChuiAustralia2026-09-23Morlong Associates RENEWAL5Ioni Bowcher
1040Smith K FollerFrance2026-10-03Printing Dimensions NEGOTIATION20Amy Elsner
1041Cody P FerenczUnited Kingdom2026-09-23Dorl, James J Esq RENEWAL70Onyama Limba
1042Johnson V InouyeAustralia2026-10-02Dorl, James J Esq UNQUALIFIED0Asiya Javayant
1043Mujtaba N FigeroaItaly2026-09-08Benton, John B Jr NEW68Asiya Javayant
1044Rodrigues I DarakjyIndia2026-09-21Dorl, James J Esq PROPOSAL46Asiya Javayant
1045Kaitlin X VocelkaSpain2026-10-05Printing Dimensions NEGOTIATION3Bernardo Dominic
1046Silvio H SlusarskiArgentina2026-09-19Morlong Associates NEGOTIATION67Stephen Shaw
1047Antonio V AmigonRussia2026-10-03Dorl, James J Esq QUALIFIED41Anna Fali
1048Jones R BologniaFrance2026-10-05Morlong Associates PROPOSAL68Ivan Magalhaes
1049Jefferson I PerinJapan2026-09-26Rangoni Of Florence RENEWAL92Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Cody U OstroskyRussiaIvan Magalhaes NEW
James J DoeCanadaIvan Magalhaes UNQUALIFIED
Wickens G SlusarskiCanadaAsiya Javayant NEGOTIATION
Leja N GauchoIndiaElwin Sharvill NEW
Ricardo N IturbideSpainBernardo Dominic RENEWAL
Jennifer T KolmetzUnited KingdomElwin Sharvill RENEWAL
Aika E SaylorsCanadaBernardo Dominic NEGOTIATION
Ivar U ButtArgentinaBernardo Dominic PROPOSAL
Deepesh N RutaUnited KingdomBernardo Dominic NEW
Chavez Z PaprockiAustraliaAmy Elsner NEGOTIATION
Mayumi F KuskoJapanStephen Shaw RENEWAL
Wickens L SergiIndiaIvan Magalhaes NEW
Emily H PaprockiJapanAnna Fali QUALIFIED
Octavia J TollnerSpainOnyama Limba UNQUALIFIED
Julie G OstroskyUnited KingdomElwin Sharvill PROPOSAL
Wickens S NickaSpainAsiya Javayant PROPOSAL
Silvio Z GauchoJapanOnyama Limba PROPOSAL
Francesco B InouyeAustraliaStephen Shaw NEW
Claire Q MacleadIndiaStephen Shaw RENEWAL
Claire X AmigonGermanyOnyama Limba QUALIFIED
Emily N OldroydSpainXuxue Feng UNQUALIFIED
Leon O DoeIndiaAsiya Javayant NEW
Antonio Z ShinkoGermanyStephen Shaw UNQUALIFIED
Jennifer R FerenczCanadaAnna Fali RENEWAL
Smith P KuskoAustraliaOnyama Limba NEW
Faith D IturbideGermanyXuxue Feng NEW
Silvio J MaletIndiaStephen Shaw NEW
Jennifer R SergiSpainOnyama Limba NEW
Adams K CampainIndiaAmy Elsner UNQUALIFIED
Jeanfrancois F MacleadFranceXuxue Feng UNQUALIFIED
Nicolas U PaprockiIndiaStephen Shaw QUALIFIED
Adams B SaylorsGermanyElwin Sharvill NEGOTIATION
Stacey W MorascaAustraliaAsiya Javayant QUALIFIED
Jones I IturbideRussiaAnna Fali PROPOSAL
Claire H GarufiUnited KingdomBernardo Dominic PROPOSAL
Morrow E BologniaRussiaStephen Shaw UNQUALIFIED
Stacey W CampainJapanIoni Bowcher NEGOTIATION
Leja B SlusarskiGermanyBernardo Dominic UNQUALIFIED
Mujtaba H FerenczFranceAsiya Javayant UNQUALIFIED
Ashley W GillianItalyAmy Elsner RENEWAL
Antonio D AmigonFranceAsiya Javayant RENEWAL
Octavia Q RulapaughAustraliaIoni Bowcher QUALIFIED
Chavez W InouyeFranceOnyama Limba QUALIFIED
Deepesh K SchemmerRussiaAmy Elsner PROPOSAL
Greenwood Y NestleIndiaOnyama Limba UNQUALIFIED
Aditya U TollnerCanadaIvan Magalhaes PROPOSAL
Juan U BriddickIndiaAnna Fali NEGOTIATION
Murillo H FollerSpainElwin Sharvill PROPOSAL
Jones B PerinCanadaBernardo Dominic RENEWAL
Leja K NickaUnited KingdomIvan Magalhaes NEGOTIATION
Frozen Columns
Name
Juan Z Oldroyd
Alejandro Q Nestle
Munro O Nestle
Francesco F Oldroyd
Isabel T Chui
Wickens O Marrier
Stacey T Chui
Munro Z Butt
Silvio V Darakjy
Ashley M Paprocki
Aditya A Bowley
Arvin X Stenseth
Smith H Poquette
Mujtaba P Caudy
Jefferson B Dilliard
Costa S Gaucho
Nicolas A Whobrey
Murillo X Garufi
Antonio U Briddick
Misaki Q Stenseth
Jefferson F Vocelka
Stacey U Butt
Nicolas G Schemmer
Juan Z Slusarski
Munro B Whobrey
Stacey Q Waycott
Faith M Marrier
Izzy I Bolognia
Stacey P Nicka
Silvio H Tollner
Claire G Iturbide
Julie M Vocelka
Alejandro L Campain
Silvio Q Whobrey
Kadeem H Vocelka
Antonio Q Glick
Alejandro P Rulapaugh
Jones T Amigon
Deepesh K Gaucho
Stacey V Gillian
Nicolas W Stockham
Stacey Z Schemmer
Kaitlin D Saylors
Munro S Glick
Maisha E Caudy
Wickens H Bolognia
Clifford J Saylors
Johnson S Stenseth
Kaitlin U Schemmer
Smith V Waycott
IdCountryDate
1000Argentina2026-09-18
1001France2026-09-28
1002Australia2026-09-06
1003United Kingdom2026-09-19
1004Germany2026-09-09
1005Canada2026-09-07
1006Spain2026-09-23
1007Brazil2026-09-10
1008India2026-09-14
1009Australia2026-09-22
1010Spain2026-09-13
1011France2026-09-24
1012United Kingdom2026-09-09
1013Spain2026-10-03
1014Russia2026-10-01
1015Russia2026-09-20
1016Italy2026-09-07
1017Japan2026-09-30
1018Russia2026-10-04
1019Italy2026-09-11
1020Germany2026-09-17
1021India2026-09-22
1022India2026-09-08
1023Canada2026-09-22
1024Germany2026-09-07
1025Germany2026-09-12
1026Russia2026-09-12
1027Spain2026-09-12
1028Australia2026-09-26
1029Spain2026-09-30
1030United Kingdom2026-09-21
1031Germany2026-09-11
1032United Kingdom2026-10-05
1033United Kingdom2026-09-28
1034United Kingdom2026-09-23
1035Russia2026-10-01
1036Brazil2026-10-01
1037Russia2026-09-29
1038Canada2026-09-15
1039Russia2026-09-18
1040Canada2026-09-19
1041Brazil2026-09-27
1042France2026-09-20
1043Japan2026-10-03
1044Japan2026-09-20
1045Australia2026-09-11
1046France2026-10-03
1047Australia2026-09-24
1048Italy2026-09-25
1049India2026-09-27

On-Demand Data

NameIdCountryDate
Jefferson F Venere1000France2026-09-28
Wickens V Ferencz1001Italy2026-09-12
Ivar C Doe1002Canada2026-09-29
Octavia I Wieser1003Australia2026-10-01
Arvin R Poquette1004Australia2026-09-26
Munro J Doe1005Canada2026-09-11
Kadeem B Dilliard1006Brazil2026-10-05
Octavia I Glick1007Canada2026-09-30
Stacey Y Ruta1008Germany2026-09-20
Aruna H Royster1009Germany2026-09-21
Smith O Nestle1010United Kingdom2026-09-09
Murillo A Bowley1011Australia2026-09-29
Johnson C Kolmetz1012Japan2026-09-07
Izzy Z Campain1013United Kingdom2026-10-04
Silvio N Rim1014Argentina2026-09-10
Tony Y Gillian1015Australia2026-09-27
Clifford L Waycott1016Italy2026-09-22
Leja W Vocelka1017Russia2026-09-26
Smith Y Royster1018India2026-09-26
Misaki C Inouye1019Argentina2026-09-16
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Adams I GauchoAustraliaAnna Fali NEW
Stacey U RutaAustraliaBernardo Dominic QUALIFIED
Claire D OstroskyFranceAnna Fali UNQUALIFIED
Sinclair B BriddickSpainIoni Bowcher RENEWAL
Octavia G GauchoIndiaStephen Shaw NEGOTIATION
Alejandro U VocelkaFranceStephen Shaw QUALIFIED
Chavez X IturbideFranceOnyama Limba QUALIFIED
Salvatore G VocelkaAustraliaAnna Fali NEGOTIATION
Aditya J SergiAustraliaElwin Sharvill UNQUALIFIED
Salvatore U WhobreyUnited KingdomOnyama Limba NEW
Aruna M KolmetzJapanBernardo Dominic NEGOTIATION
Antonio M ChuiCanadaElwin Sharvill NEW
Johnson H MorascaCanadaAmy Elsner NEGOTIATION
Maria F WaycottRussiaOnyama Limba QUALIFIED
Aditya C StensethItalyStephen Shaw NEGOTIATION
Arvin O WieserGermanyAnna Fali UNQUALIFIED
Faith I KuskoJapanElwin Sharvill NEGOTIATION
Deepesh J RulapaughJapanElwin Sharvill RENEWAL
Octavia W BriddickGermanyBernardo Dominic NEGOTIATION
Jeanfrancois J WieserFranceBernardo Dominic NEGOTIATION
Jeanfrancois Q MorascaUnited KingdomAnna Fali QUALIFIED
David V DoeItalyBernardo Dominic PROPOSAL
Maisha J OstroskyGermanyOnyama Limba UNQUALIFIED
Kaitlin N SchemmerGermanyIoni Bowcher UNQUALIFIED
Claire J DoeFranceIvan Magalhaes RENEWAL
Kaitlin V CampainCanadaXuxue Feng NEGOTIATION
Stacey G CaudyAustraliaAnna Fali PROPOSAL
Jefferson N RulapaughItalyIoni Bowcher QUALIFIED
Ricardo E FerenczArgentinaAsiya Javayant NEW
Salvatore O NestleCanadaIoni Bowcher NEGOTIATION
Aditya H OldroydCanadaAmy Elsner QUALIFIED
Izzy L GarufiIndiaAsiya Javayant UNQUALIFIED
Kaitlin Y RimCanadaBernardo Dominic NEGOTIATION
Leon Y StensethArgentinaIoni Bowcher NEW
Francesco H AmigonJapanIoni Bowcher UNQUALIFIED
Julie I DoeItalyIvan Magalhaes PROPOSAL
Greenwood T ShinkoSpainAsiya Javayant PROPOSAL
Mayumi Y SergiAustraliaBernardo Dominic UNQUALIFIED
Murillo G MaletFranceBernardo Dominic QUALIFIED
Kaitlin O BowleyBrazilXuxue Feng 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>