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
Greenwood X MarrierAustraliaIvan Magalhaes RENEWAL
Smith S StockhamArgentinaAnna Fali NEW
Wickens Q SaylorsJapanXuxue Feng RENEWAL
Kadeem F PerinJapanIoni Bowcher NEW
Francesco J CaldareraRussiaXuxue Feng PROPOSAL
Isabel X RulapaughBrazilAnna Fali NEGOTIATION
Clifford R BowleyRussiaIoni Bowcher QUALIFIED
Murillo S WieserJapanIvan Magalhaes NEGOTIATION
Nicolas V DoeJapanBernardo Dominic NEGOTIATION
Misaki J MacleadAustraliaIvan Magalhaes NEW
Juan A ButtSpainIvan Magalhaes RENEWAL
Misaki A StockhamFranceAsiya Javayant PROPOSAL
Mayumi L BriddickFranceIoni Bowcher RENEWAL
Mayumi N FlosiJapanXuxue Feng NEW
Deepesh B InouyeFranceAmy Elsner NEW
Nicolas E TollnerGermanyStephen Shaw UNQUALIFIED
Silvio K SaylorsGermanyAsiya Javayant NEW
Stacey D CaudySpainStephen Shaw NEW
Costa V FigeroaItalyXuxue Feng QUALIFIED
Ivar M RulapaughFranceBernardo Dominic NEW
Mujtaba A OldroydGermanyAmy Elsner NEW
Nicolas U BriddickArgentinaElwin Sharvill PROPOSAL
Munro E MorascaBrazilElwin Sharvill NEGOTIATION
Maisha G WieserArgentinaIoni Bowcher UNQUALIFIED
Juan E TollnerBrazilIvan Magalhaes NEW
Julie A NestleJapanAsiya Javayant QUALIFIED
Jennifer I AlbaresRussiaOnyama Limba NEGOTIATION
Isabel H DilliardAustraliaAsiya Javayant UNQUALIFIED
Deepesh U GillianGermanyAnna Fali QUALIFIED
Costa F BriddickCanadaAmy Elsner RENEWAL
Adams B DarakjyAustraliaBernardo Dominic NEW
Jennifer Z OldroydUnited KingdomAmy Elsner QUALIFIED
Jennifer V WaycottFranceXuxue Feng NEW
Stacey O KolmetzIndiaBernardo Dominic PROPOSAL
Stacey M FerenczRussiaElwin Sharvill NEGOTIATION
Francesco I OldroydBrazilIoni Bowcher NEGOTIATION
Jennifer H WaycottBrazilXuxue Feng RENEWAL
Kaitlin U GlickJapanAmy Elsner RENEWAL
Misaki A IturbideAustraliaAmy Elsner RENEWAL
Aika T DoeAustraliaAnna Fali PROPOSAL
Juan B BriddickJapanAsiya Javayant NEGOTIATION
Alejandro Y StensethSpainElwin Sharvill NEGOTIATION
Maria L ChuiJapanAmy Elsner UNQUALIFIED
Rodrigues M RimUnited KingdomAsiya Javayant NEGOTIATION
Juan P CaldareraJapanOnyama Limba NEW
Smith U PoquetteJapanIvan Magalhaes PROPOSAL
Cody F GarufiSpainXuxue Feng UNQUALIFIED
Murillo T BriddickJapanElwin Sharvill QUALIFIED
Alejandro V RulapaughGermanyStephen Shaw NEW
Aruna D CaudyRussiaOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Arvin W AlbaresRussiaOnyama Limba QUALIFIED
Aruna L OstroskyCanadaElwin Sharvill RENEWAL
Clifford H CaldareraBrazilXuxue Feng RENEWAL
Mujtaba V DarakjyCanadaAsiya Javayant QUALIFIED
Nicolas G SergiGermanyBernardo Dominic PROPOSAL
Antonio P VocelkaItalyAmy Elsner NEGOTIATION
Sinclair Y SlusarskiCanadaAmy Elsner QUALIFIED
Greenwood O WhobreyGermanyAnna Fali UNQUALIFIED
Francesco G SlusarskiSpainBernardo Dominic UNQUALIFIED
Maria I VenereCanadaOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh L WieserAustralia2026-10-20Morlong Associates NEW87Ivan Magalhaes
1001Munro Y PoquetteSpain2026-10-30Rangoni Of Florence NEW22Xuxue Feng
1002James J SaylorsItaly2026-10-15Morlong Associates NEW2Ivan Magalhaes
1003Ricardo H SlusarskiJapan2026-10-18Feiner Bros UNQUALIFIED30Ivan Magalhaes
1004Mujtaba F MaletItaly2026-10-13Feiner Bros UNQUALIFIED11Asiya Javayant
1005Maisha S StockhamBrazil2026-10-21Commercial Press NEGOTIATION29Stephen Shaw
1006Mujtaba P AlbaresArgentina2026-10-14Chanay, Jeffrey A Esq UNQUALIFIED3Onyama Limba
1007Claire U ShinkoIndia2026-10-26King, Christopher A Esq NEGOTIATION7Xuxue Feng
1008Leon P VenereAustralia2026-10-15Buckley Miller Wright QUALIFIED89Stephen Shaw
1009Johnson Q OldroydCanada2026-11-03Chanay, Jeffrey A Esq RENEWAL14Stephen Shaw
1010Mujtaba L FerenczSpain2026-10-22Commercial Press PROPOSAL13Asiya Javayant
1011Jones B InouyeAustralia2026-10-27Truhlar And Truhlar Attys UNQUALIFIED16Ioni Bowcher
1012Francesco O PerinBrazil2026-10-14Dorl, James J Esq NEGOTIATION60Amy Elsner
1013Deepesh H GlickSpain2026-11-08Chanay, Jeffrey A Esq NEGOTIATION83Stephen Shaw
1014Claire N MarrierSpain2026-10-19Printing Dimensions UNQUALIFIED73Elwin Sharvill
1015Leja B RimArgentina2026-10-20Chemel, James L Cpa NEGOTIATION30Xuxue Feng
1016Mujtaba M FigeroaAustralia2026-10-28Feiner Bros RENEWAL20Xuxue Feng
1017Aika R SaylorsIndia2026-10-29Benton, John B Jr RENEWAL97Anna Fali
1018Wickens J GlickCanada2026-10-24Feltz Printing Service PROPOSAL68Elwin Sharvill
1019Sinclair P GarufiJapan2026-10-18Buckley Miller Wright QUALIFIED39Asiya Javayant
1020Cody O FlosiAustralia2026-10-26Dorl, James J Esq QUALIFIED14Bernardo Dominic
1021Cody D PoquetteItaly2026-10-18Chapman, Ross E Esq NEGOTIATION92Stephen Shaw
1022Murillo Z BriddickAustralia2026-11-04Benton, John B Jr NEGOTIATION1Xuxue Feng
1023Jones C FigeroaSpain2026-10-28Chemel, James L Cpa PROPOSAL83Elwin Sharvill
1024Octavia B BriddickArgentina2026-10-25Chapman, Ross E Esq UNQUALIFIED42Ivan Magalhaes
1025Wickens X WieserRussia2026-10-16Benton, John B Jr PROPOSAL57Amy Elsner
1026Darci K AmigonFrance2026-10-25Chemel, James L Cpa PROPOSAL34Anna Fali
1027Jennifer L VocelkaItaly2026-11-08Commercial Press NEW46Anna Fali
1028Mujtaba Q GarufiRussia2026-10-20King, Christopher A Esq UNQUALIFIED79Stephen Shaw
1029Tony H ShinkoSpain2026-10-29Buckley Miller Wright QUALIFIED41Onyama Limba
1030Mujtaba O RulapaughBrazil2026-11-06Dorl, James J Esq QUALIFIED24Stephen Shaw
1031Aditya E RimBrazil2026-11-02Rousseaux, Michael Esq UNQUALIFIED12Xuxue Feng
1032Darci E MarrierAustralia2026-10-29Benton, John B Jr UNQUALIFIED6Bernardo Dominic
1033Munro N AlbaresJapan2026-10-28Commercial Press NEGOTIATION87Asiya Javayant
1034Emily H OstroskyItaly2026-11-02King, Christopher A Esq UNQUALIFIED72Elwin Sharvill
1035Kaitlin I SlusarskiUnited Kingdom2026-10-28Printing Dimensions UNQUALIFIED82Onyama Limba
1036Antonio N PaprockiGermany2026-10-22Printing Dimensions QUALIFIED64Bernardo Dominic
1037Maria P SchemmerJapan2026-10-13Printing Dimensions NEGOTIATION78Elwin Sharvill
1038Clifford S SergiBrazil2026-10-20Commercial Press QUALIFIED2Asiya Javayant
1039James T StockhamIndia2026-10-15Commercial Press NEW40Amy Elsner
1040Sinclair V FollerAustralia2026-10-21Rousseaux, Michael Esq NEGOTIATION7Elwin Sharvill
1041Wickens Y FigeroaItaly2026-10-27Rangoni Of Florence QUALIFIED48Onyama Limba
1042Izzy K InouyeBrazil2026-11-08Chanay, Jeffrey A Esq QUALIFIED1Onyama Limba
1043Emily R SergiJapan2026-10-20King, Christopher A Esq NEGOTIATION9Xuxue Feng
1044Greenwood J ChuiGermany2026-11-05King, Christopher A Esq NEGOTIATION23Asiya Javayant
1045Faith V PoquetteBrazil2026-11-07Morlong Associates RENEWAL11Bernardo Dominic
1046Chavez K VocelkaFrance2026-10-14Printing Dimensions NEGOTIATION95Anna Fali
1047Cody V WhobreyFrance2026-10-19Morlong Associates NEGOTIATION47Onyama Limba
1048Aruna W DoeFrance2026-10-19Rousseaux, Michael Esq RENEWAL39Ioni Bowcher
1049Chavez G GauchoFrance2026-10-19Feiner Bros RENEWAL40Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Sinclair M TollnerItalyAsiya Javayant NEGOTIATION
David S SchemmerFranceElwin Sharvill NEGOTIATION
Ivar N BologniaItalyAmy Elsner UNQUALIFIED
Mujtaba D RoysterArgentinaAnna Fali PROPOSAL
Greenwood G MacleadArgentinaIvan Magalhaes UNQUALIFIED
Arvin F StockhamAustraliaBernardo Dominic RENEWAL
Antonio K DoeAustraliaXuxue Feng NEW
Darci O AmigonSpainElwin Sharvill RENEWAL
Claire Y CaudyArgentinaElwin Sharvill NEGOTIATION
Morrow I WhobreyBrazilAsiya Javayant UNQUALIFIED
Clifford P PaprockiFranceBernardo Dominic UNQUALIFIED
Kaitlin K OldroydArgentinaStephen Shaw QUALIFIED
Leja X TollnerAustraliaXuxue Feng PROPOSAL
Misaki Z OstroskyFranceOnyama Limba PROPOSAL
Juan A OldroydJapanIvan Magalhaes NEW
Costa X GarufiGermanyIvan Magalhaes PROPOSAL
Aruna G PoquetteItalyElwin Sharvill NEGOTIATION
Tony J VenereCanadaBernardo Dominic NEW
Ivar T SchemmerAustraliaAmy Elsner NEW
Jones Y ButtIndiaXuxue Feng RENEWAL
Deepesh H CaudyJapanBernardo Dominic PROPOSAL
Wickens I DilliardCanadaBernardo Dominic NEGOTIATION
Leja Y TollnerItalyStephen Shaw RENEWAL
Ashley X PoquetteRussiaAmy Elsner PROPOSAL
Rodrigues Y MarrierRussiaBernardo Dominic RENEWAL
Smith Z KolmetzGermanyElwin Sharvill UNQUALIFIED
Deepesh D MaletCanadaAmy Elsner NEGOTIATION
Darci X NickaAustraliaIvan Magalhaes PROPOSAL
Munro I RoysterItalyAsiya Javayant RENEWAL
Octavia W WhobreyBrazilAnna Fali NEW
Adams C SlusarskiCanadaStephen Shaw RENEWAL
Nicolas W OldroydIndiaIvan Magalhaes NEGOTIATION
Silvio X StensethCanadaIvan Magalhaes PROPOSAL
Salvatore M FerenczSpainStephen Shaw PROPOSAL
Misaki Q BologniaBrazilAmy Elsner NEW
Johnson R MarrierAustraliaOnyama Limba NEGOTIATION
Nicolas X InouyeFranceElwin Sharvill UNQUALIFIED
Francesco U PerinArgentinaElwin Sharvill UNQUALIFIED
Aika N ShinkoSpainAmy Elsner QUALIFIED
Maisha E GlickArgentinaStephen Shaw QUALIFIED
James A RoysterUnited KingdomAmy Elsner UNQUALIFIED
Greenwood A MorascaUnited KingdomElwin Sharvill NEGOTIATION
Aditya V KolmetzUnited KingdomAsiya Javayant NEW
Maria J VenereIndiaAmy Elsner NEW
Jennifer T MaletCanadaOnyama Limba QUALIFIED
Deepesh Z OstroskySpainElwin Sharvill UNQUALIFIED
Kaitlin B PoquetteFranceAmy Elsner UNQUALIFIED
Chavez F OldroydIndiaElwin Sharvill QUALIFIED
David P OldroydAustraliaIoni Bowcher NEW
Greenwood A SaylorsFranceIoni Bowcher QUALIFIED
Frozen Columns
Name
Ricardo R Malet
Maisha H Kolmetz
Aditya Y Malet
Silvio A Maclead
James Y Venere
Mayumi O Slusarski
Arvin Y Dilliard
Silvio G Venere
Juan H Iturbide
Jeanfrancois J Wieser
Costa M Glick
Stacey W Schemmer
Mayumi A Ruta
Francesco M Rim
Clifford N Tollner
Wickens Y Glick
Nicolas E Whobrey
Sinclair V Nestle
Leon D Kusko
Munro U Briddick
Maisha J Bowley
Maria M Inouye
Kaitlin K Perin
Ricardo G Gillian
Faith D Briddick
Octavia D Waycott
Juan R Albares
Kadeem X Slusarski
Octavia Q Flosi
Ashley Q Rulapaugh
Maria D Maclead
Johnson T Iturbide
Maria D Amigon
Aruna Z Oldroyd
Adams I Marrier
Stacey M Paprocki
Faith S Saylors
Julie V Wieser
Francesco E Ruta
Darci I Darakjy
Maria W Glick
Stacey D Rim
Darci F Inouye
Misaki K Garufi
Aditya Q Stockham
Julie B Rulapaugh
Sinclair Q Marrier
Faith J Stenseth
Emily K Venere
Tony O Inouye
IdCountryDate
1000Japan2026-11-02
1001Argentina2026-11-05
1002Italy2026-10-21
1003Australia2026-10-23
1004United Kingdom2026-10-16
1005Italy2026-11-04
1006Spain2026-10-24
1007United Kingdom2026-10-29
1008Australia2026-10-12
1009Italy2026-11-06
1010Brazil2026-10-26
1011Canada2026-10-31
1012Brazil2026-10-26
1013Russia2026-10-15
1014Italy2026-10-13
1015Italy2026-11-09
1016United Kingdom2026-10-22
1017Germany2026-11-03
1018United Kingdom2026-10-28
1019Argentina2026-11-08
1020Argentina2026-11-02
1021Russia2026-10-12
1022Russia2026-10-17
1023United Kingdom2026-10-21
1024India2026-10-31
1025Canada2026-10-24
1026India2026-10-31
1027India2026-11-02
1028Italy2026-10-19
1029United Kingdom2026-11-06
1030Russia2026-10-17
1031Italy2026-10-21
1032France2026-10-19
1033Italy2026-10-25
1034Brazil2026-10-20
1035Italy2026-10-12
1036Italy2026-10-15
1037Canada2026-10-30
1038Japan2026-10-15
1039France2026-10-21
1040India2026-10-27
1041Australia2026-10-12
1042United Kingdom2026-11-05
1043Germany2026-10-21
1044United Kingdom2026-10-11
1045Spain2026-10-11
1046France2026-10-26
1047Russia2026-10-31
1048United Kingdom2026-11-03
1049United Kingdom2026-10-28

