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
Wickens K RimIndiaAnna Fali QUALIFIED
Salvatore Z BowleySpainBernardo Dominic RENEWAL
Misaki P NickaGermanyAsiya Javayant NEW
Isabel A MaletCanadaAmy Elsner PROPOSAL
Sinclair Q WhobreyFranceAnna Fali QUALIFIED
Johnson F OstroskyItalyIvan Magalhaes PROPOSAL
Greenwood U SergiGermanyIoni Bowcher RENEWAL
Wickens T ChuiSpainIvan Magalhaes RENEWAL
Stacey H StockhamAustraliaIvan Magalhaes NEGOTIATION
Costa F PaprockiUnited KingdomOnyama Limba NEGOTIATION
Greenwood O MaletCanadaOnyama Limba PROPOSAL
Misaki K CaldareraArgentinaAmy Elsner QUALIFIED
Antonio A MaletUnited KingdomIoni Bowcher QUALIFIED
Aruna R SlusarskiFranceOnyama Limba PROPOSAL
Chavez Q MaletAustraliaIoni Bowcher RENEWAL
Arvin Z RimAustraliaAmy Elsner NEW
Misaki L AlbaresFranceXuxue Feng NEGOTIATION
Leja H StensethItalyIoni Bowcher PROPOSAL
Adams S GauchoCanadaXuxue Feng QUALIFIED
Octavia N ShinkoJapanBernardo Dominic RENEWAL
Kaitlin N BologniaUnited KingdomIoni Bowcher NEGOTIATION
Aditya D MacleadArgentinaOnyama Limba UNQUALIFIED
David E MacleadFranceStephen Shaw NEGOTIATION
Munro T CaudySpainStephen Shaw NEW
Antonio D FlosiJapanBernardo Dominic NEGOTIATION
Deepesh U RoysterSpainXuxue Feng NEGOTIATION
Jefferson Q WhobreyCanadaIvan Magalhaes NEW
Jeanfrancois D SergiAustraliaOnyama Limba NEW
Sinclair B RimBrazilAnna Fali RENEWAL
Aditya Y ButtIndiaIvan Magalhaes RENEWAL
Cody P AmigonJapanAnna Fali RENEWAL
Jennifer I FigeroaSpainStephen Shaw QUALIFIED
Juan W WhobreyFranceXuxue Feng RENEWAL
Mujtaba I MacleadIndiaStephen Shaw PROPOSAL
Jones Q MarrierRussiaXuxue Feng NEGOTIATION
Leon Y NickaBrazilOnyama Limba PROPOSAL
Johnson W InouyeGermanyIvan Magalhaes UNQUALIFIED
Kadeem C CaudyAustraliaElwin Sharvill PROPOSAL
Darci U CaldareraSpainAsiya Javayant UNQUALIFIED
Salvatore N GarufiSpainAmy Elsner PROPOSAL
Ricardo R OldroydCanadaIoni Bowcher RENEWAL
Alejandro O NickaCanadaElwin Sharvill RENEWAL
Johnson A PerinIndiaAsiya Javayant QUALIFIED
Maria S GlickGermanyAmy Elsner NEGOTIATION
Munro E StockhamCanadaElwin Sharvill PROPOSAL
Greenwood F RimUnited KingdomIvan Magalhaes RENEWAL
Ricardo S NestleGermanyStephen Shaw NEGOTIATION
Faith M GauchoBrazilStephen Shaw UNQUALIFIED
Darci D ButtSpainIvan Magalhaes QUALIFIED
Adams F MorascaCanadaAmy Elsner QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Stacey Q NickaAustraliaBernardo Dominic NEW
Antonio J MarrierCanadaXuxue Feng PROPOSAL
Nicolas L OstroskyJapanBernardo Dominic QUALIFIED
Mayumi A AmigonRussiaIoni Bowcher NEGOTIATION
Jeanfrancois I TollnerItalyAsiya Javayant UNQUALIFIED
Octavia G IturbideSpainAnna Fali RENEWAL
Murillo U GillianJapanBernardo Dominic RENEWAL
Jefferson G DarakjySpainXuxue Feng QUALIFIED
Maisha K BowleyAustraliaXuxue Feng UNQUALIFIED
Clifford L KolmetzJapanAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna K ShinkoAustralia2026-09-20Rousseaux, Michael Esq RENEWAL76Asiya Javayant
1001Chavez A MarrierAustralia2026-09-17Benton, John B Jr RENEWAL95Asiya Javayant
1002Jefferson T GlickArgentina2026-09-05Truhlar And Truhlar Attys UNQUALIFIED86Elwin Sharvill
1003James X RulapaughItaly2026-09-21Chemel, James L Cpa PROPOSAL47Bernardo Dominic
1004Leja K GlickAustralia2026-09-18Feiner Bros RENEWAL77Stephen Shaw
1005Murillo Q IturbideFrance2026-09-04King, Christopher A Esq PROPOSAL11Xuxue Feng
1006Nicolas U OldroydRussia2026-09-07Chemel, James L Cpa QUALIFIED80Ioni Bowcher
1007Cody W GillianSpain2026-09-04Printing Dimensions NEW49Xuxue Feng
1008Aika I CaldareraArgentina2026-09-11Buckley Miller Wright NEGOTIATION72Onyama Limba
1009Silvio B RoysterGermany2026-09-05Dorl, James J Esq NEW42Stephen Shaw
1010Ricardo L CaudyRussia2026-09-11Printing Dimensions QUALIFIED41Stephen Shaw
1011Isabel J GauchoSpain2026-09-22Truhlar And Truhlar Attys NEGOTIATION19Ioni Bowcher
1012Leja P WieserFrance2026-09-09Rousseaux, Michael Esq RENEWAL76Onyama Limba
1013Kadeem T BowleyRussia2026-09-22Morlong Associates NEGOTIATION33Asiya Javayant
1014Juan M BriddickItaly2026-09-13Rousseaux, Michael Esq UNQUALIFIED69Onyama Limba
1015Jefferson M WhobreyRussia2026-09-13Chanay, Jeffrey A Esq NEW26Ivan Magalhaes
1016Isabel Y WaycottRussia2026-09-11Feiner Bros NEGOTIATION70Amy Elsner
1017Darci B AmigonArgentina2026-09-21Feltz Printing Service UNQUALIFIED31Stephen Shaw
1018Clifford D SlusarskiItaly2026-09-17Chapman, Ross E Esq PROPOSAL31Ioni Bowcher
1019Salvatore E SchemmerIndia2026-09-12King, Christopher A Esq NEGOTIATION35Asiya Javayant
1020Juan B MaletCanada2026-08-31Truhlar And Truhlar Attys PROPOSAL11Amy Elsner
1021Darci O DoeFrance2026-09-07Rangoni Of Florence QUALIFIED43Amy Elsner
1022Deepesh V RoysterBrazil2026-09-12Buckley Miller Wright NEGOTIATION24Bernardo Dominic
1023Claire Q MacleadSpain2026-09-17Chanay, Jeffrey A Esq PROPOSAL47Xuxue Feng
1024Isabel Z CaudyIndia2026-09-22Morlong Associates PROPOSAL55Anna Fali
1025Ricardo L SchemmerBrazil2026-09-27Chemel, James L Cpa QUALIFIED94Stephen Shaw
1026Ashley N CaldareraBrazil2026-09-05Morlong Associates NEW40Anna Fali
1027Arvin U KolmetzBrazil2026-09-07Morlong Associates NEW59Asiya Javayant
1028Silvio T FlosiItaly2026-09-13Chemel, James L Cpa UNQUALIFIED20Amy Elsner
1029Smith O RimUnited Kingdom2026-09-14Chapman, Ross E Esq NEW62Bernardo Dominic
1030Wickens U FollerGermany2026-09-27Chemel, James L Cpa NEGOTIATION55Bernardo Dominic
1031Aika X RulapaughCanada2026-09-08Feltz Printing Service NEGOTIATION61Ioni Bowcher
1032David R RoysterArgentina2026-09-07Rangoni Of Florence PROPOSAL24Bernardo Dominic
1033Faith G KuskoFrance2026-09-11Buckley Miller Wright QUALIFIED7Asiya Javayant
1034Francesco F GillianIndia2026-09-12King, Christopher A Esq RENEWAL52Anna Fali
1035Leon J WieserUnited Kingdom2026-09-17Benton, John B Jr QUALIFIED97Ioni Bowcher
1036Mayumi W NestleGermany2026-09-06Chanay, Jeffrey A Esq PROPOSAL81Stephen Shaw
1037Ashley S GlickUnited Kingdom2026-09-07Buckley Miller Wright PROPOSAL52Onyama Limba
1038Kaitlin Z MaletFrance2026-09-21Truhlar And Truhlar Attys RENEWAL9Asiya Javayant
1039Ashley B MacleadIndia2026-09-05Truhlar And Truhlar Attys QUALIFIED34Onyama Limba
1040Arvin N RutaUnited Kingdom2026-09-03Chapman, Ross E Esq QUALIFIED85Onyama Limba
1041Isabel C AlbaresSpain2026-09-22Commercial Press NEW37Anna Fali
1042Ivar P GauchoArgentina2026-09-03Rousseaux, Michael Esq UNQUALIFIED67Anna Fali
1043Jennifer U NickaArgentina2026-09-19Buckley Miller Wright QUALIFIED49Ivan Magalhaes
1044Antonio K FollerUnited Kingdom2026-09-07Feltz Printing Service PROPOSAL68Ioni Bowcher
1045Jefferson W WaycottSpain2026-09-24Benton, John B Jr UNQUALIFIED95Xuxue Feng
1046Aika V WaycottJapan2026-09-14Benton, John B Jr QUALIFIED48Anna Fali
1047Aruna C AlbaresIndia2026-09-21Feiner Bros NEW53Stephen Shaw
1048Arvin B ChuiFrance2026-09-26Chapman, Ross E Esq NEGOTIATION55Onyama Limba
1049Tony J CaudyAustralia2026-09-24Buckley Miller Wright UNQUALIFIED40Elwin Sharvill
Frozen Rows
NameCountryRepresentativeStatus
Izzy T MaletSpainBernardo Dominic QUALIFIED
Chavez O FigeroaGermanyAsiya Javayant NEGOTIATION
Wickens N VenereBrazilBernardo Dominic QUALIFIED
Jefferson M FlosiUnited KingdomIoni Bowcher UNQUALIFIED
Kadeem D NickaRussiaAsiya Javayant PROPOSAL
Cody S RulapaughRussiaIoni Bowcher NEW
Ricardo C TollnerFranceIoni Bowcher QUALIFIED
Nicolas Q GillianIndiaIoni Bowcher UNQUALIFIED
Jennifer F FlosiFranceOnyama Limba RENEWAL
Mujtaba I KuskoBrazilBernardo Dominic PROPOSAL
Aruna J NickaBrazilBernardo Dominic PROPOSAL
Ivar K IturbideGermanyStephen Shaw NEGOTIATION
Antonio P CaldareraItalyElwin Sharvill QUALIFIED
Kaitlin Z CaldareraItalyElwin Sharvill RENEWAL
Morrow D FollerSpainIvan Magalhaes NEW
Julie H AlbaresJapanOnyama Limba NEGOTIATION
Faith M SaylorsIndiaAmy Elsner NEGOTIATION
Alejandro R RulapaughRussiaAmy Elsner NEGOTIATION
Darci A ChuiBrazilOnyama Limba NEW
Francesco M GlickAustraliaIoni Bowcher RENEWAL
Arvin L BriddickSpainElwin Sharvill UNQUALIFIED
Claire E CampainGermanyOnyama Limba QUALIFIED
Munro Q IturbideFranceAmy Elsner RENEWAL
Deepesh M StockhamJapanElwin Sharvill NEW
Munro Z TollnerCanadaIvan Magalhaes QUALIFIED
Adams I FollerJapanAmy Elsner RENEWAL
Jennifer Y SchemmerFranceAsiya Javayant RENEWAL
Greenwood C PaprockiUnited KingdomElwin Sharvill QUALIFIED
Ricardo D WaycottItalyAsiya Javayant PROPOSAL
Greenwood D KuskoIndiaXuxue Feng NEW
Smith B WhobreyAustraliaIoni Bowcher NEW
Tony S SaylorsCanadaOnyama Limba RENEWAL
Murillo Q TollnerIndiaIvan Magalhaes NEGOTIATION
Claire J ShinkoSpainAmy Elsner UNQUALIFIED
Adams D NestleRussiaXuxue Feng RENEWAL
Arvin J BriddickGermanyElwin Sharvill PROPOSAL
Silvio C ShinkoGermanyAsiya Javayant NEGOTIATION
James B MarrierUnited KingdomIoni Bowcher NEW
Munro L DoeCanadaAmy Elsner QUALIFIED
Chavez I MarrierArgentinaElwin Sharvill PROPOSAL
Ricardo I ButtGermanyAsiya Javayant NEW
Stacey S MaletSpainIvan Magalhaes UNQUALIFIED
Darci A RulapaughBrazilElwin Sharvill NEGOTIATION
Sinclair E ShinkoUnited KingdomIvan Magalhaes QUALIFIED
Arvin D SaylorsGermanyIoni Bowcher NEW
Octavia C GillianArgentinaStephen Shaw NEW
Munro L SergiArgentinaXuxue Feng PROPOSAL
Aruna I StockhamItalyIvan Magalhaes QUALIFIED
Mayumi S RulapaughGermanyIvan Magalhaes QUALIFIED
Sinclair R RutaFranceAnna Fali NEGOTIATION
Frozen Columns
Name
Aika B Figeroa
Cody J Kusko
Johnson R Ostrosky
Adams T Doe
Leja B Venere
Greenwood P Amigon
Munro T Wieser
Octavia C Saylors
Stacey R Albares
Johnson S Waycott
Clifford K Iturbide
Johnson C Flosi
Emily T Vocelka
Claire I Bolognia
Silvio X Whobrey
Darci G Chui
Antonio W Nestle
Misaki S Dilliard
Julie R Bowley
Octavia N Chui
Jennifer U Doe
Ricardo D Marrier
Antonio P Ostrosky
Jones O Rulapaugh
Kadeem Z Darakjy
Darci Y Caldarera
Antonio W Bolognia
Chavez Y Kolmetz
Juan D Kolmetz
Chavez T Venere
Adams N Marrier
Cody K Chui
Emily V Campain
Alejandro N Ferencz
Rodrigues F Bowley
Munro N Caldarera
Leja L Tollner
Johnson C Saylors
Aika Y Vocelka
Deepesh X Rulapaugh
Costa Y Stenseth
Aditya N Butt
Clifford M Malet
Cody H Ferencz
Ashley V Shinko
Leon Y Rulapaugh
Kadeem V Ferencz
Salvatore U Inouye
Rodrigues H Morasca
Ashley P Gillian
IdCountryDate
1000India2026-09-14
1001India2026-09-27
1002Japan2026-09-27
1003Russia2026-09-11
1004Canada2026-09-24
1005Italy2026-09-11
1006Japan2026-09-06
1007Russia2026-08-30
1008India2026-09-18
1009India2026-09-26
1010Spain2026-09-24
1011Russia2026-09-24
1012Russia2026-09-10
1013France2026-09-03
1014Russia2026-09-11
1015United Kingdom2026-09-02
1016Canada2026-09-07
1017France2026-09-04
1018Germany2026-09-12
1019Brazil2026-09-04
1020India2026-09-21
1021India2026-09-28
1022Russia2026-09-25
1023France2026-08-31
1024Japan2026-09-04
1025Russia2026-09-25
1026Spain2026-09-10
1027France2026-09-03
1028Russia2026-09-26
1029France2026-09-21
1030Brazil2026-09-24
1031Italy2026-09-02
1032Australia2026-09-10
1033United Kingdom2026-09-26
1034Russia2026-09-07
1035Italy2026-09-10
1036Russia2026-09-22
1037Brazil2026-09-09
1038India2026-08-31
1039Russia2026-09-27
1040Australia2026-09-11
1041Japan2026-09-08
1042India2026-08-31
1043Spain2026-09-01
1044Australia2026-09-26
1045Russia2026-09-28
1046India2026-09-06
1047Canada2026-09-27
1048Italy2026-09-01
1049Japan2026-09-13

