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
Jennifer A BowleyAustraliaXuxue Feng QUALIFIED
Clifford F StockhamArgentinaAmy Elsner PROPOSAL
Ricardo I MacleadFranceAmy Elsner NEW
Aruna B IturbideFranceOnyama Limba NEW
Silvio D MaletItalyIvan Magalhaes PROPOSAL
Cody V BriddickCanadaIoni Bowcher RENEWAL
Greenwood S DilliardUnited KingdomAnna Fali UNQUALIFIED
Sinclair J SlusarskiFranceIoni Bowcher RENEWAL
Tony R AmigonCanadaElwin Sharvill UNQUALIFIED
Nicolas W SlusarskiGermanyElwin Sharvill PROPOSAL
Nicolas T MarrierCanadaElwin Sharvill QUALIFIED
Kadeem B RutaCanadaIvan Magalhaes NEGOTIATION
Silvio T NestleIndiaOnyama Limba QUALIFIED
Izzy U CampainUnited KingdomAnna Fali QUALIFIED
Sinclair Z FerenczIndiaAsiya Javayant NEW
Tony E FollerGermanyIoni Bowcher RENEWAL
Jeanfrancois Q DarakjyArgentinaIvan Magalhaes RENEWAL
Ivar L CaudyIndiaStephen Shaw RENEWAL
Claire F DoeAustraliaXuxue Feng NEGOTIATION
Alejandro J MacleadUnited KingdomAsiya Javayant UNQUALIFIED
Adams K TollnerFranceIvan Magalhaes NEGOTIATION
James T DarakjyAustraliaOnyama Limba UNQUALIFIED
Aditya K AlbaresUnited KingdomElwin Sharvill NEW
Costa D DarakjyFranceIvan Magalhaes QUALIFIED
Morrow G WhobreyArgentinaIoni Bowcher UNQUALIFIED
Jennifer W FerenczBrazilElwin Sharvill UNQUALIFIED
Stacey X PerinCanadaBernardo Dominic QUALIFIED
Jones P WhobreyItalyAsiya Javayant RENEWAL
Mayumi J BowleyArgentinaAsiya Javayant PROPOSAL
James D AmigonUnited KingdomBernardo Dominic PROPOSAL
Kadeem O WieserFranceAnna Fali NEW
Tony H AmigonJapanStephen Shaw PROPOSAL
David R DoeArgentinaOnyama Limba QUALIFIED
Isabel R AmigonArgentinaIvan Magalhaes QUALIFIED
Wickens R WieserFranceAnna Fali RENEWAL
Nicolas C VenereFranceAnna Fali NEW
Juan N FigeroaGermanyXuxue Feng UNQUALIFIED
Octavia W FigeroaSpainXuxue Feng UNQUALIFIED
Jones P WhobreyArgentinaAsiya Javayant RENEWAL
Maria A PerinGermanyBernardo Dominic NEGOTIATION
Murillo U CaudyFranceElwin Sharvill PROPOSAL
Jeanfrancois X DilliardSpainIoni Bowcher UNQUALIFIED
Johnson I RoysterCanadaAsiya Javayant NEW
Tony Q DarakjyJapanBernardo Dominic NEW
Stacey E WieserUnited KingdomIoni Bowcher UNQUALIFIED
Mayumi D SaylorsIndiaAnna Fali PROPOSAL
Maisha M KuskoCanadaIvan Magalhaes QUALIFIED
Maisha E OstroskyFranceIoni Bowcher QUALIFIED
Tony U AmigonUnited KingdomBernardo Dominic NEGOTIATION
Octavia U NickaItalyXuxue Feng RENEWAL
Horizontal
NameCountryRepresentativeStatus
Adams K MorascaCanadaAmy Elsner PROPOSAL
Greenwood Y IturbideIndiaXuxue Feng QUALIFIED
Arvin S BologniaFranceAmy Elsner UNQUALIFIED
Mujtaba U RutaGermanyAmy Elsner PROPOSAL
David X FlosiItalyOnyama Limba NEGOTIATION
Silvio V ShinkoJapanOnyama Limba PROPOSAL
Kaitlin V NickaArgentinaBernardo Dominic NEGOTIATION
Julie S VocelkaRussiaBernardo Dominic RENEWAL
Cody T MarrierBrazilAmy Elsner NEW
Arvin D PoquetteSpainAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Claire T PerinBrazil2026-09-01King, Christopher A Esq UNQUALIFIED69Asiya Javayant
1001Leon S WieserSpain2026-09-19Printing Dimensions NEW22Xuxue Feng
1002Octavia K SergiBrazil2026-09-29King, Christopher A Esq UNQUALIFIED79Asiya Javayant
1003Cody K WhobreyGermany2026-09-01Rousseaux, Michael Esq NEGOTIATION43Amy Elsner
1004Mayumi V MarrierIndia2026-09-27Buckley Miller Wright QUALIFIED80Asiya Javayant
1005Greenwood S RimBrazil2026-09-20Buckley Miller Wright UNQUALIFIED12Xuxue Feng
1006Nicolas R DarakjyRussia2026-09-18Truhlar And Truhlar Attys NEW47Amy Elsner
1007Tony R MacleadBrazil2026-09-13Chemel, James L Cpa RENEWAL85Bernardo Dominic
1008Octavia A WieserUnited Kingdom2026-09-18Morlong Associates UNQUALIFIED92Bernardo Dominic
1009David G DarakjyAustralia2026-09-21Morlong Associates RENEWAL75Elwin Sharvill
1010Wickens A KolmetzItaly2026-09-14Commercial Press UNQUALIFIED89Ivan Magalhaes
1011Ashley J ButtGermany2026-09-06Chemel, James L Cpa PROPOSAL13Onyama Limba
1012Mujtaba B WhobreyUnited Kingdom2026-09-12Printing Dimensions NEGOTIATION27Elwin Sharvill
1013Murillo R NickaSpain2026-09-21Buckley Miller Wright QUALIFIED64Bernardo Dominic
1014Misaki S RulapaughGermany2026-09-26Morlong Associates QUALIFIED51Stephen Shaw
1015Ricardo Q ButtFrance2026-09-10Morlong Associates NEW3Elwin Sharvill
1016Ricardo P StensethRussia2026-09-06Dorl, James J Esq NEW58Bernardo Dominic
1017Jones N DilliardIndia2026-09-30Feltz Printing Service PROPOSAL19Amy Elsner
1018Faith E RutaItaly2026-09-26Morlong Associates NEGOTIATION23Amy Elsner
1019David C OldroydAustralia2026-09-19Rangoni Of Florence PROPOSAL42Amy Elsner
1020Ricardo B FlosiUnited Kingdom2026-09-14Truhlar And Truhlar Attys NEW38Asiya Javayant
1021Wickens D NestleCanada2026-09-29Commercial Press NEGOTIATION59Asiya Javayant
1022James W CampainCanada2026-09-11Feltz Printing Service UNQUALIFIED72Ivan Magalhaes
1023Morrow R PerinBrazil2026-09-25King, Christopher A Esq RENEWAL48Ivan Magalhaes
1024Wickens J WaycottUnited Kingdom2026-09-19Truhlar And Truhlar Attys NEGOTIATION75Ioni Bowcher
1025Jennifer B GlickUnited Kingdom2026-09-03Rangoni Of Florence NEW73Ioni Bowcher
1026Maria Z MarrierArgentina2026-09-16Chanay, Jeffrey A Esq NEW66Bernardo Dominic
1027Francesco T TollnerAustralia2026-09-06Benton, John B Jr NEGOTIATION24Anna Fali
1028Maria Y GauchoAustralia2026-09-18Commercial Press NEGOTIATION43Ivan Magalhaes
1029Alejandro H RimAustralia2026-09-21King, Christopher A Esq NEGOTIATION17Xuxue Feng
1030Munro H KolmetzItaly2026-09-20Rangoni Of Florence QUALIFIED70Asiya Javayant
1031Jeanfrancois I RoysterIndia2026-09-18Rousseaux, Michael Esq RENEWAL91Ivan Magalhaes
1032Kaitlin V GlickFrance2026-09-25Commercial Press NEGOTIATION50Elwin Sharvill
1033Aditya O FerenczJapan2026-09-23Feiner Bros NEW76Anna Fali
1034Deepesh N RutaItaly2026-09-08Feiner Bros RENEWAL73Anna Fali
1035Clifford D KuskoAustralia2026-09-13Rousseaux, Michael Esq RENEWAL87Stephen Shaw
1036Julie L SaylorsArgentina2026-09-17King, Christopher A Esq RENEWAL26Elwin Sharvill
1037Jefferson I RoysterGermany2026-09-07Rousseaux, Michael Esq NEGOTIATION25Anna Fali
1038Francesco I IturbideUnited Kingdom2026-09-21Chemel, James L Cpa QUALIFIED13Anna Fali
1039Aika U SergiItaly2026-09-01Chanay, Jeffrey A Esq QUALIFIED0Ioni Bowcher
1040Octavia E CampainJapan2026-09-01Morlong Associates PROPOSAL46Xuxue Feng
1041Jeanfrancois M MaletGermany2026-09-03Feiner Bros PROPOSAL95Bernardo Dominic
1042Ricardo F WaycottSpain2026-09-22Chanay, Jeffrey A Esq NEW4Stephen Shaw
1043Maria X OstroskyBrazil2026-09-13Benton, John B Jr NEW67Asiya Javayant
1044Kadeem S RoysterJapan2026-09-25Chanay, Jeffrey A Esq UNQUALIFIED72Amy Elsner
1045Alejandro L ChuiAustralia2026-09-05Rousseaux, Michael Esq UNQUALIFIED17Onyama Limba
1046Nicolas X ButtAustralia2026-09-07Dorl, James J Esq RENEWAL9Amy Elsner
1047Cody X FlosiSpain2026-09-16Chapman, Ross E Esq RENEWAL50Stephen Shaw
1048Salvatore B FigeroaBrazil2026-09-02Commercial Press UNQUALIFIED72Ioni Bowcher
1049Morrow J MaletUnited Kingdom2026-09-05Chapman, Ross E Esq PROPOSAL76Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
Munro L SlusarskiIndiaBernardo Dominic NEGOTIATION
Adams I RoysterSpainAmy Elsner NEGOTIATION
Salvatore X ButtGermanyElwin Sharvill RENEWAL
Stacey K InouyeGermanyBernardo Dominic NEW
Ashley Y DilliardItalyOnyama Limba RENEWAL
Octavia L OldroydUnited KingdomOnyama Limba NEW
Aika A SchemmerJapanOnyama Limba QUALIFIED
Arvin S WieserFranceBernardo Dominic NEW
Maria P OldroydBrazilBernardo Dominic QUALIFIED
Tony E PoquetteSpainOnyama Limba NEW
Alejandro J BologniaJapanXuxue Feng UNQUALIFIED
Jefferson D MaletFranceAmy Elsner UNQUALIFIED
Antonio Y GarufiItalyAsiya Javayant UNQUALIFIED
Smith U SaylorsItalyXuxue Feng QUALIFIED
Murillo W GillianFranceStephen Shaw UNQUALIFIED
Izzy Q MorascaRussiaIoni Bowcher NEW
Murillo D SergiCanadaOnyama Limba NEGOTIATION
Aruna D ButtUnited KingdomAnna Fali NEGOTIATION
Mayumi E MacleadAustraliaOnyama Limba RENEWAL
Kadeem I BowleyFranceIoni Bowcher PROPOSAL
Aika E VenereRussiaElwin Sharvill RENEWAL
Morrow T VocelkaIndiaAmy Elsner NEGOTIATION
Octavia G DarakjyRussiaElwin Sharvill QUALIFIED
Faith D KolmetzSpainIoni Bowcher QUALIFIED
Juan D StockhamItalyIvan Magalhaes NEGOTIATION
Ashley S NestleGermanyAsiya Javayant PROPOSAL
Aditya P ChuiFranceAmy Elsner NEGOTIATION
Maria I CaldareraFranceOnyama Limba QUALIFIED
Aika J InouyeAustraliaBernardo Dominic NEW
Alejandro L ChuiUnited KingdomElwin Sharvill QUALIFIED
Arvin M TollnerBrazilStephen Shaw NEGOTIATION
Salvatore Q BologniaAustraliaAmy Elsner RENEWAL
Aruna D NickaBrazilXuxue Feng NEGOTIATION
Mayumi P OstroskyFranceAmy Elsner PROPOSAL
Morrow G RutaSpainOnyama Limba NEGOTIATION
Aruna J FigeroaItalyBernardo Dominic NEGOTIATION
Arvin A KuskoArgentinaElwin Sharvill UNQUALIFIED
Clifford E OldroydRussiaAnna Fali NEGOTIATION
Munro T IturbideBrazilAsiya Javayant NEGOTIATION
Aruna D VocelkaBrazilElwin Sharvill NEGOTIATION
Silvio W PaprockiJapanStephen Shaw RENEWAL
Antonio Z RimUnited KingdomIvan Magalhaes NEW
Munro B ShinkoUnited KingdomOnyama Limba UNQUALIFIED
Costa K BriddickRussiaAmy Elsner NEGOTIATION
Costa N CaldareraAustraliaIvan Magalhaes NEGOTIATION
Smith S GarufiFranceAsiya Javayant NEW
Alejandro S DoeItalyOnyama Limba UNQUALIFIED
Costa N GillianFranceXuxue Feng NEW
Misaki U ShinkoAustraliaIvan Magalhaes NEGOTIATION
Aruna A MaletBrazilXuxue Feng PROPOSAL
Frozen Columns
Name
Mujtaba Q Shinko
Murillo K Waycott
Deepesh N Gaucho
Salvatore H Sergi
Claire M Bolognia
Mujtaba G Royster
Ricardo S Wieser
Kaitlin F Glick
Jefferson V Doe
Stacey W Saylors
Jennifer O Glick
Jones V Nicka
Kaitlin S Briddick
Deepesh Q Ferencz
Arvin M Poquette
Chavez A Nicka
Aditya K Briddick
Julie B Foller
Silvio E Inouye
Mayumi U Ferencz
Aditya A Briddick
Mujtaba O Marrier
Darci C Bowley
Jennifer A Waycott
James Q Whobrey
Johnson A Darakjy
Ivar J Vocelka
Munro W Stenseth
Ricardo M Sergi
Cody M Waycott
Izzy E Waycott
Greenwood J Schemmer
Johnson Y Chui
Rodrigues C Bowley
Leja T Campain
Mujtaba Y Slusarski
Leon R Shinko
Aruna L Royster
Aditya J Poquette
Smith R Glick
Salvatore E Slusarski
Sinclair S Caldarera
Costa K Waycott
Leja W Rim
Francesco P Nestle
Faith F Flosi
Jennifer C Waycott
Sinclair Y Oldroyd
Emily Q Oldroyd
Ivar F Oldroyd
IdCountryDate
1000Australia2026-09-04
1001Australia2026-09-10
1002Spain2026-09-15
1003Brazil2026-09-27
1004Argentina2026-09-11
1005India2026-09-11
1006Brazil2026-09-20
1007Japan2026-09-29
1008Italy2026-09-01
1009Australia2026-09-24
1010Russia2026-09-16
1011Spain2026-09-29
1012Spain2026-09-26
1013Italy2026-09-21
1014Spain2026-09-24
1015Italy2026-09-19
1016France2026-09-29
1017Spain2026-09-13
1018Argentina2026-09-22
1019Brazil2026-09-11
1020Argentina2026-09-06
1021France2026-09-21
1022Japan2026-09-27
1023United Kingdom2026-09-01
1024Argentina2026-09-28
1025Italy2026-09-02
1026Argentina2026-09-13
1027Germany2026-09-04
1028Germany2026-09-16
1029Japan2026-09-04
1030Brazil2026-09-15
1031Australia2026-09-27
1032Spain2026-09-14
1033Italy2026-09-28
1034United Kingdom2026-09-03
1035Canada2026-09-06
1036India2026-09-03
1037Russia2026-09-30
1038Argentina2026-09-17
1039United Kingdom2026-09-15
1040Italy2026-09-01
1041Australia2026-09-27
1042Brazil2026-09-26
1043Spain2026-09-22
1044United Kingdom2026-09-07
1045France2026-09-03
1046Italy2026-09-20
1047Australia2026-09-02
1048United Kingdom2026-09-01
1049Russia2026-09-30

