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
Chavez K FigeroaIndiaXuxue Feng QUALIFIED
Adams H ShinkoItalyBernardo Dominic NEW
Adams Z WhobreyIndiaAmy Elsner PROPOSAL
Adams Q PaprockiGermanyElwin Sharvill UNQUALIFIED
Leon U CaudyFranceAmy Elsner NEGOTIATION
Chavez C RoysterItalyAmy Elsner QUALIFIED
Octavia V WhobreySpainAsiya Javayant UNQUALIFIED
Rodrigues D VocelkaAustraliaAmy Elsner QUALIFIED
James A DarakjyIndiaElwin Sharvill PROPOSAL
Clifford K FerenczArgentinaElwin Sharvill NEW
Deepesh C KuskoCanadaIoni Bowcher QUALIFIED
Aika F WaycottJapanXuxue Feng UNQUALIFIED
Leon V WaycottArgentinaStephen Shaw NEW
Salvatore J DoeArgentinaXuxue Feng QUALIFIED
Stacey B PerinCanadaElwin Sharvill RENEWAL
Aditya E FerenczArgentinaElwin Sharvill PROPOSAL
Ricardo M TollnerIndiaBernardo Dominic RENEWAL
Silvio N GauchoAustraliaOnyama Limba QUALIFIED
Kaitlin O OldroydItalyOnyama Limba NEW
Salvatore Z PoquetteGermanyAsiya Javayant QUALIFIED
Ivar G DarakjyFranceOnyama Limba RENEWAL
Greenwood J IturbideIndiaIoni Bowcher UNQUALIFIED
David K NestleUnited KingdomIvan Magalhaes UNQUALIFIED
Jefferson D CampainCanadaBernardo Dominic RENEWAL
Clifford G ChuiSpainElwin Sharvill RENEWAL
Cody Q AlbaresSpainAnna Fali RENEWAL
Adams Y KolmetzAustraliaAmy Elsner QUALIFIED
Mujtaba F MacleadCanadaIoni Bowcher NEGOTIATION
Isabel O SlusarskiCanadaXuxue Feng RENEWAL
Aditya C RimAustraliaElwin Sharvill UNQUALIFIED
Murillo Y NickaIndiaAmy Elsner NEW
Isabel I MaletRussiaAsiya Javayant NEGOTIATION
Emily O PaprockiAustraliaStephen Shaw PROPOSAL
Morrow X PaprockiCanadaXuxue Feng RENEWAL
Greenwood W PoquetteSpainElwin Sharvill RENEWAL
Deepesh X RoysterFranceIvan Magalhaes UNQUALIFIED
Kadeem W PaprockiJapanXuxue Feng RENEWAL
Rodrigues G WieserSpainElwin Sharvill NEGOTIATION
Munro U PaprockiAustraliaIvan Magalhaes NEGOTIATION
Wickens G RimFranceAnna Fali QUALIFIED
Adams F StensethIndiaIoni Bowcher PROPOSAL
Claire E FollerItalyXuxue Feng RENEWAL
Ashley O MorascaArgentinaXuxue Feng PROPOSAL
Mujtaba H SlusarskiJapanIvan Magalhaes RENEWAL
Maisha Y KuskoIndiaElwin Sharvill QUALIFIED
Aruna C NickaRussiaXuxue Feng UNQUALIFIED
Leon D KolmetzIndiaXuxue Feng QUALIFIED
Jefferson R WaycottItalyStephen Shaw PROPOSAL
Silvio A GarufiAustraliaOnyama Limba UNQUALIFIED
Kaitlin I WieserUnited KingdomAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Munro Z FollerRussiaIvan Magalhaes RENEWAL
Julie X AlbaresCanadaAsiya Javayant UNQUALIFIED
Leja G VocelkaIndiaAsiya Javayant PROPOSAL
Jones Z FerenczAustraliaAsiya Javayant QUALIFIED
Claire C DoeBrazilIvan Magalhaes NEGOTIATION
Jones N TollnerJapanAmy Elsner PROPOSAL
Antonio Z CampainFranceStephen Shaw NEGOTIATION
David H FerenczArgentinaAmy Elsner NEGOTIATION
Misaki B TollnerUnited KingdomIvan Magalhaes NEW
Sinclair L GlickSpainAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Chavez W CaldareraSpain2026-10-05Feiner Bros PROPOSAL14Elwin Sharvill
1001Darci B DarakjyFrance2026-09-15Rousseaux, Michael Esq PROPOSAL86Elwin Sharvill
1002Clifford S DilliardGermany2026-09-25King, Christopher A Esq PROPOSAL27Anna Fali
1003Clifford H OstroskyAustralia2026-10-01Rousseaux, Michael Esq NEGOTIATION90Ioni Bowcher
1004Mujtaba D FlosiFrance2026-09-29Buckley Miller Wright PROPOSAL85Bernardo Dominic
1005Jones V AmigonArgentina2026-09-24Morlong Associates NEGOTIATION34Ioni Bowcher
1006Jeanfrancois T StockhamCanada2026-10-04Chemel, James L Cpa PROPOSAL69Onyama Limba
1007Jennifer M ChuiAustralia2026-09-22Morlong Associates NEGOTIATION68Elwin Sharvill
1008Mujtaba Z FigeroaItaly2026-09-23Chanay, Jeffrey A Esq PROPOSAL70Ioni Bowcher
1009Emily Z CampainAustralia2026-09-10Feiner Bros PROPOSAL18Onyama Limba
1010Nicolas J FigeroaUnited Kingdom2026-10-03Morlong Associates NEW53Stephen Shaw
1011Claire D RulapaughBrazil2026-09-12Chemel, James L Cpa NEGOTIATION8Onyama Limba
1012Jones L MacleadFrance2026-09-29Dorl, James J Esq UNQUALIFIED53Xuxue Feng
1013Faith Z MarrierIndia2026-10-03Benton, John B Jr NEGOTIATION2Asiya Javayant
1014Arvin M PaprockiCanada2026-10-08Dorl, James J Esq RENEWAL21Asiya Javayant
1015Ashley W BriddickUnited Kingdom2026-09-11King, Christopher A Esq PROPOSAL86Onyama Limba
1016Clifford V DarakjyArgentina2026-09-15Feiner Bros UNQUALIFIED81Elwin Sharvill
1017Munro G OldroydItaly2026-09-26Chanay, Jeffrey A Esq PROPOSAL77Asiya Javayant
1018Maisha L BriddickSpain2026-09-14Chanay, Jeffrey A Esq RENEWAL34Xuxue Feng
1019Mujtaba J SergiBrazil2026-09-17Commercial Press NEGOTIATION64Bernardo Dominic
1020Emily E MacleadGermany2026-09-16Feltz Printing Service RENEWAL37Amy Elsner
1021Ashley V GillianFrance2026-09-24Morlong Associates PROPOSAL89Anna Fali
1022Clifford D SaylorsRussia2026-09-30Commercial Press PROPOSAL66Anna Fali
1023Francesco R BowleyItaly2026-09-09Truhlar And Truhlar Attys NEGOTIATION61Onyama Limba
1024Arvin K RulapaughJapan2026-10-03Chapman, Ross E Esq RENEWAL99Amy Elsner
1025Rodrigues S PaprockiAustralia2026-10-04Benton, John B Jr RENEWAL87Anna Fali
1026Morrow S FigeroaAustralia2026-10-06Chapman, Ross E Esq QUALIFIED87Elwin Sharvill
1027Kaitlin C FerenczSpain2026-09-27Chapman, Ross E Esq UNQUALIFIED44Onyama Limba
1028James R PoquetteIndia2026-09-13Rousseaux, Michael Esq PROPOSAL20Amy Elsner
1029Maria V FigeroaAustralia2026-09-30Commercial Press RENEWAL41Asiya Javayant
1030Kaitlin M StensethItaly2026-09-29Chemel, James L Cpa PROPOSAL49Bernardo Dominic
1031Morrow G TollnerGermany2026-10-03Feiner Bros RENEWAL48Asiya Javayant
1032Faith J SlusarskiCanada2026-09-16Rangoni Of Florence NEW77Ivan Magalhaes
1033Juan E FlosiItaly2026-09-10Printing Dimensions NEGOTIATION18Ivan Magalhaes
1034Claire T AmigonSpain2026-09-09Rousseaux, Michael Esq NEGOTIATION27Bernardo Dominic
1035Maisha A BriddickIndia2026-09-11Truhlar And Truhlar Attys QUALIFIED98Asiya Javayant
1036Arvin B TollnerFrance2026-09-19Rangoni Of Florence QUALIFIED49Ioni Bowcher
1037Wickens Q CaudyItaly2026-09-21King, Christopher A Esq NEW0Ivan Magalhaes
1038Deepesh P TollnerFrance2026-09-27Rangoni Of Florence UNQUALIFIED15Anna Fali
1039Izzy N FollerIndia2026-10-04King, Christopher A Esq QUALIFIED2Ioni Bowcher
1040Cody A OstroskyFrance2026-09-23Rousseaux, Michael Esq QUALIFIED86Xuxue Feng
1041Wickens Q DoeJapan2026-09-12Morlong Associates PROPOSAL16Amy Elsner
1042Sinclair Y MacleadSpain2026-09-27Benton, John B Jr RENEWAL22Bernardo Dominic
1043Faith Z FerenczItaly2026-09-14Feltz Printing Service NEW98Anna Fali
1044Ivar K RutaIndia2026-09-23Feiner Bros RENEWAL92Onyama Limba
1045Greenwood W RimSpain2026-09-10Printing Dimensions PROPOSAL74Elwin Sharvill
1046Jefferson S DarakjyFrance2026-09-19Buckley Miller Wright NEGOTIATION61Ioni Bowcher
1047Misaki I MaletRussia2026-09-30Dorl, James J Esq NEW7Xuxue Feng
1048Clifford C RimArgentina2026-10-03Dorl, James J Esq UNQUALIFIED7Ivan Magalhaes
1049Jennifer E RutaArgentina2026-09-10Buckley Miller Wright RENEWAL38Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues U DarakjyRussiaBernardo Dominic RENEWAL
Munro C FerenczJapanAsiya Javayant PROPOSAL
Claire B DarakjyJapanAnna Fali NEGOTIATION
Greenwood P SchemmerCanadaIoni Bowcher QUALIFIED
Kaitlin V OstroskyArgentinaBernardo Dominic NEW
Faith E ShinkoItalyAsiya Javayant NEGOTIATION
Faith T KuskoJapanIoni Bowcher NEGOTIATION
Adams C RulapaughRussiaElwin Sharvill NEW
Izzy D TollnerIndiaAnna Fali PROPOSAL
Nicolas U InouyeGermanyStephen Shaw QUALIFIED
Maisha L AmigonRussiaBernardo Dominic RENEWAL
Izzy F OstroskyGermanyOnyama Limba RENEWAL
Rodrigues G WieserIndiaIvan Magalhaes NEGOTIATION
Leon I RoysterIndiaStephen Shaw UNQUALIFIED
Johnson I SchemmerUnited KingdomAmy Elsner QUALIFIED
Izzy L FigeroaSpainIoni Bowcher NEGOTIATION
Misaki U PerinRussiaOnyama Limba PROPOSAL
Clifford D DoeGermanyStephen Shaw PROPOSAL
Jennifer A AlbaresJapanAnna Fali NEW
Alejandro O FerenczCanadaAsiya Javayant NEW
Jefferson D GillianUnited KingdomOnyama Limba PROPOSAL
Jennifer I OstroskyBrazilXuxue Feng NEGOTIATION
Ricardo D BriddickItalyAmy Elsner NEW
Rodrigues L TollnerUnited KingdomIoni Bowcher NEW
Munro I DarakjyFranceIoni Bowcher PROPOSAL
Wickens U SlusarskiArgentinaAnna Fali QUALIFIED
Maria P MacleadArgentinaStephen Shaw PROPOSAL
Ricardo Y ShinkoJapanStephen Shaw UNQUALIFIED
Kaitlin V RoysterCanadaAsiya Javayant QUALIFIED
Aika V KolmetzAustraliaIvan Magalhaes UNQUALIFIED
Misaki F MaletAustraliaOnyama Limba RENEWAL
Jennifer J SchemmerItalyIvan Magalhaes QUALIFIED
Chavez U KolmetzItalyAsiya Javayant NEGOTIATION
Leja M FigeroaFranceBernardo Dominic NEGOTIATION
Jennifer U PerinIndiaIoni Bowcher NEGOTIATION
Stacey X InouyeSpainIoni Bowcher RENEWAL
Jones B PaprockiCanadaOnyama Limba PROPOSAL
Aditya E PaprockiAustraliaAnna Fali QUALIFIED
Ricardo Z NestleUnited KingdomStephen Shaw RENEWAL
David G BowleyUnited KingdomXuxue Feng QUALIFIED
Juan H SlusarskiSpainAsiya Javayant UNQUALIFIED
Wickens S RutaRussiaIvan Magalhaes PROPOSAL
David V WaycottFranceElwin Sharvill NEGOTIATION
Morrow S FlosiJapanIoni Bowcher PROPOSAL
Adams R NickaArgentinaAmy Elsner NEGOTIATION
Faith L GarufiArgentinaBernardo Dominic PROPOSAL
Ashley D IturbideJapanIvan Magalhaes UNQUALIFIED
Nicolas Y BologniaSpainStephen Shaw PROPOSAL
Clifford N NickaRussiaOnyama Limba PROPOSAL
Izzy L SchemmerItalyIoni Bowcher QUALIFIED
Frozen Columns
Name
Wickens S Morasca
Rodrigues S Kusko
Munro M Gillian
Jeanfrancois X Nestle
Alejandro O Vocelka
Aruna L Figeroa
Sinclair Q Gillian
Leon P Nicka
Arvin V Briddick
Johnson J Schemmer
Chavez D Caldarera
Alejandro K Stockham
Alejandro W Poquette
Aditya K Gillian
Kaitlin D Inouye
Leja Z Rim
Wickens E Caudy
Salvatore R Oldroyd
Deepesh N Ferencz
Octavia K Bowley
Misaki B Sergi
Antonio B Venere
Stacey D Slusarski
Claire K Albares
Sinclair K Amigon
Jeanfrancois H Bowley
Mujtaba F Ruta
Faith T Saylors
Johnson D Morasca
Misaki R Iturbide
Jeanfrancois Q Dilliard
Aruna Z Kolmetz
Emily Z Butt
Cody T Caldarera
James S Albares
Greenwood P Chui
Isabel U Paprocki
Johnson B Malet
Morrow U Chui
Aruna P Maclead
James X Inouye
Jennifer B Kolmetz
Mujtaba Z Wieser
Mayumi X Stockham
Wickens I Wieser
Arvin C Ostrosky
Chavez K Caldarera
Julie C Rulapaugh
Munro B Figeroa
Leja W Nestle
IdCountryDate
1000Italy2026-09-30
1001Canada2026-09-25
1002United Kingdom2026-09-24
1003Germany2026-09-10
1004Canada2026-09-22
1005Italy2026-10-04
1006Spain2026-09-24
1007Brazil2026-09-22
1008Canada2026-09-24
1009United Kingdom2026-09-30
1010Argentina2026-10-08
1011Canada2026-09-15
1012Australia2026-09-09
1013Argentina2026-10-03
1014Russia2026-09-28
1015Russia2026-09-15
1016France2026-09-28
1017India2026-09-25
1018France2026-09-22
1019Australia2026-10-04
1020Italy2026-09-10
1021Russia2026-09-22
1022Italy2026-10-08
1023Canada2026-09-09
1024France2026-09-29
1025Spain2026-09-25
1026Brazil2026-09-13
1027Germany2026-09-29
1028India2026-10-01
1029United Kingdom2026-09-21
1030Canada2026-09-15
1031Australia2026-09-18
1032Brazil2026-09-27
1033Argentina2026-09-09
1034Canada2026-10-08
1035Japan2026-10-06
1036Argentina2026-09-29
1037Canada2026-09-28
1038Argentina2026-09-30
1039Brazil2026-10-04
1040France2026-10-04
1041Russia2026-10-04
1042Australia2026-09-22
1043Italy2026-09-21
1044India2026-09-26
1045France2026-09-15
1046Russia2026-09-13
1047Russia2026-10-06
1048Brazil2026-09-28
1049Spain2026-10-06

