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
Jennifer M StensethUnited KingdomAnna Fali RENEWAL
Salvatore D GlickUnited KingdomBernardo Dominic UNQUALIFIED
Misaki B KolmetzArgentinaIvan Magalhaes NEW
Kadeem N PoquetteIndiaIoni Bowcher RENEWAL
Octavia H InouyeFranceAnna Fali RENEWAL
Faith D WaycottGermanyAsiya Javayant UNQUALIFIED
Stacey P AmigonArgentinaAnna Fali PROPOSAL
Salvatore F MorascaUnited KingdomAnna Fali NEGOTIATION
Leon K RulapaughIndiaBernardo Dominic PROPOSAL
Izzy Y GauchoItalyElwin Sharvill NEW
Morrow A TollnerCanadaAnna Fali UNQUALIFIED
Mayumi N PoquetteCanadaIvan Magalhaes PROPOSAL
Ivar C WieserIndiaOnyama Limba PROPOSAL
Alejandro N MaletAustraliaIvan Magalhaes RENEWAL
Kadeem Y ChuiAustraliaStephen Shaw NEGOTIATION
Jennifer O BriddickRussiaIvan Magalhaes RENEWAL
Clifford W MacleadIndiaIvan Magalhaes RENEWAL
Jones D GlickFranceXuxue Feng NEW
Salvatore E ChuiAustraliaStephen Shaw PROPOSAL
Kadeem K FerenczCanadaIoni Bowcher UNQUALIFIED
Salvatore F FollerItalyAsiya Javayant NEGOTIATION
Mujtaba J NickaCanadaIoni Bowcher QUALIFIED
Francesco W DarakjyJapanStephen Shaw NEW
Emily Y AmigonBrazilXuxue Feng NEW
Ivar G FigeroaBrazilStephen Shaw NEGOTIATION
Deepesh F SchemmerItalyAnna Fali RENEWAL
Aruna U VocelkaUnited KingdomAnna Fali UNQUALIFIED
Aika G WieserBrazilXuxue Feng PROPOSAL
Morrow I GillianCanadaXuxue Feng RENEWAL
Johnson N StensethSpainOnyama Limba UNQUALIFIED
Ashley E MaletSpainAsiya Javayant PROPOSAL
Isabel X MaletSpainXuxue Feng RENEWAL
Maria Z RimSpainAmy Elsner NEGOTIATION
Claire R IturbideIndiaAsiya Javayant QUALIFIED
Rodrigues F StensethArgentinaXuxue Feng NEW
David B BriddickFranceElwin Sharvill UNQUALIFIED
Kaitlin A GauchoSpainElwin Sharvill RENEWAL
Murillo N MorascaGermanyAmy Elsner QUALIFIED
Kadeem H BowleySpainIoni Bowcher NEW
Sinclair X SlusarskiFranceElwin Sharvill NEGOTIATION
Jennifer A WaycottBrazilBernardo Dominic NEGOTIATION
Adams F MarrierBrazilXuxue Feng PROPOSAL
Rodrigues R ButtAustraliaStephen Shaw QUALIFIED
Jones K MaletCanadaElwin Sharvill RENEWAL
Deepesh F StockhamGermanyIvan Magalhaes RENEWAL
Munro L SchemmerItalyAmy Elsner UNQUALIFIED
Maria Z GlickUnited KingdomAsiya Javayant NEW
Jeanfrancois H DarakjyRussiaStephen Shaw NEGOTIATION
Francesco W GillianItalyElwin Sharvill RENEWAL
James V MarrierGermanyOnyama Limba QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Costa E StockhamArgentinaOnyama Limba PROPOSAL
Johnson A MaletArgentinaOnyama Limba UNQUALIFIED
David Y PerinUnited KingdomIvan Magalhaes NEGOTIATION
Jones D GauchoJapanXuxue Feng UNQUALIFIED
Julie G FlosiIndiaXuxue Feng UNQUALIFIED
Aruna W IturbideAustraliaIvan Magalhaes NEW
Francesco Z AlbaresFranceOnyama Limba UNQUALIFIED
Tony O DoeGermanyAmy Elsner UNQUALIFIED
Smith G SaylorsFranceElwin Sharvill RENEWAL
Francesco O KuskoGermanyAmy Elsner RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin F SergiAustralia2026-09-28Commercial Press NEGOTIATION42Asiya Javayant
1001Aruna L KuskoArgentina2026-10-01Chemel, James L Cpa NEW22Bernardo Dominic
1002Arvin K BriddickIndia2026-10-15Chemel, James L Cpa RENEWAL54Anna Fali
1003Misaki X WaycottIndia2026-10-24King, Christopher A Esq PROPOSAL61Ioni Bowcher
1004Aruna R IturbideJapan2026-10-15Dorl, James J Esq UNQUALIFIED58Bernardo Dominic
1005Kadeem S FigeroaIndia2026-10-25Chanay, Jeffrey A Esq QUALIFIED45Asiya Javayant
1006Ricardo R SaylorsSpain2026-10-04Dorl, James J Esq PROPOSAL26Ioni Bowcher
1007Greenwood L DilliardSpain2026-10-14Commercial Press NEW3Ioni Bowcher
1008Francesco N DoeSpain2026-10-15Chanay, Jeffrey A Esq QUALIFIED5Bernardo Dominic
1009Clifford T GarufiSpain2026-10-01Chemel, James L Cpa PROPOSAL33Stephen Shaw
1010Aditya W SchemmerJapan2026-09-27Chapman, Ross E Esq PROPOSAL15Ivan Magalhaes
1011Murillo B PaprockiBrazil2026-10-07Feltz Printing Service QUALIFIED25Elwin Sharvill
1012Darci X SlusarskiArgentina2026-10-16Rangoni Of Florence NEW93Anna Fali
1013Aruna M TollnerFrance2026-09-27Benton, John B Jr UNQUALIFIED27Elwin Sharvill
1014Aditya G StockhamRussia2026-10-24Truhlar And Truhlar Attys RENEWAL98Onyama Limba
1015Rodrigues H MorascaAustralia2026-10-25Printing Dimensions QUALIFIED99Asiya Javayant
1016Maria Y SaylorsRussia2026-10-22Chemel, James L Cpa RENEWAL36Elwin Sharvill
1017Adams L FigeroaUnited Kingdom2026-10-18Commercial Press NEGOTIATION29Anna Fali
1018David Q DoeItaly2026-10-11Printing Dimensions UNQUALIFIED4Ivan Magalhaes
1019Stacey B PerinBrazil2026-10-12Feiner Bros UNQUALIFIED16Ivan Magalhaes
1020Darci J RutaRussia2026-10-06King, Christopher A Esq RENEWAL67Bernardo Dominic
1021Misaki E NickaGermany2026-10-26Benton, John B Jr RENEWAL44Anna Fali
1022Johnson M ButtCanada2026-10-26Buckley Miller Wright RENEWAL89Ivan Magalhaes
1023Jennifer Z AmigonJapan2026-10-07Chanay, Jeffrey A Esq NEW31Anna Fali
1024Morrow Q RimIndia2026-10-03Rangoni Of Florence UNQUALIFIED19Elwin Sharvill
1025Deepesh M MaletArgentina2026-10-01Chapman, Ross E Esq NEGOTIATION27Bernardo Dominic
1026Faith M BologniaGermany2026-10-26Rangoni Of Florence NEGOTIATION44Xuxue Feng
1027Izzy S DoeCanada2026-10-01Feltz Printing Service QUALIFIED67Ioni Bowcher
1028Mujtaba N DilliardJapan2026-10-04Chapman, Ross E Esq RENEWAL14Elwin Sharvill
1029Francesco Q SergiBrazil2026-09-30Rangoni Of Florence PROPOSAL63Bernardo Dominic
1030Stacey A TollnerUnited Kingdom2026-10-04Commercial Press NEGOTIATION45Amy Elsner
1031Wickens D FerenczFrance2026-10-18Chapman, Ross E Esq NEW68Ivan Magalhaes
1032Julie F RimCanada2026-10-19Benton, John B Jr PROPOSAL43Amy Elsner
1033Isabel L BologniaJapan2026-10-08Rousseaux, Michael Esq QUALIFIED21Elwin Sharvill
1034Francesco H ShinkoCanada2026-10-10Rangoni Of Florence NEW85Ioni Bowcher
1035Deepesh T IturbideCanada2026-10-19Dorl, James J Esq PROPOSAL25Xuxue Feng
1036David F CampainItaly2026-10-13Rangoni Of Florence QUALIFIED33Onyama Limba
1037Greenwood V FerenczBrazil2026-10-12Feiner Bros QUALIFIED48Ioni Bowcher
1038Misaki B CaldareraBrazil2026-10-06Buckley Miller Wright QUALIFIED62Ioni Bowcher
1039Cody O PaprockiRussia2026-10-08Buckley Miller Wright NEGOTIATION91Anna Fali
1040Jones F FerenczBrazil2026-10-25Buckley Miller Wright PROPOSAL65Bernardo Dominic
1041Jeanfrancois B ChuiArgentina2026-10-23Benton, John B Jr NEW30Ioni Bowcher
1042Jennifer T AlbaresCanada2026-09-30Chanay, Jeffrey A Esq UNQUALIFIED71Stephen Shaw
1043Maria H SaylorsFrance2026-10-07Chanay, Jeffrey A Esq NEGOTIATION87Xuxue Feng
1044Arvin K MacleadItaly2026-10-09Truhlar And Truhlar Attys PROPOSAL32Elwin Sharvill
1045David I InouyeIndia2026-10-14Buckley Miller Wright RENEWAL6Xuxue Feng
1046Rodrigues Y WhobreySpain2026-10-20Feltz Printing Service QUALIFIED69Anna Fali
1047Arvin B NestleBrazil2026-10-21Benton, John B Jr UNQUALIFIED98Ioni Bowcher
1048Aika R FlosiBrazil2026-10-24King, Christopher A Esq QUALIFIED11Ioni Bowcher
1049Leon W MaletGermany2026-10-23King, Christopher A Esq UNQUALIFIED70Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Morrow Y MarrierRussiaAmy Elsner NEW
Darci J SchemmerGermanyIvan Magalhaes RENEWAL
James H FerenczJapanElwin Sharvill RENEWAL
Leon L FlosiGermanyStephen Shaw QUALIFIED
Faith V BologniaJapanIvan Magalhaes UNQUALIFIED
Kaitlin Q ShinkoAustraliaAnna Fali PROPOSAL
Julie E MarrierAustraliaOnyama Limba QUALIFIED
Arvin Z NestleUnited KingdomAsiya Javayant PROPOSAL
Maria O RulapaughBrazilIvan Magalhaes PROPOSAL
Alejandro I FlosiIndiaElwin Sharvill NEGOTIATION
Murillo M KuskoArgentinaAsiya Javayant NEGOTIATION
Antonio S ButtRussiaElwin Sharvill NEW
Juan W NickaIndiaIoni Bowcher QUALIFIED
Rodrigues X MaletJapanAnna Fali RENEWAL
Morrow P KuskoBrazilStephen Shaw NEW
David T RoysterJapanBernardo Dominic NEW
Kaitlin X FollerJapanElwin Sharvill NEGOTIATION
Faith F DilliardArgentinaXuxue Feng RENEWAL
Salvatore X FollerCanadaAmy Elsner RENEWAL
Jeanfrancois W MarrierGermanyIvan Magalhaes NEGOTIATION
Silvio K SaylorsIndiaAnna Fali QUALIFIED
Antonio O BowleyGermanyBernardo Dominic PROPOSAL
Claire B VenereRussiaOnyama Limba NEGOTIATION
Rodrigues Q RimGermanyElwin Sharvill QUALIFIED
Ricardo A CaldareraSpainXuxue Feng UNQUALIFIED
Misaki T PerinGermanyOnyama Limba PROPOSAL
Stacey C PoquetteRussiaOnyama Limba NEW
Smith Q RoysterRussiaIvan Magalhaes UNQUALIFIED
Salvatore D RoysterUnited KingdomIoni Bowcher PROPOSAL
Ivar U KolmetzFranceBernardo Dominic UNQUALIFIED
Deepesh M GillianBrazilAsiya Javayant NEW
Emily E DarakjyUnited KingdomAnna Fali NEGOTIATION
Cody B ChuiJapanAmy Elsner NEW
Salvatore M GarufiArgentinaAsiya Javayant QUALIFIED
Morrow W RimJapanIoni Bowcher NEW
Leon W CaudySpainXuxue Feng RENEWAL
Murillo O CaldareraRussiaAnna Fali PROPOSAL
Kadeem I FigeroaSpainIvan Magalhaes NEW
Maria T MarrierBrazilAnna Fali PROPOSAL
Ashley O OstroskyRussiaIoni Bowcher RENEWAL
Julie J AmigonBrazilIoni Bowcher NEGOTIATION
Ricardo S PoquetteBrazilIvan Magalhaes QUALIFIED
Darci Y RoysterJapanXuxue Feng UNQUALIFIED
Jennifer Z StockhamGermanyOnyama Limba PROPOSAL
Maria P GauchoItalyElwin Sharvill QUALIFIED
Greenwood C GlickArgentinaBernardo Dominic UNQUALIFIED
Jennifer V ShinkoAustraliaStephen Shaw NEGOTIATION
Nicolas K BriddickIndiaIvan Magalhaes PROPOSAL
Johnson P OldroydUnited KingdomAmy Elsner NEW
Johnson C BowleyArgentinaAnna Fali NEW
Frozen Columns
Name
Stacey B Dilliard
Ricardo B Bolognia
Munro X Flosi
David N Caldarera
Jennifer N Garufi
Jennifer V Iturbide
Mujtaba U Marrier
Juan I Whobrey
Adams L Darakjy
Misaki F Ruta
Arvin Z Foller
Jennifer K Garufi
Stacey P Royster
Leon A Nestle
Kadeem W Venere
Kaitlin X Caldarera
Smith C Venere
Antonio V Poquette
Mayumi W Doe
Smith T Briddick
Isabel W Venere
Darci G Glick
Murillo Y Wieser
Rodrigues S Iturbide
Maisha V Schemmer
Ricardo J Kolmetz
Ashley D Vocelka
Aditya E Tollner
Stacey Y Glick
Jennifer D Maclead
Leja J Nestle
Sinclair N Darakjy
Claire R Albares
Emily G Bowley
Jones H Ruta
Smith X Rim
Jennifer I Rim
Isabel R Foller
Claire B Malet
Munro K Rim
Ashley S Morasca
Kaitlin S Albares
David M Chui
Alejandro K Morasca
Mujtaba F Garufi
Aruna V Garufi
Kaitlin E Waycott
Sinclair Y Saylors
Maisha U Gaucho
Jones G Whobrey
IdCountryDate
1000Brazil2026-09-28
1001Canada2026-10-10
1002United Kingdom2026-10-13
1003Japan2026-10-13
1004Canada2026-10-23
1005Germany2026-10-19
1006France2026-10-07
1007Russia2026-10-09
1008United Kingdom2026-09-29
1009Japan2026-10-13
1010France2026-10-19
1011Canada2026-10-09
1012Germany2026-10-15
1013Italy2026-10-10
1014Argentina2026-09-29
1015Canada2026-10-09
1016Italy2026-10-12
1017Spain2026-09-30
1018Japan2026-10-06
1019Australia2026-10-08
1020Brazil2026-10-24
1021Brazil2026-10-16
1022Germany2026-10-05
1023Italy2026-10-21
1024Spain2026-10-21
1025France2026-10-15
1026Canada2026-10-23
1027Japan2026-09-30
1028France2026-10-15
1029India2026-10-08
1030Brazil2026-10-08
1031India2026-10-25
1032Canada2026-10-20
1033Spain2026-10-17
1034United Kingdom2026-10-25
1035Spain2026-10-24
1036India2026-10-03
1037France2026-10-18
1038Canada2026-10-26
1039Argentina2026-09-28
1040Australia2026-10-09
1041Germany2026-10-16
1042Germany2026-10-17
1043Canada2026-10-01
1044Brazil2026-10-09
1045India2026-10-06
1046Germany2026-10-04
1047Argentina2026-09-29
1048Canada2026-10-04
1049Japan2026-10-18

