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
Jeanfrancois F FerenczSpainAsiya Javayant NEW
Julie A BologniaBrazilIoni Bowcher PROPOSAL
David J ShinkoFranceAsiya Javayant UNQUALIFIED
Francesco T BologniaRussiaAmy Elsner NEW
Munro U WieserArgentinaXuxue Feng QUALIFIED
Francesco H InouyeFranceAsiya Javayant UNQUALIFIED
Sinclair F MaletIndiaAnna Fali UNQUALIFIED
Juan F GillianSpainIvan Magalhaes NEGOTIATION
Kaitlin Y ChuiCanadaXuxue Feng PROPOSAL
Jeanfrancois D IturbideAustraliaAmy Elsner QUALIFIED
Ricardo J StensethArgentinaIvan Magalhaes NEGOTIATION
Maisha B MacleadFranceStephen Shaw NEW
Jones H KuskoAustraliaIoni Bowcher QUALIFIED
Emily D WhobreyBrazilStephen Shaw UNQUALIFIED
Tony X PerinJapanBernardo Dominic UNQUALIFIED
Deepesh G FerenczAustraliaAnna Fali QUALIFIED
David O OldroydAustraliaXuxue Feng QUALIFIED
Izzy H WhobreyItalyXuxue Feng NEGOTIATION
Aruna B WieserBrazilIvan Magalhaes PROPOSAL
Claire R MaletCanadaAsiya Javayant NEGOTIATION
Leja B StockhamSpainAmy Elsner PROPOSAL
Murillo Z AmigonCanadaIoni Bowcher PROPOSAL
Francesco B FollerArgentinaOnyama Limba NEGOTIATION
Tony L ChuiItalyXuxue Feng NEW
Nicolas F BowleyJapanIoni Bowcher NEW
Ashley A VocelkaFranceAsiya Javayant RENEWAL
Jones A MorascaSpainAnna Fali RENEWAL
Silvio J SaylorsGermanyAmy Elsner PROPOSAL
Aika S SlusarskiCanadaElwin Sharvill QUALIFIED
Ashley Q CaldareraUnited KingdomXuxue Feng RENEWAL
Mujtaba G StensethJapanStephen Shaw RENEWAL
Kadeem S TollnerCanadaAsiya Javayant UNQUALIFIED
Munro T VocelkaItalyOnyama Limba PROPOSAL
Claire Z RutaBrazilBernardo Dominic RENEWAL
Wickens Z VenereFranceOnyama Limba RENEWAL
Emily N BowleyGermanyStephen Shaw PROPOSAL
Kadeem T InouyeUnited KingdomOnyama Limba PROPOSAL
Nicolas P GarufiUnited KingdomBernardo Dominic QUALIFIED
Deepesh K AlbaresIndiaBernardo Dominic RENEWAL
Jones D BologniaRussiaElwin Sharvill NEW
Ricardo Z AlbaresGermanyBernardo Dominic RENEWAL
Faith Q NickaAustraliaStephen Shaw UNQUALIFIED
Jeanfrancois L BologniaItalyAmy Elsner PROPOSAL
Julie Y FlosiArgentinaOnyama Limba QUALIFIED
Jones L ChuiSpainAsiya Javayant RENEWAL
Rodrigues P KolmetzArgentinaIoni Bowcher PROPOSAL
Deepesh J CaudySpainAnna Fali NEW
Arvin D ChuiUnited KingdomBernardo Dominic NEW
Jefferson E RoysterFranceAnna Fali QUALIFIED
Tony M CaudyRussiaElwin Sharvill UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Alejandro H OldroydRussiaXuxue Feng RENEWAL
David A GillianGermanyXuxue Feng NEGOTIATION
Emily O OldroydJapanElwin Sharvill RENEWAL
Misaki F FigeroaAustraliaIvan Magalhaes RENEWAL
Darci K SlusarskiIndiaAsiya Javayant UNQUALIFIED
Antonio W MaletItalyAsiya Javayant NEGOTIATION
Munro I GauchoUnited KingdomIvan Magalhaes PROPOSAL
Chavez S CaldareraArgentinaIoni Bowcher QUALIFIED
Costa J MorascaItalyBernardo Dominic NEGOTIATION
Kaitlin X OldroydUnited KingdomElwin Sharvill QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley N SlusarskiIndia2026-09-23Truhlar And Truhlar Attys RENEWAL25Asiya Javayant
1001Leja Y MaletGermany2026-10-08Commercial Press UNQUALIFIED76Xuxue Feng
1002Sinclair R PerinAustralia2026-09-23Dorl, James J Esq PROPOSAL33Asiya Javayant
1003Aika D DarakjyAustralia2026-10-01Rousseaux, Michael Esq PROPOSAL41Ivan Magalhaes
1004Aruna T MarrierIndia2026-09-20Dorl, James J Esq UNQUALIFIED96Elwin Sharvill
1005Cody Z FlosiUnited Kingdom2026-09-16Feltz Printing Service RENEWAL18Xuxue Feng
1006Arvin F CampainBrazil2026-09-13Printing Dimensions NEGOTIATION55Ioni Bowcher
1007Mayumi U SergiGermany2026-09-18Printing Dimensions NEW67Asiya Javayant
1008Isabel M GauchoCanada2026-10-04Feiner Bros QUALIFIED0Ivan Magalhaes
1009Chavez F NestleAustralia2026-09-22Feiner Bros NEGOTIATION58Onyama Limba
1010Mayumi F WhobreyCanada2026-09-24Rousseaux, Michael Esq PROPOSAL47Asiya Javayant
1011Clifford C AlbaresAustralia2026-10-08Truhlar And Truhlar Attys NEGOTIATION49Amy Elsner
1012Sinclair N WhobreyGermany2026-10-06Morlong Associates QUALIFIED25Xuxue Feng
1013Stacey D WieserAustralia2026-10-01Printing Dimensions RENEWAL35Onyama Limba
1014Greenwood Z PoquetteCanada2026-09-15Rangoni Of Florence UNQUALIFIED22Bernardo Dominic
1015Wickens G OstroskyJapan2026-09-13Chapman, Ross E Esq NEW33Anna Fali
1016Misaki X RulapaughJapan2026-10-01Benton, John B Jr UNQUALIFIED91Xuxue Feng
1017Juan G MaletIndia2026-09-24Chanay, Jeffrey A Esq RENEWAL11Elwin Sharvill
1018Munro P DilliardGermany2026-09-28Commercial Press UNQUALIFIED28Bernardo Dominic
1019Deepesh B GillianIndia2026-09-12Benton, John B Jr QUALIFIED40Bernardo Dominic
1020Isabel C CaudyJapan2026-10-07Commercial Press NEGOTIATION61Xuxue Feng
1021Emily Z StensethRussia2026-09-13Truhlar And Truhlar Attys NEW38Anna Fali
1022Kaitlin P NickaGermany2026-09-12Rangoni Of Florence RENEWAL82Xuxue Feng
1023Darci G PerinItaly2026-09-22Feltz Printing Service NEGOTIATION28Onyama Limba
1024Claire E TollnerAustralia2026-09-12Benton, John B Jr PROPOSAL96Elwin Sharvill
1025Octavia X RulapaughIndia2026-09-26Truhlar And Truhlar Attys RENEWAL10Amy Elsner
1026Octavia T ShinkoUnited Kingdom2026-09-22Benton, John B Jr QUALIFIED35Ivan Magalhaes
1027Kaitlin Q NickaRussia2026-10-04Rousseaux, Michael Esq RENEWAL63Ioni Bowcher
1028Leja L GauchoJapan2026-10-07Truhlar And Truhlar Attys PROPOSAL33Ivan Magalhaes
1029Maisha Y CampainRussia2026-09-18Commercial Press QUALIFIED66Xuxue Feng
1030Greenwood X KolmetzIndia2026-09-12Benton, John B Jr PROPOSAL89Onyama Limba
1031Rodrigues L MaletFrance2026-10-08Buckley Miller Wright QUALIFIED24Bernardo Dominic
1032Izzy K TollnerUnited Kingdom2026-09-14Chanay, Jeffrey A Esq NEGOTIATION8Anna Fali
1033Jeanfrancois B WhobreyRussia2026-09-16Buckley Miller Wright QUALIFIED21Xuxue Feng
1034Leon W PaprockiItaly2026-09-29Commercial Press NEW32Anna Fali
1035Salvatore Q DilliardBrazil2026-09-20Benton, John B Jr UNQUALIFIED51Stephen Shaw
1036Tony F KuskoBrazil2026-10-04Commercial Press NEGOTIATION26Ioni Bowcher
1037Izzy H RutaSpain2026-09-14Chapman, Ross E Esq NEGOTIATION29Stephen Shaw
1038Alejandro Q SaylorsCanada2026-09-19Rousseaux, Michael Esq NEW17Amy Elsner
1039Greenwood J CampainAustralia2026-10-01Chemel, James L Cpa RENEWAL28Ioni Bowcher
1040Jennifer F AmigonArgentina2026-09-13Chemel, James L Cpa NEW49Anna Fali
1041Ivar Z SchemmerArgentina2026-10-01Buckley Miller Wright NEW16Anna Fali
1042Juan J BriddickArgentina2026-09-14Feiner Bros PROPOSAL49Stephen Shaw
1043Maria L DilliardArgentina2026-10-09Morlong Associates RENEWAL17Stephen Shaw
1044Morrow N GauchoGermany2026-09-13Dorl, James J Esq NEW45Amy Elsner
1045Izzy S SchemmerSpain2026-09-24Chanay, Jeffrey A Esq UNQUALIFIED81Asiya Javayant
1046Ricardo D FigeroaRussia2026-09-20Chapman, Ross E Esq NEW32Elwin Sharvill
1047Tony T WhobreySpain2026-10-04Chapman, Ross E Esq QUALIFIED20Onyama Limba
1048Leja M SergiAustralia2026-09-19Buckley Miller Wright PROPOSAL78Amy Elsner
1049Wickens E GillianGermany2026-09-17Rousseaux, Michael Esq NEW34Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Maria Z SchemmerCanadaAsiya Javayant QUALIFIED
Izzy B RutaGermanyIoni Bowcher NEW
Stacey T OstroskyIndiaAnna Fali RENEWAL
Maria U CampainBrazilElwin Sharvill NEGOTIATION
Alejandro V GarufiSpainAsiya Javayant NEGOTIATION
Adams P WhobreyUnited KingdomIoni Bowcher PROPOSAL
Tony D StensethFranceXuxue Feng NEGOTIATION
James F FollerUnited KingdomAmy Elsner NEGOTIATION
Juan H MaletIndiaBernardo Dominic UNQUALIFIED
Leja O SchemmerCanadaAnna Fali NEGOTIATION
Arvin K WaycottGermanyAsiya Javayant RENEWAL
Nicolas J MorascaCanadaXuxue Feng NEGOTIATION
Salvatore V DoeUnited KingdomOnyama Limba NEGOTIATION
Jeanfrancois O MorascaSpainStephen Shaw PROPOSAL
Munro Y StockhamCanadaXuxue Feng RENEWAL
Julie L KolmetzFranceStephen Shaw UNQUALIFIED
Ashley B KolmetzFranceAmy Elsner QUALIFIED
Clifford O WhobreyCanadaStephen Shaw NEW
James S PaprockiUnited KingdomXuxue Feng UNQUALIFIED
Smith F RutaRussiaAsiya Javayant PROPOSAL
Antonio N StensethCanadaIvan Magalhaes NEGOTIATION
Jennifer K SchemmerBrazilXuxue Feng NEW
Mayumi Z KolmetzRussiaXuxue Feng UNQUALIFIED
James U PoquetteJapanIoni Bowcher NEGOTIATION
Jennifer E KolmetzArgentinaIvan Magalhaes NEGOTIATION
Jefferson X OldroydIndiaIvan Magalhaes QUALIFIED
Claire Y BriddickAustraliaAnna Fali UNQUALIFIED
Sinclair A SchemmerSpainAsiya Javayant PROPOSAL
Nicolas J FigeroaCanadaAnna Fali QUALIFIED
Leon R PerinIndiaIoni Bowcher PROPOSAL
Mujtaba U BriddickSpainAmy Elsner RENEWAL
Johnson A AmigonAustraliaBernardo Dominic NEW
Mujtaba R KuskoAustraliaIoni Bowcher RENEWAL
Nicolas Y NestleFranceElwin Sharvill NEGOTIATION
Salvatore V SaylorsJapanBernardo Dominic UNQUALIFIED
Antonio P VenereBrazilXuxue Feng UNQUALIFIED
Ivar D WhobreyItalyBernardo Dominic PROPOSAL
Salvatore L WhobreyAustraliaXuxue Feng PROPOSAL
Sinclair F DarakjyBrazilElwin Sharvill NEGOTIATION
Ashley O PerinItalyAsiya Javayant UNQUALIFIED
Leja K FigeroaItalyIoni Bowcher NEW
Kaitlin X PaprockiAustraliaAsiya Javayant PROPOSAL
Aika U ButtUnited KingdomAnna Fali NEW
Faith B RutaFranceAmy Elsner QUALIFIED
Antonio F GillianSpainOnyama Limba UNQUALIFIED
Kaitlin N DoeJapanIvan Magalhaes RENEWAL
Antonio Q SaylorsSpainOnyama Limba UNQUALIFIED
Ashley S SlusarskiJapanAmy Elsner PROPOSAL
Jefferson F BriddickCanadaElwin Sharvill QUALIFIED
Stacey C RulapaughBrazilAnna Fali QUALIFIED
Frozen Columns
Name
Maisha I Gaucho
Ricardo G Briddick
Murillo K Caldarera
Francesco G Perin
Costa T Albares
Darci Y Royster
Munro I Malet
David S Kusko
Leon O Chui
Leja M Wieser
Kadeem I Glick
Kaitlin C Ruta
Ivar F Butt
Octavia Q Marrier
Aditya O Schemmer
Salvatore G Butt
Maisha A Bowley
Adams U Iturbide
Tony Z Caldarera
Alejandro D Royster
Francesco Z Malet
Jefferson R Darakjy
Aruna C Bowley
Jones Z Glick
Aika Q Tollner
Leon F Oldroyd
Antonio D Sergi
Mayumi L Nicka
Juan P Rim
Jones P Amigon
Jefferson J Briddick
Tony P Marrier
Antonio E Waycott
Salvatore C Morasca
Maisha E Briddick
Aruna S Dilliard
Aditya G Maclead
Leon Z Ferencz
Ivar S Gaucho
Mujtaba X Sergi
Salvatore X Maclead
Faith B Glick
Cody L Glick
Aditya R Iturbide
Alejandro B Briddick
Ricardo V Albares
Leja U Nestle
Emily T Kolmetz
Cody C Butt
David E Saylors
IdCountryDate
1000India2026-09-30
1001Australia2026-10-05
1002Japan2026-09-19
1003Brazil2026-09-11
1004Japan2026-09-14
1005Brazil2026-09-16
1006France2026-10-01
1007Russia2026-10-03
1008Russia2026-09-29
1009Australia2026-09-25
1010United Kingdom2026-09-16
1011Japan2026-09-11
1012Australia2026-09-28
1013India2026-10-07
1014Spain2026-10-01
1015Argentina2026-10-06
1016Italy2026-09-28
1017Germany2026-09-27
1018Australia2026-09-15
1019United Kingdom2026-09-11
1020Canada2026-10-04
1021Canada2026-09-19
1022Spain2026-10-10
1023Italy2026-09-25
1024United Kingdom2026-09-20
1025Argentina2026-10-05
1026India2026-10-08
1027Argentina2026-10-02
1028Germany2026-09-20
1029India2026-10-04
1030Russia2026-10-02
1031Australia2026-09-22
1032India2026-09-17
1033United Kingdom2026-10-09
1034Russia2026-09-17
1035Japan2026-09-20
1036Germany2026-09-28
1037Australia2026-10-10
1038Germany2026-09-20
1039Russia2026-09-25
1040United Kingdom2026-10-02
1041Germany2026-09-18
1042Germany2026-09-22
1043United Kingdom2026-10-10
1044Japan2026-09-14
1045India2026-09-23
1046Japan2026-09-15
1047India2026-09-26
1048United Kingdom2026-09-28
1049Australia2026-09-15

