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 X InouyeGermanyAmy Elsner NEW
Nicolas G RoysterUnited KingdomBernardo Dominic RENEWAL
Costa V SaylorsCanadaAmy Elsner RENEWAL
Jennifer Y VenereRussiaStephen Shaw NEGOTIATION
Faith X VenereFranceAnna Fali PROPOSAL
Greenwood R SergiBrazilXuxue Feng NEW
Aruna M GlickRussiaIoni Bowcher NEW
Salvatore M SaylorsAustraliaOnyama Limba NEW
Arvin S StockhamCanadaAsiya Javayant PROPOSAL
Juan Z DoeRussiaIvan Magalhaes RENEWAL
Darci Z MarrierRussiaBernardo Dominic RENEWAL
Mujtaba Y PoquetteIndiaElwin Sharvill RENEWAL
Antonio K ShinkoSpainElwin Sharvill PROPOSAL
David K ButtRussiaOnyama Limba NEW
Jefferson D SaylorsRussiaOnyama Limba PROPOSAL
David B SergiCanadaAmy Elsner PROPOSAL
Jeanfrancois V VenereArgentinaBernardo Dominic NEGOTIATION
Clifford A IturbideSpainIvan Magalhaes UNQUALIFIED
Emily W DilliardCanadaBernardo Dominic UNQUALIFIED
Kadeem R RoysterItalyAmy Elsner RENEWAL
Francesco L PoquetteItalyOnyama Limba NEGOTIATION
Emily J MarrierIndiaBernardo Dominic NEGOTIATION
Mayumi Z RoysterGermanyIvan Magalhaes PROPOSAL
Jones D WhobreyAustraliaStephen Shaw NEGOTIATION
Greenwood X FollerFranceAsiya Javayant RENEWAL
Clifford R RulapaughCanadaElwin Sharvill QUALIFIED
Octavia N VocelkaBrazilAsiya Javayant UNQUALIFIED
Octavia R MaletSpainElwin Sharvill QUALIFIED
Darci F WieserUnited KingdomElwin Sharvill RENEWAL
Izzy D NestleGermanyBernardo Dominic NEGOTIATION
Francesco C ButtSpainBernardo Dominic UNQUALIFIED
Faith U FerenczGermanyElwin Sharvill NEW
Clifford X ShinkoRussiaAnna Fali QUALIFIED
Emily E SchemmerJapanAnna Fali PROPOSAL
Ricardo X StensethJapanIoni Bowcher PROPOSAL
Jefferson V ButtCanadaXuxue Feng NEW
Munro P AmigonGermanyIoni Bowcher PROPOSAL
Juan H FerenczCanadaElwin Sharvill PROPOSAL
Jones N GillianIndiaOnyama Limba NEW
Chavez F WaycottItalyAsiya Javayant NEGOTIATION
Mujtaba Y FigeroaJapanIoni Bowcher QUALIFIED
Jennifer C DarakjyJapanIvan Magalhaes RENEWAL
Mujtaba K OstroskySpainIoni Bowcher UNQUALIFIED
Wickens P PaprockiSpainAnna Fali NEGOTIATION
Darci X InouyeBrazilIvan Magalhaes NEW
Kaitlin W PoquetteItalyAmy Elsner PROPOSAL
Sinclair P PoquetteRussiaBernardo Dominic NEW
Darci V OldroydCanadaAmy Elsner UNQUALIFIED
Jefferson M OstroskyAustraliaElwin Sharvill NEGOTIATION
Stacey X DilliardArgentinaAmy Elsner NEW
Horizontal
NameCountryRepresentativeStatus
Aika G RoysterRussiaElwin Sharvill QUALIFIED
Mayumi G MarrierUnited KingdomXuxue Feng PROPOSAL
Darci H StockhamJapanIvan Magalhaes NEW
Sinclair D PoquetteIndiaOnyama Limba NEGOTIATION
Jennifer D AlbaresSpainAsiya Javayant NEGOTIATION
Maisha X RimItalyAnna Fali UNQUALIFIED
Tony K GarufiSpainAsiya Javayant PROPOSAL
Mayumi M DilliardFranceAnna Fali QUALIFIED
Johnson J FollerAustraliaElwin Sharvill QUALIFIED
Ashley R DarakjyFranceOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Tony C PoquetteCanada2026-09-06Rangoni Of Florence NEGOTIATION46Elwin Sharvill
1001Juan A AlbaresItaly2026-09-24Feltz Printing Service NEW92Elwin Sharvill
1002Rodrigues P ChuiFrance2026-08-28Printing Dimensions QUALIFIED23Stephen Shaw
1003Aditya H KuskoJapan2026-09-05Rousseaux, Michael Esq PROPOSAL20Ioni Bowcher
1004Leja V GillianGermany2026-09-14Commercial Press QUALIFIED98Anna Fali
1005Mayumi U ChuiAustralia2026-09-04Dorl, James J Esq PROPOSAL22Xuxue Feng
1006Rodrigues L PoquetteBrazil2026-09-03Chemel, James L Cpa PROPOSAL58Elwin Sharvill
1007Emily C GlickRussia2026-09-18Chanay, Jeffrey A Esq NEW66Anna Fali
1008Maria G WhobreySpain2026-09-22Rangoni Of Florence RENEWAL26Bernardo Dominic
1009Claire G MaletGermany2026-08-27Chanay, Jeffrey A Esq QUALIFIED61Amy Elsner
1010Jefferson C TollnerUnited Kingdom2026-09-05Morlong Associates PROPOSAL72Amy Elsner
1011Chavez Q RutaAustralia2026-09-13King, Christopher A Esq RENEWAL44Amy Elsner
1012Clifford M TollnerSpain2026-09-14Chanay, Jeffrey A Esq NEW93Ioni Bowcher
1013Ricardo V InouyeArgentina2026-09-05Benton, John B Jr UNQUALIFIED69Asiya Javayant
1014Greenwood C TollnerIndia2026-09-16Printing Dimensions NEW68Xuxue Feng
1015Kadeem Y RulapaughSpain2026-09-07Morlong Associates PROPOSAL98Xuxue Feng
1016Ivar P InouyeRussia2026-09-12Feltz Printing Service NEW82Amy Elsner
1017Maria D PoquetteCanada2026-09-21Morlong Associates QUALIFIED62Elwin Sharvill
1018Chavez X NestleSpain2026-08-27Dorl, James J Esq RENEWAL83Ioni Bowcher
1019Nicolas Z PaprockiRussia2026-09-13Feltz Printing Service QUALIFIED32Ioni Bowcher
1020Aditya H FollerUnited Kingdom2026-09-17Truhlar And Truhlar Attys NEW14Xuxue Feng
1021Tony L NickaItaly2026-09-11Feltz Printing Service RENEWAL49Asiya Javayant
1022Morrow C TollnerItaly2026-09-06Printing Dimensions NEGOTIATION13Amy Elsner
1023Faith W BowleyAustralia2026-09-01Rangoni Of Florence PROPOSAL10Anna Fali
1024Silvio F ButtArgentina2026-09-18Feiner Bros NEW33Ioni Bowcher
1025James O ChuiBrazil2026-09-16Feiner Bros RENEWAL86Ivan Magalhaes
1026Cody Z CaudyBrazil2026-09-13Dorl, James J Esq NEW22Onyama Limba
1027Darci G FerenczFrance2026-09-24Chanay, Jeffrey A Esq QUALIFIED28Elwin Sharvill
1028Claire I SchemmerRussia2026-08-31Buckley Miller Wright PROPOSAL3Ivan Magalhaes
1029Cody Q OldroydRussia2026-09-05Benton, John B Jr QUALIFIED33Xuxue Feng
1030Claire G InouyeSpain2026-09-06Morlong Associates NEGOTIATION60Bernardo Dominic
1031Silvio C AlbaresAustralia2026-09-11Rangoni Of Florence UNQUALIFIED9Onyama Limba
1032Jones W OstroskyUnited Kingdom2026-09-09Printing Dimensions QUALIFIED69Amy Elsner
1033Murillo P FigeroaArgentina2026-09-04Printing Dimensions UNQUALIFIED27Elwin Sharvill
1034Jeanfrancois I PoquetteFrance2026-09-10Chemel, James L Cpa UNQUALIFIED24Anna Fali
1035Tony M ChuiBrazil2026-09-04Morlong Associates QUALIFIED40Asiya Javayant
1036Stacey W MorascaBrazil2026-09-01Rangoni Of Florence QUALIFIED62Ivan Magalhaes
1037Tony M GillianUnited Kingdom2026-09-24Feiner Bros PROPOSAL9Elwin Sharvill
1038James K VenereUnited Kingdom2026-09-22Dorl, James J Esq UNQUALIFIED90Ivan Magalhaes
1039Munro Z ButtFrance2026-09-20King, Christopher A Esq QUALIFIED39Ivan Magalhaes
1040Jeanfrancois F NickaUnited Kingdom2026-09-17Printing Dimensions NEGOTIATION28Stephen Shaw
1041David G SaylorsUnited Kingdom2026-08-31Benton, John B Jr NEGOTIATION55Ivan Magalhaes
1042Salvatore F PoquetteCanada2026-09-01Feltz Printing Service NEGOTIATION58Ivan Magalhaes
1043Jefferson P SchemmerGermany2026-09-11Feltz Printing Service PROPOSAL31Elwin Sharvill
1044Darci P AlbaresBrazil2026-09-13Truhlar And Truhlar Attys NEGOTIATION80Bernardo Dominic
1045Maria Q IturbideItaly2026-09-24Chapman, Ross E Esq RENEWAL86Amy Elsner
1046Kaitlin F VenereSpain2026-09-24Rousseaux, Michael Esq NEW23Stephen Shaw
1047Alejandro R WhobreyRussia2026-09-04Chapman, Ross E Esq NEW11Elwin Sharvill
1048Mujtaba H SlusarskiItaly2026-09-18Morlong Associates PROPOSAL99Stephen Shaw
1049Claire V NestleSpain2026-08-26Buckley Miller Wright RENEWAL15Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Greenwood G OstroskyRussiaAsiya Javayant NEGOTIATION
Costa Z FigeroaRussiaBernardo Dominic NEGOTIATION
Ivar L MarrierCanadaElwin Sharvill NEGOTIATION
David C NickaBrazilElwin Sharvill QUALIFIED
Juan B StensethAustraliaAsiya Javayant QUALIFIED
Murillo Y AlbaresCanadaAsiya Javayant RENEWAL
Faith K MaletFranceBernardo Dominic RENEWAL
Darci C FollerUnited KingdomIvan Magalhaes UNQUALIFIED
Adams Q InouyeAustraliaAmy Elsner NEW
Deepesh N ButtBrazilBernardo Dominic RENEWAL
Cody C SaylorsCanadaBernardo Dominic PROPOSAL
Juan H GlickRussiaElwin Sharvill NEW
Faith I NestleCanadaAmy Elsner RENEWAL
Aditya W CaldareraCanadaXuxue Feng RENEWAL
Silvio H InouyeBrazilIvan Magalhaes QUALIFIED
Misaki V SergiUnited KingdomAnna Fali NEGOTIATION
Murillo P PerinAustraliaIvan Magalhaes QUALIFIED
James Z FollerFranceAnna Fali PROPOSAL
Deepesh D CaudyItalyIoni Bowcher QUALIFIED
Sinclair L MarrierArgentinaOnyama Limba QUALIFIED
Clifford O IturbideGermanyIoni Bowcher QUALIFIED
Maisha F RoysterAustraliaIoni Bowcher RENEWAL
Murillo H StockhamCanadaIoni Bowcher QUALIFIED
Leja G SchemmerIndiaXuxue Feng NEGOTIATION
Maisha C RimBrazilAsiya Javayant PROPOSAL
Aika I WaycottGermanyBernardo Dominic NEW
Greenwood Q PoquetteCanadaBernardo Dominic QUALIFIED
Francesco P KolmetzFranceIvan Magalhaes NEW
Silvio D DilliardAustraliaAsiya Javayant UNQUALIFIED
Jones D CampainAustraliaStephen Shaw NEW
Alejandro L WhobreySpainOnyama Limba QUALIFIED
David U ChuiUnited KingdomElwin Sharvill UNQUALIFIED
Leon P BologniaItalyAnna Fali RENEWAL
Stacey E SchemmerGermanyBernardo Dominic NEW
Smith O ShinkoCanadaXuxue Feng PROPOSAL
Kaitlin J BowleyBrazilOnyama Limba NEW
Francesco Q FigeroaUnited KingdomOnyama Limba RENEWAL
Arvin C VocelkaFranceBernardo Dominic PROPOSAL
Cody J KuskoJapanElwin Sharvill PROPOSAL
James E DilliardBrazilStephen Shaw RENEWAL
Johnson S SchemmerCanadaBernardo Dominic NEW
Aruna O BologniaGermanyAmy Elsner UNQUALIFIED
Aditya B RoysterFranceIvan Magalhaes NEGOTIATION
Morrow X DoeBrazilStephen Shaw NEW
Darci T DilliardBrazilAsiya Javayant UNQUALIFIED
Adams P GillianFranceAsiya Javayant QUALIFIED
Chavez N RutaArgentinaStephen Shaw QUALIFIED
Darci M RutaArgentinaAsiya Javayant RENEWAL
Ashley W RimUnited KingdomElwin Sharvill QUALIFIED
Faith I WaycottBrazilXuxue Feng NEW
Frozen Columns
Name
Jeanfrancois D Waycott
Ricardo D Sergi
Ricardo W Whobrey
Maisha C Doe
Mayumi C Nestle
Misaki I Briddick
Francesco V Venere
Kadeem Y Campain
Murillo M Ostrosky
Clifford M Ferencz
Jefferson Y Morasca
Leon Z Shinko
Morrow Z Chui
Kadeem O Malet
Francesco P Nestle
Aika O Ostrosky
Kaitlin B Waycott
Izzy O Waycott
Nicolas L Slusarski
Munro N Oldroyd
Cody P Stenseth
Morrow S Maclead
Sinclair L Saylors
Darci G Slusarski
Jennifer J Stenseth
Sinclair T Gaucho
Cody W Malet
Arvin E Gaucho
Antonio Q Malet
Aika T Rulapaugh
Munro Q Paprocki
Sinclair P Ferencz
Silvio V Darakjy
Jefferson M Marrier
Alejandro V Butt
Salvatore C Glick
Isabel W Vocelka
Greenwood S Wieser
Sinclair O Vocelka
Darci T Bolognia
Aditya O Garufi
Isabel B Perin
Sinclair P Campain
Aditya S Waycott
Clifford Z Saylors
Jones H Malet
Juan C Morasca
Greenwood D Briddick
Stacey Y Nicka
Leon B Shinko
IdCountryDate
1000Brazil2026-08-29
1001Italy2026-09-12
1002Russia2026-09-04
1003Argentina2026-08-31
1004Russia2026-09-07
1005Germany2026-09-15
1006France2026-09-11
1007Japan2026-09-15
1008Germany2026-08-29
1009Argentina2026-08-31
1010Russia2026-09-01
1011Spain2026-09-20
1012Spain2026-09-07
1013Russia2026-09-24
1014France2026-09-05
1015Japan2026-09-17
1016Germany2026-09-23
1017Argentina2026-09-22
1018Canada2026-09-09
1019United Kingdom2026-09-03
1020Japan2026-09-03
1021United Kingdom2026-09-06
1022United Kingdom2026-09-15
1023Australia2026-09-17
1024United Kingdom2026-08-27
1025Germany2026-09-08
1026Japan2026-09-10
1027United Kingdom2026-09-03
1028France2026-09-17
1029Russia2026-09-12
1030Australia2026-08-31
1031United Kingdom2026-09-20
1032United Kingdom2026-09-24
1033Australia2026-09-22
1034France2026-09-09
1035Brazil2026-09-13
1036Italy2026-09-10
1037Russia2026-09-20
1038Germany2026-09-05
1039Brazil2026-09-09
1040Canada2026-09-11
1041Russia2026-09-03
1042Spain2026-09-19
1043Italy2026-09-20
1044Australia2026-09-21
1045India2026-09-19
1046France2026-09-04
1047India2026-09-20
1048Canada2026-09-14
1049Germany2026-09-05

