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
Kaitlin U InouyeIndiaAmy Elsner NEGOTIATION
Maisha U WaycottArgentinaXuxue Feng QUALIFIED
Jeanfrancois B PoquetteJapanStephen Shaw RENEWAL
Maisha O WhobreyItalyStephen Shaw UNQUALIFIED
Isabel Q NestleGermanyStephen Shaw PROPOSAL
Ivar L MacleadAustraliaBernardo Dominic NEW
Arvin A StensethJapanIoni Bowcher NEGOTIATION
Maria D PoquetteCanadaElwin Sharvill RENEWAL
Aruna W MaletSpainXuxue Feng RENEWAL
Leon F VenereItalyAmy Elsner NEW
Faith S FerenczArgentinaIoni Bowcher RENEWAL
Tony C StockhamJapanBernardo Dominic PROPOSAL
Faith V TollnerArgentinaXuxue Feng PROPOSAL
Deepesh J PerinAustraliaBernardo Dominic NEW
Murillo R MacleadItalyIoni Bowcher PROPOSAL
Claire O MorascaGermanyXuxue Feng NEGOTIATION
Jeanfrancois R MacleadJapanIoni Bowcher QUALIFIED
James W FerenczRussiaElwin Sharvill QUALIFIED
Arvin Y ChuiArgentinaStephen Shaw NEGOTIATION
Salvatore T RoysterCanadaAmy Elsner NEW
Ricardo X OstroskyAustraliaIvan Magalhaes RENEWAL
Aditya C FollerArgentinaOnyama Limba NEGOTIATION
Misaki F NickaItalyAsiya Javayant UNQUALIFIED
Julie H InouyeRussiaIvan Magalhaes NEGOTIATION
Tony B MaletJapanOnyama Limba QUALIFIED
Adams N FerenczGermanyAnna Fali UNQUALIFIED
Darci Z WhobreyIndiaIvan Magalhaes NEGOTIATION
Sinclair T CaudyFranceAsiya Javayant PROPOSAL
Ashley Z GarufiRussiaAsiya Javayant QUALIFIED
Smith H WhobreyArgentinaBernardo Dominic PROPOSAL
Rodrigues H GauchoGermanyXuxue Feng UNQUALIFIED
Izzy S GillianItalyOnyama Limba NEGOTIATION
Kaitlin L RutaSpainIvan Magalhaes UNQUALIFIED
Ricardo U TollnerUnited KingdomIoni Bowcher UNQUALIFIED
Octavia A KuskoUnited KingdomBernardo Dominic RENEWAL
Aruna Q NestleSpainBernardo Dominic QUALIFIED
Francesco P WhobreyRussiaElwin Sharvill QUALIFIED
Emily K ShinkoItalyAmy Elsner RENEWAL
Octavia Z GauchoJapanAsiya Javayant UNQUALIFIED
Wickens T ShinkoFranceAmy Elsner QUALIFIED
Octavia X BriddickItalyAnna Fali UNQUALIFIED
Julie W PaprockiGermanyStephen Shaw NEW
Maria G ButtBrazilStephen Shaw QUALIFIED
Jeanfrancois R NickaFranceAnna Fali UNQUALIFIED
Antonio K ButtAustraliaAnna Fali NEGOTIATION
Murillo Q ChuiRussiaAnna Fali NEW
Octavia K InouyeCanadaOnyama Limba NEW
Clifford Q MorascaBrazilOnyama Limba PROPOSAL
Leja L VocelkaCanadaStephen Shaw PROPOSAL
Adams Q DarakjyFranceAnna Fali RENEWAL
Horizontal
NameCountryRepresentativeStatus
Juan E WieserBrazilIvan Magalhaes NEGOTIATION
Emily W IturbideIndiaAsiya Javayant UNQUALIFIED
Johnson U IturbideArgentinaOnyama Limba NEW
Chavez S AlbaresRussiaAnna Fali QUALIFIED
Jones D KuskoUnited KingdomOnyama Limba QUALIFIED
Misaki K WaycottBrazilElwin Sharvill NEW
Leon R MaletCanadaElwin Sharvill RENEWAL
Faith O DoeAustraliaIoni Bowcher QUALIFIED
Silvio D IturbideAustraliaBernardo Dominic PROPOSAL
Octavia R NestleItalyXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Misaki H SlusarskiIndia2026-10-05King, Christopher A Esq NEGOTIATION83Elwin Sharvill
1001Smith T FigeroaJapan2026-10-26Buckley Miller Wright NEGOTIATION48Anna Fali
1002Adams F GarufiArgentina2026-10-16Rousseaux, Michael Esq UNQUALIFIED58Xuxue Feng
1003Sinclair E InouyeGermany2026-10-03Buckley Miller Wright PROPOSAL18Asiya Javayant
1004Faith K StockhamArgentina2026-10-04Truhlar And Truhlar Attys QUALIFIED50Elwin Sharvill
1005Francesco J GarufiUnited Kingdom2026-10-15Benton, John B Jr NEW12Ivan Magalhaes
1006Leon E CampainArgentina2026-10-22Chapman, Ross E Esq PROPOSAL19Ivan Magalhaes
1007Aika E MorascaAustralia2026-10-07Buckley Miller Wright NEGOTIATION36Xuxue Feng
1008Murillo F CampainRussia2026-10-07Chapman, Ross E Esq QUALIFIED9Ivan Magalhaes
1009Francesco W GlickRussia2026-10-29Chanay, Jeffrey A Esq NEW27Onyama Limba
1010Emily K PerinJapan2026-10-20Morlong Associates NEW32Ivan Magalhaes
1011Aika D FigeroaArgentina2026-10-12Commercial Press NEW61Anna Fali
1012David U MarrierAustralia2026-10-08Truhlar And Truhlar Attys UNQUALIFIED21Ioni Bowcher
1013Kaitlin U GarufiCanada2026-10-04Dorl, James J Esq RENEWAL34Onyama Limba
1014Deepesh L MorascaUnited Kingdom2026-10-13King, Christopher A Esq NEW64Elwin Sharvill
1015Munro S SaylorsAustralia2026-10-18Printing Dimensions NEW90Anna Fali
1016Juan X CaldareraJapan2026-10-09Rousseaux, Michael Esq PROPOSAL13Bernardo Dominic
1017Deepesh D PaprockiArgentina2026-11-01Morlong Associates QUALIFIED63Ivan Magalhaes
1018Juan F NickaGermany2026-10-04Chemel, James L Cpa NEGOTIATION54Asiya Javayant
1019Jeanfrancois U StensethJapan2026-10-31Feltz Printing Service NEGOTIATION18Anna Fali
1020Isabel V BriddickJapan2026-10-05Chanay, Jeffrey A Esq QUALIFIED99Elwin Sharvill
1021Aruna Q KuskoBrazil2026-10-16Morlong Associates RENEWAL94Stephen Shaw
1022Deepesh G MarrierFrance2026-10-21Buckley Miller Wright NEGOTIATION19Bernardo Dominic
1023Isabel S RulapaughGermany2026-10-15Dorl, James J Esq NEGOTIATION9Asiya Javayant
1024Jefferson H IturbideFrance2026-10-25Chapman, Ross E Esq NEGOTIATION74Onyama Limba
1025Claire B GauchoFrance2026-10-21Dorl, James J Esq RENEWAL8Stephen Shaw
1026Leon U FollerGermany2026-10-31Chemel, James L Cpa NEGOTIATION35Anna Fali
1027Leja C GauchoJapan2026-10-06Chapman, Ross E Esq QUALIFIED90Amy Elsner
1028Nicolas G InouyeAustralia2026-10-20Dorl, James J Esq RENEWAL56Asiya Javayant
1029Jennifer H ShinkoRussia2026-10-20Printing Dimensions NEW18Amy Elsner
1030Ricardo K OstroskyArgentina2026-10-21Buckley Miller Wright UNQUALIFIED49Amy Elsner
1031Faith T MacleadAustralia2026-10-11Dorl, James J Esq NEGOTIATION94Stephen Shaw
1032Adams F GlickUnited Kingdom2026-10-29Morlong Associates PROPOSAL50Onyama Limba
1033Jones E CaudyBrazil2026-10-31Morlong Associates UNQUALIFIED42Xuxue Feng
1034Murillo U PaprockiUnited Kingdom2026-10-15Truhlar And Truhlar Attys NEGOTIATION76Ioni Bowcher
1035Aditya N SchemmerJapan2026-10-30King, Christopher A Esq QUALIFIED77Ivan Magalhaes
1036Smith Q SchemmerBrazil2026-10-25Truhlar And Truhlar Attys NEW10Onyama Limba
1037Maria L PoquetteCanada2026-10-31Feltz Printing Service NEGOTIATION24Ivan Magalhaes
1038Leja A KolmetzSpain2026-10-22Chapman, Ross E Esq QUALIFIED37Bernardo Dominic
1039Juan U GauchoJapan2026-10-19Feltz Printing Service UNQUALIFIED55Ioni Bowcher
1040Arvin T MaletArgentina2026-10-20Chanay, Jeffrey A Esq QUALIFIED40Onyama Limba
1041Misaki O GlickIndia2026-10-25Feltz Printing Service UNQUALIFIED47Onyama Limba
1042Jones E DoeFrance2026-10-20Feiner Bros RENEWAL1Xuxue Feng
1043Juan Q InouyeSpain2026-10-04Commercial Press NEW24Ioni Bowcher
1044Wickens O InouyeUnited Kingdom2026-10-22Dorl, James J Esq RENEWAL26Ivan Magalhaes
1045Jeanfrancois E DarakjyItaly2026-10-13Dorl, James J Esq QUALIFIED46Asiya Javayant
1046Octavia E DoeItaly2026-10-04Chanay, Jeffrey A Esq PROPOSAL41Stephen Shaw
1047Silvio B VocelkaJapan2026-10-13Rousseaux, Michael Esq QUALIFIED72Anna Fali
1048Ashley A RulapaughSpain2026-10-10Rousseaux, Michael Esq QUALIFIED22Stephen Shaw
1049Emily V MacleadCanada2026-10-07Chemel, James L Cpa NEW54Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Aditya V GlickCanadaAsiya Javayant RENEWAL
Maria C NickaRussiaElwin Sharvill UNQUALIFIED
Isabel K FigeroaJapanBernardo Dominic QUALIFIED
Kaitlin J WaycottAustraliaElwin Sharvill PROPOSAL
Salvatore E RimFranceXuxue Feng NEW
Antonio B StockhamSpainAnna Fali QUALIFIED
Jennifer J StensethArgentinaAnna Fali RENEWAL
Cody G MaletBrazilAnna Fali NEGOTIATION
Maria T ButtBrazilAnna Fali NEGOTIATION
Aruna X FerenczFranceAsiya Javayant QUALIFIED
Francesco D StockhamJapanBernardo Dominic RENEWAL
Smith H PerinItalyXuxue Feng NEGOTIATION
Smith O SergiCanadaXuxue Feng NEGOTIATION
Faith Q NickaIndiaAmy Elsner NEW
Tony Y SlusarskiBrazilAnna Fali PROPOSAL
Faith M SchemmerBrazilAmy Elsner NEW
Arvin R CampainBrazilElwin Sharvill PROPOSAL
Arvin V PerinGermanyIvan Magalhaes UNQUALIFIED
David I OldroydIndiaXuxue Feng UNQUALIFIED
Wickens S WhobreyRussiaAmy Elsner RENEWAL
Francesco Z CampainRussiaElwin Sharvill NEW
Ashley P MorascaCanadaOnyama Limba RENEWAL
Greenwood T GillianGermanyOnyama Limba NEGOTIATION
Clifford R AlbaresAustraliaBernardo Dominic RENEWAL
Misaki Q TollnerFranceElwin Sharvill RENEWAL
Aika Y StensethAustraliaStephen Shaw PROPOSAL
Smith P FollerIndiaXuxue Feng NEGOTIATION
Deepesh B RoysterSpainIoni Bowcher NEW
Nicolas I FollerArgentinaOnyama Limba NEGOTIATION
Jones S SchemmerBrazilElwin Sharvill QUALIFIED
Murillo Y GlickAustraliaOnyama Limba UNQUALIFIED
Juan T StensethJapanStephen Shaw PROPOSAL
Murillo X RimFranceElwin Sharvill NEGOTIATION
Kadeem D PoquetteSpainAmy Elsner QUALIFIED
Leja N MaletUnited KingdomAnna Fali NEW
Mujtaba V PaprockiGermanyElwin Sharvill QUALIFIED
Cody Z MaletJapanAnna Fali PROPOSAL
Ricardo Q DoeItalyIvan Magalhaes PROPOSAL
Francesco Z GauchoGermanyIvan Magalhaes RENEWAL
Greenwood G WieserItalyXuxue Feng NEW
Jennifer R GauchoBrazilAnna Fali QUALIFIED
James C FerenczGermanyAnna Fali PROPOSAL
Salvatore X CaudyCanadaBernardo Dominic RENEWAL
James U SaylorsRussiaIvan Magalhaes PROPOSAL
Leon O CaudyFranceBernardo Dominic RENEWAL
Jennifer N BologniaUnited KingdomAsiya Javayant NEW
Darci C MarrierIndiaAmy Elsner PROPOSAL
Tony D OldroydUnited KingdomAmy Elsner NEW
Mujtaba K FerenczRussiaIvan Magalhaes RENEWAL
Isabel R NestleRussiaElwin Sharvill PROPOSAL
Frozen Columns
Name
Murillo N Albares
Misaki U Rulapaugh
Ricardo I Rulapaugh
Smith D Ferencz
Murillo M Malet
Sinclair L Dilliard
Wickens G Saylors
Misaki F Perin
Stacey E Kolmetz
Isabel E Darakjy
Leon T Malet
Arvin Z Shinko
Stacey K Darakjy
Nicolas V Foller
Smith E Caudy
Faith M Bowley
Jennifer T Glick
Jeanfrancois C Vocelka
Aika O Oldroyd
Salvatore C Perin
Francesco M Malet
Munro P Sergi
Jennifer Z Schemmer
Maria X Ruta
Deepesh B Darakjy
Maria L Venere
Emily L Kusko
Kadeem C Inouye
Antonio V Royster
Maisha H Malet
Chavez N Figeroa
Jefferson Q Slusarski
Silvio L Glick
Jeanfrancois M Stockham
Cody V Kolmetz
Kadeem Z Wieser
Leon J Maclead
David B Kolmetz
Aditya Y Rim
Silvio Y Vocelka
Jefferson E Darakjy
Jennifer P Tollner
Maria F Foller
Jones N Chui
James P Nestle
Wickens W Bolognia
Julie V Dilliard
Ricardo O Rulapaugh
Alejandro I Vocelka
Stacey O Morasca
IdCountryDate
1000Argentina2026-10-13
1001Italy2026-10-23
1002France2026-10-30
1003Japan2026-10-16
1004Australia2026-10-10
1005Germany2026-10-19
1006Spain2026-10-16
1007Brazil2026-10-15
1008Italy2026-10-30
1009Canada2026-10-15
1010Brazil2026-10-06
1011India2026-10-13
1012India2026-10-28
1013Germany2026-10-26
1014Russia2026-10-29
1015Argentina2026-10-12
1016Spain2026-10-23
1017Russia2026-10-12
1018Spain2026-10-06
1019United Kingdom2026-10-09
1020Argentina2026-10-13
1021Brazil2026-10-11
1022Canada2026-10-26
1023India2026-10-15
1024France2026-10-05
1025Canada2026-10-14
1026Australia2026-10-19
1027Canada2026-10-12
1028Argentina2026-10-07
1029Argentina2026-10-09
1030India2026-10-22
1031United Kingdom2026-10-20
1032France2026-10-28
1033Brazil2026-10-21
1034India2026-10-04
1035Argentina2026-10-15
1036Japan2026-10-16
1037United Kingdom2026-10-19
1038Italy2026-10-27
1039Russia2026-10-21
1040Canada2026-10-22
1041Russia2026-10-13
1042Australia2026-10-12
1043Italy2026-10-18
1044Australia2026-10-13
1045Argentina2026-10-12
1046France2026-10-21
1047Japan2026-10-14
1048Germany2026-10-18
1049Argentina2026-10-21