On-Demand Data

NameIdCountryDate
Julie J Vocelka1000Italy2026-10-09
Octavia I Campain1001Argentina2026-10-01
Aruna Q Iturbide1002Australia2026-09-14
Arvin U Poquette1003Germany2026-09-16
Jennifer N Glick1004Russia2026-10-09
Arvin H Amigon1005Germany2026-09-22
Sinclair I Bolognia1006India2026-10-02
Murillo C Shinko1007Russia2026-09-20
Darci U Venere1008Brazil2026-09-18
Antonio J Slusarski1009France2026-09-12
Adams V Slusarski1010India2026-09-15
Silvio Q Bolognia1011Canada2026-09-12
Mayumi I Dilliard1012Italy2026-09-20
Chavez R Stenseth1013Japan2026-09-15
Octavia I Marrier1014Italy2026-09-16
Arvin T Malet1015France2026-10-01
Misaki S Iturbide1016Italy2026-09-11
Greenwood A Shinko1017Canada2026-09-17
Stacey W Bowley1018Germany2026-09-27
Arvin S Briddick1019Japan2026-10-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi P WhobreyCanadaStephen Shaw NEW
Mujtaba C OstroskyGermanyIoni Bowcher PROPOSAL
Clifford U RoysterGermanyStephen Shaw RENEWAL
Aruna V CaudyRussiaOnyama Limba UNQUALIFIED
Mujtaba L MorascaCanadaAnna Fali NEW
David B GillianSpainAnna Fali UNQUALIFIED
Adams U TollnerJapanAsiya Javayant RENEWAL
Maria C GillianArgentinaAmy Elsner QUALIFIED
Aika S AmigonAustraliaAnna Fali RENEWAL
Alejandro H MorascaJapanIoni Bowcher NEW
Aruna L RulapaughRussiaBernardo Dominic UNQUALIFIED
Costa P GauchoGermanyXuxue Feng NEW
Emily P FerenczGermanyElwin Sharvill PROPOSAL
Sinclair X AmigonSpainOnyama Limba RENEWAL
Jefferson K StensethItalyAsiya Javayant NEW
Francesco K ShinkoSpainAmy Elsner RENEWAL
Greenwood L GarufiAustraliaAmy Elsner UNQUALIFIED
Sinclair G CampainSpainAsiya Javayant UNQUALIFIED
Jones Y SchemmerUnited KingdomAsiya Javayant NEGOTIATION
Wickens P CampainCanadaAsiya Javayant NEGOTIATION
Jones Q GillianAustraliaAnna Fali RENEWAL
James X BologniaJapanIvan Magalhaes QUALIFIED
Izzy Z PerinFranceAnna Fali NEGOTIATION
Mayumi W CampainItalyElwin Sharvill NEW
Ivar I WaycottBrazilIvan Magalhaes RENEWAL
Izzy T VocelkaArgentinaAsiya Javayant UNQUALIFIED
Julie I BriddickArgentinaStephen Shaw UNQUALIFIED
Murillo P CaudyFranceAmy Elsner RENEWAL
Greenwood P BologniaRussiaBernardo Dominic QUALIFIED
Chavez J BowleyRussiaOnyama Limba RENEWAL
Nicolas P CaudyBrazilAsiya Javayant PROPOSAL
Murillo G GillianIndiaAnna Fali NEGOTIATION
Emily W CaldareraFranceBernardo Dominic UNQUALIFIED
Aditya S VocelkaUnited KingdomIvan Magalhaes PROPOSAL
Jefferson Y ChuiItalyBernardo Dominic NEW
Chavez T CaldareraGermanyIoni Bowcher RENEWAL
Mayumi J SchemmerBrazilOnyama Limba PROPOSAL
Nicolas C RoysterItalyIvan Magalhaes NEW
Alejandro O InouyeSpainAsiya Javayant QUALIFIED
Ashley G IturbideGermanyBernardo 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>