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
Arvin K MorascaSpainElwin Sharvill RENEWAL
Kaitlin W InouyeRussiaAmy Elsner QUALIFIED
Faith K RoysterArgentinaOnyama Limba RENEWAL
Jeanfrancois I MaletUnited KingdomElwin Sharvill NEGOTIATION
David S FerenczSpainOnyama Limba UNQUALIFIED
Izzy T IturbideJapanIoni Bowcher RENEWAL
Ivar H RulapaughUnited KingdomElwin Sharvill QUALIFIED
David V SergiUnited KingdomBernardo Dominic RENEWAL
Emily R MaletUnited KingdomXuxue Feng RENEWAL
Claire Y SlusarskiJapanAmy Elsner NEGOTIATION
Jeanfrancois K AlbaresUnited KingdomElwin Sharvill QUALIFIED
Cody J FollerRussiaOnyama Limba NEW
Faith F CaudyGermanyStephen Shaw UNQUALIFIED
Leon X NickaAustraliaAnna Fali QUALIFIED
Octavia Q FerenczAustraliaAsiya Javayant RENEWAL
Claire R RimGermanyXuxue Feng NEW
Smith X BriddickArgentinaAmy Elsner UNQUALIFIED
Sinclair U AlbaresGermanyAsiya Javayant NEW
Leon O GlickItalyIoni Bowcher NEW
Maria M MaletIndiaOnyama Limba RENEWAL
Leja I ShinkoGermanyAnna Fali UNQUALIFIED
Mujtaba A AmigonBrazilStephen Shaw UNQUALIFIED
Aika V MorascaRussiaStephen Shaw NEGOTIATION
Smith G CaldareraGermanyIvan Magalhaes UNQUALIFIED
Leon N NestleBrazilAsiya Javayant NEW
Stacey A MaletUnited KingdomXuxue Feng QUALIFIED
Ricardo S StockhamGermanyOnyama Limba NEGOTIATION
Morrow A TollnerItalyAsiya Javayant QUALIFIED
Emily M GauchoRussiaAmy Elsner RENEWAL
Murillo F MacleadSpainIvan Magalhaes NEW
Mujtaba I NickaUnited KingdomIoni Bowcher NEGOTIATION
Kaitlin Q FlosiJapanElwin Sharvill NEGOTIATION
Emily C GarufiJapanStephen Shaw UNQUALIFIED
Ashley N StockhamArgentinaIoni Bowcher NEGOTIATION
Wickens U StockhamBrazilElwin Sharvill QUALIFIED
Jefferson G FlosiItalyIoni Bowcher RENEWAL
Kadeem R NickaFranceAnna Fali QUALIFIED
Octavia I DoeItalyXuxue Feng NEGOTIATION
Darci F FollerCanadaAnna Fali QUALIFIED
Cody X SchemmerRussiaOnyama Limba QUALIFIED
Octavia Q MacleadJapanIvan Magalhaes PROPOSAL
Jefferson K IturbideSpainAmy Elsner NEGOTIATION
Costa Q SergiItalyAnna Fali NEW
Salvatore B SchemmerJapanAsiya Javayant NEGOTIATION
Aditya X DarakjyArgentinaAsiya Javayant RENEWAL
Sinclair O ButtJapanAnna Fali PROPOSAL
Arvin H SergiJapanElwin Sharvill PROPOSAL
Julie C WaycottBrazilOnyama Limba PROPOSAL
Octavia U StensethCanadaIvan Magalhaes PROPOSAL
Stacey E ButtUnited KingdomStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Julie O SaylorsAustraliaAsiya Javayant PROPOSAL
Octavia R NestleUnited KingdomIoni Bowcher NEW
Julie Q NestleRussiaXuxue Feng NEGOTIATION
Mujtaba R DarakjyArgentinaBernardo Dominic QUALIFIED
Arvin X CampainRussiaStephen Shaw QUALIFIED
Aditya A WieserAustraliaOnyama Limba UNQUALIFIED
Ashley Y VocelkaJapanStephen Shaw QUALIFIED
Sinclair U GillianBrazilAnna Fali RENEWAL
Jones G MorascaArgentinaAmy Elsner QUALIFIED
Jennifer L WhobreyBrazilAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily C SaylorsAustralia2026-09-13Benton, John B Jr NEW94Ioni Bowcher
1001Nicolas Z PaprockiRussia2026-09-11Chapman, Ross E Esq QUALIFIED24Onyama Limba
1002Nicolas O ButtGermany2026-09-19Feltz Printing Service QUALIFIED31Amy Elsner
1003Adams S StockhamCanada2026-09-01Rangoni Of Florence UNQUALIFIED48Xuxue Feng
1004Arvin O FollerSpain2026-09-03Chapman, Ross E Esq UNQUALIFIED88Stephen Shaw
1005Claire C SlusarskiCanada2026-09-11Feltz Printing Service RENEWAL31Anna Fali
1006Jennifer D WieserFrance2026-09-06Feiner Bros NEW60Amy Elsner
1007Jones H StensethCanada2026-09-19Feltz Printing Service NEGOTIATION20Ivan Magalhaes
1008Tony O RulapaughAustralia2026-09-23King, Christopher A Esq RENEWAL97Asiya Javayant
1009Maria K ButtBrazil2026-09-23Feiner Bros NEW78Stephen Shaw
1010Jefferson M SergiFrance2026-09-14Chapman, Ross E Esq NEGOTIATION13Xuxue Feng
1011Ivar R DarakjyUnited Kingdom2026-09-22Morlong Associates NEW4Anna Fali
1012Antonio K InouyeFrance2026-09-18Feltz Printing Service NEW65Stephen Shaw
1013Aditya C DoeBrazil2026-09-14Chanay, Jeffrey A Esq PROPOSAL9Xuxue Feng
1014Juan U CampainArgentina2026-09-10Chanay, Jeffrey A Esq RENEWAL47Asiya Javayant
1015Ashley T DarakjyJapan2026-09-01Rousseaux, Michael Esq NEW42Ioni Bowcher
1016Morrow M VenereUnited Kingdom2026-09-14Chanay, Jeffrey A Esq QUALIFIED32Ioni Bowcher
1017Wickens T NestleItaly2026-09-28Chapman, Ross E Esq QUALIFIED50Bernardo Dominic
1018Octavia S OstroskyJapan2026-09-29Dorl, James J Esq UNQUALIFIED61Ioni Bowcher
1019Kaitlin F MarrierAustralia2026-09-16Commercial Press RENEWAL38Ivan Magalhaes
1020Morrow L IturbideJapan2026-09-24Rousseaux, Michael Esq QUALIFIED52Anna Fali
1021Juan O FerenczUnited Kingdom2026-09-01Buckley Miller Wright NEW37Xuxue Feng
1022Izzy N TollnerAustralia2026-09-25Chapman, Ross E Esq RENEWAL25Onyama Limba
1023Mayumi G SergiGermany2026-09-29Benton, John B Jr UNQUALIFIED58Anna Fali
1024Arvin U RimItaly2026-09-06Rangoni Of Florence UNQUALIFIED59Onyama Limba
1025Adams W SaylorsItaly2026-09-26Chemel, James L Cpa PROPOSAL90Amy Elsner
1026Mujtaba N MarrierUnited Kingdom2026-09-14Printing Dimensions NEGOTIATION74Ivan Magalhaes
1027Stacey E OstroskyIndia2026-09-11Buckley Miller Wright QUALIFIED17Onyama Limba
1028Smith D ShinkoSpain2026-09-23Dorl, James J Esq RENEWAL14Anna Fali
1029Chavez M StockhamBrazil2026-09-10Benton, John B Jr NEGOTIATION56Asiya Javayant
1030Murillo I ButtSpain2026-09-12Chemel, James L Cpa QUALIFIED61Onyama Limba
1031Costa J DilliardBrazil2026-09-24Buckley Miller Wright UNQUALIFIED39Stephen Shaw
1032Francesco N FigeroaArgentina2026-09-20Benton, John B Jr NEGOTIATION25Stephen Shaw
1033Misaki I MorascaIndia2026-09-03Truhlar And Truhlar Attys QUALIFIED71Xuxue Feng
1034Murillo M InouyeItaly2026-09-20Morlong Associates UNQUALIFIED94Onyama Limba
1035Tony A GlickJapan2026-09-05Dorl, James J Esq QUALIFIED98Stephen Shaw
1036Murillo R PerinFrance2026-09-04Dorl, James J Esq NEGOTIATION16Ioni Bowcher
1037Kadeem T MaletJapan2026-09-19Morlong Associates QUALIFIED97Xuxue Feng
1038Juan Q OstroskySpain2026-09-13Dorl, James J Esq NEW3Ioni Bowcher
1039Claire U DarakjyGermany2026-09-23Morlong Associates UNQUALIFIED84Onyama Limba
1040Kadeem F AlbaresGermany2026-09-24Chemel, James L Cpa PROPOSAL27Ivan Magalhaes
1041Maria D RoysterArgentina2026-09-23Chapman, Ross E Esq UNQUALIFIED75Xuxue Feng
1042Clifford Q DilliardUnited Kingdom2026-09-24Buckley Miller Wright NEW41Ivan Magalhaes
1043Ashley W GillianIndia2026-09-21Feiner Bros UNQUALIFIED32Ivan Magalhaes
1044Johnson H DarakjyBrazil2026-09-23Rousseaux, Michael Esq PROPOSAL67Ioni Bowcher
1045Ivar R StockhamBrazil2026-09-17King, Christopher A Esq NEGOTIATION18Anna Fali
1046Francesco R FollerSpain2026-09-07Truhlar And Truhlar Attys NEGOTIATION41Asiya Javayant
1047Tony T WieserArgentina2026-09-17Feiner Bros PROPOSAL77Ivan Magalhaes
1048Mujtaba O RulapaughArgentina2026-09-30Benton, John B Jr NEGOTIATION69Amy Elsner
1049Leja M GlickJapan2026-09-24Rousseaux, Michael Esq UNQUALIFIED48Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Clifford X NickaGermanyElwin Sharvill NEGOTIATION
Misaki B WhobreyItalyAmy Elsner PROPOSAL
Salvatore M SchemmerItalyXuxue Feng UNQUALIFIED
Cody O SlusarskiUnited KingdomOnyama Limba NEGOTIATION
Morrow H GillianBrazilAnna Fali QUALIFIED
Julie H CampainItalyStephen Shaw QUALIFIED
Jones U PoquetteUnited KingdomXuxue Feng NEGOTIATION
Stacey F RutaJapanStephen Shaw UNQUALIFIED
Julie N MaletGermanyIvan Magalhaes QUALIFIED
Adams T RoysterItalyElwin Sharvill NEW
Chavez G RoysterIndiaXuxue Feng RENEWAL
Mujtaba F CaudyJapanIoni Bowcher QUALIFIED
Deepesh Y SaylorsFranceStephen Shaw QUALIFIED
Smith Z GauchoUnited KingdomElwin Sharvill NEGOTIATION
Antonio V RimGermanyElwin Sharvill PROPOSAL
Jefferson K PoquetteSpainAsiya Javayant RENEWAL
Ricardo I DoeCanadaIvan Magalhaes NEW
Tony A PoquetteRussiaIoni Bowcher UNQUALIFIED
Aruna N VocelkaItalyBernardo Dominic QUALIFIED
Leon F GauchoUnited KingdomIoni Bowcher NEW
Murillo G RoysterItalyAnna Fali PROPOSAL
Maisha H InouyeAustraliaElwin Sharvill PROPOSAL
Isabel J AmigonCanadaIoni Bowcher NEGOTIATION
Ashley W StockhamJapanAmy Elsner UNQUALIFIED
Izzy J ChuiArgentinaXuxue Feng NEGOTIATION
Jones U MaletAustraliaOnyama Limba QUALIFIED
Antonio N RutaBrazilBernardo Dominic NEGOTIATION
Salvatore P PaprockiSpainIvan Magalhaes NEW
Munro L GlickFranceOnyama Limba NEGOTIATION
Costa I SergiAustraliaAmy Elsner UNQUALIFIED
Kadeem Y PaprockiArgentinaXuxue Feng QUALIFIED
Ivar H BologniaJapanAsiya Javayant UNQUALIFIED
Smith Z AmigonCanadaOnyama Limba NEGOTIATION
Johnson Q WhobreyAustraliaAmy Elsner UNQUALIFIED
Salvatore H CaudyArgentinaStephen Shaw RENEWAL
Nicolas E FollerArgentinaAsiya Javayant NEW
Juan M WieserRussiaIoni Bowcher RENEWAL
Deepesh P FerenczRussiaStephen Shaw NEW
Wickens E DilliardJapanStephen Shaw UNQUALIFIED
Leon Y GauchoRussiaAsiya Javayant NEGOTIATION
Kadeem V NickaRussiaAsiya Javayant NEW
Alejandro E MaletItalyBernardo Dominic NEW
Costa P AmigonRussiaXuxue Feng PROPOSAL
Maisha B NestleArgentinaAsiya Javayant QUALIFIED
James C BologniaItalyStephen Shaw UNQUALIFIED
Emily B SergiRussiaXuxue Feng RENEWAL
Nicolas Q PoquetteIndiaAmy Elsner NEGOTIATION
Johnson J FlosiUnited KingdomElwin Sharvill QUALIFIED
Arvin C StockhamCanadaOnyama Limba NEW
Antonio V OldroydCanadaAsiya Javayant UNQUALIFIED
Frozen Columns
Name
Munro Y Saylors
Greenwood D Wieser
Aika J Albares
Smith N Ruta
Morrow O Briddick
Murillo N Albares
Emily W Garufi
Greenwood M Nestle
Mujtaba H Briddick
Maria Q Malet
Juan T Bowley
Emily Y Glick
Nicolas Z Rulapaugh
Claire W Vocelka
Jones D Flosi
Jeanfrancois D Vocelka
Mujtaba V Chui
Francesco O Nicka
Leon O Albares
Aditya Q Foller
Costa H Ostrosky
Wickens X Shinko
James G Wieser
Ashley K Shinko
Misaki U Stenseth
Murillo V Sergi
Deepesh B Flosi
Leja X Bowley
Johnson K Sergi
Rodrigues J Nestle
Antonio R Royster
Juan P Vocelka
Maria N Iturbide
Stacey J Tollner
David G Doe
Stacey L Flosi
Wickens Q Albares
Costa G Dilliard
Nicolas F Paprocki
Jones P Ruta
Kadeem W Whobrey
Misaki Y Venere
Isabel Q Chui
Izzy M Rulapaugh
Jeanfrancois L Oldroyd
Antonio P Rulapaugh
Ivar T Flosi
Maria F Venere
Greenwood V Caldarera
Clifford X Bowley
IdCountryDate
1000Argentina2026-09-18
1001Russia2026-09-03
1002Germany2026-09-22
1003Japan2026-09-30
1004Spain2026-09-07
1005France2026-09-24
1006Argentina2026-09-29
1007Russia2026-09-12
1008United Kingdom2026-09-17
1009Japan2026-09-29
1010India2026-09-03
1011Germany2026-09-03
1012Brazil2026-09-17
1013Japan2026-09-10
1014India2026-09-01
1015United Kingdom2026-09-29
1016Australia2026-09-05
1017Brazil2026-09-05
1018Argentina2026-09-05
1019Canada2026-09-25
1020Spain2026-09-01
1021United Kingdom2026-09-18
1022Spain2026-09-08
1023Italy2026-09-03
1024Brazil2026-09-01
1025Japan2026-09-02
1026India2026-09-23
1027Spain2026-09-07
1028India2026-09-03
1029India2026-09-27
1030France2026-09-04
1031France2026-09-27
1032Russia2026-09-20
1033Italy2026-09-16
1034Spain2026-09-06
1035Brazil2026-09-26
1036Japan2026-09-21
1037India2026-09-17
1038France2026-09-09
1039Brazil2026-09-10
1040Russia2026-09-13
1041Italy2026-09-16
1042Canada2026-09-19
1043Italy2026-09-10
1044United Kingdom2026-09-24
1045Argentina2026-09-06
1046Australia2026-09-26
1047Spain2026-09-13
1048India2026-09-08
1049India2026-09-04