On-Demand Data

NameIdCountryDate
Isabel R Oldroyd1000Italy2026-10-03
Leja T Tollner1001United Kingdom2026-10-18
Faith M Shinko1002Brazil2026-10-23
Stacey B Tollner1003Japan2026-10-21
Faith Y Wieser1004Germany2026-10-14
Nicolas T Sergi1005Russia2026-10-01
Costa Z Maclead1006Brazil2026-10-16
Munro J Chui1007United Kingdom2026-10-06
Stacey B Ruta1008Canada2026-10-16
Arvin Q Vocelka1009Argentina2026-09-27
Costa F Saylors1010Italy2026-10-19
Ashley P Morasca1011United Kingdom2026-10-24
Maria P Maclead1012Germany2026-10-12
Murillo G Doe1013United Kingdom2026-10-16
Mujtaba I Sergi1014Brazil2026-10-24
Deepesh M Darakjy1015Russia2026-09-30
Wickens L Albares1016Germany2026-10-26
Smith F Darakjy1017Brazil2026-09-28
Nicolas S Wieser1018Canada2026-10-16
Silvio A Shinko1019United Kingdom2026-10-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Misaki M WieserItalyIoni Bowcher NEGOTIATION
Adams F MaletItalyAmy Elsner NEW
Tony A VenereIndiaXuxue Feng NEW
James A FlosiBrazilAsiya Javayant RENEWAL
Jeanfrancois E GillianAustraliaIoni Bowcher UNQUALIFIED
Deepesh N FlosiCanadaXuxue Feng QUALIFIED
Jeanfrancois J InouyeRussiaAnna Fali RENEWAL
Murillo U RoysterItalyStephen Shaw QUALIFIED
Octavia Z ChuiCanadaIoni Bowcher QUALIFIED
Julie J GlickCanadaIvan Magalhaes UNQUALIFIED
Arvin H MorascaBrazilAsiya Javayant NEW
Salvatore W AlbaresFranceXuxue Feng RENEWAL
Johnson A NickaBrazilAmy Elsner UNQUALIFIED
Johnson S StensethFranceOnyama Limba RENEWAL
Ricardo T PoquetteCanadaAmy Elsner QUALIFIED
Antonio P GarufiGermanyAsiya Javayant NEGOTIATION
Tony S CampainItalyIoni Bowcher NEGOTIATION
Mujtaba X GillianGermanyAnna Fali QUALIFIED
Murillo C VenereUnited KingdomIoni Bowcher RENEWAL
Deepesh I AmigonRussiaBernardo Dominic NEW
Deepesh U MaletBrazilIoni Bowcher UNQUALIFIED
David E FollerArgentinaBernardo Dominic NEW
Kadeem C DarakjyIndiaAsiya Javayant PROPOSAL
Maisha S DarakjyCanadaIvan Magalhaes NEW
Maisha M SaylorsAustraliaOnyama Limba NEW
Salvatore F MarrierIndiaAmy Elsner NEGOTIATION
Jefferson O GillianRussiaStephen Shaw PROPOSAL
Wickens C ButtItalyAsiya Javayant PROPOSAL
Aditya F PerinJapanAnna Fali NEW
Juan G MarrierJapanAnna Fali NEGOTIATION
Ricardo L MacleadArgentinaAsiya Javayant NEGOTIATION
Kadeem P SchemmerItalyBernardo Dominic QUALIFIED
Antonio E DoeRussiaXuxue Feng UNQUALIFIED
Ricardo Z WhobreyIndiaAsiya Javayant QUALIFIED
Antonio G DoeIndiaElwin Sharvill NEW
James P AlbaresSpainAnna Fali UNQUALIFIED
Wickens L StensethRussiaElwin Sharvill QUALIFIED
Jennifer F RutaJapanElwin Sharvill PROPOSAL
Smith U DilliardIndiaAsiya Javayant NEGOTIATION
Aruna W MacleadGermanyStephen Shaw RENEWAL

<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>