On-Demand Data

NameIdCountryDate
Tony R Rim1000Brazil2026-09-24
Cody Y Ostrosky1001Argentina2026-09-22
Sinclair A Albares1002Australia2026-09-07
Francesco U Perin1003Italy2026-09-21
Clifford I Sergi1004Japan2026-09-07
Ivar L Nicka1005Italy2026-09-07
Ivar H Shinko1006Australia2026-09-12
Jeanfrancois V Butt1007Spain2026-09-04
Adams G Sergi1008India2026-09-18
David H Oldroyd1009Brazil2026-08-30
Aika G Caldarera1010Australia2026-09-24
Johnson F Royster1011United Kingdom2026-08-28
Ivar Z Stenseth1012Russia2026-09-15
Arvin J Royster1013France2026-09-04
Aika U Ostrosky1014Australia2026-08-30
Aika B Oldroyd1015Italy2026-08-30
Claire Q Albares1016Argentina2026-08-26
Greenwood A Gillian1017Spain2026-09-13
Tony N Vocelka1018United Kingdom2026-09-01
Munro D Foller1019Russia2026-09-21
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan Y StensethUnited KingdomIoni Bowcher PROPOSAL
Kaitlin X BologniaItalyAmy Elsner UNQUALIFIED
Salvatore J PerinItalyAnna Fali PROPOSAL
Tony E WieserItalyBernardo Dominic UNQUALIFIED
Leja A MorascaRussiaOnyama Limba PROPOSAL
Leon I OldroydIndiaAnna Fali UNQUALIFIED
Mujtaba V TollnerUnited KingdomAnna Fali RENEWAL
Kaitlin U OldroydBrazilXuxue Feng UNQUALIFIED
Arvin D AmigonIndiaElwin Sharvill UNQUALIFIED
Maria J RutaIndiaStephen Shaw RENEWAL
Kaitlin G StensethBrazilAsiya Javayant PROPOSAL
Octavia B SchemmerJapanAmy Elsner QUALIFIED
Jefferson Q AlbaresUnited KingdomStephen Shaw PROPOSAL
Ashley U OstroskySpainStephen Shaw UNQUALIFIED
Antonio V CampainRussiaBernardo Dominic QUALIFIED
Silvio H RimArgentinaBernardo Dominic RENEWAL
Clifford X GarufiSpainElwin Sharvill NEGOTIATION
Jeanfrancois L DarakjyArgentinaBernardo Dominic QUALIFIED
Aditya L RutaSpainIvan Magalhaes UNQUALIFIED
Ricardo L ShinkoJapanAmy Elsner NEW
Ricardo H FollerBrazilStephen Shaw PROPOSAL
Maisha M StensethArgentinaXuxue Feng NEGOTIATION
Silvio H ChuiFranceIvan Magalhaes RENEWAL
Ivar I MacleadRussiaXuxue Feng QUALIFIED
Jones B RutaUnited KingdomAnna Fali QUALIFIED
Silvio F AmigonJapanIoni Bowcher PROPOSAL
Octavia Z SchemmerCanadaAsiya Javayant PROPOSAL
Alejandro G FerenczUnited KingdomStephen Shaw RENEWAL
Deepesh M CampainCanadaOnyama Limba NEW
Mayumi X MorascaIndiaIvan Magalhaes UNQUALIFIED
Jones J GillianAustraliaStephen Shaw PROPOSAL
Octavia W WaycottFranceOnyama Limba NEGOTIATION
Juan X MarrierIndiaBernardo Dominic UNQUALIFIED
Wickens S VocelkaRussiaXuxue Feng QUALIFIED
Morrow C InouyeUnited KingdomAsiya Javayant UNQUALIFIED
Wickens U ShinkoUnited KingdomElwin Sharvill NEGOTIATION
Leja Q BologniaSpainAnna Fali PROPOSAL
Murillo Z PoquetteRussiaIoni Bowcher QUALIFIED
Jeanfrancois Q KuskoGermanyAsiya Javayant QUALIFIED
Aditya R MorascaIndiaXuxue Feng 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>