On-Demand Data

NameIdCountryDate
Emily P Campain1000India2026-09-03
Johnson F Chui1001Japan2026-09-01
Johnson M Perin1002Italy2026-09-28
Rodrigues Z Garufi1003France2026-09-17
Ivar I Maclead1004Italy2026-09-22
Deepesh V Inouye1005Italy2026-09-12
Izzy W Sergi1006Brazil2026-09-05
Octavia V Gillian1007Italy2026-09-28
Deepesh S Morasca1008India2026-09-06
Francesco M Campain1009Japan2026-09-08
Clifford M Ruta1010Argentina2026-09-10
Isabel S Malet1011Germany2026-09-15
Faith F Malet1012United Kingdom2026-09-14
Juan F Campain1013Australia2026-09-18
Deepesh T Whobrey1014Argentina2026-09-14
Morrow D Paprocki1015India2026-09-24
Clifford W Darakjy1016India2026-09-25
Salvatore O Chui1017India2026-09-08
Emily A Nicka1018Italy2026-09-02
Aruna P Tollner1019Russia2026-09-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo E RoysterUnited KingdomBernardo Dominic RENEWAL
James T GillianArgentinaAmy Elsner NEW
Stacey M SergiRussiaBernardo Dominic PROPOSAL
Clifford B StockhamUnited KingdomAmy Elsner NEGOTIATION
James K MacleadUnited KingdomIoni Bowcher NEW
Kadeem T GauchoIndiaXuxue Feng NEW
Mujtaba W WhobreyBrazilIvan Magalhaes NEGOTIATION
David M WhobreyFranceAsiya Javayant PROPOSAL
Isabel U MorascaRussiaIoni Bowcher NEGOTIATION
Clifford Y SlusarskiRussiaIvan Magalhaes QUALIFIED
Deepesh R SaylorsItalyIoni Bowcher QUALIFIED
Darci V StockhamRussiaStephen Shaw QUALIFIED
James Y RimItalyAmy Elsner RENEWAL
Salvatore D RimItalyAmy Elsner NEW
Francesco W BowleyRussiaStephen Shaw PROPOSAL
Jennifer P MaletUnited KingdomOnyama Limba RENEWAL
Jennifer R TollnerBrazilXuxue Feng UNQUALIFIED
Jones W MorascaGermanyOnyama Limba NEGOTIATION
Aruna B InouyeJapanElwin Sharvill RENEWAL
Aditya B SchemmerIndiaIvan Magalhaes NEW
Maria R AmigonGermanyIoni Bowcher QUALIFIED
Costa U FerenczGermanyXuxue Feng NEW
Jeanfrancois M MorascaUnited KingdomAnna Fali QUALIFIED
Juan G WhobreyUnited KingdomAnna Fali NEGOTIATION
Leja Z SchemmerFranceXuxue Feng RENEWAL
Jeanfrancois K MorascaBrazilXuxue Feng QUALIFIED
Aditya E VocelkaRussiaAsiya Javayant NEW
Mayumi G VenereCanadaXuxue Feng UNQUALIFIED
Mujtaba J KuskoBrazilAnna Fali UNQUALIFIED
Silvio G PerinItalyAmy Elsner NEW
Isabel F WieserGermanyAsiya Javayant PROPOSAL
Clifford I GarufiGermanyStephen Shaw NEW
Clifford P OldroydArgentinaStephen Shaw QUALIFIED
Deepesh Z MaletJapanAsiya Javayant NEW
Cody T WhobreyItalyAsiya Javayant UNQUALIFIED
Faith E OstroskyGermanyAsiya Javayant QUALIFIED
Arvin J RulapaughAustraliaAsiya Javayant QUALIFIED
Deepesh E OldroydGermanyAmy Elsner NEGOTIATION
Claire V OstroskyIndiaIvan Magalhaes NEGOTIATION
Stacey X SlusarskiIndiaElwin Sharvill UNQUALIFIED

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