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
Stacey G GauchoRussiaIvan Magalhaes UNQUALIFIED
Julie L PerinBrazilIoni Bowcher NEW
Octavia E TollnerSpainStephen Shaw RENEWAL
Nicolas Q NickaArgentinaIvan Magalhaes QUALIFIED
Costa B NickaIndiaStephen Shaw NEW
Faith H NestleCanadaElwin Sharvill PROPOSAL
Smith L WhobreyJapanAmy Elsner QUALIFIED
Aika R DarakjyCanadaOnyama Limba QUALIFIED
Leon L GarufiCanadaBernardo Dominic UNQUALIFIED
Leon I SaylorsCanadaAsiya Javayant NEGOTIATION
Tony R InouyeBrazilIvan Magalhaes NEGOTIATION
Greenwood G MorascaBrazilElwin Sharvill NEW
Stacey X NestleItalyStephen Shaw NEGOTIATION
Johnson S OldroydArgentinaOnyama Limba RENEWAL
David G IturbideRussiaIvan Magalhaes QUALIFIED
Claire H RulapaughUnited KingdomAsiya Javayant NEW
Jones S InouyeArgentinaOnyama Limba PROPOSAL
Misaki N FigeroaItalyOnyama Limba RENEWAL
Alejandro R InouyeGermanyBernardo Dominic QUALIFIED
Emily R MaletJapanIvan Magalhaes NEW
Faith W VocelkaIndiaBernardo Dominic RENEWAL
Maria F DarakjyUnited KingdomXuxue Feng NEGOTIATION
Darci N DarakjyGermanyElwin Sharvill UNQUALIFIED
Tony U NestleJapanIoni Bowcher QUALIFIED
Kaitlin Q WaycottRussiaXuxue Feng QUALIFIED
Nicolas J CampainUnited KingdomAsiya Javayant NEW
Cody R RimUnited KingdomStephen Shaw NEW
Ivar P NestleAustraliaBernardo Dominic QUALIFIED
Claire W NickaSpainBernardo Dominic UNQUALIFIED
Arvin S BriddickArgentinaAmy Elsner QUALIFIED
Jennifer T SergiGermanyAmy Elsner PROPOSAL
Jefferson D MacleadRussiaIvan Magalhaes NEW
Aruna I MacleadBrazilIvan Magalhaes UNQUALIFIED
Jefferson X WieserBrazilBernardo Dominic RENEWAL
Izzy M PerinArgentinaStephen Shaw RENEWAL
Aruna A FlosiJapanAnna Fali NEW
Aditya E PoquetteItalyIoni Bowcher PROPOSAL
Rodrigues C PaprockiAustraliaAsiya Javayant RENEWAL
Mayumi E RimArgentinaElwin Sharvill UNQUALIFIED
Clifford U WaycottIndiaIoni Bowcher NEGOTIATION
Ricardo P WieserSpainStephen Shaw PROPOSAL
Antonio H MarrierUnited KingdomStephen Shaw RENEWAL
Claire I KuskoSpainElwin Sharvill NEW
Greenwood Z FollerSpainIoni Bowcher PROPOSAL
Aika V FigeroaArgentinaOnyama Limba UNQUALIFIED
Deepesh J WaycottItalyIvan Magalhaes NEW
Costa E GillianBrazilAsiya Javayant NEW
Johnson W PoquetteSpainXuxue Feng QUALIFIED
Leon W BologniaSpainAmy Elsner QUALIFIED
Aditya B SergiUnited KingdomXuxue Feng PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Isabel M BowleyFranceXuxue Feng PROPOSAL
Maria O VenereItalyIoni Bowcher PROPOSAL
Silvio J KuskoCanadaAmy Elsner RENEWAL
Maria N AlbaresRussiaIvan Magalhaes QUALIFIED
Aika C ChuiAustraliaXuxue Feng QUALIFIED
Aditya I RoysterFranceBernardo Dominic NEGOTIATION
Ivar C ButtUnited KingdomAmy Elsner PROPOSAL
Aditya P InouyeItalyAmy Elsner QUALIFIED
Alejandro X PerinFranceXuxue Feng UNQUALIFIED
Jeanfrancois T RoysterItalyAsiya Javayant NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley Q BologniaJapan2026-09-17Chapman, Ross E Esq NEW15Stephen Shaw
1001Smith X VenereBrazil2026-09-15Buckley Miller Wright NEGOTIATION5Xuxue Feng
1002Clifford U BriddickBrazil2026-09-16Commercial Press QUALIFIED5Bernardo Dominic
1003Silvio P RutaIndia2026-09-18Chanay, Jeffrey A Esq RENEWAL50Ioni Bowcher
1004Aika V PerinCanada2026-09-15Truhlar And Truhlar Attys RENEWAL30Anna Fali
1005Ivar S FerenczGermany2026-09-10Commercial Press NEGOTIATION80Asiya Javayant
1006Leon R DoeSpain2026-08-24Benton, John B Jr UNQUALIFIED93Onyama Limba
1007Jefferson R DilliardIndia2026-09-15Chanay, Jeffrey A Esq QUALIFIED18Elwin Sharvill
1008Clifford Q FlosiRussia2026-09-04Rangoni Of Florence PROPOSAL33Asiya Javayant
1009Silvio G WaycottItaly2026-09-02Chanay, Jeffrey A Esq UNQUALIFIED85Ivan Magalhaes
1010Smith K NickaIndia2026-08-28Chanay, Jeffrey A Esq NEW49Anna Fali
1011Darci E PerinFrance2026-09-22Rousseaux, Michael Esq QUALIFIED49Xuxue Feng
1012Tony J WhobreyRussia2026-09-18Printing Dimensions UNQUALIFIED46Bernardo Dominic
1013Aruna F RutaSpain2026-08-28Benton, John B Jr QUALIFIED1Anna Fali
1014Faith I FigeroaFrance2026-09-17Printing Dimensions UNQUALIFIED62Ivan Magalhaes
1015Maria H IturbideCanada2026-09-12King, Christopher A Esq NEGOTIATION33Stephen Shaw
1016Claire C MaletAustralia2026-08-31Commercial Press NEW72Onyama Limba
1017Leon B DilliardJapan2026-09-11Chapman, Ross E Esq RENEWAL69Ioni Bowcher
1018Chavez Y OldroydFrance2026-09-12Morlong Associates NEW79Ioni Bowcher
1019Maria D BriddickAustralia2026-09-08Dorl, James J Esq RENEWAL97Ivan Magalhaes
1020Johnson U WieserCanada2026-09-05Feiner Bros RENEWAL16Ioni Bowcher
1021Kadeem F PerinAustralia2026-08-30Commercial Press UNQUALIFIED91Amy Elsner
1022Aruna J SaylorsBrazil2026-09-08Rangoni Of Florence PROPOSAL95Asiya Javayant
1023Jeanfrancois R WieserItaly2026-09-03Chemel, James L Cpa PROPOSAL44Xuxue Feng
1024Clifford O VenereArgentina2026-09-17Buckley Miller Wright NEW96Bernardo Dominic
1025Claire P BowleyRussia2026-09-03Commercial Press RENEWAL3Xuxue Feng
1026Deepesh Z ChuiJapan2026-08-30Rousseaux, Michael Esq RENEWAL43Ivan Magalhaes
1027Jeanfrancois O SlusarskiUnited Kingdom2026-09-17Chemel, James L Cpa QUALIFIED27Elwin Sharvill
1028Aditya H VocelkaRussia2026-08-25Benton, John B Jr UNQUALIFIED75Onyama Limba
1029Arvin V MaletSpain2026-08-30Chanay, Jeffrey A Esq RENEWAL63Ivan Magalhaes
1030Salvatore I AlbaresUnited Kingdom2026-09-19Chapman, Ross E Esq QUALIFIED44Elwin Sharvill
1031Alejandro L CaudyAustralia2026-09-22Commercial Press PROPOSAL58Elwin Sharvill
1032Francesco M ShinkoAustralia2026-09-03Commercial Press NEGOTIATION12Xuxue Feng
1033Costa F GarufiGermany2026-08-29Buckley Miller Wright UNQUALIFIED84Bernardo Dominic
1034James F GarufiBrazil2026-09-04Benton, John B Jr PROPOSAL33Anna Fali
1035Kaitlin D TollnerIndia2026-09-08Printing Dimensions NEW47Xuxue Feng
1036Clifford V GillianIndia2026-09-10Chanay, Jeffrey A Esq QUALIFIED34Anna Fali
1037Rodrigues V PaprockiJapan2026-09-15Truhlar And Truhlar Attys QUALIFIED28Asiya Javayant
1038Smith L StockhamUnited Kingdom2026-09-03Chemel, James L Cpa NEW47Elwin Sharvill
1039Julie P CaudyGermany2026-09-14Chapman, Ross E Esq RENEWAL17Ioni Bowcher
1040Sinclair A PerinJapan2026-09-11Printing Dimensions PROPOSAL73Elwin Sharvill
1041Tony Y PoquetteSpain2026-09-22Commercial Press QUALIFIED99Bernardo Dominic
1042Arvin L BologniaBrazil2026-09-01Dorl, James J Esq PROPOSAL78Stephen Shaw
1043Tony I InouyeUnited Kingdom2026-09-06Rangoni Of Florence RENEWAL71Anna Fali
1044Maisha A IturbideArgentina2026-09-10Rousseaux, Michael Esq QUALIFIED55Anna Fali
1045Aruna Q ButtUnited Kingdom2026-09-06Feiner Bros RENEWAL87Asiya Javayant
1046Cody W MacleadFrance2026-09-07Chemel, James L Cpa UNQUALIFIED64Amy Elsner
1047Smith U InouyeSpain2026-09-03Feltz Printing Service QUALIFIED69Ivan Magalhaes
1048Aruna C MaletRussia2026-08-27Truhlar And Truhlar Attys NEGOTIATION85Elwin Sharvill
1049Tony F GarufiUnited Kingdom2026-09-16Buckley Miller Wright PROPOSAL27Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Kaitlin M PerinFranceAnna Fali RENEWAL
Clifford T RimItalyStephen Shaw NEW
Sinclair V IturbideRussiaAnna Fali NEGOTIATION
Octavia L MorascaAustraliaIoni Bowcher NEW
Adams G RimRussiaAnna Fali RENEWAL
Deepesh V ShinkoSpainAsiya Javayant NEGOTIATION
Jeanfrancois A VocelkaBrazilOnyama Limba RENEWAL
Jefferson W AlbaresJapanAnna Fali UNQUALIFIED
Aika B ShinkoItalyXuxue Feng PROPOSAL
Cody J KolmetzJapanAmy Elsner PROPOSAL
Adams I KuskoBrazilStephen Shaw UNQUALIFIED
Costa P ShinkoCanadaElwin Sharvill UNQUALIFIED
Sinclair U MaletCanadaIvan Magalhaes PROPOSAL
Morrow Y SlusarskiItalyOnyama Limba NEW
Stacey Q RoysterRussiaAmy Elsner NEW
Juan R PerinUnited KingdomXuxue Feng NEGOTIATION
Salvatore P RutaUnited KingdomXuxue Feng NEW
Octavia R ChuiItalyAmy Elsner PROPOSAL
Mayumi X GlickArgentinaAsiya Javayant UNQUALIFIED
Smith O StensethBrazilAnna Fali RENEWAL
Silvio P ButtFranceIoni Bowcher PROPOSAL
Silvio Q ShinkoFranceXuxue Feng NEW
Deepesh Q ChuiIndiaAmy Elsner NEW
Juan I SergiArgentinaAmy Elsner PROPOSAL
Alejandro Z GarufiCanadaElwin Sharvill NEGOTIATION
Chavez J AlbaresBrazilStephen Shaw RENEWAL
Darci C BriddickSpainAmy Elsner QUALIFIED
Morrow Q GillianGermanyIvan Magalhaes NEW
Darci P MarrierUnited KingdomStephen Shaw QUALIFIED
Tony D AlbaresIndiaStephen Shaw NEGOTIATION
Mujtaba X MacleadCanadaAsiya Javayant QUALIFIED
Salvatore E BowleyGermanyElwin Sharvill NEW
Rodrigues V NickaJapanElwin Sharvill NEGOTIATION
Munro M GarufiRussiaOnyama Limba NEW
Kaitlin G DilliardBrazilOnyama Limba RENEWAL
Mujtaba D MaletBrazilOnyama Limba NEW
Sinclair S GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Izzy R DilliardUnited KingdomOnyama Limba UNQUALIFIED
Juan J IturbideFranceXuxue Feng PROPOSAL
David S SchemmerSpainElwin Sharvill NEGOTIATION
Johnson E SergiArgentinaElwin Sharvill RENEWAL
Mayumi H ShinkoSpainElwin Sharvill QUALIFIED
Smith R GlickUnited KingdomOnyama Limba UNQUALIFIED
Misaki E FollerIndiaBernardo Dominic RENEWAL
Ricardo C InouyeFranceOnyama Limba UNQUALIFIED
Octavia N IturbideBrazilOnyama Limba NEGOTIATION
Claire V StockhamAustraliaOnyama Limba QUALIFIED
Greenwood P OstroskyFranceOnyama Limba PROPOSAL
Emily F GarufiUnited KingdomAsiya Javayant PROPOSAL
Clifford F AlbaresJapanAsiya Javayant PROPOSAL
Frozen Columns
Name
Faith V Perin
Aika L Marrier
Smith S Nicka
Emily H Glick
Jefferson N Tollner
James E Poquette
Jeanfrancois Z Waycott
Alejandro Q Dilliard
Kaitlin L Poquette
Aruna Q Vocelka
Nicolas F Sergi
Greenwood A Shinko
Ricardo Q Gillian
Ivar N Shinko
Alejandro N Stenseth
Tony Q Inouye
Jeanfrancois X Shinko
Alejandro W Caudy
Leja L Stockham
Rodrigues I Inouye
Rodrigues P Iturbide
Aruna L Perin
Cody P Bowley
Greenwood G Amigon
Smith C Dilliard
Jones L Shinko
Antonio F Tollner
Mayumi H Butt
Claire S Marrier
Juan T Caldarera
Jeanfrancois I Ostrosky
Ivar G Ostrosky
Jones H Morasca
Clifford Q Stockham
Isabel L Royster
Tony Q Saylors
Kaitlin F Malet
Maria R Whobrey
Munro W Gillian
Silvio F Gillian
Aruna I Inouye
Aika V Royster
Wickens M Caldarera
Salvatore B Morasca
Alejandro X Caldarera
Tony A Wieser
Izzy B Vocelka
Aditya G Poquette
Alejandro O Stenseth
Deepesh Z Garufi
IdCountryDate
1000Italy2026-09-04
1001Japan2026-08-26
1002Italy2026-09-19
1003Japan2026-09-21
1004Italy2026-09-21
1005Australia2026-09-22
1006Canada2026-09-12
1007Canada2026-09-09
1008Spain2026-08-30
1009Argentina2026-09-20
1010Canada2026-09-01
1011Australia2026-09-05
1012France2026-09-16
1013Japan2026-09-06
1014India2026-09-20
1015Italy2026-09-06
1016Japan2026-09-19
1017Russia2026-09-14
1018Australia2026-09-11
1019Australia2026-09-07
1020Spain2026-09-21
1021Argentina2026-09-12
1022Australia2026-09-10
1023Russia2026-09-13
1024India2026-09-15
1025Australia2026-09-07
1026Brazil2026-09-13
1027Spain2026-08-24
1028Argentina2026-09-20
1029Japan2026-09-12
1030Italy2026-09-12
1031Australia2026-08-27
1032Australia2026-08-27
1033Germany2026-08-28
1034Russia2026-08-25
1035Canada2026-09-11
1036Italy2026-09-11
1037Japan2026-09-19
1038Japan2026-09-03
1039Brazil2026-08-30
1040India2026-09-20
1041Spain2026-09-11
1042United Kingdom2026-08-31
1043Argentina2026-09-20
1044Brazil2026-08-26
1045Canada2026-09-12
1046France2026-09-15
1047United Kingdom2026-09-12
1048United Kingdom2026-09-09
1049Italy2026-09-18

