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
Morrow U DoeIndiaOnyama Limba RENEWAL
Smith G FollerJapanIvan Magalhaes UNQUALIFIED
Darci M ShinkoSpainIoni Bowcher QUALIFIED
Alejandro Z RoysterBrazilAmy Elsner RENEWAL
Adams Q WaycottRussiaXuxue Feng PROPOSAL
Clifford B AmigonUnited KingdomIvan Magalhaes NEW
Alejandro S WhobreyItalyOnyama Limba PROPOSAL
Aruna D GlickSpainBernardo Dominic NEGOTIATION
Clifford L ChuiUnited KingdomBernardo Dominic UNQUALIFIED
Murillo J BowleyItalyXuxue Feng NEW
Ashley V FollerBrazilOnyama Limba NEW
Deepesh D GarufiRussiaIoni Bowcher NEW
Leja V SergiFranceElwin Sharvill UNQUALIFIED
Mujtaba P OstroskyFranceIvan Magalhaes RENEWAL
Maria K KolmetzBrazilXuxue Feng UNQUALIFIED
Tony H CampainSpainXuxue Feng NEGOTIATION
Arvin F AlbaresItalyBernardo Dominic UNQUALIFIED
Stacey O VenereAustraliaAsiya Javayant UNQUALIFIED
Jeanfrancois C DarakjyJapanElwin Sharvill UNQUALIFIED
Costa H KuskoSpainIvan Magalhaes NEW
Maria D WieserUnited KingdomOnyama Limba PROPOSAL
Clifford L MaletJapanAsiya Javayant PROPOSAL
Kaitlin A ChuiFranceIvan Magalhaes RENEWAL
Wickens S BriddickAustraliaAmy Elsner PROPOSAL
Aruna U KuskoGermanyAsiya Javayant RENEWAL
Ashley Z FollerGermanyAsiya Javayant UNQUALIFIED
Antonio K GauchoItalyIvan Magalhaes RENEWAL
Juan Z NestleAustraliaStephen Shaw PROPOSAL
Julie N PaprockiAustraliaStephen Shaw NEGOTIATION
David H PoquetteJapanIoni Bowcher UNQUALIFIED
Jeanfrancois F RoysterRussiaAmy Elsner NEGOTIATION
Maisha L DilliardUnited KingdomAmy Elsner PROPOSAL
Cody H FerenczBrazilBernardo Dominic RENEWAL
Alejandro U RulapaughGermanyOnyama Limba NEW
Jones S ButtCanadaOnyama Limba UNQUALIFIED
Smith J GarufiCanadaAnna Fali QUALIFIED
Rodrigues F RulapaughRussiaOnyama Limba NEW
Aika H CampainJapanElwin Sharvill UNQUALIFIED
Costa M BriddickBrazilAnna Fali RENEWAL
Aditya A CaudyBrazilAmy Elsner UNQUALIFIED
Darci C AlbaresBrazilXuxue Feng PROPOSAL
Jeanfrancois K WhobreyJapanAmy Elsner NEW
Jeanfrancois P OldroydAustraliaStephen Shaw UNQUALIFIED
Cody D FollerCanadaStephen Shaw UNQUALIFIED
Isabel L SergiItalyAnna Fali RENEWAL
Julie W ButtIndiaStephen Shaw UNQUALIFIED
Izzy T OldroydSpainAsiya Javayant NEW
Leja I RutaBrazilElwin Sharvill NEW
Kaitlin W TollnerUnited KingdomAnna Fali NEGOTIATION
Deepesh R CaudyBrazilAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Leja V NickaJapanBernardo Dominic NEGOTIATION
Silvio I AmigonArgentinaAmy Elsner NEGOTIATION
Adams U FerenczBrazilAmy Elsner RENEWAL
David I KolmetzUnited KingdomAmy Elsner PROPOSAL
Faith I ChuiAustraliaAsiya Javayant NEGOTIATION
Claire R SaylorsSpainXuxue Feng RENEWAL
Wickens V DarakjySpainBernardo Dominic PROPOSAL
Francesco Z StensethUnited KingdomIoni Bowcher NEGOTIATION
Maria F RoysterJapanIvan Magalhaes NEGOTIATION
Jefferson F AmigonBrazilIvan Magalhaes UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore E DilliardGermany2026-10-09Truhlar And Truhlar Attys UNQUALIFIED61Onyama Limba
1001Kadeem D SchemmerBrazil2026-09-19Commercial Press QUALIFIED11Ivan Magalhaes
1002Adams R BologniaRussia2026-09-22Benton, John B Jr PROPOSAL81Stephen Shaw
1003Claire Z NestleArgentina2026-10-03Truhlar And Truhlar Attys QUALIFIED90Stephen Shaw
1004Costa I InouyeAustralia2026-10-11Morlong Associates NEGOTIATION33Xuxue Feng
1005Murillo G FigeroaRussia2026-10-07Feiner Bros PROPOSAL79Xuxue Feng
1006Munro Z FigeroaAustralia2026-10-15King, Christopher A Esq RENEWAL21Onyama Limba
1007Murillo F MaletArgentina2026-10-07Truhlar And Truhlar Attys NEGOTIATION29Asiya Javayant
1008Leja P VocelkaCanada2026-09-23Dorl, James J Esq QUALIFIED36Elwin Sharvill
1009Isabel A WhobreyCanada2026-09-29Rangoni Of Florence PROPOSAL7Xuxue Feng
1010Leja W ButtIndia2026-09-18Commercial Press UNQUALIFIED33Amy Elsner
1011Jones Q FollerRussia2026-10-01Rousseaux, Michael Esq UNQUALIFIED5Xuxue Feng
1012Jeanfrancois W BologniaUnited Kingdom2026-09-24Rousseaux, Michael Esq UNQUALIFIED19Ivan Magalhaes
1013Maria W RulapaughGermany2026-09-19Morlong Associates UNQUALIFIED57Stephen Shaw
1014Alejandro S BriddickBrazil2026-09-30King, Christopher A Esq QUALIFIED93Xuxue Feng
1015Rodrigues U MaletBrazil2026-10-04Feiner Bros NEW47Ivan Magalhaes
1016Octavia K MaletFrance2026-09-28Morlong Associates UNQUALIFIED84Bernardo Dominic
1017Arvin B RoysterAustralia2026-10-15Rangoni Of Florence NEGOTIATION63Ioni Bowcher
1018Stacey K FlosiSpain2026-09-17Chapman, Ross E Esq PROPOSAL40Elwin Sharvill
1019Claire Y MaletUnited Kingdom2026-10-10King, Christopher A Esq NEW93Asiya Javayant
1020Costa O RutaJapan2026-09-24Benton, John B Jr UNQUALIFIED44Amy Elsner
1021Smith F DoeSpain2026-09-28Commercial Press NEW85Asiya Javayant
1022Aditya E AlbaresBrazil2026-10-06Benton, John B Jr RENEWAL70Anna Fali
1023Leja W CampainArgentina2026-09-19Printing Dimensions UNQUALIFIED90Asiya Javayant
1024Wickens L ButtUnited Kingdom2026-10-10Benton, John B Jr UNQUALIFIED13Ivan Magalhaes
1025Juan A StensethCanada2026-09-28Rangoni Of Florence QUALIFIED73Onyama Limba
1026Alejandro C BowleySpain2026-10-08Chanay, Jeffrey A Esq QUALIFIED0Anna Fali
1027Adams C FerenczRussia2026-09-28Morlong Associates UNQUALIFIED89Stephen Shaw
1028Leja J PaprockiCanada2026-09-19Benton, John B Jr UNQUALIFIED67Xuxue Feng
1029Isabel Y BriddickAustralia2026-10-09Benton, John B Jr NEGOTIATION8Amy Elsner
1030Octavia R RimAustralia2026-09-19Dorl, James J Esq PROPOSAL87Onyama Limba
1031James S PaprockiUnited Kingdom2026-09-30Commercial Press RENEWAL16Ivan Magalhaes
1032Stacey I VocelkaGermany2026-09-27Commercial Press QUALIFIED73Onyama Limba
1033Misaki L ShinkoArgentina2026-09-27Rangoni Of Florence NEGOTIATION13Ioni Bowcher
1034Cody J SaylorsAustralia2026-10-11Printing Dimensions NEGOTIATION43Stephen Shaw
1035Isabel Q CaldareraArgentina2026-09-19Commercial Press PROPOSAL47Stephen Shaw
1036Cody G RutaJapan2026-09-25Commercial Press NEW37Bernardo Dominic
1037Leja C MarrierJapan2026-09-24Printing Dimensions NEGOTIATION96Bernardo Dominic
1038Jefferson M BologniaSpain2026-10-04Truhlar And Truhlar Attys NEW98Bernardo Dominic
1039David Y RimCanada2026-09-17Feltz Printing Service PROPOSAL3Onyama Limba
1040Darci J BowleyCanada2026-10-06Commercial Press NEGOTIATION82Anna Fali
1041Clifford T ShinkoJapan2026-10-04Chemel, James L Cpa NEGOTIATION77Amy Elsner
1042Francesco J VocelkaCanada2026-10-10Chanay, Jeffrey A Esq QUALIFIED1Bernardo Dominic
1043Adams B MaletIndia2026-10-12Truhlar And Truhlar Attys PROPOSAL48Stephen Shaw
1044Jennifer Y InouyeJapan2026-09-25Chapman, Ross E Esq NEW63Amy Elsner
1045Clifford R DarakjyRussia2026-10-11Morlong Associates PROPOSAL71Amy Elsner
1046Aruna U PerinRussia2026-09-29Chanay, Jeffrey A Esq NEGOTIATION8Onyama Limba
1047Emily C TollnerFrance2026-09-29Buckley Miller Wright NEW66Amy Elsner
1048Faith P BriddickSpain2026-10-01Feiner Bros RENEWAL21Amy Elsner
1049Aditya U FerenczCanada2026-09-16King, Christopher A Esq UNQUALIFIED86Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Ivar A VocelkaAustraliaAsiya Javayant UNQUALIFIED
Rodrigues D RoysterIndiaAnna Fali NEGOTIATION
Misaki E MorascaBrazilAmy Elsner PROPOSAL
Octavia K DoeArgentinaElwin Sharvill QUALIFIED
Aruna Q WaycottUnited KingdomAsiya Javayant UNQUALIFIED
Mayumi T MaletGermanyIvan Magalhaes NEW
Alejandro X SergiArgentinaElwin Sharvill QUALIFIED
Leja D NickaItalyAnna Fali NEGOTIATION
Ivar Z MacleadJapanBernardo Dominic RENEWAL
Darci M IturbideJapanOnyama Limba UNQUALIFIED
Smith R WaycottArgentinaIoni Bowcher UNQUALIFIED
Arvin K NickaArgentinaXuxue Feng QUALIFIED
Aruna W VenereIndiaXuxue Feng PROPOSAL
Stacey L AlbaresItalyStephen Shaw NEGOTIATION
Antonio G CaldareraBrazilOnyama Limba NEW
Maisha V WhobreyBrazilIoni Bowcher UNQUALIFIED
Stacey P OstroskySpainOnyama Limba UNQUALIFIED
Jeanfrancois M VenereJapanOnyama Limba RENEWAL
Mujtaba O MaletFranceXuxue Feng QUALIFIED
Leon M ChuiGermanyOnyama Limba PROPOSAL
Munro B CaudyArgentinaAnna Fali QUALIFIED
Maria B MorascaGermanyIvan Magalhaes NEGOTIATION
Arvin D SchemmerGermanyStephen Shaw UNQUALIFIED
Aruna L WaycottRussiaIoni Bowcher UNQUALIFIED
Leja M RoysterItalyBernardo Dominic NEGOTIATION
Antonio N MorascaFranceAmy Elsner PROPOSAL
Kaitlin K AlbaresAustraliaAmy Elsner NEW
Jefferson J CaudySpainBernardo Dominic QUALIFIED
Greenwood I GlickJapanAnna Fali QUALIFIED
Costa E PaprockiRussiaAsiya Javayant RENEWAL
Morrow Y BriddickSpainIoni Bowcher NEGOTIATION
David Q AlbaresBrazilBernardo Dominic UNQUALIFIED
Darci T RutaAustraliaIvan Magalhaes QUALIFIED
Smith E MaletItalyBernardo Dominic UNQUALIFIED
Costa V RutaCanadaElwin Sharvill QUALIFIED
Ashley I DilliardAustraliaAsiya Javayant NEW
Tony V SchemmerGermanyElwin Sharvill RENEWAL
Maria G KuskoArgentinaAsiya Javayant NEGOTIATION
Stacey L ChuiAustraliaIoni Bowcher QUALIFIED
Antonio T NickaCanadaAnna Fali UNQUALIFIED
Sinclair I SergiGermanyAsiya Javayant UNQUALIFIED
Morrow A BologniaSpainOnyama Limba RENEWAL
Maria I ButtArgentinaAsiya Javayant QUALIFIED
Antonio F FlosiUnited KingdomAnna Fali RENEWAL
Francesco F FollerSpainAmy Elsner QUALIFIED
Julie Q NestleUnited KingdomIvan Magalhaes QUALIFIED
Ashley S MorascaFranceStephen Shaw NEGOTIATION
Darci Z PoquetteFranceXuxue Feng QUALIFIED
Maisha Q FerenczBrazilBernardo Dominic RENEWAL
Rodrigues B StockhamSpainAmy Elsner RENEWAL
Frozen Columns
Name
Francesco J Nestle
Cody B Morasca
Johnson E Vocelka
Claire S Doe
Munro P Gillian
Smith I Perin
Tony E Waycott
Deepesh W Slusarski
Rodrigues X Inouye
Faith Q Wieser
Murillo A Garufi
Misaki I Glick
Faith B Poquette
Costa E Bowley
Mayumi O Morasca
Jennifer X Campain
Antonio C Saylors
Faith W Slusarski
Sinclair H Gaucho
Octavia O Albares
Deepesh G Gillian
Izzy J Iturbide
Arvin Z Stockham
Kaitlin A Flosi
Silvio B Glick
Jennifer M Chui
Aika N Garufi
Misaki F Ruta
Jones F Nestle
Jeanfrancois A Gaucho
Deepesh H Morasca
Ricardo Y Darakjy
Rodrigues I Oldroyd
Jones R Sergi
Johnson G Butt
Francesco T Dilliard
Kaitlin Y Bowley
Nicolas S Sergi
Kaitlin A Stenseth
Johnson D Marrier
Arvin V Dilliard
Leon M Doe
Johnson U Garufi
Leja A Rulapaugh
Aika S Ostrosky
Alejandro F Butt
Antonio E Caldarera
Juan R Bolognia
Deepesh Z Glick
Murillo X Whobrey
IdCountryDate
1000Brazil2026-10-03
1001United Kingdom2026-09-26
1002Spain2026-10-07
1003India2026-09-27
1004Canada2026-10-14
1005Brazil2026-09-30
1006Canada2026-09-24
1007Canada2026-10-05
1008Australia2026-09-23
1009India2026-10-11
1010United Kingdom2026-10-09
1011France2026-09-21
1012Spain2026-09-16
1013France2026-10-02
1014Argentina2026-09-22
1015France2026-10-08
1016France2026-10-07
1017France2026-10-10
1018Italy2026-10-14
1019Brazil2026-10-01
1020Australia2026-09-22
1021United Kingdom2026-10-15
1022Argentina2026-09-25
1023Brazil2026-09-26
1024United Kingdom2026-10-13
1025Italy2026-10-14
1026France2026-10-15
1027Russia2026-10-05
1028Germany2026-10-14
1029Brazil2026-09-28
1030France2026-10-01
1031India2026-10-12
1032Argentina2026-10-08
1033Australia2026-10-06
1034Italy2026-10-07
1035Argentina2026-10-08
1036Canada2026-09-22
1037Argentina2026-09-18
1038Argentina2026-09-19
1039India2026-10-02
1040India2026-10-14
1041India2026-10-14
1042Brazil2026-09-18
1043Russia2026-10-01
1044Canada2026-10-08
1045India2026-09-17
1046Australia2026-10-04
1047Australia2026-10-05
1048Canada2026-10-11
1049Japan2026-09-24

