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
Ivar D StockhamJapanAnna Fali PROPOSAL
Kaitlin Y StockhamJapanAsiya Javayant QUALIFIED
Jefferson N ShinkoUnited KingdomBernardo Dominic RENEWAL
Francesco R StockhamBrazilStephen Shaw NEW
Morrow W GarufiUnited KingdomElwin Sharvill QUALIFIED
Mayumi H KuskoUnited KingdomIoni Bowcher NEW
Aruna N InouyeGermanyAmy Elsner PROPOSAL
Sinclair U GlickAustraliaIoni Bowcher PROPOSAL
Claire R CampainUnited KingdomIoni Bowcher PROPOSAL
Claire U MaletItalyAnna Fali NEGOTIATION
Silvio Q NestleIndiaAmy Elsner UNQUALIFIED
Aruna A GillianUnited KingdomAnna Fali NEW
Adams O RimItalyBernardo Dominic QUALIFIED
Ivar X PoquetteIndiaIoni Bowcher PROPOSAL
Faith Z GlickUnited KingdomOnyama Limba RENEWAL
Jefferson W SaylorsJapanBernardo Dominic PROPOSAL
Munro C MacleadItalyIoni Bowcher RENEWAL
Maria K StockhamAustraliaAmy Elsner NEGOTIATION
Wickens G TollnerRussiaAmy Elsner NEW
Arvin Y RutaSpainOnyama Limba QUALIFIED
James I SchemmerGermanyElwin Sharvill PROPOSAL
Maria S WaycottIndiaXuxue Feng RENEWAL
Tony G MaletFranceAsiya Javayant NEW
Ivar D CaldareraFranceXuxue Feng PROPOSAL
Adams I MaletFranceAnna Fali RENEWAL
Nicolas M StockhamRussiaAsiya Javayant UNQUALIFIED
Johnson B KuskoCanadaOnyama Limba PROPOSAL
Deepesh W AmigonSpainAsiya Javayant QUALIFIED
Maisha Y BowleyItalyAmy Elsner NEW
Jeanfrancois J OldroydGermanyIvan Magalhaes PROPOSAL
Ivar G GlickUnited KingdomBernardo Dominic NEW
Jeanfrancois R WhobreyRussiaAsiya Javayant QUALIFIED
Ivar W SchemmerAustraliaBernardo Dominic RENEWAL
Mayumi M IturbideFranceBernardo Dominic NEGOTIATION
Aika J FigeroaFranceAmy Elsner NEGOTIATION
Smith T OldroydSpainIoni Bowcher QUALIFIED
Darci A StensethJapanAmy Elsner QUALIFIED
Jones U WieserRussiaXuxue Feng UNQUALIFIED
Jefferson F SchemmerRussiaBernardo Dominic UNQUALIFIED
Aruna P FollerRussiaBernardo Dominic NEGOTIATION
Tony O DarakjyGermanyStephen Shaw PROPOSAL
James Y OldroydCanadaElwin Sharvill UNQUALIFIED
Murillo D RoysterBrazilAmy Elsner NEGOTIATION
Ashley V ChuiIndiaXuxue Feng NEGOTIATION
Johnson I FlosiIndiaStephen Shaw NEW
Maisha T GarufiUnited KingdomAmy Elsner NEW
Mujtaba Z CaudyAustraliaAnna Fali UNQUALIFIED
Arvin U NickaFranceBernardo Dominic PROPOSAL
Clifford M FigeroaSpainIoni Bowcher RENEWAL
Antonio E FollerAustraliaIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leja Y WieserGermanyXuxue Feng NEGOTIATION
Sinclair P RutaArgentinaAsiya Javayant UNQUALIFIED
Jefferson G SergiJapanAmy Elsner RENEWAL
Rodrigues O BowleyRussiaAmy Elsner RENEWAL
Chavez H PaprockiIndiaAmy Elsner PROPOSAL
Nicolas C VocelkaArgentinaAsiya Javayant NEW
Arvin Y SergiBrazilIvan Magalhaes PROPOSAL
Leja N AmigonUnited KingdomXuxue Feng NEGOTIATION
Johnson T FerenczArgentinaAnna Fali RENEWAL
Claire R IturbideItalyIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki S MaletAustralia2026-10-08Printing Dimensions NEGOTIATION26Anna Fali
1001Izzy D InouyeGermany2026-09-26Benton, John B Jr PROPOSAL20Onyama Limba
1002Silvio O MorascaFrance2026-09-14Feltz Printing Service QUALIFIED13Xuxue Feng
1003Cody G FigeroaBrazil2026-09-27Dorl, James J Esq UNQUALIFIED34Ivan Magalhaes
1004Antonio R CaldareraRussia2026-10-06Rangoni Of Florence QUALIFIED27Ivan Magalhaes
1005Ashley V BologniaRussia2026-09-15Feltz Printing Service QUALIFIED8Onyama Limba
1006Wickens U ChuiGermany2026-09-16Feltz Printing Service RENEWAL54Xuxue Feng
1007Salvatore J BowleyUnited Kingdom2026-10-07Chanay, Jeffrey A Esq NEGOTIATION86Ivan Magalhaes
1008Stacey N NickaItaly2026-09-26Rousseaux, Michael Esq RENEWAL3Amy Elsner
1009Jennifer J FerenczBrazil2026-09-15Benton, John B Jr RENEWAL61Onyama Limba
1010Antonio C MaletGermany2026-09-19Chanay, Jeffrey A Esq PROPOSAL77Bernardo Dominic
1011Emily Q IturbideUnited Kingdom2026-09-24Buckley Miller Wright QUALIFIED99Ioni Bowcher
1012Leon E SlusarskiRussia2026-09-14Rousseaux, Michael Esq QUALIFIED25Bernardo Dominic
1013Salvatore K PaprockiFrance2026-09-29Feltz Printing Service NEW69Ioni Bowcher
1014Izzy P RimArgentina2026-09-21Chapman, Ross E Esq QUALIFIED24Amy Elsner
1015Silvio P SaylorsAustralia2026-09-19King, Christopher A Esq UNQUALIFIED27Ivan Magalhaes
1016Adams T WhobreyUnited Kingdom2026-10-01King, Christopher A Esq PROPOSAL8Elwin Sharvill
1017Leja K WaycottCanada2026-09-16Dorl, James J Esq UNQUALIFIED57Asiya Javayant
1018Clifford R MaletCanada2026-10-04Truhlar And Truhlar Attys NEGOTIATION21Bernardo Dominic
1019Clifford T NickaBrazil2026-09-14King, Christopher A Esq QUALIFIED97Amy Elsner
1020Leja C FollerGermany2026-10-08Printing Dimensions PROPOSAL54Bernardo Dominic
1021Isabel K FlosiIndia2026-09-13Benton, John B Jr UNQUALIFIED84Bernardo Dominic
1022Mujtaba G GlickUnited Kingdom2026-10-05Dorl, James J Esq QUALIFIED97Ivan Magalhaes
1023Arvin C GauchoUnited Kingdom2026-09-25Benton, John B Jr NEGOTIATION43Elwin Sharvill
1024Wickens V MarrierIndia2026-09-11Commercial Press NEGOTIATION77Anna Fali
1025Antonio K RimRussia2026-10-02Benton, John B Jr PROPOSAL93Elwin Sharvill
1026Kaitlin T CaudyJapan2026-09-12Dorl, James J Esq NEGOTIATION86Amy Elsner
1027Octavia Y RulapaughFrance2026-09-22Truhlar And Truhlar Attys UNQUALIFIED89Amy Elsner
1028Salvatore D CaldareraFrance2026-09-29Rousseaux, Michael Esq QUALIFIED56Bernardo Dominic
1029Aditya I KolmetzItaly2026-09-23Morlong Associates RENEWAL93Ivan Magalhaes
1030Octavia M ButtGermany2026-10-06Chemel, James L Cpa QUALIFIED79Stephen Shaw
1031Misaki T SchemmerRussia2026-09-24King, Christopher A Esq NEGOTIATION26Anna Fali
1032Faith S RutaIndia2026-09-25Benton, John B Jr QUALIFIED90Bernardo Dominic
1033Francesco N SchemmerRussia2026-09-28Printing Dimensions NEW23Elwin Sharvill
1034Leja U TollnerJapan2026-09-27Benton, John B Jr RENEWAL8Xuxue Feng
1035Isabel V StockhamAustralia2026-09-17Truhlar And Truhlar Attys QUALIFIED28Bernardo Dominic
1036Stacey V MaletBrazil2026-10-09Commercial Press NEW10Anna Fali
1037Sinclair R NickaAustralia2026-09-14Buckley Miller Wright NEGOTIATION7Ivan Magalhaes
1038Mujtaba W AmigonJapan2026-10-01Commercial Press RENEWAL8Onyama Limba
1039Antonio O OldroydItaly2026-09-29King, Christopher A Esq PROPOSAL68Bernardo Dominic
1040Salvatore D MorascaCanada2026-09-26Chapman, Ross E Esq UNQUALIFIED51Bernardo Dominic
1041Emily A FigeroaBrazil2026-10-06Truhlar And Truhlar Attys UNQUALIFIED31Stephen Shaw
1042Costa O GarufiItaly2026-10-10Chanay, Jeffrey A Esq PROPOSAL4Anna Fali
1043Francesco B MaletBrazil2026-10-07Morlong Associates RENEWAL23Elwin Sharvill
1044David Z GillianRussia2026-10-06Benton, John B Jr RENEWAL97Asiya Javayant
1045Jeanfrancois S FerenczAustralia2026-10-04Rangoni Of Florence NEGOTIATION35Elwin Sharvill
1046Antonio G CaudyAustralia2026-09-24Chanay, Jeffrey A Esq NEGOTIATION95Ioni Bowcher
1047Jennifer C PoquetteRussia2026-09-20Feltz Printing Service RENEWAL45Asiya Javayant
1048Jennifer F AlbaresAustralia2026-09-21Buckley Miller Wright NEW21Elwin Sharvill
1049Darci V DilliardRussia2026-10-08Rousseaux, Michael Esq UNQUALIFIED47Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Costa T InouyeBrazilStephen Shaw NEW
Juan Y BriddickGermanyAnna Fali UNQUALIFIED
Julie M ChuiGermanyXuxue Feng UNQUALIFIED
David N MacleadArgentinaAnna Fali UNQUALIFIED
Silvio T GillianItalyIvan Magalhaes PROPOSAL
David Z PerinGermanyElwin Sharvill QUALIFIED
Chavez N RoysterSpainBernardo Dominic UNQUALIFIED
Kaitlin Y IturbideGermanyAsiya Javayant PROPOSAL
Wickens G GarufiRussiaAmy Elsner PROPOSAL
Rodrigues O RimFranceOnyama Limba RENEWAL
Silvio U MorascaBrazilIoni Bowcher NEGOTIATION
Darci B PerinArgentinaIoni Bowcher RENEWAL
Tony N KolmetzJapanIvan Magalhaes NEGOTIATION
Jennifer Z StensethArgentinaAmy Elsner NEGOTIATION
Sinclair E MaletRussiaAsiya Javayant RENEWAL
Izzy H PaprockiGermanyIvan Magalhaes RENEWAL
Mujtaba J MarrierAustraliaIvan Magalhaes NEW
Aruna D CaudyAustraliaAsiya Javayant NEW
Darci H FlosiCanadaBernardo Dominic QUALIFIED
Mayumi M StockhamGermanyElwin Sharvill QUALIFIED
Jennifer G MaletArgentinaAsiya Javayant QUALIFIED
Murillo K BowleyFranceIoni Bowcher RENEWAL
Kadeem B InouyeUnited KingdomXuxue Feng NEGOTIATION
Ivar S GarufiAustraliaElwin Sharvill NEW
Jeanfrancois S CampainArgentinaIvan Magalhaes PROPOSAL
Jeanfrancois F DoeRussiaAmy Elsner PROPOSAL
Munro T CaldareraGermanyBernardo Dominic UNQUALIFIED
Mujtaba N FlosiFranceXuxue Feng NEGOTIATION
Silvio K RimCanadaStephen Shaw NEGOTIATION
Claire E MaletRussiaXuxue Feng QUALIFIED
Darci G SaylorsArgentinaAmy Elsner RENEWAL
Johnson R KuskoFranceElwin Sharvill QUALIFIED
Leon U StockhamFranceAnna Fali NEGOTIATION
Ashley E StensethItalyIoni Bowcher PROPOSAL
Isabel M PaprockiArgentinaOnyama Limba NEGOTIATION
Misaki Y RimItalyAnna Fali QUALIFIED
Faith A CampainCanadaOnyama Limba UNQUALIFIED
Stacey L FlosiJapanBernardo Dominic PROPOSAL
Cody V SchemmerIndiaBernardo Dominic UNQUALIFIED
Maria C FigeroaCanadaIoni Bowcher QUALIFIED
Tony U SaylorsArgentinaAsiya Javayant QUALIFIED
Tony O FerenczCanadaStephen Shaw NEGOTIATION
Rodrigues K KolmetzItalyXuxue Feng RENEWAL
Ashley D RimBrazilStephen Shaw NEW
Octavia K FerenczUnited KingdomStephen Shaw RENEWAL
Kaitlin O ShinkoArgentinaStephen Shaw PROPOSAL
Wickens C StensethArgentinaAmy Elsner NEGOTIATION
Morrow V CaldareraIndiaXuxue Feng PROPOSAL
Mujtaba C KuskoItalyAmy Elsner NEW
Stacey O StensethSpainAmy Elsner QUALIFIED
Frozen Columns
Name
Antonio B Perin
Aditya Z Kusko
Ricardo J Malet
Wickens B Doe
Salvatore K Tollner
Ricardo M Royster
Deepesh P Glick
Costa I Whobrey
Julie R Dilliard
Ivar P Perin
Faith D Sergi
Jeanfrancois O Dilliard
Mujtaba B Garufi
Leja E Waycott
James R Tollner
Kadeem L Caudy
Rodrigues H Nicka
Francesco Z Caudy
David Q Paprocki
Kadeem R Albares
Chavez W Amigon
Kaitlin O Schemmer
Octavia D Marrier
Misaki C Inouye
Octavia R Schemmer
James B Foller
Octavia O Rim
David Z Stockham
Kaitlin C Shinko
Aditya O Rim
Antonio D Maclead
Kadeem X Nestle
Antonio O Caldarera
Smith S Maclead
Misaki S Slusarski
Morrow V Butt
Wickens T Waycott
Clifford P Ruta
Murillo V Nicka
Arvin H Briddick
Kaitlin J Saylors
Julie Y Caldarera
Ricardo E Nestle
Sinclair L Bolognia
David E Kolmetz
Darci E Bolognia
Alejandro M Waycott
Morrow H Kolmetz
Emily V Kolmetz
Rodrigues M Tollner
IdCountryDate
1000Australia2026-09-26
1001France2026-09-23
1002Germany2026-09-24
1003United Kingdom2026-09-14
1004Canada2026-09-18
1005France2026-09-24
1006Canada2026-10-08
1007Australia2026-09-16
1008Russia2026-09-30
1009India2026-10-03
1010India2026-10-03
1011Japan2026-09-23
1012Australia2026-09-26
1013Spain2026-10-03
1014Germany2026-09-18
1015Italy2026-09-28
1016Japan2026-09-17
1017Russia2026-09-22
1018Canada2026-10-10
1019India2026-09-25
1020France2026-10-06
1021Russia2026-10-10
1022Australia2026-10-01
1023Germany2026-10-04
1024Japan2026-09-29
1025Brazil2026-10-05
1026Canada2026-10-08
1027Germany2026-10-09
1028Japan2026-09-11
1029Spain2026-09-27
1030Australia2026-09-27
1031Brazil2026-09-20
1032Australia2026-09-12
1033Canada2026-09-22
1034Brazil2026-10-07
1035Japan2026-09-15
1036France2026-09-23
1037Australia2026-09-28
1038Brazil2026-10-09
1039Spain2026-09-28
1040Australia2026-09-22
1041Brazil2026-09-26
1042Brazil2026-10-08
1043United Kingdom2026-10-03
1044Italy2026-09-21
1045Canada2026-09-21
1046Canada2026-10-03
1047Germany2026-10-04
1048Russia2026-09-28
1049Japan2026-09-20

