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 O FollerGermanyIoni Bowcher UNQUALIFIED
Kaitlin A GlickIndiaOnyama Limba RENEWAL
Leja Y NickaIndiaElwin Sharvill NEW
Julie M BowleyItalyElwin Sharvill NEGOTIATION
Jefferson X ShinkoItalyAnna Fali PROPOSAL
Misaki S NickaRussiaAnna Fali RENEWAL
Ricardo P KuskoJapanIvan Magalhaes QUALIFIED
Jones U StensethJapanOnyama Limba PROPOSAL
Sinclair Y OldroydGermanyIoni Bowcher NEGOTIATION
Antonio R FerenczBrazilIoni Bowcher PROPOSAL
Mujtaba V CaudyUnited KingdomBernardo Dominic RENEWAL
Cody E SergiGermanyBernardo Dominic NEW
Costa G StensethUnited KingdomIoni Bowcher NEGOTIATION
Antonio N BowleyIndiaIoni Bowcher RENEWAL
Salvatore R DilliardSpainIoni Bowcher QUALIFIED
Wickens R MarrierCanadaAmy Elsner NEGOTIATION
Stacey D AmigonUnited KingdomIoni Bowcher QUALIFIED
Antonio T PoquetteJapanIoni Bowcher PROPOSAL
Francesco A RulapaughRussiaElwin Sharvill NEGOTIATION
Antonio O KuskoArgentinaBernardo Dominic NEGOTIATION
Clifford N MorascaSpainBernardo Dominic NEGOTIATION
Octavia B SchemmerArgentinaAmy Elsner UNQUALIFIED
Tony C PaprockiAustraliaStephen Shaw RENEWAL
Emily T FollerBrazilStephen Shaw PROPOSAL
Ivar A VenereSpainStephen Shaw NEW
Faith T WhobreyIndiaStephen Shaw PROPOSAL
Ricardo Y StockhamRussiaAmy Elsner PROPOSAL
Adams I VocelkaRussiaIoni Bowcher QUALIFIED
Misaki D VenereUnited KingdomIvan Magalhaes NEW
Kadeem F WaycottJapanAnna Fali QUALIFIED
Cody C MarrierIndiaBernardo Dominic QUALIFIED
Ricardo N RutaCanadaElwin Sharvill UNQUALIFIED
Stacey D RutaCanadaAmy Elsner QUALIFIED
Salvatore N SchemmerArgentinaElwin Sharvill RENEWAL
David U RoysterGermanyStephen Shaw QUALIFIED
Aika Y ShinkoCanadaStephen Shaw RENEWAL
Claire D SlusarskiSpainAmy Elsner PROPOSAL
Aruna D SaylorsSpainElwin Sharvill RENEWAL
Adams E InouyeCanadaBernardo Dominic NEW
Morrow E PaprockiFranceBernardo Dominic QUALIFIED
Antonio R RulapaughIndiaStephen Shaw QUALIFIED
David V RimGermanyOnyama Limba NEW
Sinclair U WaycottGermanyBernardo Dominic QUALIFIED
Darci N IturbideBrazilAsiya Javayant RENEWAL
David V WhobreyGermanyIvan Magalhaes NEW
Kaitlin K RulapaughUnited KingdomElwin Sharvill NEW
Leja J StockhamCanadaBernardo Dominic NEW
Smith T RimUnited KingdomStephen Shaw QUALIFIED
Maria U SergiGermanyOnyama Limba QUALIFIED
Octavia N VocelkaGermanyIoni Bowcher PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Maisha O CaudyBrazilIoni Bowcher NEW
Ashley T DarakjyArgentinaAnna Fali NEGOTIATION
Greenwood I GauchoGermanyOnyama Limba PROPOSAL
Tony V FigeroaUnited KingdomOnyama Limba NEGOTIATION
Ricardo A VenereJapanXuxue Feng NEGOTIATION
Chavez V GauchoArgentinaAsiya Javayant QUALIFIED
Misaki U RoysterCanadaAmy Elsner QUALIFIED
Nicolas F RutaGermanyBernardo Dominic UNQUALIFIED
Alejandro K MarrierFranceBernardo Dominic RENEWAL
Ivar Q FigeroaArgentinaOnyama Limba RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Emily M NestleAustralia2026-11-11Buckley Miller Wright RENEWAL18Amy Elsner
1001Morrow T NestleIndia2026-10-29Chanay, Jeffrey A Esq NEW13Onyama Limba
1002Claire Z CampainSpain2026-11-07Feltz Printing Service PROPOSAL64Ioni Bowcher
1003Aika M VenereCanada2026-11-03Commercial Press NEGOTIATION62Anna Fali
1004Kaitlin Z CampainGermany2026-11-01Chemel, James L Cpa RENEWAL16Ivan Magalhaes
1005Isabel I InouyeJapan2026-10-15Commercial Press NEW17Amy Elsner
1006Claire G WhobreySpain2026-10-21Rangoni Of Florence UNQUALIFIED68Ivan Magalhaes
1007Munro T FigeroaUnited Kingdom2026-11-10Morlong Associates UNQUALIFIED84Xuxue Feng
1008Claire Z RulapaughGermany2026-10-27Rangoni Of Florence QUALIFIED15Bernardo Dominic
1009Sinclair W NestleIndia2026-10-19Chapman, Ross E Esq NEW41Elwin Sharvill
1010Faith Z SergiItaly2026-10-30Benton, John B Jr RENEWAL11Ioni Bowcher
1011James Y CampainItaly2026-11-05Rangoni Of Florence UNQUALIFIED99Bernardo Dominic
1012Aditya W OldroydJapan2026-10-29Chemel, James L Cpa RENEWAL60Asiya Javayant
1013Leon J WieserAustralia2026-11-10Truhlar And Truhlar Attys RENEWAL91Xuxue Feng
1014Jefferson B BologniaRussia2026-10-17Feltz Printing Service QUALIFIED84Bernardo Dominic
1015Alejandro L StockhamSpain2026-10-29Morlong Associates RENEWAL41Anna Fali
1016Mujtaba K GarufiIndia2026-10-16Rousseaux, Michael Esq QUALIFIED75Elwin Sharvill
1017Misaki B DilliardCanada2026-11-05Rousseaux, Michael Esq PROPOSAL2Amy Elsner
1018Aika A AmigonRussia2026-10-27Rousseaux, Michael Esq NEGOTIATION22Anna Fali
1019Sinclair G GillianGermany2026-11-09Chanay, Jeffrey A Esq QUALIFIED73Ioni Bowcher
1020Jefferson K AlbaresRussia2026-10-14Printing Dimensions NEW91Asiya Javayant
1021Faith B RoysterSpain2026-11-10Printing Dimensions NEGOTIATION81Stephen Shaw
1022Adams A NickaRussia2026-10-22Chapman, Ross E Esq QUALIFIED97Ioni Bowcher
1023Emily R AlbaresUnited Kingdom2026-10-16Dorl, James J Esq PROPOSAL14Ivan Magalhaes
1024Aditya P RulapaughFrance2026-10-23Feiner Bros PROPOSAL92Elwin Sharvill
1025Stacey K BriddickCanada2026-11-01King, Christopher A Esq PROPOSAL72Bernardo Dominic
1026Emily N VenereCanada2026-11-08Rousseaux, Michael Esq NEW93Asiya Javayant
1027Francesco Q RimJapan2026-11-05Feiner Bros UNQUALIFIED54Ivan Magalhaes
1028Emily D BowleyGermany2026-10-22Truhlar And Truhlar Attys QUALIFIED1Stephen Shaw
1029Adams H FollerGermany2026-10-16Chapman, Ross E Esq RENEWAL10Xuxue Feng
1030Emily K SchemmerAustralia2026-10-24Benton, John B Jr UNQUALIFIED40Onyama Limba
1031Octavia H ShinkoSpain2026-10-13King, Christopher A Esq QUALIFIED68Anna Fali
1032Maria Y SergiIndia2026-10-27Feltz Printing Service QUALIFIED42Amy Elsner
1033Smith U IturbideSpain2026-11-07Feltz Printing Service QUALIFIED98Ivan Magalhaes
1034Ashley N DilliardRussia2026-11-09Feiner Bros UNQUALIFIED35Ioni Bowcher
1035Johnson T FerenczArgentina2026-10-25Chemel, James L Cpa QUALIFIED74Elwin Sharvill
1036David L NestleArgentina2026-10-21Chemel, James L Cpa PROPOSAL73Asiya Javayant
1037Emily C GillianAustralia2026-10-19Buckley Miller Wright NEW35Elwin Sharvill
1038Leja X KuskoArgentina2026-11-01Chapman, Ross E Esq NEGOTIATION18Asiya Javayant
1039Johnson P ShinkoRussia2026-10-13Morlong Associates RENEWAL19Onyama Limba
1040Antonio A InouyeJapan2026-11-10Feiner Bros QUALIFIED12Bernardo Dominic
1041Octavia O KuskoItaly2026-10-30Morlong Associates NEGOTIATION75Onyama Limba
1042Kaitlin N MarrierJapan2026-11-06Chemel, James L Cpa UNQUALIFIED19Amy Elsner
1043Aditya X StockhamJapan2026-10-14Rousseaux, Michael Esq QUALIFIED52Anna Fali
1044Maria A ButtItaly2026-10-18Chapman, Ross E Esq PROPOSAL38Elwin Sharvill
1045Stacey X NestleIndia2026-10-31King, Christopher A Esq UNQUALIFIED33Onyama Limba
1046Stacey N InouyeFrance2026-10-16Chemel, James L Cpa RENEWAL55Bernardo Dominic
1047Ivar A CaldareraCanada2026-11-03Morlong Associates NEW19Elwin Sharvill
1048Isabel W MarrierBrazil2026-11-07Commercial Press NEGOTIATION1Xuxue Feng
1049Clifford O PaprockiIndia2026-11-10Chanay, Jeffrey A Esq QUALIFIED84Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Munro K MorascaCanadaIvan Magalhaes PROPOSAL
Clifford I FollerAustraliaAmy Elsner RENEWAL
Kadeem C CaudyAustraliaAmy Elsner NEGOTIATION
Ricardo Z VenereJapanIvan Magalhaes NEGOTIATION
Chavez Z FollerUnited KingdomAmy Elsner RENEWAL
David L PoquetteBrazilAmy Elsner PROPOSAL
Rodrigues J AmigonItalyBernardo Dominic NEW
Jefferson W SaylorsItalyIoni Bowcher NEW
Francesco T ChuiUnited KingdomIvan Magalhaes PROPOSAL
Nicolas C SaylorsFranceIoni Bowcher PROPOSAL
Rodrigues G MaletFranceBernardo Dominic NEW
Smith Y VocelkaRussiaIoni Bowcher RENEWAL
Jennifer Y BriddickBrazilElwin Sharvill NEW
Jefferson F PaprockiUnited KingdomIvan Magalhaes NEW
Misaki H AlbaresJapanIvan Magalhaes RENEWAL
James I FerenczCanadaIoni Bowcher NEW
Julie G VocelkaCanadaElwin Sharvill QUALIFIED
Aditya B StockhamArgentinaIoni Bowcher NEGOTIATION
Rodrigues R SlusarskiRussiaElwin Sharvill UNQUALIFIED
Alejandro W NestleAustraliaOnyama Limba NEGOTIATION
Isabel F ShinkoJapanAmy Elsner NEW
Julie S PoquetteFranceXuxue Feng PROPOSAL
Jefferson M ButtCanadaStephen Shaw NEW
Mujtaba S OstroskyBrazilElwin Sharvill PROPOSAL
Ricardo J ButtJapanElwin Sharvill QUALIFIED
Octavia F GlickItalyXuxue Feng PROPOSAL
Salvatore I NestleIndiaAsiya Javayant UNQUALIFIED
David K KolmetzFranceStephen Shaw PROPOSAL
Ashley H CampainFranceBernardo Dominic RENEWAL
Jennifer S MarrierRussiaBernardo Dominic RENEWAL
Leon P NestleArgentinaIoni Bowcher QUALIFIED
Leon D AmigonItalyElwin Sharvill UNQUALIFIED
Jennifer X PoquetteBrazilElwin Sharvill NEW
Leon L InouyeRussiaAmy Elsner QUALIFIED
Francesco L SaylorsAustraliaIoni Bowcher RENEWAL
Kaitlin X DilliardIndiaXuxue Feng QUALIFIED
Johnson F IturbideIndiaIvan Magalhaes UNQUALIFIED
Morrow B FerenczSpainXuxue Feng PROPOSAL
Mayumi T DoeSpainStephen Shaw UNQUALIFIED
Francesco T AmigonUnited KingdomIvan Magalhaes PROPOSAL
Maisha O SaylorsJapanOnyama Limba NEGOTIATION
Leja H RimFranceElwin Sharvill NEGOTIATION
Leon F IturbideBrazilAnna Fali NEW
Faith F WieserArgentinaBernardo Dominic NEGOTIATION
Kadeem R GillianArgentinaXuxue Feng QUALIFIED
Johnson F NestleItalyIoni Bowcher UNQUALIFIED
James E DarakjyFranceOnyama Limba UNQUALIFIED
Alejandro S MacleadJapanIoni Bowcher NEW
David K RulapaughJapanBernardo Dominic UNQUALIFIED
Stacey R ButtArgentinaIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Kadeem F Butt
Clifford X Albares
David J Tollner
Clifford K Kolmetz
Costa O Schemmer
Alejandro L Glick
Rodrigues U Flosi
Salvatore O Whobrey
Jeanfrancois X Stockham
Murillo R Whobrey
James S Paprocki
Maisha U Chui
Leja X Glick
Arvin K Wieser
Misaki S Ostrosky
Ashley M Gillian
Claire G Bolognia
Ashley F Gillian
Mayumi C Nicka
Ricardo D Gillian
Aika T Butt
Aditya P Flosi
David X Paprocki
Johnson E Caudy
Arvin B Morasca
Mujtaba Q Sergi
Isabel K Morasca
Kaitlin W Bowley
Ricardo Y Stockham
Izzy B Sergi
Wickens N Albares
Costa U Maclead
Ashley U Bowley
Jefferson Z Chui
Misaki V Nicka
Ricardo G Kusko
Nicolas S Inouye
Mujtaba O Butt
Aruna O Caudy
Jeanfrancois G Glick
Munro K Malet
Silvio T Ostrosky
Ivar C Oldroyd
Octavia P Sergi
Maria S Bolognia
Aika W Chui
Costa Q Venere
Maria X Venere
Maria J Poquette
Francesco X Chui
IdCountryDate
1000Japan2026-10-24
1001Brazil2026-10-18
1002Canada2026-11-11
1003Argentina2026-10-16
1004Argentina2026-11-11
1005Italy2026-11-09
1006Italy2026-10-31
1007Brazil2026-10-28
1008Russia2026-11-07
1009India2026-10-19
1010Canada2026-10-30
1011Germany2026-11-08
1012France2026-10-16
1013Russia2026-10-21
1014Argentina2026-10-29
1015United Kingdom2026-10-23
1016Canada2026-10-14
1017Argentina2026-10-30
1018Brazil2026-10-23
1019Brazil2026-10-22
1020Italy2026-10-15
1021Argentina2026-10-19
1022Canada2026-10-25
1023Russia2026-10-31
1024Russia2026-10-17
1025Australia2026-10-19
1026Canada2026-10-16
1027Germany2026-10-23
1028Russia2026-11-01
1029Italy2026-11-06
1030Brazil2026-11-05
1031Brazil2026-11-06
1032France2026-11-09
1033Japan2026-10-18
1034Italy2026-11-11
1035United Kingdom2026-10-16
1036Japan2026-11-05
1037France2026-11-08
1038Brazil2026-10-31
1039India2026-10-26
1040United Kingdom2026-10-19
1041Spain2026-10-20
1042Canada2026-10-18
1043Australia2026-11-09
1044Argentina2026-10-31
1045India2026-10-24
1046Russia2026-11-05
1047Spain2026-11-04
1048Argentina2026-10-30
1049Brazil2026-11-06

