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
Rodrigues U RimGermanyBernardo Dominic NEGOTIATION
Jennifer W RutaFranceAnna Fali NEGOTIATION
Leon D IturbideSpainStephen Shaw PROPOSAL
Murillo P SergiRussiaIoni Bowcher PROPOSAL
Jeanfrancois B NickaRussiaBernardo Dominic QUALIFIED
Claire U OldroydJapanElwin Sharvill NEGOTIATION
Chavez U SergiAustraliaStephen Shaw NEGOTIATION
Alejandro H GlickSpainIoni Bowcher NEGOTIATION
Leja L RutaAustraliaXuxue Feng RENEWAL
Alejandro Z BowleyJapanElwin Sharvill QUALIFIED
Arvin Z SaylorsGermanyBernardo Dominic UNQUALIFIED
Ashley K AmigonJapanIvan Magalhaes RENEWAL
Maisha O AmigonItalyAmy Elsner NEGOTIATION
Cody G InouyeGermanyElwin Sharvill RENEWAL
Faith Z OstroskyGermanyBernardo Dominic RENEWAL
Aditya B GauchoItalyAmy Elsner PROPOSAL
Murillo C GlickCanadaIvan Magalhaes QUALIFIED
Antonio V DilliardUnited KingdomElwin Sharvill UNQUALIFIED
Mujtaba N MacleadBrazilAnna Fali QUALIFIED
Wickens T FollerBrazilAsiya Javayant NEGOTIATION
Ricardo U DilliardSpainAsiya Javayant RENEWAL
Silvio D MaletBrazilStephen Shaw UNQUALIFIED
Isabel M SchemmerBrazilElwin Sharvill NEGOTIATION
Jones C VocelkaGermanyIoni Bowcher UNQUALIFIED
Izzy L CampainItalyOnyama Limba QUALIFIED
Aika Y WhobreyUnited KingdomBernardo Dominic NEGOTIATION
Salvatore V TollnerAustraliaIvan Magalhaes QUALIFIED
Aruna I PerinUnited KingdomBernardo Dominic PROPOSAL
James J MaletIndiaOnyama Limba RENEWAL
Leon O VocelkaItalyAsiya Javayant NEW
Francesco E NestleFranceAnna Fali UNQUALIFIED
Claire Y PoquetteFranceElwin Sharvill RENEWAL
Nicolas Q GauchoUnited KingdomXuxue Feng PROPOSAL
Cody Z MaletItalyAnna Fali UNQUALIFIED
Murillo C StensethBrazilXuxue Feng NEW
Maria R KuskoJapanAsiya Javayant QUALIFIED
Kaitlin B KolmetzSpainAnna Fali QUALIFIED
Ricardo J ShinkoBrazilAmy Elsner PROPOSAL
Faith G AlbaresGermanyIoni Bowcher NEW
Tony T CaldareraJapanStephen Shaw PROPOSAL
Octavia T StockhamArgentinaAnna Fali UNQUALIFIED
Maria H SergiItalyOnyama Limba NEW
Nicolas Z DilliardAustraliaElwin Sharvill UNQUALIFIED
Kaitlin Y GlickJapanStephen Shaw RENEWAL
Faith L RimItalyAnna Fali RENEWAL
Jones B MaletJapanOnyama Limba NEW
Francesco U InouyeItalyAsiya Javayant PROPOSAL
Aditya K IturbideUnited KingdomXuxue Feng QUALIFIED
Ricardo V SergiItalyStephen Shaw RENEWAL
Tony N FlosiCanadaStephen Shaw NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Mayumi S NickaItalyBernardo Dominic QUALIFIED
Smith Y OstroskyIndiaIoni Bowcher UNQUALIFIED
Nicolas U MorascaSpainBernardo Dominic RENEWAL
Maria Q PaprockiSpainOnyama Limba UNQUALIFIED
Wickens W GillianSpainIoni Bowcher UNQUALIFIED
Claire C SchemmerFranceAmy Elsner RENEWAL
Nicolas O TollnerItalyOnyama Limba QUALIFIED
Izzy U MacleadRussiaBernardo Dominic QUALIFIED
Smith Q SergiJapanIvan Magalhaes UNQUALIFIED
Adams X FlosiRussiaStephen Shaw RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo D IturbideUnited Kingdom2026-10-28Printing Dimensions NEW74Ioni Bowcher
1001Aditya K WhobreyFrance2026-10-02Commercial Press RENEWAL72Elwin Sharvill
1002Jefferson O InouyeBrazil2026-10-17Feiner Bros UNQUALIFIED98Xuxue Feng
1003Kaitlin F SergiRussia2026-10-26Benton, John B Jr NEGOTIATION90Amy Elsner
1004Cody J PaprockiIndia2026-10-24King, Christopher A Esq NEGOTIATION64Elwin Sharvill
1005Stacey J MacleadUnited Kingdom2026-10-01Chapman, Ross E Esq PROPOSAL14Bernardo Dominic
1006Arvin A RoysterRussia2026-10-24Truhlar And Truhlar Attys QUALIFIED10Elwin Sharvill
1007Costa K PoquetteFrance2026-10-14Dorl, James J Esq QUALIFIED7Stephen Shaw
1008Sinclair S MorascaUnited Kingdom2026-10-01Benton, John B Jr UNQUALIFIED58Onyama Limba
1009David G VenereJapan2026-10-21Truhlar And Truhlar Attys RENEWAL81Xuxue Feng
1010Alejandro K GarufiJapan2026-10-06Chemel, James L Cpa UNQUALIFIED62Bernardo Dominic
1011Maria V FerenczIndia2026-10-18King, Christopher A Esq PROPOSAL21Anna Fali
1012Johnson E FigeroaUnited Kingdom2026-10-21Commercial Press PROPOSAL24Xuxue Feng
1013Izzy Q MorascaArgentina2026-10-26Rangoni Of Florence RENEWAL92Amy Elsner
1014Leon D DarakjyJapan2026-10-27Rangoni Of Florence UNQUALIFIED39Ioni Bowcher
1015Smith W BowleyItaly2026-10-09King, Christopher A Esq QUALIFIED89Ivan Magalhaes
1016Jeanfrancois R VenereAustralia2026-10-15Chanay, Jeffrey A Esq NEW94Ivan Magalhaes
1017Antonio Z DoeRussia2026-10-14Chanay, Jeffrey A Esq NEGOTIATION91Bernardo Dominic
1018Jennifer G FollerFrance2026-10-20Rousseaux, Michael Esq NEGOTIATION45Stephen Shaw
1019Smith Y NestleUnited Kingdom2026-10-19Buckley Miller Wright NEW60Stephen Shaw
1020Leon F MaletIndia2026-09-30Chapman, Ross E Esq PROPOSAL42Ivan Magalhaes
1021Silvio Z SlusarskiItaly2026-10-08Chemel, James L Cpa PROPOSAL25Anna Fali
1022Claire V KolmetzItaly2026-10-05Buckley Miller Wright NEW71Elwin Sharvill
1023Adams B WhobreyFrance2026-10-09Feiner Bros UNQUALIFIED80Onyama Limba
1024Jennifer S FigeroaCanada2026-10-04King, Christopher A Esq UNQUALIFIED50Stephen Shaw
1025Francesco U InouyeAustralia2026-10-12Rousseaux, Michael Esq UNQUALIFIED14Xuxue Feng
1026Jones A GlickJapan2026-10-01King, Christopher A Esq QUALIFIED30Stephen Shaw
1027Arvin F GarufiItaly2026-09-30Truhlar And Truhlar Attys NEW83Ioni Bowcher
1028Mujtaba J PaprockiCanada2026-10-03Truhlar And Truhlar Attys PROPOSAL53Elwin Sharvill
1029Jeanfrancois L MaletSpain2026-10-27Morlong Associates NEW81Bernardo Dominic
1030Mayumi O AmigonItaly2026-10-05Commercial Press NEGOTIATION43Xuxue Feng
1031Julie H PoquetteCanada2026-10-06Morlong Associates RENEWAL13Onyama Limba
1032Silvio E CampainJapan2026-10-27Morlong Associates NEW59Xuxue Feng
1033Mujtaba B BriddickAustralia2026-10-13Chemel, James L Cpa QUALIFIED63Ivan Magalhaes
1034Jefferson B WaycottArgentina2026-10-13Feltz Printing Service PROPOSAL81Anna Fali
1035Darci F SergiFrance2026-10-27Commercial Press PROPOSAL97Bernardo Dominic
1036Arvin O BowleyFrance2026-10-01Feiner Bros PROPOSAL13Onyama Limba
1037Nicolas Y MaletSpain2026-09-30Dorl, James J Esq RENEWAL93Elwin Sharvill
1038David J WhobreyIndia2026-10-03King, Christopher A Esq NEGOTIATION56Amy Elsner
1039Claire N WieserRussia2026-10-29Rousseaux, Michael Esq UNQUALIFIED9Ivan Magalhaes
1040Aika E StensethFrance2026-10-06Morlong Associates NEGOTIATION30Xuxue Feng
1041Johnson H BriddickIndia2026-10-05Chanay, Jeffrey A Esq NEGOTIATION96Amy Elsner
1042Rodrigues B NickaSpain2026-10-29Morlong Associates RENEWAL96Amy Elsner
1043James O CaudyBrazil2026-10-17King, Christopher A Esq NEGOTIATION82Ivan Magalhaes
1044Alejandro N DilliardGermany2026-10-12Truhlar And Truhlar Attys NEGOTIATION75Anna Fali
1045Kaitlin M SchemmerGermany2026-10-25Morlong Associates RENEWAL60Ioni Bowcher
1046David Q WhobreyAustralia2026-10-09Feltz Printing Service PROPOSAL87Amy Elsner
1047Chavez B StensethSpain2026-10-02Commercial Press PROPOSAL28Ivan Magalhaes
1048James B ButtGermany2026-10-06Dorl, James J Esq NEW33Ivan Magalhaes
1049Kadeem D PerinItaly2026-10-01Chemel, James L Cpa QUALIFIED63Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Julie M ChuiArgentinaAnna Fali PROPOSAL
Faith M FerenczJapanAmy Elsner PROPOSAL
Morrow S FlosiRussiaElwin Sharvill QUALIFIED
Wickens C PerinBrazilStephen Shaw NEW
Darci O KuskoSpainElwin Sharvill RENEWAL
Maria W WieserIndiaAnna Fali NEGOTIATION
Clifford A FollerUnited KingdomIvan Magalhaes PROPOSAL
Alejandro P ButtIndiaIoni Bowcher NEW
Stacey P MorascaCanadaAsiya Javayant QUALIFIED
Francesco L WaycottUnited KingdomBernardo Dominic NEW
Jeanfrancois R CaudyAustraliaOnyama Limba QUALIFIED
Ricardo W RimBrazilOnyama Limba NEW
Ivar L GarufiSpainStephen Shaw QUALIFIED
Johnson A ChuiSpainXuxue Feng NEGOTIATION
Deepesh F BologniaSpainIvan Magalhaes QUALIFIED
Wickens O InouyeItalyBernardo Dominic RENEWAL
Maisha V AlbaresItalyXuxue Feng QUALIFIED
Jefferson N VocelkaArgentinaBernardo Dominic NEW
Isabel J OldroydCanadaElwin Sharvill PROPOSAL
Jefferson Y WhobreyUnited KingdomXuxue Feng NEGOTIATION
Cody W WaycottRussiaAmy Elsner NEGOTIATION
Izzy P ChuiGermanyXuxue Feng NEW
Kaitlin U MorascaAustraliaIoni Bowcher RENEWAL
Adams G CaldareraUnited KingdomIvan Magalhaes RENEWAL
Rodrigues H MaletUnited KingdomBernardo Dominic QUALIFIED
Rodrigues U RulapaughArgentinaBernardo Dominic PROPOSAL
Murillo P VenereSpainAsiya Javayant UNQUALIFIED
Greenwood R PoquetteGermanyElwin Sharvill QUALIFIED
Ricardo D CaudyUnited KingdomAnna Fali NEGOTIATION
Faith F GauchoSpainXuxue Feng RENEWAL
Sinclair N MarrierJapanIoni Bowcher NEW
Chavez C MarrierGermanyStephen Shaw NEGOTIATION
Jones Z PaprockiSpainAnna Fali UNQUALIFIED
Misaki R BologniaRussiaBernardo Dominic QUALIFIED
Maria B OstroskyItalyOnyama Limba NEW
Aruna O MacleadUnited KingdomElwin Sharvill UNQUALIFIED
Johnson S GillianAustraliaAnna Fali RENEWAL
Adams F PerinRussiaIoni Bowcher UNQUALIFIED
Greenwood Z NestleBrazilStephen Shaw NEGOTIATION
Clifford C OldroydFranceXuxue Feng PROPOSAL
Jeanfrancois V RulapaughJapanBernardo Dominic PROPOSAL
Juan S FlosiFranceOnyama Limba PROPOSAL
David V PoquetteAustraliaIoni Bowcher NEW
Aika F CaldareraIndiaAmy Elsner UNQUALIFIED
Antonio S KolmetzBrazilElwin Sharvill NEGOTIATION
Wickens O OldroydCanadaXuxue Feng NEW
Maria E RulapaughArgentinaElwin Sharvill NEGOTIATION
Mujtaba F CaldareraArgentinaIoni Bowcher PROPOSAL
Darci I ShinkoFranceStephen Shaw PROPOSAL
Juan H MacleadArgentinaStephen Shaw UNQUALIFIED
Frozen Columns
Name
Aika J Glick
Julie H Stenseth
Juan X Ferencz
Maisha G Iturbide
Aditya V Schemmer
Kaitlin M Foller
Maisha R Inouye
Adams L Stenseth
Aruna P Kusko
Aika L Stockham
Francesco G Poquette
Cody F Tollner
Tony I Briddick
Salvatore H Maclead
Ricardo L Kusko
James K Garufi
Aika H Gillian
Mayumi U Tollner
Morrow H Malet
Claire Q Ferencz
David H Kusko
Antonio O Flosi
Adams J Stockham
Maisha H Morasca
Tony S Figeroa
Adams D Glick
Aika Q Rulapaugh
Chavez A Iturbide
Octavia F Royster
Leja B Caudy
David L Rim
Nicolas C Vocelka
Salvatore Z Bolognia
Sinclair O Briddick
Aika F Glick
James S Nicka
Tony H Glick
Costa Y Darakjy
Salvatore B Oldroyd
Aika O Saylors
Jefferson U Figeroa
Adams C Sergi
Ivar L Figeroa
Cody V Saylors
Julie W Briddick
Aditya I Waycott
Chavez K Ostrosky
Faith L Chui
Izzy A Whobrey
Aruna A Albares
IdCountryDate
1000Canada2026-10-06
1001Italy2026-10-27
1002Brazil2026-10-02
1003Russia2026-10-02
1004Canada2026-10-24
1005United Kingdom2026-10-10
1006Spain2026-10-16
1007Australia2026-10-11
1008Japan2026-10-08
1009Canada2026-10-03
1010India2026-10-06
1011Spain2026-10-22
1012France2026-10-06
1013United Kingdom2026-10-12
1014Argentina2026-10-19
1015Italy2026-10-29
1016Brazil2026-10-27
1017France2026-10-29
1018Brazil2026-10-03
1019Spain2026-10-09
1020Argentina2026-10-24
1021Canada2026-10-08
1022Spain2026-10-21
1023Russia2026-10-18
1024Argentina2026-10-19
1025Spain2026-10-28
1026Argentina2026-10-27
1027Germany2026-10-10
1028France2026-10-29
1029Germany2026-10-02
1030Italy2026-10-06
1031France2026-09-30
1032United Kingdom2026-10-28
1033Russia2026-10-27
1034India2026-10-04
1035Argentina2026-09-30
1036Spain2026-10-08
1037United Kingdom2026-10-21
1038Japan2026-10-17
1039Japan2026-10-08
1040Japan2026-10-26
1041Argentina2026-10-19
1042Spain2026-10-14
1043Italy2026-10-03
1044Australia2026-10-17
1045Australia2026-10-29
1046Brazil2026-10-11
1047United Kingdom2026-10-12
1048India2026-10-17
1049Australia2026-10-26