On-Demand Data

NameIdCountryDate
Smith E Darakjy1000Italy2026-09-12
Juan C Nestle1001Canada2026-10-06
Greenwood K Waycott1002Russia2026-10-01
Costa H Bowley1003Spain2026-09-26
Antonio W Caudy1004Japan2026-09-11
Octavia S Caudy1005United Kingdom2026-10-08
Ivar L Ferencz1006Canada2026-09-30
Leja V Doe1007United Kingdom2026-09-30
Morrow Q Flosi1008Canada2026-09-24
Ivar E Royster1009Canada2026-10-09
Leja P Tollner1010Japan2026-09-24
Murillo Z Gillian1011Brazil2026-09-18
Jeanfrancois C Sergi1012France2026-09-12
Isabel G Gaucho1013Argentina2026-09-22
Emily M Saylors1014Canada2026-09-13
Greenwood P Schemmer1015Spain2026-10-02
Jefferson J Malet1016Australia2026-09-21
Jones M Kolmetz1017Brazil2026-09-24
Claire F Poquette1018France2026-09-16
Jefferson T Marrier1019Canada2026-09-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar E RutaBrazilAmy Elsner UNQUALIFIED
Kaitlin V DilliardRussiaAnna Fali UNQUALIFIED
Morrow P ButtIndiaIvan Magalhaes PROPOSAL
Emily H PaprockiRussiaOnyama Limba NEGOTIATION
David Z WhobreyIndiaOnyama Limba NEW
Nicolas B WieserIndiaBernardo Dominic UNQUALIFIED
Johnson C RulapaughJapanOnyama Limba PROPOSAL
Kadeem V StockhamSpainIvan Magalhaes QUALIFIED
Juan O NestleIndiaAnna Fali QUALIFIED
Misaki V FlosiSpainBernardo Dominic UNQUALIFIED
Alejandro W GillianItalyBernardo Dominic QUALIFIED
Salvatore F MarrierItalyBernardo Dominic QUALIFIED
Jones N BowleyRussiaStephen Shaw PROPOSAL
Isabel X SaylorsAustraliaAnna Fali UNQUALIFIED
Nicolas A MaletAustraliaAnna Fali PROPOSAL
Misaki F BriddickBrazilStephen Shaw UNQUALIFIED
Adams O FerenczJapanAsiya Javayant NEW
Aika S BologniaCanadaXuxue Feng QUALIFIED
Jennifer D StockhamFranceXuxue Feng NEW
Izzy Y RulapaughCanadaAmy Elsner NEW
Kaitlin E PoquetteCanadaXuxue Feng NEW
Maria R IturbideUnited KingdomAnna Fali NEW
Leja W KolmetzUnited KingdomOnyama Limba QUALIFIED
Aditya L BologniaAustraliaAsiya Javayant QUALIFIED
Jones B ButtIndiaAnna Fali RENEWAL
David Q VenereArgentinaAnna Fali QUALIFIED
Ivar X OldroydUnited KingdomAsiya Javayant PROPOSAL
Jones B DoeFranceAsiya Javayant NEW
Isabel D GarufiJapanAsiya Javayant RENEWAL
Juan J DarakjyJapanIoni Bowcher PROPOSAL
Kadeem N PerinSpainAsiya Javayant NEW
Francesco L BowleyArgentinaStephen Shaw NEGOTIATION
Misaki R KuskoIndiaAsiya Javayant NEGOTIATION
James J WieserSpainIoni Bowcher UNQUALIFIED
Salvatore C IturbideRussiaStephen Shaw RENEWAL
Adams Y WieserItalyAsiya Javayant PROPOSAL
Juan H MorascaIndiaAmy Elsner NEGOTIATION
Juan B DarakjyArgentinaXuxue Feng RENEWAL
Jeanfrancois D DilliardItalyIvan Magalhaes UNQUALIFIED
Juan I WieserFranceElwin Sharvill 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>