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
Emily H SlusarskiFranceAnna Fali QUALIFIED
Rodrigues G SaylorsCanadaXuxue Feng NEGOTIATION
Leon L NestleFranceIvan Magalhaes NEW
Jennifer D RutaJapanOnyama Limba PROPOSAL
Alejandro L AlbaresArgentinaOnyama Limba RENEWAL
Faith Y BologniaItalyElwin Sharvill NEGOTIATION
Maria D RimRussiaBernardo Dominic NEGOTIATION
Darci M MarrierArgentinaIoni Bowcher PROPOSAL
Morrow X AlbaresSpainAnna Fali RENEWAL
Ricardo N OldroydAustraliaXuxue Feng PROPOSAL
Kaitlin V MarrierRussiaAsiya Javayant PROPOSAL
Aika K FollerIndiaIoni Bowcher QUALIFIED
Silvio S BowleyItalyAsiya Javayant NEW
Maria M MaletIndiaOnyama Limba NEW
James A GillianUnited KingdomElwin Sharvill UNQUALIFIED
Nicolas D OldroydCanadaAmy Elsner UNQUALIFIED
Julie V GlickBrazilBernardo Dominic NEGOTIATION
Maria G DilliardRussiaIvan Magalhaes UNQUALIFIED
Mujtaba F MarrierItalyBernardo Dominic UNQUALIFIED
Costa T PoquetteGermanyStephen Shaw NEW
Julie T MaletSpainOnyama Limba PROPOSAL
Octavia E DoeGermanyAsiya Javayant PROPOSAL
Deepesh A DoeCanadaXuxue Feng UNQUALIFIED
Deepesh Z MacleadBrazilIvan Magalhaes NEGOTIATION
Claire H MarrierIndiaOnyama Limba UNQUALIFIED
Octavia H SchemmerJapanBernardo Dominic QUALIFIED
Izzy F FerenczIndiaAnna Fali QUALIFIED
Ashley H MarrierItalyAnna Fali RENEWAL
Arvin H FlosiSpainIoni Bowcher RENEWAL
Adams M SlusarskiIndiaBernardo Dominic RENEWAL
Jennifer O FerenczBrazilXuxue Feng QUALIFIED
Johnson V SergiItalyBernardo Dominic PROPOSAL
Greenwood H FerenczSpainIoni Bowcher NEGOTIATION
Jeanfrancois T DoeUnited KingdomAnna Fali NEW
Misaki O GlickRussiaBernardo Dominic PROPOSAL
Deepesh S RoysterRussiaStephen Shaw NEGOTIATION
Munro L FerenczArgentinaAmy Elsner PROPOSAL
Ashley M NickaJapanOnyama Limba QUALIFIED
Jefferson P BologniaAustraliaBernardo Dominic PROPOSAL
Jefferson B SergiGermanyAsiya Javayant RENEWAL
Jennifer B BologniaSpainElwin Sharvill NEW
Nicolas F BowleyBrazilOnyama Limba RENEWAL
Deepesh M BriddickFranceAnna Fali NEW
Jennifer Q PaprockiUnited KingdomStephen Shaw PROPOSAL
Murillo K MorascaArgentinaXuxue Feng QUALIFIED
Ivar C FigeroaAustraliaElwin Sharvill NEW
Aditya D SlusarskiRussiaBernardo Dominic QUALIFIED
Emily Z WhobreyFranceAnna Fali NEW
Claire X DarakjyAustraliaAnna Fali UNQUALIFIED
Antonio J MarrierRussiaIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jefferson D VenereItalyOnyama Limba UNQUALIFIED
Silvio E OldroydGermanyBernardo Dominic RENEWAL
Mujtaba D BowleyCanadaElwin Sharvill NEGOTIATION
Antonio N StockhamIndiaOnyama Limba NEW
Claire G ChuiSpainXuxue Feng NEGOTIATION
Sinclair B SchemmerGermanyAsiya Javayant QUALIFIED
Murillo H WhobreyUnited KingdomOnyama Limba NEGOTIATION
Isabel G IturbideItalyIvan Magalhaes PROPOSAL
Adams T InouyeIndiaAmy Elsner PROPOSAL
Octavia M PoquetteAustraliaAmy Elsner QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Greenwood L DilliardJapan2026-09-19Rangoni Of Florence NEW37Stephen Shaw
1001Chavez O KuskoGermany2026-09-17Chanay, Jeffrey A Esq RENEWAL34Anna Fali
1002Johnson X FlosiBrazil2026-10-10Buckley Miller Wright NEW71Stephen Shaw
1003Johnson K CampainItaly2026-10-14Rangoni Of Florence QUALIFIED14Amy Elsner
1004Juan D TollnerAustralia2026-09-18Feltz Printing Service RENEWAL91Xuxue Feng
1005Tony E MorascaJapan2026-09-23Rousseaux, Michael Esq RENEWAL77Ioni Bowcher
1006Murillo O KolmetzItaly2026-10-03Chemel, James L Cpa NEGOTIATION22Ioni Bowcher
1007Izzy I DilliardAustralia2026-10-06King, Christopher A Esq PROPOSAL91Bernardo Dominic
1008Chavez P ChuiGermany2026-09-17Benton, John B Jr NEW97Bernardo Dominic
1009Misaki G VenereArgentina2026-09-17Printing Dimensions RENEWAL8Asiya Javayant
1010Wickens O SaylorsIndia2026-09-17Commercial Press UNQUALIFIED86Ioni Bowcher
1011Jennifer L KuskoGermany2026-10-05Morlong Associates PROPOSAL45Ioni Bowcher
1012Leja V FlosiFrance2026-10-11Rangoni Of Florence PROPOSAL75Xuxue Feng
1013Arvin O IturbideSpain2026-09-19Rousseaux, Michael Esq UNQUALIFIED86Ioni Bowcher
1014Murillo O FollerAustralia2026-10-02Chemel, James L Cpa PROPOSAL17Amy Elsner
1015Juan Z FollerGermany2026-09-23King, Christopher A Esq NEW90Elwin Sharvill
1016Greenwood D SergiItaly2026-09-21Dorl, James J Esq UNQUALIFIED96Elwin Sharvill
1017Emily W AmigonUnited Kingdom2026-10-08Dorl, James J Esq NEW90Xuxue Feng
1018Mayumi G RoysterBrazil2026-09-19Feiner Bros NEW39Bernardo Dominic
1019Nicolas V RimSpain2026-09-21Rousseaux, Michael Esq UNQUALIFIED5Xuxue Feng
1020Sinclair A DilliardFrance2026-10-02Rangoni Of Florence UNQUALIFIED28Onyama Limba
1021Clifford D VocelkaRussia2026-09-23Printing Dimensions UNQUALIFIED45Ivan Magalhaes
1022Cody Q StockhamIndia2026-10-11Feiner Bros PROPOSAL99Xuxue Feng
1023Cody E BowleyRussia2026-10-14Chemel, James L Cpa QUALIFIED7Ioni Bowcher
1024Kaitlin B NestleFrance2026-09-26Printing Dimensions RENEWAL34Amy Elsner
1025Cody J PerinUnited Kingdom2026-10-06Buckley Miller Wright QUALIFIED68Xuxue Feng
1026Maria C PoquetteArgentina2026-09-18Buckley Miller Wright NEGOTIATION34Stephen Shaw
1027Ricardo H StensethArgentina2026-10-02Buckley Miller Wright NEW9Ivan Magalhaes
1028Aruna K IturbideBrazil2026-09-19Feiner Bros QUALIFIED99Asiya Javayant
1029Aika W TollnerIndia2026-10-07Chanay, Jeffrey A Esq QUALIFIED33Stephen Shaw
1030Tony R GauchoBrazil2026-09-23Chanay, Jeffrey A Esq NEW14Amy Elsner
1031Smith Y RoysterFrance2026-09-20Rousseaux, Michael Esq PROPOSAL67Onyama Limba
1032Clifford I GlickAustralia2026-09-19Benton, John B Jr PROPOSAL20Ivan Magalhaes
1033Deepesh Z GauchoItaly2026-09-30Benton, John B Jr NEW24Xuxue Feng
1034Jones K PoquetteSpain2026-09-22Benton, John B Jr RENEWAL68Elwin Sharvill
1035James Y BriddickIndia2026-10-09Commercial Press NEGOTIATION91Asiya Javayant
1036Mujtaba U MarrierFrance2026-09-28King, Christopher A Esq PROPOSAL54Elwin Sharvill
1037Kaitlin N RoysterRussia2026-09-25Rousseaux, Michael Esq NEGOTIATION69Asiya Javayant
1038James E RulapaughFrance2026-10-03Truhlar And Truhlar Attys UNQUALIFIED58Anna Fali
1039Misaki J DarakjyItaly2026-10-09Rousseaux, Michael Esq UNQUALIFIED46Onyama Limba
1040Maisha V SchemmerUnited Kingdom2026-09-26Morlong Associates RENEWAL76Xuxue Feng
1041Murillo V FerenczUnited Kingdom2026-10-05Benton, John B Jr UNQUALIFIED27Anna Fali
1042Jefferson Q VocelkaArgentina2026-09-24Dorl, James J Esq UNQUALIFIED6Onyama Limba
1043Juan W SaylorsIndia2026-09-22Commercial Press NEGOTIATION9Stephen Shaw
1044Juan F FollerUnited Kingdom2026-09-23Benton, John B Jr UNQUALIFIED14Bernardo Dominic
1045Ivar P VocelkaRussia2026-09-29King, Christopher A Esq NEW23Xuxue Feng
1046Isabel J SchemmerRussia2026-09-22Truhlar And Truhlar Attys UNQUALIFIED69Stephen Shaw
1047Jones E WieserArgentina2026-09-29Feltz Printing Service PROPOSAL69Onyama Limba
1048Maisha P ShinkoItaly2026-09-23Chemel, James L Cpa QUALIFIED97Xuxue Feng
1049Claire K FigeroaFrance2026-10-10Benton, John B Jr UNQUALIFIED85Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Mayumi Z AmigonArgentinaIvan Magalhaes NEGOTIATION
James V ShinkoFranceOnyama Limba UNQUALIFIED
Juan K PerinGermanyIoni Bowcher UNQUALIFIED
Greenwood U OstroskyRussiaElwin Sharvill NEW
Leon T StensethBrazilAnna Fali NEGOTIATION
Izzy L MarrierFranceOnyama Limba UNQUALIFIED
Alejandro F MarrierFranceElwin Sharvill PROPOSAL
Aruna T BologniaAustraliaElwin Sharvill PROPOSAL
Wickens H SlusarskiJapanOnyama Limba RENEWAL
Costa U NickaUnited KingdomIvan Magalhaes UNQUALIFIED
Mujtaba B DarakjyRussiaStephen Shaw QUALIFIED
Johnson F WhobreyUnited KingdomAmy Elsner NEGOTIATION
Mayumi K KuskoItalyXuxue Feng NEW
Munro W PaprockiBrazilAnna Fali RENEWAL
Ricardo H CaudyGermanyStephen Shaw PROPOSAL
Cody K OldroydJapanIvan Magalhaes UNQUALIFIED
Maria H OldroydGermanyAsiya Javayant UNQUALIFIED
Wickens L DoeIndiaIvan Magalhaes NEW
Aika L PoquetteItalyIvan Magalhaes QUALIFIED
Cody V WaycottCanadaAmy Elsner QUALIFIED
Salvatore M FollerUnited KingdomBernardo Dominic QUALIFIED
Nicolas S ChuiFranceAnna Fali PROPOSAL
Munro U FigeroaFranceAnna Fali PROPOSAL
Costa H DarakjyFranceOnyama Limba PROPOSAL
Johnson B BriddickGermanyElwin Sharvill NEGOTIATION
Stacey X CaudyJapanIoni Bowcher QUALIFIED
Mayumi L RimJapanXuxue Feng RENEWAL
Julie J AlbaresUnited KingdomAmy Elsner PROPOSAL
Salvatore X InouyeSpainOnyama Limba NEGOTIATION
David Y BologniaRussiaStephen Shaw QUALIFIED
Silvio D PerinRussiaAnna Fali QUALIFIED
Kaitlin V FigeroaFranceXuxue Feng NEW
Ivar K WieserCanadaElwin Sharvill NEGOTIATION
Alejandro B WieserIndiaIoni Bowcher NEW
Clifford B FollerSpainAnna Fali NEW
Munro E GlickUnited KingdomAsiya Javayant QUALIFIED
Chavez S FlosiBrazilXuxue Feng QUALIFIED
Rodrigues H MaletUnited KingdomAsiya Javayant PROPOSAL
Ashley N KolmetzItalyAnna Fali NEW
Leon B SchemmerIndiaIoni Bowcher PROPOSAL
Cody C NickaRussiaElwin Sharvill NEGOTIATION
Claire U IturbideItalyIoni Bowcher UNQUALIFIED
Deepesh T MaletCanadaAsiya Javayant NEGOTIATION
Aditya S StensethItalyBernardo Dominic NEW
Darci J InouyeArgentinaBernardo Dominic QUALIFIED
Greenwood R KuskoUnited KingdomAnna Fali UNQUALIFIED
Munro S FigeroaItalyElwin Sharvill UNQUALIFIED
Juan Y SlusarskiRussiaStephen Shaw RENEWAL
Murillo T KuskoBrazilOnyama Limba QUALIFIED
Alejandro J MacleadUnited KingdomOnyama Limba QUALIFIED
Frozen Columns
Name
Alejandro Z Foller
Jeanfrancois Y Gaucho
Aditya B Albares
Isabel C Waycott
Jones L Foller
Rodrigues A Nicka
Emily B Ostrosky
Morrow L Bowley
Leon K Tollner
Emily P Gillian
Ricardo R Glick
Salvatore W Ostrosky
Ivar W Nicka
Faith P Malet
Mujtaba Z Flosi
Rodrigues P Perin
Francesco D Darakjy
Murillo R Campain
Maisha W Stenseth
Kadeem F Rulapaugh
Antonio Y Rim
Francesco Y Dilliard
Maria W Nicka
Mayumi K Rim
Wickens F Wieser
Leon C Whobrey
Francesco G Gaucho
Cody Q Ruta
Jones P Butt
Sinclair X Royster
Aditya D Gillian
Aruna K Malet
Kadeem B Bowley
Faith Y Campain
Chavez V Figeroa
Leja Z Poquette
Wickens P Chui
Clifford M Marrier
Wickens B Royster
Izzy J Bowley
Jefferson S Bowley
Deepesh N Whobrey
Leja D Gaucho
Mujtaba G Paprocki
Ricardo O Glick
Cody H Tollner
Ricardo Y Gillian
Deepesh D Foller
Aruna O Slusarski
Arvin W Flosi
IdCountryDate
1000Spain2026-10-05
1001France2026-10-02
1002Germany2026-10-06
1003Brazil2026-09-26
1004Russia2026-10-04
1005Italy2026-10-07
1006Australia2026-10-16
1007United Kingdom2026-10-08
1008Canada2026-09-22
1009Brazil2026-09-28
1010Germany2026-10-12
1011Russia2026-09-21
1012Russia2026-09-24
1013Spain2026-10-05
1014Argentina2026-10-14
1015Japan2026-09-26
1016Germany2026-09-27
1017Australia2026-09-29
1018United Kingdom2026-10-03
1019Japan2026-10-11
1020Australia2026-10-13
1021Canada2026-10-13
1022Italy2026-10-12
1023India2026-10-16
1024Italy2026-09-17
1025Japan2026-10-03
1026Italy2026-09-17
1027India2026-10-02
1028India2026-10-11
1029Canada2026-09-25
1030Italy2026-09-28
1031Germany2026-10-05
1032India2026-10-09
1033Germany2026-10-01
1034United Kingdom2026-09-17
1035Russia2026-09-21
1036United Kingdom2026-09-27
1037Australia2026-10-01
1038India2026-10-05
1039Italy2026-10-01
1040France2026-09-21
1041Australia2026-09-17
1042Russia2026-10-16
1043Germany2026-09-30
1044Japan2026-10-06
1045Japan2026-09-25
1046India2026-10-01
1047Canada2026-10-10
1048Brazil2026-10-16
1049Spain2026-09-20