On-Demand Data

NameIdCountryDate
Mujtaba R Poquette1000Brazil2026-11-01
Maisha H Kolmetz1001Spain2026-10-30
Deepesh C Gaucho1002Italy2026-10-25
Munro A Perin1003France2026-10-08
Leja O Kolmetz1004Brazil2026-10-05
Isabel P Flosi1005Argentina2026-10-21
Chavez L Schemmer1006Spain2026-10-26
Kadeem U Royster1007Spain2026-10-12
Cody U Inouye1008United Kingdom2026-10-22
Deepesh X Whobrey1009United Kingdom2026-10-16
Chavez L Perin1010United Kingdom2026-10-10
Izzy L Wieser1011Argentina2026-10-20
Smith T Doe1012United Kingdom2026-10-28
Rodrigues G Nicka1013Australia2026-10-04
Faith N Kusko1014Germany2026-10-13
Aruna A Glick1015Italy2026-10-16
Jones C Schemmer1016Brazil2026-10-24
Aika T Flosi1017France2026-10-21
Francesco Y Flosi1018Brazil2026-10-13
Julie X Bowley1019Australia2026-10-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mayumi D CaldareraBrazilXuxue Feng RENEWAL
Tony A ButtAustraliaIoni Bowcher NEGOTIATION
Aika L MaletCanadaAsiya Javayant QUALIFIED
Arvin R BologniaFranceIoni Bowcher PROPOSAL
Tony B DilliardSpainBernardo Dominic UNQUALIFIED
Alejandro Z MaletRussiaIvan Magalhaes NEGOTIATION
Aika Q DoeArgentinaElwin Sharvill QUALIFIED
Darci I RimArgentinaXuxue Feng NEW
Kaitlin G WieserBrazilIvan Magalhaes QUALIFIED
Rodrigues S GarufiRussiaAnna Fali PROPOSAL
Rodrigues U WieserGermanyAsiya Javayant UNQUALIFIED
Stacey T AlbaresAustraliaAsiya Javayant QUALIFIED
Julie Q TollnerGermanyAsiya Javayant UNQUALIFIED
Faith K PoquetteAustraliaElwin Sharvill NEW
Emily Z IturbideItalyElwin Sharvill UNQUALIFIED
Silvio O CampainIndiaXuxue Feng RENEWAL
Misaki R AmigonAustraliaElwin Sharvill QUALIFIED
Faith N TollnerCanadaAnna Fali UNQUALIFIED
Cody F StockhamCanadaOnyama Limba PROPOSAL
Wickens J FlosiFranceOnyama Limba UNQUALIFIED
Silvio V ChuiSpainIoni Bowcher UNQUALIFIED
Mayumi A FerenczFranceIvan Magalhaes RENEWAL
David M OldroydFranceOnyama Limba RENEWAL
Aditya U RutaRussiaIvan Magalhaes NEGOTIATION
Aika V VocelkaArgentinaStephen Shaw PROPOSAL
Silvio U CampainArgentinaIvan Magalhaes QUALIFIED
Jennifer U WieserGermanyXuxue Feng QUALIFIED
Ashley M RoysterCanadaBernardo Dominic QUALIFIED
Adams K ButtJapanAmy Elsner NEW
Juan Y PerinCanadaOnyama Limba QUALIFIED
Juan T DilliardItalyIoni Bowcher PROPOSAL
Maria H ShinkoArgentinaElwin Sharvill RENEWAL
Arvin Z WaycottGermanyAsiya Javayant UNQUALIFIED
Francesco X ShinkoFranceBernardo Dominic RENEWAL
Ricardo E OstroskyIndiaXuxue Feng QUALIFIED
Kadeem J MaletRussiaIoni Bowcher QUALIFIED
Jefferson J WieserFranceAsiya Javayant RENEWAL
Maisha M MorascaJapanAnna Fali QUALIFIED
Rodrigues M SergiFranceXuxue Feng NEW
Maisha I NestleRussiaIoni Bowcher 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>