On-Demand Data

NameIdCountryDate
Leon K Nestle1000Russia2026-08-29
Ricardo T Caudy1001Germany2026-08-25
Izzy M Chui1002Germany2026-09-10
Ricardo K Albares1003Germany2026-09-15
Salvatore T Darakjy1004Canada2026-08-26
Emily M Caudy1005Japan2026-09-09
Jennifer M Caldarera1006Australia2026-08-28
Sinclair K Dilliard1007Canada2026-08-27
Juan P Gillian1008Brazil2026-08-28
Claire F Vocelka1009Brazil2026-08-26
Rodrigues X Doe1010Italy2026-09-09
Antonio B Campain1011France2026-08-28
Emily W Iturbide1012Argentina2026-08-31
Antonio F Garufi1013Australia2026-09-17
Arvin K Royster1014Germany2026-09-02
Kaitlin T Slusarski1015Australia2026-08-26
Julie B Garufi1016Italy2026-08-31
Adams H Wieser1017France2026-08-24
Munro J Foller1018Canada2026-09-04
Darci Q Briddick1019Australia2026-08-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Stacey Y RoysterUnited KingdomStephen Shaw NEW
Faith R SchemmerGermanyBernardo Dominic PROPOSAL
Aruna S VocelkaJapanBernardo Dominic NEW
Murillo P CampainUnited KingdomBernardo Dominic UNQUALIFIED
Jennifer R TollnerIndiaAnna Fali UNQUALIFIED
Izzy J InouyeUnited KingdomIoni Bowcher UNQUALIFIED
Nicolas G SchemmerArgentinaAsiya Javayant QUALIFIED
Francesco U CaldareraRussiaAsiya Javayant NEGOTIATION
Kaitlin Y MacleadItalyXuxue Feng RENEWAL
Silvio F DarakjyBrazilBernardo Dominic QUALIFIED
Octavia L PerinAustraliaBernardo Dominic UNQUALIFIED
Ashley L MorascaArgentinaXuxue Feng NEGOTIATION
Isabel H WieserArgentinaAmy Elsner RENEWAL
Rodrigues P MaletArgentinaAnna Fali RENEWAL
Juan X GillianJapanIoni Bowcher NEW
Leja F DarakjyItalyOnyama Limba UNQUALIFIED
Arvin A AmigonSpainBernardo Dominic PROPOSAL
Octavia U MaletBrazilStephen Shaw NEW
Murillo U MaletJapanAmy Elsner NEGOTIATION
Adams B FollerCanadaIoni Bowcher NEGOTIATION
Smith R FigeroaJapanIoni Bowcher UNQUALIFIED
Claire F KuskoSpainAnna Fali NEW
Munro U OstroskyAustraliaElwin Sharvill NEGOTIATION
Ashley Z PoquetteUnited KingdomAsiya Javayant QUALIFIED
Ashley F BriddickCanadaXuxue Feng PROPOSAL
Stacey L FigeroaItalyXuxue Feng NEW
Mayumi H MaletAustraliaAnna Fali PROPOSAL
David Y MaletRussiaStephen Shaw NEW
Ricardo V AmigonItalyOnyama Limba PROPOSAL
Nicolas K FlosiUnited KingdomAsiya Javayant RENEWAL
Octavia L DoeRussiaBernardo Dominic UNQUALIFIED
Maisha R BologniaRussiaAsiya Javayant UNQUALIFIED
Wickens B WieserIndiaAmy Elsner NEGOTIATION
Maisha W FlosiRussiaStephen Shaw UNQUALIFIED
David J NickaGermanyIvan Magalhaes PROPOSAL
Cody C StockhamGermanyStephen Shaw UNQUALIFIED
Isabel A WaycottGermanyBernardo Dominic PROPOSAL
Morrow S MorascaSpainOnyama Limba PROPOSAL
Tony F OldroydIndiaAmy Elsner RENEWAL
Izzy E WieserArgentinaOnyama Limba NEGOTIATION

<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>