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
Aditya N CaldareraCanadaOnyama Limba UNQUALIFIED
Cody C FerenczFranceIvan Magalhaes NEW
Octavia S WaycottBrazilOnyama Limba PROPOSAL
Costa W MarrierRussiaBernardo Dominic QUALIFIED
Chavez O SchemmerItalyXuxue Feng UNQUALIFIED
Greenwood G DoeAustraliaAnna Fali NEGOTIATION
Salvatore S DilliardCanadaAmy Elsner RENEWAL
Johnson X SchemmerArgentinaStephen Shaw NEGOTIATION
Ivar Z GillianCanadaStephen Shaw UNQUALIFIED
Isabel N MacleadGermanyStephen Shaw NEGOTIATION
Aika Q DoeFranceAmy Elsner RENEWAL
Leja K VenereItalyOnyama Limba RENEWAL
Cody L GlickSpainOnyama Limba UNQUALIFIED
Antonio M GauchoArgentinaBernardo Dominic PROPOSAL
Francesco E BologniaUnited KingdomElwin Sharvill NEGOTIATION
Murillo O KolmetzArgentinaElwin Sharvill QUALIFIED
Adams M AlbaresJapanBernardo Dominic RENEWAL
Deepesh A BowleyGermanyIvan Magalhaes UNQUALIFIED
Silvio K FigeroaUnited KingdomBernardo Dominic RENEWAL
Ashley U AlbaresFranceElwin Sharvill NEW
Jefferson O TollnerAustraliaXuxue Feng PROPOSAL
Silvio V MacleadGermanyStephen Shaw PROPOSAL
James N DilliardBrazilBernardo Dominic PROPOSAL
Claire B RoysterSpainBernardo Dominic NEGOTIATION
Nicolas V BowleyCanadaAnna Fali NEGOTIATION
Tony Y BowleyFranceElwin Sharvill PROPOSAL
Morrow T OldroydBrazilOnyama Limba PROPOSAL
Julie Y MacleadItalyAsiya Javayant RENEWAL
Jefferson Y RutaArgentinaOnyama Limba RENEWAL
Izzy X GillianSpainAmy Elsner NEGOTIATION
Sinclair W ChuiBrazilXuxue Feng PROPOSAL
Nicolas J SchemmerGermanyXuxue Feng RENEWAL
Aruna A FerenczGermanyXuxue Feng NEW
Misaki S GlickSpainOnyama Limba QUALIFIED
Julie F StockhamItalyAnna Fali PROPOSAL
Stacey L StockhamSpainIvan Magalhaes RENEWAL
Chavez T OstroskyItalyXuxue Feng UNQUALIFIED
David C MaletAustraliaIoni Bowcher NEGOTIATION
Chavez N GillianFranceIoni Bowcher RENEWAL
David W WaycottGermanyStephen Shaw RENEWAL
Leon Y RoysterCanadaXuxue Feng NEGOTIATION
Sinclair V KuskoJapanOnyama Limba QUALIFIED
Claire X VenereFranceOnyama Limba NEGOTIATION
Kadeem X MacleadAustraliaAmy Elsner NEGOTIATION
Francesco N PerinUnited KingdomAsiya Javayant RENEWAL
Darci Z PoquetteJapanAsiya Javayant RENEWAL
Alejandro S RulapaughItalyIoni Bowcher RENEWAL
Salvatore V StensethFranceXuxue Feng PROPOSAL
Aditya D DarakjyIndiaXuxue Feng UNQUALIFIED
Aditya R MacleadRussiaAsiya Javayant NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Leon J NickaUnited KingdomBernardo Dominic QUALIFIED
Cody D NestleRussiaXuxue Feng QUALIFIED
Greenwood G MarrierIndiaAsiya Javayant UNQUALIFIED
Morrow Z WhobreyItalyStephen Shaw RENEWAL
Greenwood C TollnerGermanyIvan Magalhaes NEGOTIATION
Faith T KolmetzItalyIoni Bowcher RENEWAL
Nicolas S AmigonRussiaAmy Elsner UNQUALIFIED
Maria S CampainSpainElwin Sharvill NEW
Tony Z SchemmerFranceOnyama Limba PROPOSAL
Mujtaba U CaldareraItalyOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith Z GillianCanada2026-10-25Morlong Associates NEW31Xuxue Feng
1001Julie M OstroskyBrazil2026-10-25Chapman, Ross E Esq PROPOSAL87Amy Elsner
1002Claire V VocelkaBrazil2026-11-06Printing Dimensions PROPOSAL9Anna Fali
1003Deepesh X CampainSpain2026-10-17Chemel, James L Cpa PROPOSAL94Elwin Sharvill
1004Maria S MacleadRussia2026-10-28Chemel, James L Cpa UNQUALIFIED33Anna Fali
1005Silvio S VenereFrance2026-10-29Chemel, James L Cpa QUALIFIED95Onyama Limba
1006Smith U WieserArgentina2026-10-26Chapman, Ross E Esq PROPOSAL35Onyama Limba
1007Jefferson K DilliardCanada2026-10-25Feltz Printing Service NEW15Elwin Sharvill
1008Jefferson E GlickArgentina2026-11-05Buckley Miller Wright QUALIFIED67Elwin Sharvill
1009Jefferson F MacleadArgentina2026-11-01Rangoni Of Florence QUALIFIED70Asiya Javayant
1010Munro M CampainSpain2026-10-29Chemel, James L Cpa RENEWAL63Elwin Sharvill
1011Rodrigues Q DoeIndia2026-10-27Dorl, James J Esq RENEWAL95Amy Elsner
1012Kaitlin A SchemmerBrazil2026-10-16Truhlar And Truhlar Attys RENEWAL41Bernardo Dominic
1013Stacey R InouyeIndia2026-10-24Chemel, James L Cpa PROPOSAL83Bernardo Dominic
1014Stacey H FollerFrance2026-10-22Chanay, Jeffrey A Esq PROPOSAL88Amy Elsner
1015Julie H IturbideRussia2026-10-28Feiner Bros NEW23Elwin Sharvill
1016Nicolas T AlbaresAustralia2026-10-20King, Christopher A Esq UNQUALIFIED44Onyama Limba
1017Jefferson Z NestleGermany2026-11-13Truhlar And Truhlar Attys QUALIFIED6Bernardo Dominic
1018Salvatore K GauchoAustralia2026-10-22Commercial Press NEGOTIATION6Ivan Magalhaes
1019David D SaylorsJapan2026-11-03Chemel, James L Cpa RENEWAL0Onyama Limba
1020Julie P StensethIndia2026-10-18Chapman, Ross E Esq NEGOTIATION89Anna Fali
1021Juan U MacleadIndia2026-11-12Truhlar And Truhlar Attys UNQUALIFIED87Ioni Bowcher
1022Maisha B AmigonRussia2026-11-14Benton, John B Jr NEGOTIATION82Amy Elsner
1023Francesco P VenereArgentina2026-11-01Feltz Printing Service UNQUALIFIED43Elwin Sharvill
1024Mujtaba W TollnerAustralia2026-10-18Commercial Press NEGOTIATION59Xuxue Feng
1025Salvatore G PoquetteSpain2026-11-07King, Christopher A Esq NEGOTIATION17Anna Fali
1026Leon V WhobreyRussia2026-11-07Rousseaux, Michael Esq RENEWAL54Ivan Magalhaes
1027Aditya E NestleArgentina2026-11-08Feltz Printing Service QUALIFIED75Amy Elsner
1028Claire Y GillianJapan2026-11-11Feltz Printing Service NEGOTIATION46Asiya Javayant
1029Smith E AmigonFrance2026-10-30Rousseaux, Michael Esq NEGOTIATION68Ivan Magalhaes
1030Aruna M GlickRussia2026-11-11Feiner Bros RENEWAL19Elwin Sharvill
1031Isabel N BriddickUnited Kingdom2026-10-28Benton, John B Jr NEGOTIATION32Onyama Limba
1032Francesco P ButtRussia2026-10-31Chanay, Jeffrey A Esq NEGOTIATION55Onyama Limba
1033Sinclair X BologniaRussia2026-11-12Feiner Bros NEGOTIATION90Bernardo Dominic
1034Adams V BriddickUnited Kingdom2026-11-02Chanay, Jeffrey A Esq PROPOSAL71Ioni Bowcher
1035Isabel Y RulapaughRussia2026-10-31Commercial Press RENEWAL94Onyama Limba
1036Murillo S PoquetteFrance2026-11-02Rousseaux, Michael Esq QUALIFIED97Amy Elsner
1037Arvin J SchemmerGermany2026-11-10Chanay, Jeffrey A Esq RENEWAL21Anna Fali
1038Arvin Y MacleadJapan2026-11-03Benton, John B Jr PROPOSAL69Anna Fali
1039Ivar A SlusarskiCanada2026-10-28Printing Dimensions UNQUALIFIED69Anna Fali
1040Arvin Y BriddickAustralia2026-10-27Rangoni Of Florence UNQUALIFIED22Ioni Bowcher
1041Deepesh A FerenczUnited Kingdom2026-10-24Buckley Miller Wright RENEWAL30Asiya Javayant
1042Claire R BowleyBrazil2026-11-08Morlong Associates PROPOSAL95Onyama Limba
1043Arvin A RimItaly2026-10-30Dorl, James J Esq PROPOSAL96Ioni Bowcher
1044Ricardo I MarrierCanada2026-11-06Chemel, James L Cpa QUALIFIED30Ivan Magalhaes
1045Sinclair I NickaIndia2026-11-13Printing Dimensions QUALIFIED65Anna Fali
1046Jones L ChuiBrazil2026-10-21Buckley Miller Wright NEGOTIATION2Ioni Bowcher
1047Julie T StensethArgentina2026-11-02Feltz Printing Service QUALIFIED47Xuxue Feng
1048Morrow D OstroskySpain2026-10-25Rousseaux, Michael Esq PROPOSAL22Stephen Shaw
1049Mujtaba W DilliardSpain2026-10-28Commercial Press QUALIFIED50Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Maria E SergiSpainElwin Sharvill UNQUALIFIED
James E NickaItalyXuxue Feng PROPOSAL
Kaitlin P GlickIndiaIvan Magalhaes PROPOSAL
Kadeem I MarrierArgentinaStephen Shaw NEW
Johnson K ShinkoBrazilStephen Shaw NEW
Izzy N PoquetteRussiaIvan Magalhaes UNQUALIFIED
Maria A SlusarskiSpainIvan Magalhaes NEGOTIATION
Kadeem U VocelkaArgentinaOnyama Limba RENEWAL
Maisha I CampainBrazilOnyama Limba NEW
Rodrigues W FollerFranceIvan Magalhaes NEW
Mujtaba I IturbideAustraliaElwin Sharvill QUALIFIED
Ivar X BologniaRussiaBernardo Dominic QUALIFIED
Francesco Y ButtJapanAnna Fali NEGOTIATION
Izzy Y GarufiGermanyAnna Fali QUALIFIED
Arvin A AlbaresBrazilElwin Sharvill PROPOSAL
James I MaletCanadaElwin Sharvill QUALIFIED
Ivar N VenereGermanyOnyama Limba NEGOTIATION
Aruna S FlosiCanadaAnna Fali NEW
Chavez I DoeBrazilAmy Elsner NEGOTIATION
Kadeem Q FigeroaRussiaIvan Magalhaes QUALIFIED
Tony Y RoysterAustraliaElwin Sharvill RENEWAL
Izzy C ShinkoJapanIvan Magalhaes NEGOTIATION
Kaitlin Z PerinItalyIvan Magalhaes NEW
David Q FollerCanadaIvan Magalhaes QUALIFIED
James C MaletSpainIvan Magalhaes QUALIFIED
Costa W CaudyFranceBernardo Dominic NEGOTIATION
Isabel C GarufiGermanyAsiya Javayant RENEWAL
Misaki Z CampainJapanIvan Magalhaes RENEWAL
Ashley K FollerCanadaElwin Sharvill NEW
Alejandro U DilliardBrazilBernardo Dominic NEW
Claire O SlusarskiArgentinaAsiya Javayant RENEWAL
Faith A MaletCanadaIoni Bowcher NEW
Aika N InouyeCanadaBernardo Dominic UNQUALIFIED
Aika K OldroydItalyXuxue Feng PROPOSAL
Leon A FollerIndiaAnna Fali NEGOTIATION
Francesco I AmigonRussiaAnna Fali NEW
Ashley O MarrierIndiaAnna Fali NEW
Emily P CampainFranceBernardo Dominic NEW
Francesco T FollerJapanStephen Shaw NEGOTIATION
Ivar H GlickSpainIoni Bowcher RENEWAL
Rodrigues L FigeroaBrazilXuxue Feng NEGOTIATION
Jeanfrancois V WaycottAustraliaBernardo Dominic PROPOSAL
Munro L StockhamUnited KingdomOnyama Limba QUALIFIED
Adams I RutaUnited KingdomIvan Magalhaes UNQUALIFIED
Darci W KuskoBrazilXuxue Feng UNQUALIFIED
Adams H StensethJapanBernardo Dominic UNQUALIFIED
Francesco H FigeroaItalyXuxue Feng UNQUALIFIED
Aika I NestleUnited KingdomIoni Bowcher UNQUALIFIED
Wickens S CaldareraArgentinaElwin Sharvill PROPOSAL
Jefferson F WieserArgentinaIoni Bowcher NEW
Frozen Columns
Name
Morrow U Ostrosky
Sinclair R Maclead
Darci M Rulapaugh
Munro M Iturbide
Ivar A Morasca
Rodrigues D Rim
Francesco N Ostrosky
Aditya F Royster
Munro Y Schemmer
Maria N Kolmetz
Smith X Maclead
Francesco H Sergi
Munro R Paprocki
Ricardo O Ruta
Jefferson Y Briddick
Arvin W Marrier
Clifford K Shinko
Ashley B Wieser
Emily Q Butt
Maria A Malet
Antonio N Perin
Deepesh W Wieser
Cody D Vocelka
Salvatore J Nestle
Faith Q Schemmer
Antonio C Oldroyd
Jennifer M Schemmer
Sinclair R Stenseth
Alejandro J Stenseth
Emily Q Slusarski
Sinclair F Perin
Jefferson M Campain
Adams Q Glick
Kaitlin F Dilliard
Adams Y Darakjy
Misaki W Whobrey
Alejandro Q Perin
Arvin W Campain
Chavez K Gaucho
Arvin Z Sergi
Ashley Q Ostrosky
Salvatore F Morasca
Alejandro U Shinko
Octavia B Flosi
Aditya Q Figeroa
Johnson G Paprocki
David L Royster
Maria A Butt
Alejandro G Oldroyd
Silvio K Campain
IdCountryDate
1000Spain2026-11-07
1001Germany2026-10-28
1002Canada2026-11-10
1003India2026-11-02
1004India2026-10-18
1005Japan2026-10-27
1006Germany2026-10-28
1007Germany2026-10-21
1008Japan2026-11-07
1009Spain2026-11-07
1010Italy2026-10-31
1011Russia2026-10-21
1012Japan2026-11-10
1013Canada2026-10-28
1014Japan2026-10-27
1015Japan2026-11-04
1016Russia2026-10-21
1017United Kingdom2026-10-25
1018Australia2026-11-05
1019Argentina2026-11-09
1020Spain2026-11-01
1021Spain2026-10-31
1022France2026-11-12
1023Brazil2026-11-10
1024Spain2026-10-22
1025Russia2026-10-17
1026Argentina2026-11-12
1027Brazil2026-10-26
1028Australia2026-10-31
1029Brazil2026-11-04
1030Australia2026-10-25
1031Italy2026-11-13
1032Australia2026-11-09
1033Germany2026-10-28
1034Australia2026-11-13
1035Argentina2026-10-27
1036Spain2026-10-17
1037Australia2026-10-27
1038Russia2026-10-16
1039Japan2026-11-01
1040Germany2026-11-01
1041Australia2026-10-23
1042Japan2026-10-20
1043United Kingdom2026-10-30
1044Canada2026-11-06
1045Argentina2026-10-16
1046Argentina2026-10-27
1047Argentina2026-11-09
1048Japan2026-10-30
1049Germany2026-11-04

