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
Juan X KuskoAustraliaElwin Sharvill NEW
Nicolas U MarrierSpainBernardo Dominic RENEWAL
Munro I WaycottArgentinaIvan Magalhaes RENEWAL
Clifford U KolmetzItalyElwin Sharvill NEW
Nicolas N VocelkaAustraliaBernardo Dominic RENEWAL
Ashley H RutaSpainBernardo Dominic UNQUALIFIED
Faith Q GarufiGermanyStephen Shaw QUALIFIED
Nicolas A SlusarskiFranceStephen Shaw RENEWAL
Antonio B SlusarskiUnited KingdomElwin Sharvill UNQUALIFIED
Deepesh M DarakjyItalyBernardo Dominic RENEWAL
Clifford J SergiItalyElwin Sharvill NEGOTIATION
Kaitlin M KolmetzGermanyAmy Elsner NEGOTIATION
Salvatore Y FigeroaItalyStephen Shaw NEW
Misaki S WhobreyGermanyIvan Magalhaes RENEWAL
Mayumi K DoeAustraliaAmy Elsner UNQUALIFIED
Aika P GillianArgentinaXuxue Feng NEW
Ivar M NickaArgentinaAnna Fali PROPOSAL
Jennifer L TollnerAustraliaBernardo Dominic PROPOSAL
David G KuskoBrazilOnyama Limba NEGOTIATION
Kaitlin O DoeUnited KingdomIoni Bowcher PROPOSAL
Misaki E PoquetteRussiaAnna Fali NEGOTIATION
Faith V CampainAustraliaAmy Elsner NEW
Cody D RulapaughUnited KingdomOnyama Limba QUALIFIED
Smith O GauchoArgentinaOnyama Limba RENEWAL
Chavez N MaletSpainAnna Fali RENEWAL
Sinclair X OldroydBrazilAsiya Javayant QUALIFIED
Alejandro G StockhamSpainStephen Shaw NEGOTIATION
Leja I PoquetteUnited KingdomOnyama Limba UNQUALIFIED
Stacey U RimItalyXuxue Feng PROPOSAL
Aditya S WhobreySpainAmy Elsner UNQUALIFIED
Adams Y CampainGermanyBernardo Dominic PROPOSAL
Maisha P OldroydRussiaXuxue Feng RENEWAL
Smith P RutaCanadaAmy Elsner NEGOTIATION
Aditya J AmigonRussiaIoni Bowcher NEW
Adams V CaudyIndiaBernardo Dominic UNQUALIFIED
Emily D WaycottJapanOnyama Limba NEGOTIATION
Murillo J GauchoRussiaBernardo Dominic UNQUALIFIED
Izzy E MaletBrazilXuxue Feng NEGOTIATION
Stacey J FerenczItalyAmy Elsner QUALIFIED
Costa M FigeroaArgentinaXuxue Feng NEGOTIATION
Sinclair Z KolmetzCanadaIoni Bowcher PROPOSAL
Wickens Z KolmetzGermanyAmy Elsner QUALIFIED
Alejandro C PerinArgentinaBernardo Dominic PROPOSAL
Maisha Q RoysterAustraliaIvan Magalhaes RENEWAL
Kadeem T KuskoBrazilAsiya Javayant QUALIFIED
Maria Z NestleArgentinaElwin Sharvill QUALIFIED
Francesco P RimJapanBernardo Dominic PROPOSAL
Izzy G DarakjyFranceAmy Elsner NEW
Rodrigues U CampainUnited KingdomElwin Sharvill QUALIFIED
Clifford J GlickIndiaElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Johnson R WhobreySpainOnyama Limba PROPOSAL
Wickens A IturbideGermanyAmy Elsner QUALIFIED
Aditya Y TollnerCanadaStephen Shaw QUALIFIED
Antonio H SaylorsItalyStephen Shaw QUALIFIED
Chavez R FigeroaBrazilIoni Bowcher NEGOTIATION
Jeanfrancois C GarufiAustraliaBernardo Dominic RENEWAL
Johnson P AlbaresAustraliaAsiya Javayant UNQUALIFIED
Aditya P FigeroaSpainIvan Magalhaes RENEWAL
Faith Y StensethGermanyIvan Magalhaes NEW
Adams Y ChuiBrazilXuxue Feng PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha Z SlusarskiFrance2026-10-10Commercial Press RENEWAL30Bernardo Dominic
1001Maisha Y MacleadItaly2026-10-12Feiner Bros UNQUALIFIED11Ioni Bowcher
1002Aditya B TollnerBrazil2026-10-17Printing Dimensions UNQUALIFIED6Ivan Magalhaes
1003Kaitlin G MacleadGermany2026-10-20Rousseaux, Michael Esq NEW42Amy Elsner
1004Rodrigues H MaletCanada2026-10-02Morlong Associates PROPOSAL69Amy Elsner
1005Murillo L MarrierRussia2026-10-28King, Christopher A Esq NEGOTIATION29Elwin Sharvill
1006Arvin O WhobreyGermany2026-10-26Feltz Printing Service RENEWAL53Anna Fali
1007Greenwood U AmigonUnited Kingdom2026-10-29Truhlar And Truhlar Attys NEW90Amy Elsner
1008Cody O MaletGermany2026-10-10Morlong Associates NEW31Xuxue Feng
1009Kadeem E RutaUnited Kingdom2026-10-27Dorl, James J Esq NEGOTIATION16Ivan Magalhaes
1010Juan B BologniaArgentina2026-10-25Chanay, Jeffrey A Esq QUALIFIED35Asiya Javayant
1011Maisha M MorascaFrance2026-10-31Chapman, Ross E Esq PROPOSAL11Onyama Limba
1012Ivar C SergiArgentina2026-10-19Truhlar And Truhlar Attys PROPOSAL62Ioni Bowcher
1013David C MorascaIndia2026-10-10Morlong Associates QUALIFIED34Ioni Bowcher
1014Alejandro Q MaletBrazil2026-10-31Benton, John B Jr NEGOTIATION96Amy Elsner
1015Arvin C SaylorsSpain2026-10-27Feltz Printing Service UNQUALIFIED20Amy Elsner
1016Jones T MacleadAustralia2026-10-16Commercial Press QUALIFIED9Stephen Shaw
1017Stacey W CaudyArgentina2026-10-07Feiner Bros RENEWAL66Onyama Limba
1018James O CampainCanada2026-10-18Feiner Bros UNQUALIFIED33Bernardo Dominic
1019Claire P DoeItaly2026-10-24Feltz Printing Service PROPOSAL40Bernardo Dominic
1020Ashley N FerenczUnited Kingdom2026-10-09Morlong Associates PROPOSAL44Xuxue Feng
1021Ashley Q VenereSpain2026-10-29King, Christopher A Esq PROPOSAL6Bernardo Dominic
1022Murillo D MaletAustralia2026-10-14Chanay, Jeffrey A Esq NEW24Ivan Magalhaes
1023Rodrigues R GlickBrazil2026-10-18Benton, John B Jr PROPOSAL48Anna Fali
1024Jefferson P RoysterGermany2026-10-11Benton, John B Jr NEW75Xuxue Feng
1025Ashley B DarakjySpain2026-10-25Printing Dimensions QUALIFIED40Onyama Limba
1026Maria X FerenczAustralia2026-10-30Commercial Press NEGOTIATION26Ioni Bowcher
1027Octavia V MarrierArgentina2026-10-15Commercial Press PROPOSAL24Stephen Shaw
1028Izzy D DilliardAustralia2026-10-30Rousseaux, Michael Esq UNQUALIFIED65Amy Elsner
1029Clifford H WaycottIndia2026-10-20Truhlar And Truhlar Attys RENEWAL61Xuxue Feng
1030Juan A InouyeAustralia2026-10-13Rousseaux, Michael Esq UNQUALIFIED59Bernardo Dominic
1031Isabel N GarufiAustralia2026-10-11Rousseaux, Michael Esq UNQUALIFIED56Onyama Limba
1032Izzy E GauchoRussia2026-10-09Dorl, James J Esq UNQUALIFIED24Bernardo Dominic
1033Izzy Y AlbaresUnited Kingdom2026-10-02Chemel, James L Cpa PROPOSAL83Ivan Magalhaes
1034Chavez L GarufiFrance2026-10-18Truhlar And Truhlar Attys RENEWAL10Amy Elsner
1035Antonio D KuskoSpain2026-10-20Feltz Printing Service UNQUALIFIED27Onyama Limba
1036Aika Y GillianUnited Kingdom2026-10-04Benton, John B Jr RENEWAL44Xuxue Feng
1037Jennifer B InouyeSpain2026-10-26Commercial Press PROPOSAL19Xuxue Feng
1038Wickens H SchemmerFrance2026-10-08Buckley Miller Wright UNQUALIFIED49Anna Fali
1039Chavez Q FigeroaAustralia2026-10-28Commercial Press PROPOSAL58Bernardo Dominic
1040Silvio N MaletFrance2026-10-26Feiner Bros RENEWAL39Asiya Javayant
1041Maria M StensethSpain2026-10-03Buckley Miller Wright PROPOSAL41Asiya Javayant
1042Maisha V VocelkaUnited Kingdom2026-10-18Truhlar And Truhlar Attys UNQUALIFIED44Ioni Bowcher
1043Leja F AmigonAustralia2026-10-13Truhlar And Truhlar Attys NEW24Stephen Shaw
1044Johnson M SaylorsCanada2026-10-11Truhlar And Truhlar Attys PROPOSAL76Xuxue Feng
1045Maria H PaprockiIndia2026-10-11Chanay, Jeffrey A Esq RENEWAL46Stephen Shaw
1046Arvin F GarufiSpain2026-10-29Feltz Printing Service NEW30Ioni Bowcher
1047Costa I OstroskyIndia2026-10-31Buckley Miller Wright QUALIFIED85Anna Fali
1048Chavez C BowleyItaly2026-10-07Morlong Associates UNQUALIFIED27Xuxue Feng
1049Arvin B FlosiRussia2026-10-23Chanay, Jeffrey A Esq NEGOTIATION23Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Misaki W WhobreyAustraliaIoni Bowcher UNQUALIFIED
Nicolas I CaldareraJapanStephen Shaw QUALIFIED
Rodrigues I MaletFranceAmy Elsner NEW
Aika V PaprockiUnited KingdomAnna Fali UNQUALIFIED
Wickens K ChuiJapanXuxue Feng NEW
James F BriddickRussiaAsiya Javayant PROPOSAL
Claire W StockhamJapanIvan Magalhaes PROPOSAL
Jeanfrancois S PoquetteArgentinaIvan Magalhaes NEW
Aruna D SlusarskiFranceElwin Sharvill PROPOSAL
Wickens U CaldareraGermanyAmy Elsner NEGOTIATION
Misaki A VocelkaRussiaStephen Shaw NEW
Jennifer Z FigeroaFranceOnyama Limba NEW
Leja P WaycottSpainAmy Elsner NEGOTIATION
Emily Y MorascaIndiaBernardo Dominic RENEWAL
Darci J NestleArgentinaIvan Magalhaes QUALIFIED
Maria E CaudyRussiaStephen Shaw QUALIFIED
Kadeem E DoeUnited KingdomXuxue Feng PROPOSAL
Stacey V ButtJapanXuxue Feng UNQUALIFIED
Maisha X BowleySpainBernardo Dominic RENEWAL
Arvin A NestleItalyBernardo Dominic NEGOTIATION
Greenwood I PaprockiJapanAsiya Javayant PROPOSAL
Nicolas A MaletRussiaOnyama Limba NEW
Aruna K VenereItalyXuxue Feng NEGOTIATION
Isabel J GlickUnited KingdomXuxue Feng QUALIFIED
Darci B AlbaresFranceAmy Elsner QUALIFIED
Smith G MorascaJapanBernardo Dominic PROPOSAL
Ashley B GillianJapanStephen Shaw UNQUALIFIED
Deepesh D FerenczAustraliaElwin Sharvill RENEWAL
Smith A NestleSpainIvan Magalhaes UNQUALIFIED
Faith I OstroskyUnited KingdomBernardo Dominic QUALIFIED
Faith A FerenczAustraliaAsiya Javayant UNQUALIFIED
Jeanfrancois U DoeSpainAnna Fali NEW
Aika R StockhamJapanXuxue Feng QUALIFIED
Deepesh M PaprockiIndiaAsiya Javayant PROPOSAL
Wickens L WieserCanadaAmy Elsner NEGOTIATION
Deepesh N ButtFranceBernardo Dominic UNQUALIFIED
Rodrigues C RoysterFranceAmy Elsner NEW
Aruna L GlickIndiaAmy Elsner NEGOTIATION
Munro X KolmetzGermanyBernardo Dominic QUALIFIED
David X WaycottSpainXuxue Feng QUALIFIED
Jones X ShinkoSpainXuxue Feng UNQUALIFIED
Francesco L MaletArgentinaIvan Magalhaes UNQUALIFIED
Claire H ChuiUnited KingdomElwin Sharvill PROPOSAL
Aruna R GarufiSpainOnyama Limba RENEWAL
Cody Y AmigonAustraliaAnna Fali PROPOSAL
Antonio V SaylorsIndiaXuxue Feng NEW
David Q AmigonFranceAmy Elsner UNQUALIFIED
Leja Y KolmetzGermanyAnna Fali NEGOTIATION
Julie Z ButtIndiaAsiya Javayant QUALIFIED
Jefferson K FigeroaSpainIoni Bowcher RENEWAL
Frozen Columns
Name
Chavez L Shinko
Jennifer Z Paprocki
Greenwood C Campain
Emily R Shinko
Jennifer M Stenseth
Misaki Q Schemmer
Munro J Nestle
Jones P Paprocki
Arvin L Gillian
James H Tollner
Claire Z Ostrosky
Sinclair J Royster
Stacey G Flosi
Jefferson I Poquette
Emily J Maclead
Rodrigues U Rim
Aika R Glick
Alejandro P Wieser
Izzy Y Shinko
Munro J Figeroa
Stacey E Rim
Jennifer I Gillian
Costa O Marrier
Tony E Stockham
Maria G Schemmer
Chavez V Rim
Stacey T Malet
Clifford Q Albares
Stacey B Albares
Isabel M Inouye
Aika V Caldarera
Munro K Maclead
Costa H Nestle
Leon K Glick
Tony X Inouye
Clifford H Malet
Deepesh P Ferencz
Jennifer E Sergi
Jefferson D Sergi
Greenwood U Ruta
Adams J Shinko
Morrow U Slusarski
Nicolas K Stenseth
Deepesh O Stockham
Maisha F Rulapaugh
Kadeem P Perin
Mayumi K Ostrosky
Jeanfrancois G Flosi
Rodrigues M Morasca
Greenwood B Ostrosky
IdCountryDate
1000Spain2026-10-09
1001Spain2026-10-11
1002Russia2026-10-26
1003Russia2026-10-07
1004Japan2026-10-19
1005Japan2026-10-07
1006Italy2026-10-21
1007Germany2026-10-08
1008India2026-10-25
1009Brazil2026-10-16
1010Canada2026-10-25
1011Spain2026-10-27
1012Italy2026-10-13
1013Brazil2026-10-15
1014Italy2026-10-04
1015Canada2026-10-18
1016Brazil2026-10-27
1017Spain2026-10-02
1018United Kingdom2026-10-03
1019Russia2026-10-15
1020Japan2026-10-12
1021Russia2026-10-30
1022Japan2026-10-29
1023Spain2026-10-13
1024India2026-10-31
1025Japan2026-10-31
1026Argentina2026-10-10
1027Australia2026-10-29
1028Italy2026-10-23
1029France2026-10-20
1030Germany2026-10-25
1031Japan2026-10-25
1032United Kingdom2026-10-20
1033India2026-10-26
1034Argentina2026-10-12
1035Russia2026-10-28
1036Spain2026-10-18
1037Germany2026-10-06
1038Germany2026-10-21
1039Russia2026-10-29
1040France2026-10-03
1041India2026-10-04
1042France2026-10-09
1043India2026-10-28
1044Argentina2026-10-02
1045Australia2026-10-05
1046Australia2026-10-31
1047Spain2026-10-06
1048Japan2026-10-14
1049Canada2026-10-04