On-Demand Data

NameIdCountryDate
Francesco E Ostrosky1000Australia2026-10-10
Johnson A Paprocki1001France2026-09-26
Aruna U Whobrey1002Argentina2026-09-19
Izzy N Glick1003Japan2026-09-23
Antonio S Garufi1004Japan2026-10-01
Jefferson V Glick1005United Kingdom2026-10-15
Sinclair J Foller1006Argentina2026-10-05
Claire G Garufi1007Canada2026-10-14
Ivar H Rulapaugh1008Australia2026-09-18
Costa F Bowley1009Japan2026-10-06
Aruna X Malet1010Brazil2026-10-12
Smith T Gillian1011Germany2026-10-15
Francesco D Paprocki1012Canada2026-09-22
Johnson I Malet1013Australia2026-10-10
Jennifer O Garufi1014United Kingdom2026-09-23
Murillo G Royster1015Germany2026-09-16
Claire U Rulapaugh1016Argentina2026-09-29
Aditya E Shinko1017Spain2026-09-24
Johnson P Saylors1018Brazil2026-10-04
Alejandro M Tollner1019Japan2026-10-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Silvio I OldroydCanadaBernardo Dominic RENEWAL
Faith U PaprockiBrazilOnyama Limba QUALIFIED
Johnson K NestleJapanStephen Shaw NEW
Greenwood K ButtRussiaAsiya Javayant UNQUALIFIED
Murillo R IturbideArgentinaXuxue Feng PROPOSAL
Silvio T GauchoItalyElwin Sharvill QUALIFIED
Faith P StockhamFranceStephen Shaw PROPOSAL
Johnson Z SlusarskiCanadaXuxue Feng QUALIFIED
Mujtaba M AlbaresItalyStephen Shaw NEGOTIATION
Murillo O ChuiSpainBernardo Dominic RENEWAL
Maisha V RimIndiaOnyama Limba QUALIFIED
Nicolas Q ChuiArgentinaAmy Elsner NEW
Morrow K FlosiGermanyBernardo Dominic QUALIFIED
Ricardo E ButtIndiaBernardo Dominic NEW
Juan U MorascaFranceIoni Bowcher NEGOTIATION
Clifford M VocelkaItalyStephen Shaw NEGOTIATION
Claire O BriddickFranceAmy Elsner UNQUALIFIED
Leon N FerenczFranceAsiya Javayant QUALIFIED
Murillo P FollerAustraliaAmy Elsner NEGOTIATION
Antonio E GarufiIndiaIvan Magalhaes QUALIFIED
Jeanfrancois G SaylorsSpainIvan Magalhaes QUALIFIED
Nicolas L StockhamRussiaIvan Magalhaes NEGOTIATION
Nicolas X NestleRussiaOnyama Limba NEGOTIATION
Darci P DoeFranceAnna Fali NEW
Emily U MorascaBrazilIoni Bowcher NEGOTIATION
Cody E TollnerItalyElwin Sharvill RENEWAL
Wickens W CaldareraIndiaBernardo Dominic NEGOTIATION
Alejandro W RutaRussiaAmy Elsner PROPOSAL
Murillo E NickaRussiaBernardo Dominic QUALIFIED
Faith I CaldareraBrazilAsiya Javayant RENEWAL
Rodrigues P SergiBrazilIoni Bowcher NEW
Morrow H SlusarskiSpainIvan Magalhaes QUALIFIED
Aruna H FlosiBrazilAmy Elsner NEGOTIATION
Sinclair R ChuiJapanAnna Fali PROPOSAL
Octavia V KolmetzFranceXuxue Feng NEW
Stacey L BriddickRussiaBernardo Dominic PROPOSAL
Stacey B WaycottCanadaAsiya Javayant QUALIFIED
Faith F SlusarskiCanadaIvan Magalhaes QUALIFIED
Wickens O VocelkaAustraliaAsiya Javayant RENEWAL
Ricardo F NestleGermanyElwin Sharvill RENEWAL

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