On-Demand Data

NameIdCountryDate
Sinclair D Amigon1000Japan2026-11-02
Chavez J Albares1001Argentina2026-10-29
Aruna J Perin1002France2026-10-15
Emily B Waycott1003Russia2026-10-20
Nicolas U Shinko1004Australia2026-10-17
Johnson I Stockham1005Russia2026-10-28
Wickens D Glick1006France2026-10-17
Jefferson A Inouye1007Argentina2026-11-10
Morrow L Malet1008Australia2026-11-08
Aika S Ostrosky1009Germany2026-10-24
Wickens W Briddick1010Argentina2026-10-18
Aika W Sergi1011India2026-10-29
Francesco Q Kolmetz1012Brazil2026-11-01
Aditya C Glick1013United Kingdom2026-11-02
Octavia I Dilliard1014Spain2026-11-11
Maria E Nestle1015India2026-10-29
Maria S Whobrey1016Argentina2026-10-29
Nicolas A Foller1017Brazil2026-10-23
Ivar U Gaucho1018India2026-11-01
Salvatore K Gillian1019Germany2026-10-27
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi P ChuiBrazilIvan Magalhaes NEGOTIATION
Nicolas M SchemmerArgentinaIoni Bowcher NEGOTIATION
Adams B CampainBrazilXuxue Feng NEGOTIATION
Munro O KuskoFranceElwin Sharvill QUALIFIED
Darci F RutaIndiaAnna Fali QUALIFIED
Alejandro O SaylorsUnited KingdomXuxue Feng NEW
Kadeem L RutaGermanyIvan Magalhaes NEGOTIATION
Smith N DarakjyAustraliaElwin Sharvill RENEWAL
Ivar M DoeJapanAnna Fali RENEWAL
Ashley F BowleySpainStephen Shaw QUALIFIED
Arvin S FollerArgentinaXuxue Feng UNQUALIFIED
Chavez Q CampainUnited KingdomAnna Fali UNQUALIFIED
Jefferson K WaycottItalyAsiya Javayant QUALIFIED
Darci I SergiJapanOnyama Limba NEGOTIATION
Cody Q VocelkaFranceAnna Fali QUALIFIED
Adams T FigeroaRussiaXuxue Feng NEW
Salvatore B RutaAustraliaAnna Fali NEGOTIATION
Antonio T SaylorsBrazilIvan Magalhaes NEGOTIATION
Misaki T WhobreyAustraliaAsiya Javayant UNQUALIFIED
Maria T GillianCanadaElwin Sharvill NEGOTIATION
Costa Y DarakjyIndiaIoni Bowcher NEGOTIATION
Chavez L AmigonUnited KingdomIvan Magalhaes UNQUALIFIED
Octavia W TollnerItalyBernardo Dominic UNQUALIFIED
Isabel U DoeItalyOnyama Limba PROPOSAL
Isabel Y FigeroaItalyIoni Bowcher QUALIFIED
Maisha H GillianArgentinaAnna Fali PROPOSAL
Silvio O PoquetteJapanBernardo Dominic PROPOSAL
Jennifer Z RoysterBrazilOnyama Limba QUALIFIED
Greenwood A WhobreyBrazilIoni Bowcher RENEWAL
Aika R KolmetzRussiaIvan Magalhaes UNQUALIFIED
Greenwood V SchemmerIndiaOnyama Limba NEW
Silvio Z MaletIndiaStephen Shaw NEGOTIATION
Leja I CaudyCanadaXuxue Feng NEGOTIATION
Costa G BriddickCanadaIvan Magalhaes QUALIFIED
Johnson W FigeroaCanadaIvan Magalhaes UNQUALIFIED
Jones A OldroydIndiaXuxue Feng UNQUALIFIED
Francesco J FlosiGermanyStephen Shaw PROPOSAL
Sinclair J DarakjyCanadaAmy Elsner QUALIFIED
Misaki A WhobreyAustraliaStephen Shaw NEGOTIATION
Chavez K MacleadRussiaAsiya Javayant 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>