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
Rodrigues D ButtItalyBernardo Dominic RENEWAL
Emily H GauchoSpainIvan Magalhaes UNQUALIFIED
Julie F FerenczIndiaAsiya Javayant UNQUALIFIED
Silvio S RulapaughIndiaXuxue Feng NEGOTIATION
Kadeem I GarufiSpainIoni Bowcher RENEWAL
Kadeem R FollerUnited KingdomIoni Bowcher PROPOSAL
Francesco G MarrierJapanAnna Fali QUALIFIED
Sinclair W DarakjyBrazilXuxue Feng NEGOTIATION
Rodrigues N GauchoRussiaIoni Bowcher UNQUALIFIED
Emily A GlickSpainIoni Bowcher NEGOTIATION
Greenwood G GarufiUnited KingdomStephen Shaw RENEWAL
James H FlosiFranceAnna Fali NEW
Munro B GillianGermanyXuxue Feng NEW
Sinclair L InouyeGermanyIvan Magalhaes RENEWAL
Murillo R AlbaresRussiaAsiya Javayant RENEWAL
Aditya R ChuiAustraliaIvan Magalhaes QUALIFIED
Smith R AlbaresGermanyIoni Bowcher PROPOSAL
Mujtaba B BowleyIndiaBernardo Dominic UNQUALIFIED
Chavez S BriddickJapanIoni Bowcher PROPOSAL
David S AmigonGermanyAmy Elsner NEW
Smith H RoysterAustraliaAsiya Javayant NEW
David J FerenczBrazilIoni Bowcher UNQUALIFIED
Morrow D DarakjyFranceStephen Shaw UNQUALIFIED
Juan S BologniaBrazilIvan Magalhaes UNQUALIFIED
Julie W FlosiUnited KingdomBernardo Dominic PROPOSAL
Smith P ChuiBrazilElwin Sharvill NEW
Jennifer M CampainJapanAnna Fali UNQUALIFIED
Greenwood W FlosiGermanyAnna Fali QUALIFIED
Munro T KolmetzItalyAsiya Javayant NEGOTIATION
Chavez V OldroydBrazilElwin Sharvill QUALIFIED
Aditya I WhobreyItalyIvan Magalhaes NEGOTIATION
Julie N KolmetzFranceAsiya Javayant RENEWAL
Mayumi A GillianAustraliaOnyama Limba UNQUALIFIED
Clifford F FigeroaUnited KingdomElwin Sharvill UNQUALIFIED
Leon L RutaGermanyBernardo Dominic QUALIFIED
Salvatore S KuskoAustraliaElwin Sharvill NEW
Salvatore X CampainFranceAmy Elsner RENEWAL
Aditya S SchemmerRussiaElwin Sharvill UNQUALIFIED
Greenwood W PoquetteJapanAsiya Javayant QUALIFIED
Ivar B IturbideGermanyIvan Magalhaes QUALIFIED
Salvatore G DarakjySpainIoni Bowcher UNQUALIFIED
Maisha W AlbaresItalyStephen Shaw RENEWAL
Octavia W InouyeFranceOnyama Limba PROPOSAL
Izzy Z OldroydAustraliaOnyama Limba NEW
Deepesh B CaudyJapanIoni Bowcher UNQUALIFIED
Salvatore D DoeBrazilIoni Bowcher NEGOTIATION
Murillo M DilliardJapanBernardo Dominic PROPOSAL
Rodrigues V FollerBrazilAnna Fali PROPOSAL
Johnson Y GarufiRussiaAsiya Javayant PROPOSAL
Emily E GillianFranceIvan Magalhaes NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Emily N GillianUnited KingdomAmy Elsner UNQUALIFIED
Tony D RimIndiaAmy Elsner UNQUALIFIED
Chavez H FerenczArgentinaAmy Elsner RENEWAL
Sinclair O StockhamIndiaBernardo Dominic PROPOSAL
Adams I RimJapanAsiya Javayant RENEWAL
Murillo C GlickJapanAnna Fali RENEWAL
Darci S SaylorsBrazilAnna Fali QUALIFIED
Kadeem W MacleadGermanyBernardo Dominic NEGOTIATION
Nicolas R RulapaughBrazilIvan Magalhaes NEW
Darci E KolmetzArgentinaAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair A PerinItaly2026-10-17Rousseaux, Michael Esq RENEWAL87Bernardo Dominic
1001Rodrigues K WaycottFrance2026-10-23Morlong Associates NEW18Anna Fali
1002Aika I WhobreyCanada2026-10-22Benton, John B Jr NEGOTIATION30Ioni Bowcher
1003Ricardo Y RutaSpain2026-10-05Buckley Miller Wright UNQUALIFIED21Asiya Javayant
1004Chavez X SergiBrazil2026-10-14Chapman, Ross E Esq NEW25Asiya Javayant
1005Greenwood W FlosiIndia2026-10-19Truhlar And Truhlar Attys RENEWAL36Amy Elsner
1006Leja Y KolmetzItaly2026-10-12Feltz Printing Service PROPOSAL79Elwin Sharvill
1007Leon W BriddickFrance2026-10-13Buckley Miller Wright PROPOSAL56Stephen Shaw
1008Costa D FlosiBrazil2026-10-02Printing Dimensions PROPOSAL70Anna Fali
1009Sinclair H WhobreyFrance2026-10-25Printing Dimensions QUALIFIED59Ivan Magalhaes
1010Leja G DilliardCanada2026-09-28Chapman, Ross E Esq PROPOSAL18Amy Elsner
1011Ivar U OldroydBrazil2026-10-14Dorl, James J Esq QUALIFIED2Stephen Shaw
1012Maria H CaldareraBrazil2026-10-27Chapman, Ross E Esq PROPOSAL3Elwin Sharvill
1013Munro Q GillianArgentina2026-09-28Rangoni Of Florence NEGOTIATION22Ioni Bowcher
1014Adams Z RulapaughSpain2026-10-13Rangoni Of Florence RENEWAL55Anna Fali
1015David V KolmetzSpain2026-10-16Chapman, Ross E Esq RENEWAL82Elwin Sharvill
1016David M SlusarskiRussia2026-10-06Morlong Associates RENEWAL24Stephen Shaw
1017Salvatore N BriddickArgentina2026-10-13Chemel, James L Cpa NEW68Stephen Shaw
1018Izzy W ButtJapan2026-10-07Dorl, James J Esq NEGOTIATION95Ivan Magalhaes
1019Adams S RulapaughFrance2026-10-21Feltz Printing Service QUALIFIED75Ivan Magalhaes
1020Munro Q OldroydArgentina2026-10-02Benton, John B Jr RENEWAL80Stephen Shaw
1021Kadeem B SergiGermany2026-10-13Feiner Bros RENEWAL91Amy Elsner
1022Kadeem F GauchoGermany2026-10-04Rangoni Of Florence QUALIFIED77Anna Fali
1023James F DarakjyUnited Kingdom2026-10-13Rangoni Of Florence QUALIFIED50Stephen Shaw
1024Izzy L ChuiIndia2026-10-22Chanay, Jeffrey A Esq NEW20Elwin Sharvill
1025Salvatore O RutaBrazil2026-10-22Feltz Printing Service QUALIFIED71Xuxue Feng
1026Murillo D PoquetteJapan2026-10-22Printing Dimensions UNQUALIFIED36Elwin Sharvill
1027Smith X ShinkoItaly2026-10-16Feiner Bros QUALIFIED97Asiya Javayant
1028Munro R OldroydRussia2026-10-27Morlong Associates QUALIFIED82Amy Elsner
1029Isabel N StockhamItaly2026-09-29Rousseaux, Michael Esq QUALIFIED73Stephen Shaw
1030Morrow C IturbideFrance2026-10-09Morlong Associates NEW52Elwin Sharvill
1031Leon J WaycottItaly2026-10-26Dorl, James J Esq QUALIFIED77Stephen Shaw
1032Ivar W VocelkaJapan2026-10-26Chemel, James L Cpa QUALIFIED38Xuxue Feng
1033Wickens L VocelkaAustralia2026-10-14Truhlar And Truhlar Attys PROPOSAL19Ioni Bowcher
1034Alejandro P MaletRussia2026-10-24Chemel, James L Cpa UNQUALIFIED71Onyama Limba
1035Mayumi N BologniaJapan2026-09-29Rousseaux, Michael Esq RENEWAL58Anna Fali
1036Ricardo B MacleadItaly2026-10-13Morlong Associates NEGOTIATION54Amy Elsner
1037Izzy W PaprockiGermany2026-10-07Benton, John B Jr NEW67Bernardo Dominic
1038Kaitlin W PaprockiItaly2026-10-18Commercial Press QUALIFIED49Bernardo Dominic
1039Misaki N VenereIndia2026-10-08Rousseaux, Michael Esq NEGOTIATION50Xuxue Feng
1040Aditya U PaprockiJapan2026-10-27Chemel, James L Cpa PROPOSAL90Amy Elsner
1041Ashley N MorascaItaly2026-10-25Commercial Press NEW49Elwin Sharvill
1042Misaki E RutaCanada2026-10-04Feltz Printing Service NEGOTIATION29Elwin Sharvill
1043Chavez K KuskoFrance2026-09-30Rousseaux, Michael Esq NEGOTIATION19Ioni Bowcher
1044Julie P SaylorsGermany2026-10-23Buckley Miller Wright PROPOSAL81Xuxue Feng
1045Juan K StockhamSpain2026-10-08Feiner Bros QUALIFIED40Anna Fali
1046Francesco A PaprockiArgentina2026-09-30Rousseaux, Michael Esq QUALIFIED4Ivan Magalhaes
1047Jennifer N ButtIndia2026-10-24Rousseaux, Michael Esq UNQUALIFIED46Bernardo Dominic
1048Sinclair K IturbideUnited Kingdom2026-09-30Rangoni Of Florence PROPOSAL86Bernardo Dominic
1049Alejandro D FigeroaFrance2026-10-27Dorl, James J Esq NEW23Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Alejandro F NestleSpainElwin Sharvill NEW
Faith C FerenczSpainIvan Magalhaes UNQUALIFIED
Clifford T GauchoUnited KingdomBernardo Dominic RENEWAL
Jeanfrancois S StensethArgentinaIoni Bowcher NEGOTIATION
Aruna F MarrierUnited KingdomXuxue Feng UNQUALIFIED
Nicolas I FollerIndiaOnyama Limba NEW
Darci W CaudyIndiaIoni Bowcher NEW
Ivar V NickaAustraliaBernardo Dominic RENEWAL
Emily C RimGermanyIvan Magalhaes NEGOTIATION
Jeanfrancois F TollnerJapanIvan Magalhaes NEW
Emily F FerenczGermanyElwin Sharvill UNQUALIFIED
Morrow Y KuskoFranceIvan Magalhaes PROPOSAL
Misaki J CampainUnited KingdomXuxue Feng UNQUALIFIED
Adams K SlusarskiRussiaIvan Magalhaes QUALIFIED
Maria V GauchoItalyBernardo Dominic QUALIFIED
Leja I DilliardSpainAmy Elsner QUALIFIED
Misaki F GauchoArgentinaOnyama Limba RENEWAL
Costa N CampainRussiaAsiya Javayant RENEWAL
Aruna Y RutaArgentinaBernardo Dominic RENEWAL
Maria W TollnerAustraliaXuxue Feng UNQUALIFIED
Jefferson V InouyeArgentinaXuxue Feng PROPOSAL
Tony D SlusarskiFranceBernardo Dominic RENEWAL
Jeanfrancois F ChuiGermanyOnyama Limba UNQUALIFIED
Isabel O WhobreyCanadaXuxue Feng PROPOSAL
Murillo Q NestleFranceIoni Bowcher UNQUALIFIED
Antonio N FerenczBrazilAsiya Javayant PROPOSAL
Izzy E MaletJapanXuxue Feng NEGOTIATION
Kadeem C RutaFranceAsiya Javayant PROPOSAL
Arvin B GauchoFranceAsiya Javayant QUALIFIED
David G DarakjyFranceElwin Sharvill NEGOTIATION
Mujtaba F FerenczItalyXuxue Feng UNQUALIFIED
Ashley S PoquetteBrazilIoni Bowcher UNQUALIFIED
Kaitlin Y PerinIndiaIvan Magalhaes RENEWAL
Mayumi P OstroskyRussiaIoni Bowcher PROPOSAL
Maisha V InouyeIndiaIvan Magalhaes NEW
Smith T NickaIndiaIvan Magalhaes UNQUALIFIED
Ivar N VocelkaBrazilIvan Magalhaes RENEWAL
Aika J PoquetteBrazilStephen Shaw RENEWAL
Chavez K MorascaItalyAnna Fali NEGOTIATION
Francesco Y BowleyRussiaOnyama Limba QUALIFIED
Juan C CaldareraUnited KingdomIvan Magalhaes NEW
Sinclair F WieserJapanOnyama Limba QUALIFIED
Cody T FlosiCanadaAsiya Javayant QUALIFIED
Stacey P CaldareraSpainXuxue Feng RENEWAL
Costa P BologniaItalyIvan Magalhaes QUALIFIED
Murillo J PaprockiIndiaBernardo Dominic PROPOSAL
Jeanfrancois L WieserUnited KingdomIvan Magalhaes RENEWAL
Johnson V MarrierGermanyIvan Magalhaes QUALIFIED
Isabel C SchemmerArgentinaXuxue Feng PROPOSAL
Arvin P RoysterFranceIvan Magalhaes RENEWAL
Frozen Columns
Name
Jones T Royster
Octavia S Whobrey
Jennifer H Ferencz
Jefferson W Nestle
Antonio E Ostrosky
Costa B Bowley
Leja P Figeroa
Clifford I Campain
Silvio U Inouye
Costa G Ferencz
Ashley A Marrier
Aruna J Saylors
Arvin U Glick
Misaki Q Bolognia
Octavia B Campain
Greenwood S Bolognia
Johnson V Campain
Emily J Flosi
Izzy R Foller
James H Saylors
Darci J Perin
Stacey J Wieser
Smith L Nestle
Ashley Y Sergi
Deepesh K Foller
Aditya R Wieser
Rodrigues B Butt
Ivar L Tollner
Ashley U Foller
Jeanfrancois X Morasca
Stacey Y Poquette
Claire J Gillian
Smith C Paprocki
Alejandro A Malet
Jones X Malet
Rodrigues Q Slusarski
Jennifer V Marrier
Smith W Dilliard
Morrow E Chui
Salvatore B Marrier
Emily U Foller
Aditya L Tollner
Ricardo H Rulapaugh
Nicolas E Malet
Cody L Malet
Jones P Campain
Juan M Briddick
James O Schemmer
Clifford G Schemmer
Chavez Z Morasca
IdCountryDate
1000Canada2026-10-19
1001Brazil2026-10-17
1002France2026-10-23
1003United Kingdom2026-10-19
1004Canada2026-09-29
1005Canada2026-10-21
1006Canada2026-10-06
1007United Kingdom2026-10-01
1008Australia2026-10-01
1009United Kingdom2026-10-24
1010India2026-10-05
1011Australia2026-10-09
1012Spain2026-10-16
1013France2026-10-05
1014France2026-10-20
1015Australia2026-10-12
1016Canada2026-10-08
1017Brazil2026-10-12
1018Japan2026-10-12
1019Brazil2026-10-27
1020Germany2026-10-25
1021Germany2026-10-18
1022France2026-10-15
1023Australia2026-10-11
1024Canada2026-10-26
1025Australia2026-10-14
1026Japan2026-10-24
1027United Kingdom2026-09-28
1028Spain2026-10-19
1029United Kingdom2026-10-03
1030India2026-10-11
1031Argentina2026-10-10
1032Spain2026-10-02
1033Spain2026-10-24
1034Canada2026-10-06
1035Germany2026-10-23
1036Germany2026-10-02
1037Russia2026-10-20
1038India2026-10-13
1039Australia2026-10-09
1040United Kingdom2026-10-07
1041Argentina2026-10-21
1042Canada2026-10-27
1043India2026-10-19
1044France2026-10-27
1045Australia2026-10-07
1046Canada2026-10-13
1047United Kingdom2026-10-02
1048United Kingdom2026-10-22
1049Germany2026-10-02