On-Demand Data

NameIdCountryDate
Emily Z Chui1000Australia2026-09-02
Francesco O Nestle1001United Kingdom2026-09-25
Alejandro J Albares1002Argentina2026-09-19
Jefferson B Slusarski1003Italy2026-09-12
Cody M Darakjy1004Russia2026-08-30
Sinclair S Tollner1005Spain2026-09-06
Mujtaba T Marrier1006Brazil2026-09-27
Tony Q Caudy1007Argentina2026-09-21
Sinclair R Whobrey1008Japan2026-08-30
Antonio C Stockham1009France2026-09-11
Johnson F Oldroyd1010Brazil2026-09-15
Wickens S Darakjy1011Canada2026-09-28
Kaitlin E Rulapaugh1012United Kingdom2026-09-12
Leja V Schemmer1013Germany2026-09-25
Misaki E Flosi1014Japan2026-09-11
Johnson D Rim1015Brazil2026-09-14
Johnson A Royster1016Italy2026-09-22
Silvio O Albares1017Argentina2026-09-18
Jefferson K Campain1018Australia2026-09-23
Antonio X Foller1019Australia2026-09-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Aika L NestleFranceElwin Sharvill NEW
Tony S PaprockiBrazilAmy Elsner PROPOSAL
Chavez Q GillianFranceAsiya Javayant NEW
Nicolas Y PaprockiAustraliaIvan Magalhaes UNQUALIFIED
Leja G CampainFranceOnyama Limba NEGOTIATION
Jennifer H GlickFranceAmy Elsner NEW
Cody T DilliardSpainStephen Shaw NEW
Octavia V SlusarskiArgentinaIvan Magalhaes QUALIFIED
Morrow P NestleFranceAnna Fali RENEWAL
Mujtaba W PerinIndiaIvan Magalhaes UNQUALIFIED
Jeanfrancois S StockhamIndiaOnyama Limba NEW
Tony C GauchoAustraliaAmy Elsner RENEWAL
Chavez W NestleJapanElwin Sharvill NEW
Claire V RimIndiaAsiya Javayant PROPOSAL
Deepesh L DarakjySpainAmy Elsner NEGOTIATION
Silvio J AmigonAustraliaElwin Sharvill UNQUALIFIED
Aika Q GillianItalyAmy Elsner QUALIFIED
Ivar X OstroskyUnited KingdomBernardo Dominic RENEWAL
Kaitlin W RoysterCanadaAnna Fali NEGOTIATION
Munro Y SchemmerCanadaOnyama Limba RENEWAL
Claire Y MaletIndiaAnna Fali NEGOTIATION
Greenwood A GauchoSpainIoni Bowcher QUALIFIED
Maisha L StensethRussiaIvan Magalhaes QUALIFIED
Misaki S MacleadArgentinaOnyama Limba QUALIFIED
Julie I NickaSpainAsiya Javayant PROPOSAL
Leja M MorascaItalyAmy Elsner NEW
Misaki K SergiItalyElwin Sharvill RENEWAL
Murillo U MorascaSpainBernardo Dominic RENEWAL
Murillo F ButtAustraliaBernardo Dominic QUALIFIED
Arvin B StockhamRussiaAsiya Javayant NEGOTIATION
Sinclair R FigeroaJapanIvan Magalhaes NEGOTIATION
Arvin N AmigonFranceElwin Sharvill NEW
Ricardo V SergiUnited KingdomOnyama Limba NEGOTIATION
Ashley Z FerenczBrazilIoni Bowcher NEGOTIATION
Aruna R VenereCanadaIoni Bowcher NEW
Wickens L BologniaItalyAnna Fali UNQUALIFIED
Greenwood U CampainItalyAsiya Javayant PROPOSAL
Izzy U StensethGermanyAmy Elsner PROPOSAL
Aditya T WaycottBrazilStephen Shaw NEGOTIATION
Antonio B BriddickArgentinaAnna Fali 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>