On-Demand Data

NameIdCountryDate
Darci B Doe1000Germany2026-10-12
Deepesh C Gaucho1001Australia2026-09-24
Jones D Shinko1002Australia2026-09-24
Clifford I Whobrey1003France2026-10-10
Maisha J Perin1004Russia2026-10-06
David O Caldarera1005Italy2026-10-10
Stacey V Slusarski1006Italy2026-10-11
Isabel T Doe1007India2026-10-05
Aruna H Vocelka1008Canada2026-10-16
James G Kolmetz1009Brazil2026-09-18
Arvin V Darakjy1010Italy2026-10-12
Mayumi B Malet1011India2026-09-22
Jones M Poquette1012Australia2026-10-02
Aika M Poquette1013United Kingdom2026-10-12
James Z Marrier1014France2026-10-02
Greenwood E Albares1015United Kingdom2026-09-22
Aruna A Butt1016Canada2026-10-15
Costa K Butt1017Canada2026-10-04
James E Chui1018Spain2026-10-08
Antonio X Morasca1019Japan2026-10-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba V TollnerAustraliaAnna Fali UNQUALIFIED
Izzy D FigeroaBrazilIvan Magalhaes NEW
Aditya R PerinItalyBernardo Dominic UNQUALIFIED
Alejandro K WaycottSpainStephen Shaw QUALIFIED
Sinclair J AmigonUnited KingdomElwin Sharvill NEW
Rodrigues R AmigonGermanyXuxue Feng NEGOTIATION
Jones V VocelkaSpainBernardo Dominic NEW
Jones A WhobreyAustraliaBernardo Dominic PROPOSAL
Maria R BriddickJapanStephen Shaw NEGOTIATION
Octavia N NestleFranceAmy Elsner UNQUALIFIED
Munro N MorascaSpainAsiya Javayant QUALIFIED
Ricardo D RulapaughAustraliaIvan Magalhaes RENEWAL
Faith B WieserArgentinaOnyama Limba NEGOTIATION
Aika T WaycottItalyXuxue Feng RENEWAL
Claire G DoeIndiaOnyama Limba NEW
Smith O RimRussiaIvan Magalhaes PROPOSAL
Ivar E AlbaresFranceElwin Sharvill RENEWAL
Julie Y MaletGermanyIvan Magalhaes UNQUALIFIED
Kaitlin H SergiBrazilAnna Fali UNQUALIFIED
Darci A OldroydItalyBernardo Dominic QUALIFIED
Sinclair L ShinkoGermanyBernardo Dominic QUALIFIED
Costa T WaycottCanadaElwin Sharvill QUALIFIED
Kaitlin K GarufiCanadaIvan Magalhaes NEGOTIATION
Francesco G PaprockiGermanyAnna Fali UNQUALIFIED
David E DarakjyBrazilOnyama Limba NEGOTIATION
Greenwood J PerinBrazilAnna Fali RENEWAL
Murillo L ChuiFranceOnyama Limba QUALIFIED
Izzy E MaletArgentinaIoni Bowcher NEW
Izzy K GillianArgentinaElwin Sharvill UNQUALIFIED
Munro T GillianUnited KingdomIvan Magalhaes PROPOSAL
Greenwood D BriddickFranceXuxue Feng QUALIFIED
Aditya Y NickaJapanAmy Elsner UNQUALIFIED
Johnson V ButtIndiaIvan Magalhaes NEW
Silvio A MaletAustraliaAsiya Javayant NEW
Juan D RulapaughFranceAmy Elsner PROPOSAL
Aruna A RoysterUnited KingdomIvan Magalhaes QUALIFIED
Adams X WhobreyArgentinaAnna Fali NEW
Ivar F TollnerGermanyOnyama Limba UNQUALIFIED
Mujtaba X RoysterSpainAmy Elsner PROPOSAL
Aruna Z CaudyRussiaIoni Bowcher NEGOTIATION

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