On-Demand Data

NameIdCountryDate
Claire E Royster1000Japan2026-10-11
Jones R Wieser1001France2026-10-19
Rodrigues H Kolmetz1002Spain2026-10-04
Mayumi K Perin1003Spain2026-10-06
Francesco B Ostrosky1004Brazil2026-10-30
Misaki V Rim1005Russia2026-10-04
Jones K Tollner1006United Kingdom2026-10-17
Munro G Butt1007Canada2026-10-07
Darci V Stockham1008Canada2026-10-12
Darci U Garufi1009Germany2026-10-25
Arvin A Slusarski1010Australia2026-10-18
Isabel O Venere1011Russia2026-10-20
Jeanfrancois E Flosi1012Australia2026-10-06
Murillo M Dilliard1013Germany2026-10-08
Arvin P Vocelka1014Brazil2026-10-18
Maisha M Iturbide1015Italy2026-10-07
Claire X Venere1016Germany2026-10-26
Deepesh Y Campain1017India2026-10-03
Chavez Q Kusko1018United Kingdom2026-10-16
Claire I Waycott1019United Kingdom2026-10-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria T SchemmerJapanAnna Fali QUALIFIED
Kadeem F ShinkoBrazilXuxue Feng QUALIFIED
Jeanfrancois W GarufiIndiaElwin Sharvill NEW
Mujtaba G AlbaresBrazilOnyama Limba PROPOSAL
Stacey T FollerRussiaBernardo Dominic PROPOSAL
Wickens S WhobreyRussiaAmy Elsner PROPOSAL
David K BologniaUnited KingdomAnna Fali PROPOSAL
Mayumi U RulapaughSpainXuxue Feng NEGOTIATION
Smith U MaletIndiaAsiya Javayant NEGOTIATION
Juan F VenereBrazilStephen Shaw RENEWAL
Francesco Y FigeroaSpainAsiya Javayant RENEWAL
Ivar M MorascaArgentinaOnyama Limba QUALIFIED
Adams N DoeSpainBernardo Dominic NEW
Kadeem U FlosiJapanIoni Bowcher QUALIFIED
Stacey U BriddickArgentinaAmy Elsner QUALIFIED
Murillo V InouyeItalyOnyama Limba RENEWAL
Clifford H VocelkaArgentinaBernardo Dominic UNQUALIFIED
Deepesh C FerenczArgentinaStephen Shaw NEW
Jones T DarakjyRussiaXuxue Feng RENEWAL
Jennifer T VocelkaGermanyStephen Shaw NEGOTIATION
Claire Z BologniaIndiaAnna Fali NEW
Aditya N KolmetzJapanOnyama Limba NEGOTIATION
Faith S OldroydArgentinaAsiya Javayant NEW
Ivar J IturbideRussiaAsiya Javayant UNQUALIFIED
Sinclair D SchemmerRussiaOnyama Limba UNQUALIFIED
Jefferson L KuskoSpainAsiya Javayant UNQUALIFIED
Kaitlin H RutaBrazilStephen Shaw RENEWAL
Adams V OldroydFranceXuxue Feng NEGOTIATION
Misaki K ShinkoItalyBernardo Dominic NEGOTIATION
Antonio A FollerFranceElwin Sharvill PROPOSAL
Izzy T PerinFranceXuxue Feng NEGOTIATION
Claire U PoquetteBrazilOnyama Limba RENEWAL
Silvio R IturbideJapanAmy Elsner UNQUALIFIED
Darci H BriddickBrazilAmy Elsner UNQUALIFIED
Adams Y KuskoRussiaIvan Magalhaes UNQUALIFIED
Adams G CaudyFranceStephen Shaw NEW
Jones C CaudyRussiaOnyama Limba RENEWAL
Mujtaba P RulapaughRussiaAmy Elsner PROPOSAL
Arvin O GarufiUnited KingdomIvan Magalhaes UNQUALIFIED
Claire D OstroskyArgentinaIoni Bowcher 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>