On-Demand Data

NameIdCountryDate
Faith U Nicka1000Germany2026-10-26
Ricardo C Maclead1001Japan2026-10-20
Adams W Butt1002France2026-10-22
Octavia A Marrier1003Spain2026-10-22
Francesco X Glick1004Brazil2026-11-11
Ivar B Campain1005Germany2026-11-02
Claire J Venere1006Italy2026-10-30
Arvin R Shinko1007Australia2026-11-01
Silvio X Nestle1008India2026-11-12
Chavez N Venere1009Brazil2026-11-10
Aditya W Rulapaugh1010United Kingdom2026-10-27
Stacey Z Iturbide1011Argentina2026-11-06
Izzy R Shinko1012Canada2026-11-01
Adams Y Caudy1013Japan2026-11-09
Clifford N Nestle1014Australia2026-11-04
Aditya L Figeroa1015United Kingdom2026-10-21
Leon N Nestle1016Russia2026-10-30
Munro P Glick1017Germany2026-11-07
Jones H Paprocki1018Argentina2026-11-01
Darci N Paprocki1019Australia2026-11-03
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ricardo B RimIndiaElwin Sharvill NEGOTIATION
Isabel G StockhamItalyOnyama Limba QUALIFIED
David M MaletGermanyAmy Elsner NEW
Jefferson O OldroydRussiaAmy Elsner RENEWAL
Ricardo G KuskoArgentinaXuxue Feng NEW
Ashley A WhobreyCanadaOnyama Limba RENEWAL
Izzy M DarakjyGermanyAsiya Javayant RENEWAL
Silvio T CampainItalyXuxue Feng NEGOTIATION
Johnson E MarrierFranceXuxue Feng RENEWAL
Emily T VenereJapanAmy Elsner QUALIFIED
Ivar B NickaJapanIvan Magalhaes UNQUALIFIED
Julie Y BologniaAustraliaAsiya Javayant QUALIFIED
Jennifer D RulapaughArgentinaBernardo Dominic QUALIFIED
Leja V ButtJapanOnyama Limba NEGOTIATION
Misaki H StockhamUnited KingdomBernardo Dominic NEGOTIATION
Darci U RimRussiaIvan Magalhaes NEW
Izzy L AlbaresCanadaAsiya Javayant RENEWAL
Clifford J CampainArgentinaIoni Bowcher NEGOTIATION
Arvin P DoeAustraliaAsiya Javayant NEW
Johnson K MaletRussiaBernardo Dominic UNQUALIFIED
Ivar H VocelkaIndiaAnna Fali RENEWAL
Ashley T GillianItalyStephen Shaw QUALIFIED
Leja L FigeroaJapanIvan Magalhaes QUALIFIED
David G OstroskyIndiaIvan Magalhaes PROPOSAL
Ivar B IturbideSpainBernardo Dominic NEGOTIATION
Rodrigues T RutaGermanyAnna Fali NEGOTIATION
Maisha L SchemmerFranceBernardo Dominic QUALIFIED
Ricardo C PoquetteCanadaBernardo Dominic NEGOTIATION
Ivar W SergiRussiaIvan Magalhaes NEGOTIATION
Ivar D NickaRussiaAsiya Javayant RENEWAL
Antonio T GillianArgentinaAsiya Javayant PROPOSAL
Jennifer B WhobreySpainAsiya Javayant QUALIFIED
Munro J FigeroaUnited KingdomStephen Shaw PROPOSAL
Kadeem N AlbaresAustraliaAnna Fali NEGOTIATION
Deepesh V PaprockiArgentinaAnna Fali RENEWAL
Smith Y VocelkaJapanElwin Sharvill NEW
Misaki W GauchoCanadaAnna Fali NEW
Ricardo R WieserItalyAsiya Javayant NEGOTIATION
Mujtaba D VenereAustraliaBernardo Dominic RENEWAL
Murillo D DoeArgentinaAmy Elsner 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>