On-Demand Data

NameIdCountryDate
Francesco D Ostrosky1000Australia2026-09-30
Mujtaba V Foller1001India2026-10-09
Octavia L Ferencz1002Italy2026-10-22
Jefferson M Vocelka1003Brazil2026-10-09
Clifford K Schemmer1004Italy2026-10-17
Costa X Nicka1005Germany2026-10-04
Izzy C Schemmer1006United Kingdom2026-10-12
Tony Z Sergi1007Canada2026-10-09
Mayumi I Perin1008Germany2026-10-02
David O Caudy1009Spain2026-10-06
Salvatore K Schemmer1010Japan2026-10-18
Greenwood O Saylors1011United Kingdom2026-10-20
Mayumi C Venere1012Russia2026-10-07
Kaitlin D Butt1013Italy2026-10-27
Silvio H Morasca1014Russia2026-10-07
Kaitlin W Tollner1015Russia2026-10-16
Rodrigues D Paprocki1016Canada2026-10-06
Izzy J Morasca1017United Kingdom2026-10-11
Ricardo U Wieser1018Germany2026-10-22
Maria E Ruta1019Brazil2026-10-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James O DarakjyUnited KingdomXuxue Feng RENEWAL
Tony Z ButtGermanyStephen Shaw PROPOSAL
Claire N RutaBrazilAsiya Javayant RENEWAL
Emily B OstroskyIndiaXuxue Feng UNQUALIFIED
Alejandro S FigeroaJapanOnyama Limba UNQUALIFIED
Sinclair M ChuiItalyXuxue Feng RENEWAL
Rodrigues P OldroydCanadaOnyama Limba NEGOTIATION
Arvin L TollnerRussiaAsiya Javayant PROPOSAL
Misaki O RutaAustraliaAnna Fali RENEWAL
Maria Z StockhamBrazilAsiya Javayant QUALIFIED
Wickens U ChuiJapanStephen Shaw NEGOTIATION
Jefferson K OstroskyJapanXuxue Feng PROPOSAL
Aika Z MorascaJapanIoni Bowcher QUALIFIED
Octavia H NickaIndiaBernardo Dominic QUALIFIED
Adams E GlickArgentinaAmy Elsner NEGOTIATION
Costa O BowleyJapanBernardo Dominic RENEWAL
Octavia L KolmetzItalyIvan Magalhaes NEGOTIATION
Juan R GarufiItalyBernardo Dominic RENEWAL
Misaki M PaprockiSpainStephen Shaw NEGOTIATION
Nicolas G BologniaCanadaStephen Shaw QUALIFIED
Kadeem P CaldareraSpainIoni Bowcher NEW
Wickens R MorascaArgentinaBernardo Dominic RENEWAL
Aruna P WieserItalyStephen Shaw NEGOTIATION
Johnson H WhobreyUnited KingdomAnna Fali UNQUALIFIED
Smith X KuskoAustraliaElwin Sharvill PROPOSAL
Faith I SergiJapanBernardo Dominic QUALIFIED
Jones R VocelkaJapanStephen Shaw QUALIFIED
Sinclair J PaprockiGermanyIoni Bowcher NEGOTIATION
Maisha M InouyeCanadaAnna Fali QUALIFIED
Murillo B WieserAustraliaAnna Fali QUALIFIED
Ivar Z MarrierRussiaStephen Shaw NEW
Jennifer K GlickIndiaStephen Shaw UNQUALIFIED
Wickens D VenereUnited KingdomBernardo Dominic QUALIFIED
Mayumi T GillianBrazilXuxue Feng UNQUALIFIED
Arvin B KolmetzFranceElwin Sharvill QUALIFIED
Rodrigues Z FollerAustraliaOnyama Limba PROPOSAL
Kadeem F InouyeRussiaAsiya Javayant NEW
Sinclair Z SergiBrazilAmy Elsner QUALIFIED
Smith P FlosiBrazilXuxue Feng PROPOSAL
Cody M NestleIndiaXuxue Feng UNQUALIFIED

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