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
David G CaldareraIndiaAnna Fali QUALIFIED
Faith W FigeroaAustraliaIvan Magalhaes NEGOTIATION
Silvio Y NickaCanadaAnna Fali QUALIFIED
Murillo I PerinCanadaIvan Magalhaes RENEWAL
Kadeem Q KuskoArgentinaAnna Fali PROPOSAL
Mayumi B RulapaughUnited KingdomIvan Magalhaes PROPOSAL
Adams Y DarakjyIndiaElwin Sharvill QUALIFIED
Leon F VocelkaFranceStephen Shaw PROPOSAL
Darci M RimCanadaIoni Bowcher UNQUALIFIED
Maisha G WaycottRussiaAmy Elsner UNQUALIFIED
Jeanfrancois V VocelkaItalyXuxue Feng UNQUALIFIED
Misaki E SaylorsIndiaXuxue Feng PROPOSAL
Antonio R VenereUnited KingdomAsiya Javayant QUALIFIED
Claire T GillianCanadaBernardo Dominic NEW
Nicolas O GauchoArgentinaIvan Magalhaes RENEWAL
Silvio B PoquetteItalyOnyama Limba RENEWAL
Leon Q MarrierFranceXuxue Feng UNQUALIFIED
Antonio M WaycottIndiaStephen Shaw UNQUALIFIED
Cody T MarrierUnited KingdomXuxue Feng NEW
Murillo I KolmetzUnited KingdomIvan Magalhaes NEGOTIATION
Ivar L ShinkoRussiaOnyama Limba NEW
Mayumi U FigeroaGermanyIvan Magalhaes NEW
Tony U MarrierJapanBernardo Dominic NEW
Izzy A RimAustraliaAnna Fali RENEWAL
Julie C MorascaRussiaAsiya Javayant PROPOSAL
Maria P AlbaresArgentinaAmy Elsner NEW
Johnson P OstroskySpainStephen Shaw RENEWAL
Munro D WaycottSpainBernardo Dominic QUALIFIED
Jefferson T CampainIndiaXuxue Feng NEGOTIATION
Francesco G DarakjyJapanStephen Shaw NEW
Costa I VenereIndiaAmy Elsner RENEWAL
Murillo U ButtIndiaBernardo Dominic PROPOSAL
Aruna Z CaudyFranceAsiya Javayant UNQUALIFIED
Aika Y ButtAustraliaIvan Magalhaes UNQUALIFIED
Claire P RulapaughJapanAmy Elsner UNQUALIFIED
Ivar L RoysterFranceAmy Elsner QUALIFIED
Misaki H IturbideGermanyXuxue Feng NEGOTIATION
Sinclair Y MaletUnited KingdomBernardo Dominic NEGOTIATION
Sinclair S TollnerGermanyElwin Sharvill NEW
Isabel T ShinkoItalyStephen Shaw NEGOTIATION
Aika W MaletBrazilBernardo Dominic QUALIFIED
Juan P StockhamUnited KingdomStephen Shaw PROPOSAL
Darci A VenereAustraliaOnyama Limba RENEWAL
Darci N CampainIndiaXuxue Feng NEW
Leon H RulapaughSpainBernardo Dominic QUALIFIED
Smith T OstroskyGermanyElwin Sharvill QUALIFIED
Kaitlin A CampainAustraliaStephen Shaw RENEWAL
Leja C AmigonGermanyOnyama Limba NEGOTIATION
Izzy V GarufiFranceAsiya Javayant NEW
Mayumi P StensethJapanAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Francesco X PerinItalyAnna Fali NEGOTIATION
Jones U CaudyCanadaIoni Bowcher PROPOSAL
Ricardo E TollnerFranceStephen Shaw RENEWAL
Rodrigues P DoeRussiaElwin Sharvill NEW
Johnson M FlosiCanadaBernardo Dominic NEGOTIATION
Maria P RoysterJapanOnyama Limba UNQUALIFIED
Salvatore H RoysterSpainElwin Sharvill NEGOTIATION
Sinclair H PerinBrazilIoni Bowcher PROPOSAL
Kadeem H SlusarskiAustraliaStephen Shaw NEGOTIATION
Sinclair E WhobreyUnited KingdomOnyama Limba UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Wickens A FerenczSpain2026-08-28Buckley Miller Wright UNQUALIFIED42Stephen Shaw
1001Johnson B WieserFrance2026-09-02Commercial Press PROPOSAL6Amy Elsner
1002Isabel S InouyeSpain2026-09-01King, Christopher A Esq QUALIFIED33Xuxue Feng
1003Maria P FollerGermany2026-09-04Chapman, Ross E Esq NEW16Ivan Magalhaes
1004Tony M FigeroaSpain2026-08-19Feiner Bros PROPOSAL39Elwin Sharvill
1005Leon A RimUnited Kingdom2026-09-11Chemel, James L Cpa RENEWAL37Ioni Bowcher
1006Ashley D FlosiIndia2026-08-27King, Christopher A Esq NEGOTIATION96Xuxue Feng
1007Chavez A DarakjyUnited Kingdom2026-08-29Buckley Miller Wright RENEWAL13Ivan Magalhaes
1008Mujtaba G ShinkoBrazil2026-09-11Feiner Bros QUALIFIED76Anna Fali
1009Francesco M VocelkaSpain2026-09-07Chapman, Ross E Esq QUALIFIED52Ivan Magalhaes
1010Nicolas G WaycottBrazil2026-08-24Rousseaux, Michael Esq NEGOTIATION59Ivan Magalhaes
1011Octavia K WhobreyArgentina2026-08-20Feltz Printing Service UNQUALIFIED20Elwin Sharvill
1012Jefferson C WaycottCanada2026-09-17Morlong Associates PROPOSAL96Ioni Bowcher
1013Isabel W VocelkaGermany2026-08-24Printing Dimensions UNQUALIFIED42Onyama Limba
1014Jefferson N GlickAustralia2026-08-25Truhlar And Truhlar Attys UNQUALIFIED72Elwin Sharvill
1015Izzy B FerenczCanada2026-08-30Printing Dimensions NEW90Stephen Shaw
1016Aruna W RulapaughItaly2026-09-02Rangoni Of Florence UNQUALIFIED4Elwin Sharvill
1017Sinclair A NestleAustralia2026-09-01Rangoni Of Florence PROPOSAL63Asiya Javayant
1018Claire K MacleadArgentina2026-09-09Printing Dimensions PROPOSAL97Bernardo Dominic
1019Antonio M NickaBrazil2026-09-04Feltz Printing Service PROPOSAL87Ioni Bowcher
1020Jennifer T NickaCanada2026-09-13Dorl, James J Esq PROPOSAL13Asiya Javayant
1021Aruna F KolmetzItaly2026-09-07Morlong Associates NEW66Onyama Limba
1022Sinclair I MorascaCanada2026-08-27Rousseaux, Michael Esq PROPOSAL22Ioni Bowcher
1023Maisha O InouyeFrance2026-09-13Chanay, Jeffrey A Esq RENEWAL56Xuxue Feng
1024Chavez I RoysterIndia2026-09-03Chapman, Ross E Esq NEGOTIATION52Anna Fali
1025Silvio C MarrierIndia2026-09-14Buckley Miller Wright UNQUALIFIED7Ivan Magalhaes
1026Jefferson O WaycottArgentina2026-09-11Commercial Press UNQUALIFIED63Stephen Shaw
1027Arvin V SaylorsSpain2026-08-22Commercial Press QUALIFIED51Ioni Bowcher
1028Adams Q MaletCanada2026-09-07Chemel, James L Cpa PROPOSAL99Bernardo Dominic
1029Sinclair P SaylorsItaly2026-09-05Chanay, Jeffrey A Esq UNQUALIFIED27Anna Fali
1030Francesco W PoquetteSpain2026-09-13Commercial Press QUALIFIED6Asiya Javayant
1031Aruna M WieserIndia2026-09-07Dorl, James J Esq NEW72Stephen Shaw
1032Deepesh Y CampainGermany2026-09-01Printing Dimensions NEGOTIATION79Amy Elsner
1033Ricardo M VenereBrazil2026-08-20Chemel, James L Cpa RENEWAL90Onyama Limba
1034Misaki U RimArgentina2026-09-03Rousseaux, Michael Esq RENEWAL74Ioni Bowcher
1035Ricardo K GlickJapan2026-08-20Rangoni Of Florence PROPOSAL83Xuxue Feng
1036Isabel P MarrierGermany2026-08-21Chanay, Jeffrey A Esq UNQUALIFIED92Anna Fali
1037Sinclair Q KolmetzUnited Kingdom2026-09-11Chemel, James L Cpa UNQUALIFIED98Onyama Limba
1038Julie S IturbideUnited Kingdom2026-09-08Feltz Printing Service RENEWAL11Onyama Limba
1039Costa M PerinGermany2026-08-19Dorl, James J Esq NEGOTIATION95Amy Elsner
1040Greenwood H DilliardSpain2026-08-23Buckley Miller Wright QUALIFIED62Xuxue Feng
1041Sinclair B CaldareraUnited Kingdom2026-08-23Truhlar And Truhlar Attys UNQUALIFIED23Ivan Magalhaes
1042Tony B VocelkaBrazil2026-09-10Dorl, James J Esq PROPOSAL91Elwin Sharvill
1043Maria P RimGermany2026-09-13Truhlar And Truhlar Attys NEW69Bernardo Dominic
1044Jeanfrancois S WaycottIndia2026-08-24Printing Dimensions UNQUALIFIED51Ioni Bowcher
1045Maria M TollnerBrazil2026-09-04Rousseaux, Michael Esq RENEWAL21Asiya Javayant
1046Ricardo U NickaJapan2026-08-29Feltz Printing Service QUALIFIED6Elwin Sharvill
1047Nicolas I ShinkoCanada2026-08-19Feltz Printing Service PROPOSAL62Onyama Limba
1048Morrow W BologniaBrazil2026-09-11Dorl, James J Esq UNQUALIFIED45Asiya Javayant
1049Emily R RoysterGermany2026-08-29Benton, John B Jr QUALIFIED18Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Emily P SergiCanadaAnna Fali NEGOTIATION
Clifford U AlbaresRussiaAmy Elsner NEW
Isabel X StockhamJapanElwin Sharvill PROPOSAL
Sinclair G ShinkoSpainXuxue Feng NEW
Ricardo C InouyeAustraliaBernardo Dominic QUALIFIED
Aika H GillianCanadaAmy Elsner PROPOSAL
Leon H WieserItalyStephen Shaw NEGOTIATION
Arvin G RulapaughArgentinaBernardo Dominic PROPOSAL
Arvin X PerinItalyAmy Elsner NEW
Faith M KuskoJapanAmy Elsner UNQUALIFIED
Jefferson J OstroskyAustraliaIvan Magalhaes NEGOTIATION
Arvin I GauchoAustraliaElwin Sharvill NEGOTIATION
Alejandro P FollerFranceBernardo Dominic RENEWAL
Aditya W GauchoAustraliaStephen Shaw PROPOSAL
Darci E DilliardAustraliaIvan Magalhaes NEGOTIATION
Leja J GauchoRussiaIoni Bowcher PROPOSAL
Francesco U GlickSpainXuxue Feng RENEWAL
Claire C CaldareraSpainOnyama Limba RENEWAL
Arvin Z PerinGermanyAsiya Javayant NEW
James T PerinGermanyAsiya Javayant NEW
Johnson R KolmetzArgentinaAsiya Javayant NEGOTIATION
Ricardo M TollnerCanadaOnyama Limba QUALIFIED
Greenwood O SchemmerCanadaBernardo Dominic PROPOSAL
Sinclair P GauchoIndiaElwin Sharvill UNQUALIFIED
Adams H WhobreyUnited KingdomOnyama Limba UNQUALIFIED
Julie X ShinkoJapanIvan Magalhaes QUALIFIED
Arvin A TollnerArgentinaXuxue Feng NEW
Alejandro Q NickaFranceIvan Magalhaes NEGOTIATION
Francesco Y FollerFranceBernardo Dominic RENEWAL
Misaki A OldroydItalyAnna Fali RENEWAL
Silvio L OstroskyIndiaIoni Bowcher QUALIFIED
Maria R ButtGermanyIoni Bowcher NEGOTIATION
Francesco C NestleBrazilAsiya Javayant QUALIFIED
Alejandro L WaycottGermanyXuxue Feng QUALIFIED
Arvin J WaycottUnited KingdomAsiya Javayant NEW
Chavez D BowleyJapanAnna Fali QUALIFIED
Julie U MaletBrazilAsiya Javayant RENEWAL
Faith S PerinBrazilAnna Fali UNQUALIFIED
Salvatore X SaylorsCanadaAmy Elsner NEW
Darci V FlosiFranceStephen Shaw RENEWAL
Antonio G WhobreyArgentinaAsiya Javayant RENEWAL
Aruna L RimArgentinaAnna Fali PROPOSAL
James I CampainBrazilAnna Fali NEGOTIATION
Maria G MaletUnited KingdomAnna Fali QUALIFIED
Maisha Q KuskoArgentinaAnna Fali NEW
Kaitlin J OldroydAustraliaBernardo Dominic PROPOSAL
Silvio F GillianArgentinaAsiya Javayant NEGOTIATION
Leon S OldroydBrazilAmy Elsner RENEWAL
Salvatore Q DoeBrazilElwin Sharvill RENEWAL
Leon O ChuiArgentinaAmy Elsner QUALIFIED
Frozen Columns
Name
Greenwood T Chui
Aruna C Chui
Salvatore B Albares
Johnson Q Nicka
Jones M Briddick
Maisha H Bowley
Francesco G Poquette
Misaki D Ruta
Tony U Saylors
Deepesh Q Flosi
Clifford P Chui
Cody G Paprocki
Maria L Ferencz
Aditya W Whobrey
Greenwood Z Venere
Claire K Rim
Maria G Kolmetz
Isabel J Iturbide
Mayumi K Caldarera
Morrow S Whobrey
Smith R Chui
Morrow F Ruta
Sinclair D Darakjy
Morrow I Venere
Arvin V Kusko
Antonio D Oldroyd
Kaitlin K Rulapaugh
Chavez U Ruta
Kadeem Z Flosi
Kaitlin H Rulapaugh
Cody E Albares
Juan D Albares
Wickens G Poquette
Juan G Darakjy
Aika Y Ruta
Misaki K Campain
Jeanfrancois X Venere
Leon S Rulapaugh
Morrow L Doe
Morrow I Oldroyd
Maisha B Garufi
Jeanfrancois C Briddick
Antonio H Tollner
Leon S Bolognia
Nicolas C Wieser
Stacey Y Whobrey
Aika T Paprocki
Claire Q Maclead
Tony Y Caldarera
Misaki P Gillian
IdCountryDate
1000United Kingdom2026-09-08
1001Italy2026-08-22
1002Japan2026-09-16
1003Australia2026-09-09
1004France2026-09-03
1005Australia2026-09-14
1006India2026-08-30
1007Italy2026-09-03
1008Australia2026-09-08
1009Italy2026-09-17
1010United Kingdom2026-09-09
1011Australia2026-09-05
1012Germany2026-09-16
1013Brazil2026-08-27
1014India2026-08-22
1015France2026-09-13
1016Germany2026-09-06
1017India2026-09-11
1018Canada2026-09-09
1019Brazil2026-08-23
1020Canada2026-09-03
1021Germany2026-09-03
1022Australia2026-09-10
1023Australia2026-09-10
1024Italy2026-09-01
1025Spain2026-09-15
1026Canada2026-09-07
1027France2026-08-31
1028Australia2026-08-22
1029United Kingdom2026-09-12
1030Brazil2026-08-28
1031Italy2026-08-30
1032Russia2026-09-12
1033Argentina2026-09-03
1034Canada2026-09-04
1035India2026-09-13
1036Australia2026-08-28
1037Russia2026-08-24
1038Australia2026-08-26
1039Russia2026-08-30
1040France2026-08-20
1041Russia2026-09-05
1042United Kingdom2026-08-27
1043Spain2026-09-06
1044Japan2026-09-14
1045India2026-09-09
1046Italy2026-09-13
1047France2026-08-24
1048Argentina2026-09-15
1049Australia2026-08-30