On-Demand Data

NameIdCountryDate
Costa G Albares1000Australia2026-10-14
Alejandro J Inouye1001United Kingdom2026-10-11
Izzy K Saylors1002Brazil2026-10-16
Adams P Schemmer1003Italy2026-10-12
Clifford S Waycott1004Russia2026-10-15
Misaki O Inouye1005Canada2026-10-15
Johnson T Morasca1006Australia2026-10-02
Izzy B Foller1007Argentina2026-10-12
Mujtaba R Albares1008Germany2026-10-06
Mujtaba L Gillian1009Brazil2026-10-12
Ashley U Sergi1010India2026-10-18
Misaki B Flosi1011Australia2026-10-17
Munro K Amigon1012Argentina2026-10-16
Maria W Perin1013France2026-10-14
Leja T Oldroyd1014United Kingdom2026-10-15
Morrow M Slusarski1015Brazil2026-09-29
Morrow J Tollner1016India2026-10-14
Stacey I Tollner1017Germany2026-10-21
Johnson I Briddick1018India2026-10-24
Aika A Paprocki1019India2026-09-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Murillo F PoquetteArgentinaAnna Fali RENEWAL
Juan G InouyeSpainStephen Shaw NEW
Silvio O BriddickBrazilIoni Bowcher NEGOTIATION
Aditya O MarrierItalyAmy Elsner QUALIFIED
Clifford E RulapaughFranceBernardo Dominic NEW
Jefferson E KuskoGermanyXuxue Feng NEW
Kadeem U RoysterIndiaOnyama Limba NEW
Jeanfrancois F GillianFranceIoni Bowcher UNQUALIFIED
Mujtaba A PerinRussiaIvan Magalhaes QUALIFIED
James F CaldareraFranceOnyama Limba UNQUALIFIED
Julie X RutaJapanStephen Shaw QUALIFIED
Aditya M SlusarskiIndiaOnyama Limba QUALIFIED
Leja G GillianGermanyIoni Bowcher UNQUALIFIED
Arvin K AmigonCanadaElwin Sharvill PROPOSAL
Francesco F MarrierUnited KingdomAsiya Javayant UNQUALIFIED
Morrow F ButtUnited KingdomIvan Magalhaes RENEWAL
Clifford N FerenczFranceAmy Elsner NEW
Antonio F OstroskyJapanAnna Fali UNQUALIFIED
Aditya A MorascaArgentinaXuxue Feng PROPOSAL
Salvatore K AmigonFranceXuxue Feng UNQUALIFIED
Smith M ShinkoAustraliaAnna Fali NEW
Faith P StockhamAustraliaBernardo Dominic NEW
David H SlusarskiCanadaElwin Sharvill UNQUALIFIED
Silvio X VocelkaIndiaStephen Shaw NEW
Mayumi T ShinkoArgentinaElwin Sharvill QUALIFIED
Adams W DoeArgentinaIoni Bowcher UNQUALIFIED
Jones T GarufiUnited KingdomXuxue Feng UNQUALIFIED
Costa A CaldareraAustraliaElwin Sharvill QUALIFIED
James F DilliardIndiaAnna Fali QUALIFIED
Morrow S WaycottFranceIoni Bowcher NEGOTIATION
Leon X GauchoArgentinaAsiya Javayant QUALIFIED
Tony W RoysterGermanyXuxue Feng PROPOSAL
Jefferson J AmigonAustraliaStephen Shaw RENEWAL
Ricardo Z TollnerItalyIoni Bowcher RENEWAL
Greenwood Z RoysterJapanIoni Bowcher QUALIFIED
Ricardo S BowleyItalyElwin Sharvill RENEWAL
Costa T PaprockiCanadaIoni Bowcher PROPOSAL
Stacey G InouyeCanadaXuxue Feng UNQUALIFIED
Maria Y FlosiIndiaAnna Fali PROPOSAL
Nicolas C CaudyGermanyAsiya Javayant PROPOSAL

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