On-Demand Data

NameIdCountryDate
Claire B Albares1000United Kingdom2026-09-13
Tony D Nicka1001Argentina2026-09-02
Munro R Malet1002Italy2026-09-15
Mayumi G Campain1003Canada2026-09-20
Morrow Q Garufi1004France2026-09-30
Jefferson I Gillian1005Russia2026-09-21
Alejandro Y Foller1006Russia2026-09-23
Jefferson H Gillian1007Japan2026-09-18
Aditya J Whobrey1008France2026-09-29
Cody Z Marrier1009Russia2026-09-29
Julie L Amigon1010Australia2026-09-03
Morrow A Caudy1011India2026-09-12
Leja W Glick1012Australia2026-09-04
Nicolas M Rim1013Brazil2026-09-27
Leja O Bowley1014Australia2026-09-14
Tony R Wieser1015Australia2026-09-08
Sinclair M Royster1016Brazil2026-09-27
Adams M Venere1017Australia2026-09-15
Kadeem A Shinko1018Japan2026-09-25
Wickens X Morasca1019Canada2026-09-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Cody Y SaylorsArgentinaStephen Shaw NEW
Stacey Q MaletBrazilElwin Sharvill NEW
Munro I MaletItalyAsiya Javayant UNQUALIFIED
Adams A FerenczUnited KingdomIvan Magalhaes QUALIFIED
Maria F SergiCanadaIoni Bowcher RENEWAL
Jeanfrancois O NickaRussiaAsiya Javayant UNQUALIFIED
Mujtaba E StensethSpainAsiya Javayant RENEWAL
Darci X ButtAustraliaStephen Shaw PROPOSAL
Jeanfrancois G GarufiSpainAnna Fali QUALIFIED
Leon H AlbaresCanadaStephen Shaw NEW
Nicolas M SchemmerAustraliaAsiya Javayant UNQUALIFIED
Octavia D MarrierRussiaAnna Fali UNQUALIFIED
Octavia N FollerGermanyBernardo Dominic NEW
Antonio Q MorascaItalyIoni Bowcher NEW
Morrow P NestleJapanStephen Shaw UNQUALIFIED
Leja P MacleadItalyStephen Shaw NEGOTIATION
Antonio F KuskoCanadaStephen Shaw NEW
Aika U FlosiGermanyIvan Magalhaes RENEWAL
Jennifer U PoquetteJapanIoni Bowcher QUALIFIED
Ashley D DoeIndiaAsiya Javayant QUALIFIED
Claire E VenereItalyIvan Magalhaes RENEWAL
Greenwood I PerinUnited KingdomAmy Elsner UNQUALIFIED
Silvio C ChuiArgentinaOnyama Limba NEW
Murillo O GillianIndiaIoni Bowcher NEW
Ashley F ShinkoAustraliaBernardo Dominic NEW
Silvio V FlosiUnited KingdomStephen Shaw QUALIFIED
Adams S DilliardArgentinaElwin Sharvill UNQUALIFIED
Adams Y SchemmerUnited KingdomAsiya Javayant UNQUALIFIED
Aika P BriddickAustraliaIoni Bowcher NEW
Octavia T StockhamBrazilIoni Bowcher NEW
Octavia G RulapaughBrazilOnyama Limba RENEWAL
Claire T AlbaresBrazilAsiya Javayant UNQUALIFIED
Leja N SergiFranceXuxue Feng PROPOSAL
David I PaprockiUnited KingdomOnyama Limba RENEWAL
Deepesh N WhobreyBrazilIvan Magalhaes QUALIFIED
Silvio O FlosiFranceElwin Sharvill QUALIFIED
Nicolas C AlbaresJapanIoni Bowcher NEGOTIATION
Kadeem Z FigeroaItalyXuxue Feng NEGOTIATION
Octavia D RutaJapanIoni Bowcher QUALIFIED
Kadeem D MaletSpainBernardo Dominic 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>