On-Demand Data

NameIdCountryDate
Jefferson H Slusarski1000Australia2026-10-26
Costa O Maclead1001Argentina2026-10-27
Misaki U Nestle1002Brazil2026-11-08
Aika Q Gaucho1003Japan2026-10-14
Maisha D Marrier1004France2026-10-18
Isabel A Waycott1005Spain2026-11-08
Deepesh P Vocelka1006Germany2026-10-13
Aditya G Albares1007Australia2026-11-03
Sinclair O Malet1008Canada2026-10-25
David S Darakjy1009Argentina2026-11-02
Adams O Stenseth1010Italy2026-10-31
Wickens E Venere1011Spain2026-11-01
Cody Z Wieser1012Australia2026-10-14
Emily Y Campain1013Germany2026-10-30
Nicolas J Slusarski1014Russia2026-10-28
Leon F Albares1015Russia2026-10-31
Leon B Schemmer1016France2026-10-12
Jefferson K Slusarski1017Russia2026-10-20
Silvio K Inouye1018India2026-11-05
Claire H Stockham1019Argentina2026-10-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
David L DoeRussiaXuxue Feng NEGOTIATION
Greenwood T RutaArgentinaElwin Sharvill RENEWAL
Jennifer R FollerJapanIvan Magalhaes UNQUALIFIED
Munro P GlickRussiaAnna Fali RENEWAL
Leon N CaudyArgentinaAmy Elsner NEW
Greenwood U KuskoSpainStephen Shaw QUALIFIED
Cody H CaudyCanadaElwin Sharvill QUALIFIED
Rodrigues D VocelkaJapanStephen Shaw NEGOTIATION
Leon Y RulapaughBrazilIvan Magalhaes NEGOTIATION
Izzy Y FlosiAustraliaElwin Sharvill QUALIFIED
Johnson O StensethCanadaOnyama Limba NEW
Octavia S RoysterJapanAsiya Javayant PROPOSAL
Nicolas W StockhamArgentinaAnna Fali NEGOTIATION
Ivar T SlusarskiFranceAnna Fali NEW
Silvio T FollerIndiaBernardo Dominic UNQUALIFIED
Deepesh D CaldareraFranceElwin Sharvill NEW
Murillo D AlbaresFranceAsiya Javayant UNQUALIFIED
Aditya Q SchemmerJapanElwin Sharvill RENEWAL
Ivar H RimAustraliaAmy Elsner UNQUALIFIED
Rodrigues R MarrierArgentinaOnyama Limba NEGOTIATION
Rodrigues H MarrierArgentinaAsiya Javayant NEGOTIATION
Aditya F CaudyGermanyAsiya Javayant NEGOTIATION
Smith O SlusarskiJapanAsiya Javayant PROPOSAL
Misaki K ChuiFranceAmy Elsner NEGOTIATION
Leja Z MacleadIndiaStephen Shaw NEW
Juan K PerinAustraliaXuxue Feng NEGOTIATION
Jefferson L NestleAustraliaBernardo Dominic PROPOSAL
Mujtaba K WaycottRussiaAmy Elsner QUALIFIED
Antonio A GarufiItalyXuxue Feng NEGOTIATION
Emily G VocelkaAustraliaIvan Magalhaes NEGOTIATION
Salvatore W WaycottUnited KingdomXuxue Feng PROPOSAL
Stacey Z NestleIndiaOnyama Limba RENEWAL
Maisha O OldroydAustraliaOnyama Limba PROPOSAL
Jennifer G AmigonCanadaElwin Sharvill NEGOTIATION
David T KolmetzIndiaAnna Fali RENEWAL
Antonio A AlbaresBrazilBernardo Dominic NEW
Leon R CaudyUnited KingdomIvan Magalhaes NEGOTIATION
Leon O DarakjyBrazilBernardo Dominic RENEWAL
Jones P StensethAustraliaIoni Bowcher UNQUALIFIED
Morrow I GauchoRussiaBernardo Dominic QUALIFIED

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