On-Demand Data

NameIdCountryDate
Johnson G Paprocki1000Russia2026-08-20
Johnson S Caudy1001Brazil2026-09-10
Ricardo K Caldarera1002United Kingdom2026-08-26
Arvin O Bolognia1003India2026-08-23
Silvio D Flosi1004Italy2026-08-23
Emily H Malet1005Canada2026-09-15
Ivar D Stockham1006Canada2026-09-09
Kadeem M Stenseth1007Spain2026-09-02
Rodrigues D Malet1008Russia2026-08-24
Izzy D Paprocki1009France2026-09-12
Chavez F Malet1010Russia2026-09-08
Octavia H Briddick1011Brazil2026-09-13
Leon Y Doe1012Argentina2026-08-26
Ivar Z Paprocki1013India2026-08-25
Ashley H Tollner1014France2026-09-15
Alejandro O Nestle1015India2026-08-31
Ashley A Flosi1016Japan2026-08-23
Jennifer X Waycott1017Japan2026-09-01
Claire R Maclead1018India2026-08-24
Leon C Chui1019Italy2026-09-02
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Smith N RoysterIndiaAsiya Javayant NEGOTIATION
Rodrigues K PaprockiJapanXuxue Feng RENEWAL
Sinclair W SlusarskiFranceAmy Elsner QUALIFIED
Julie N CaldareraArgentinaIoni Bowcher NEW
Leon S ShinkoRussiaStephen Shaw QUALIFIED
Arvin I RutaCanadaElwin Sharvill NEW
Adams B PoquetteIndiaXuxue Feng NEW
Clifford O ButtArgentinaAsiya Javayant UNQUALIFIED
Misaki B SchemmerItalyIoni Bowcher NEGOTIATION
Jeanfrancois W VenereIndiaAmy Elsner NEGOTIATION
Chavez V SergiArgentinaXuxue Feng QUALIFIED
Aika H CaldareraGermanyElwin Sharvill RENEWAL
Jennifer V TollnerRussiaXuxue Feng RENEWAL
Mujtaba X GarufiGermanyAnna Fali NEGOTIATION
Cody J AlbaresBrazilElwin Sharvill RENEWAL
Jefferson K RimAustraliaBernardo Dominic QUALIFIED
Jones R DilliardArgentinaAsiya Javayant NEGOTIATION
Jones A OstroskyGermanyIvan Magalhaes UNQUALIFIED
Leja J MarrierRussiaAmy Elsner PROPOSAL
Cody H ShinkoGermanyAsiya Javayant QUALIFIED
Ricardo T SergiFranceAsiya Javayant RENEWAL
Greenwood B MaletAustraliaAnna Fali UNQUALIFIED
Ivar J ButtIndiaAnna Fali NEW
Aika U BologniaAustraliaIvan Magalhaes QUALIFIED
Juan O NestleItalyBernardo Dominic RENEWAL
Maria D OstroskyJapanOnyama Limba QUALIFIED
Jennifer K RulapaughItalyOnyama Limba QUALIFIED
Mayumi S MarrierGermanyElwin Sharvill RENEWAL
Jones V RutaSpainXuxue Feng QUALIFIED
Greenwood R MaletJapanElwin Sharvill RENEWAL
Francesco M RutaSpainOnyama Limba NEGOTIATION
Leja R SergiIndiaIoni Bowcher NEGOTIATION
Jones K OstroskySpainAsiya Javayant NEGOTIATION
Antonio S GarufiAustraliaOnyama Limba RENEWAL
Mujtaba K PaprockiBrazilAmy Elsner QUALIFIED
Smith D ShinkoGermanyAsiya Javayant RENEWAL
Greenwood N DilliardIndiaIoni Bowcher RENEWAL
Faith R FlosiItalyAsiya Javayant NEGOTIATION
Clifford Q NickaRussiaAmy Elsner NEW
Juan K ChuiArgentinaBernardo 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>