On-Demand Data

NameIdCountryDate
Nicolas P Schemmer1000United Kingdom2026-09-22
Octavia T Butt1001France2026-09-19
James O Tollner1002France2026-09-13
Aruna H Whobrey1003Japan2026-10-05
Clifford H Rim1004Argentina2026-09-20
Jeanfrancois G Caldarera1005France2026-09-28
Aruna D Vocelka1006Japan2026-09-20
Isabel B Wieser1007Italy2026-09-20
Ivar M Malet1008Canada2026-09-23
Izzy L Rim1009India2026-10-05
Tony R Campain1010Italy2026-09-28
Leon F Darakjy1011Germany2026-09-25
Misaki U Amigon1012United Kingdom2026-10-05
Murillo V Paprocki1013Argentina2026-09-09
Wickens X Perin1014Germany2026-10-06
Maria C Saylors1015Brazil2026-09-20
Arvin J Wieser1016Argentina2026-09-11
Wickens Y Schemmer1017India2026-09-09
Tony V Dilliard1018Italy2026-10-03
Munro S Rim1019France2026-09-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Octavia E FigeroaItalyElwin Sharvill NEGOTIATION
Isabel A GarufiGermanyOnyama Limba NEGOTIATION
Emily L BriddickItalyAmy Elsner RENEWAL
Chavez N ButtJapanIvan Magalhaes UNQUALIFIED
Aruna Y DilliardGermanyIoni Bowcher NEW
Silvio X SlusarskiArgentinaOnyama Limba NEW
Chavez D SaylorsFranceBernardo Dominic PROPOSAL
Darci V InouyeSpainAsiya Javayant UNQUALIFIED
Jennifer B CampainItalyIoni Bowcher NEW
Aika P GillianFranceAmy Elsner NEW
Faith G DarakjySpainOnyama Limba NEGOTIATION
Salvatore N MaletArgentinaAmy Elsner NEW
Clifford O InouyeFranceIvan Magalhaes PROPOSAL
Stacey W FlosiSpainAmy Elsner QUALIFIED
Clifford Q AlbaresJapanAnna Fali RENEWAL
Sinclair T DilliardJapanAsiya Javayant NEGOTIATION
Kaitlin V RutaGermanyIoni Bowcher QUALIFIED
Tony R GlickIndiaOnyama Limba PROPOSAL
Emily E MaletFranceBernardo Dominic QUALIFIED
Kadeem M ShinkoItalyAmy Elsner NEW
Rodrigues E SchemmerRussiaBernardo Dominic QUALIFIED
Mujtaba O MarrierAustraliaAmy Elsner PROPOSAL
Greenwood G WaycottFranceOnyama Limba NEGOTIATION
Silvio W VenereUnited KingdomAmy Elsner RENEWAL
Faith D GillianJapanStephen Shaw QUALIFIED
Chavez X MarrierRussiaOnyama Limba NEW
Rodrigues Y FigeroaItalyStephen Shaw NEGOTIATION
Kaitlin Z GillianItalyOnyama Limba RENEWAL
Wickens P SergiCanadaAsiya Javayant UNQUALIFIED
Aruna W VenereArgentinaElwin Sharvill UNQUALIFIED
Costa F KuskoAustraliaOnyama Limba RENEWAL
Claire F VenereCanadaAmy Elsner QUALIFIED
Octavia B NickaItalyBernardo Dominic RENEWAL
Chavez V WieserCanadaAsiya Javayant QUALIFIED
Faith D CampainFranceAmy Elsner QUALIFIED
Emily W OldroydAustraliaOnyama Limba PROPOSAL
Izzy U GlickFranceAmy Elsner RENEWAL
Chavez G AmigonArgentinaStephen Shaw UNQUALIFIED
Jefferson Y GlickGermanyXuxue Feng PROPOSAL
Wickens R ButtCanadaXuxue Feng NEW

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