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
Aika O KuskoItalyAsiya Javayant NEW
Isabel S FerenczGermanyIoni Bowcher RENEWAL
Rodrigues H MorascaAustraliaAsiya Javayant UNQUALIFIED
Chavez C OstroskyIndiaIoni Bowcher UNQUALIFIED
Ricardo C PerinJapanAsiya Javayant UNQUALIFIED
Darci C FerenczRussiaAnna Fali NEW
Julie Y VenereUnited KingdomXuxue Feng UNQUALIFIED
Emily Q ChuiUnited KingdomIvan Magalhaes QUALIFIED
Alejandro Y RutaIndiaElwin Sharvill NEW
Julie F MaletAustraliaOnyama Limba PROPOSAL
Izzy K ChuiRussiaXuxue Feng NEGOTIATION
Morrow C BowleyFranceIvan Magalhaes RENEWAL
Sinclair Y RimAustraliaElwin Sharvill NEGOTIATION
Maria Y ChuiGermanyXuxue Feng RENEWAL
Salvatore I BowleyArgentinaAnna Fali PROPOSAL
Kaitlin M BowleyBrazilAsiya Javayant PROPOSAL
Jennifer I MaletCanadaAsiya Javayant UNQUALIFIED
Faith N WhobreyItalyElwin Sharvill QUALIFIED
Chavez N RoysterGermanyBernardo Dominic PROPOSAL
Rodrigues G FigeroaJapanAnna Fali UNQUALIFIED
Julie J StensethBrazilBernardo Dominic RENEWAL
Jeanfrancois L RulapaughBrazilXuxue Feng NEGOTIATION
Aruna M RimJapanAsiya Javayant RENEWAL
Maria Z CaudyItalyElwin Sharvill PROPOSAL
Isabel E PoquetteGermanyElwin Sharvill NEGOTIATION
Clifford Q PerinJapanStephen Shaw RENEWAL
Murillo S PoquetteSpainBernardo Dominic PROPOSAL
Salvatore B MacleadSpainIoni Bowcher QUALIFIED
Leon U RimGermanyAnna Fali UNQUALIFIED
Tony E DilliardIndiaElwin Sharvill PROPOSAL
Faith L SlusarskiJapanBernardo Dominic NEGOTIATION
Adams G FollerSpainOnyama Limba NEW
Morrow P StockhamFranceAsiya Javayant PROPOSAL
Francesco C NickaGermanyIvan Magalhaes NEW
Leja V WhobreyCanadaBernardo Dominic QUALIFIED
Arvin B IturbideAustraliaAsiya Javayant UNQUALIFIED
Deepesh X FollerGermanyAsiya Javayant NEW
Chavez X FigeroaUnited KingdomIvan Magalhaes NEW
Wickens P NestleItalyElwin Sharvill NEGOTIATION
Juan S VocelkaRussiaXuxue Feng PROPOSAL
Leon W NestleIndiaStephen Shaw NEGOTIATION
Mujtaba N OldroydFranceStephen Shaw NEW
Darci K StensethArgentinaAmy Elsner NEGOTIATION
Clifford T OldroydBrazilElwin Sharvill QUALIFIED
Isabel A GauchoBrazilElwin Sharvill QUALIFIED
Octavia V SaylorsFranceElwin Sharvill RENEWAL
Costa B SaylorsArgentinaIvan Magalhaes UNQUALIFIED
Greenwood D WieserBrazilOnyama Limba PROPOSAL
Maisha I ChuiUnited KingdomXuxue Feng NEW
Kadeem H VocelkaAustraliaIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Julie O CaudyJapanStephen Shaw RENEWAL
Murillo G MacleadCanadaAsiya Javayant NEGOTIATION
Jones V DarakjyBrazilAsiya Javayant UNQUALIFIED
Chavez E SaylorsIndiaAnna Fali NEGOTIATION
Kaitlin E FerenczRussiaIvan Magalhaes QUALIFIED
Wickens M GlickJapanElwin Sharvill QUALIFIED
Leja Q MaletFranceAmy Elsner QUALIFIED
Wickens S WieserUnited KingdomBernardo Dominic RENEWAL
Kaitlin I CampainRussiaOnyama Limba NEGOTIATION
Misaki K StockhamFranceAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson C PerinUnited Kingdom2026-09-03Feiner Bros UNQUALIFIED10Elwin Sharvill
1001Claire E KolmetzBrazil2026-08-26Feltz Printing Service NEGOTIATION60Ioni Bowcher
1002Ashley S PerinBrazil2026-09-09Morlong Associates PROPOSAL68Xuxue Feng
1003Juan S AmigonJapan2026-09-15Morlong Associates UNQUALIFIED60Stephen Shaw
1004Munro L SergiSpain2026-09-07Chemel, James L Cpa QUALIFIED58Ioni Bowcher
1005Aruna H WieserCanada2026-08-30Rangoni Of Florence QUALIFIED71Asiya Javayant
1006Aruna Y SchemmerArgentina2026-09-05Morlong Associates UNQUALIFIED99Elwin Sharvill
1007Nicolas X WieserJapan2026-09-14Chanay, Jeffrey A Esq NEGOTIATION95Onyama Limba
1008Kadeem W ShinkoIndia2026-09-05Chanay, Jeffrey A Esq NEW47Xuxue Feng
1009Clifford T ChuiCanada2026-09-12Morlong Associates PROPOSAL63Asiya Javayant
1010Jones Z ShinkoJapan2026-09-09Rangoni Of Florence NEGOTIATION82Bernardo Dominic
1011Maria N ChuiSpain2026-09-20Feltz Printing Service NEGOTIATION0Bernardo Dominic
1012Jeanfrancois B VocelkaGermany2026-09-14Feiner Bros NEGOTIATION10Stephen Shaw
1013Jeanfrancois J RoysterGermany2026-09-12Rousseaux, Michael Esq NEGOTIATION30Bernardo Dominic
1014Greenwood A PaprockiUnited Kingdom2026-08-28Printing Dimensions NEGOTIATION7Asiya Javayant
1015Adams P AmigonFrance2026-09-16Feltz Printing Service UNQUALIFIED75Onyama Limba
1016Jefferson X OstroskyRussia2026-09-02Dorl, James J Esq PROPOSAL95Onyama Limba
1017David E KuskoJapan2026-09-05Dorl, James J Esq UNQUALIFIED94Amy Elsner
1018Silvio C PoquetteBrazil2026-09-10Rousseaux, Michael Esq RENEWAL36Amy Elsner
1019James E AlbaresIndia2026-09-24Feltz Printing Service UNQUALIFIED30Bernardo Dominic
1020Morrow I KuskoJapan2026-09-21Rousseaux, Michael Esq NEW83Ivan Magalhaes
1021Claire X TollnerRussia2026-09-03Feiner Bros UNQUALIFIED53Ivan Magalhaes
1022Jefferson H BowleyBrazil2026-09-09Feltz Printing Service RENEWAL58Elwin Sharvill
1023Nicolas S AmigonUnited Kingdom2026-09-03Chapman, Ross E Esq PROPOSAL0Bernardo Dominic
1024Rodrigues J ChuiFrance2026-09-10King, Christopher A Esq RENEWAL92Ivan Magalhaes
1025Kadeem E ButtGermany2026-09-08King, Christopher A Esq RENEWAL77Ivan Magalhaes
1026Claire Q MorascaBrazil2026-08-30Chapman, Ross E Esq UNQUALIFIED37Amy Elsner
1027Munro J CaldareraJapan2026-09-08Feltz Printing Service NEW94Ivan Magalhaes
1028Leja F ChuiGermany2026-09-15Truhlar And Truhlar Attys QUALIFIED70Bernardo Dominic
1029Maisha L BologniaJapan2026-09-11Rousseaux, Michael Esq RENEWAL61Amy Elsner
1030Claire T GillianSpain2026-08-28Chanay, Jeffrey A Esq NEGOTIATION55Amy Elsner
1031Aika E MaletFrance2026-09-04Morlong Associates UNQUALIFIED13Bernardo Dominic
1032Wickens H ButtUnited Kingdom2026-08-31Feltz Printing Service RENEWAL63Onyama Limba
1033Salvatore U FollerUnited Kingdom2026-09-20Chemel, James L Cpa UNQUALIFIED85Ivan Magalhaes
1034Julie X BowleyAustralia2026-08-29Dorl, James J Esq UNQUALIFIED17Stephen Shaw
1035Maisha B CaudyJapan2026-08-28Morlong Associates NEGOTIATION0Elwin Sharvill
1036Munro O FollerArgentina2026-09-06Feltz Printing Service NEGOTIATION29Amy Elsner
1037Maria L BologniaAustralia2026-09-08Dorl, James J Esq NEGOTIATION75Ioni Bowcher
1038Salvatore Y AlbaresUnited Kingdom2026-09-19Rangoni Of Florence UNQUALIFIED5Elwin Sharvill
1039Ashley K RimJapan2026-09-24Benton, John B Jr NEW80Elwin Sharvill
1040Nicolas T InouyeIndia2026-08-30Commercial Press PROPOSAL46Onyama Limba
1041Claire P TollnerSpain2026-09-07Rangoni Of Florence NEGOTIATION70Anna Fali
1042Munro D NickaItaly2026-09-02Chemel, James L Cpa NEW91Bernardo Dominic
1043Ivar D CaldareraFrance2026-09-18Chemel, James L Cpa QUALIFIED17Stephen Shaw
1044Aditya B SaylorsRussia2026-08-30Morlong Associates RENEWAL80Xuxue Feng
1045Wickens X RoysterJapan2026-09-17Buckley Miller Wright QUALIFIED49Xuxue Feng
1046Jennifer S TollnerArgentina2026-09-08Truhlar And Truhlar Attys RENEWAL55Amy Elsner
1047Jones U FerenczFrance2026-09-18King, Christopher A Esq NEGOTIATION57Onyama Limba
1048Greenwood C FollerSpain2026-09-22Feltz Printing Service RENEWAL14Bernardo Dominic
1049Johnson B IturbideRussia2026-09-09Feltz Printing Service PROPOSAL82Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Kadeem W TollnerSpainOnyama Limba NEW
Jennifer C NestleJapanStephen Shaw QUALIFIED
Izzy H FigeroaAustraliaIvan Magalhaes NEW
Silvio R GillianSpainIvan Magalhaes PROPOSAL
Julie R GlickFranceElwin Sharvill UNQUALIFIED
Ashley B GlickCanadaOnyama Limba UNQUALIFIED
Deepesh U WieserIndiaIvan Magalhaes UNQUALIFIED
Jones N GarufiJapanAmy Elsner NEW
Aika Q InouyeFranceBernardo Dominic NEW
Kaitlin U WhobreyItalyAsiya Javayant NEW
Isabel V PerinFranceStephen Shaw NEGOTIATION
Isabel U PaprockiCanadaIoni Bowcher NEGOTIATION
Jeanfrancois G FollerArgentinaStephen Shaw QUALIFIED
Cody I RoysterGermanyIvan Magalhaes NEGOTIATION
Chavez L MaletIndiaAsiya Javayant RENEWAL
Salvatore R SergiRussiaOnyama Limba NEGOTIATION
Deepesh R RimUnited KingdomAsiya Javayant PROPOSAL
David R PoquetteFranceStephen Shaw PROPOSAL
Mayumi Z InouyeCanadaIvan Magalhaes UNQUALIFIED
James I RimGermanyOnyama Limba NEGOTIATION
Kadeem M RimArgentinaIoni Bowcher QUALIFIED
Leon W ChuiSpainAnna Fali RENEWAL
Johnson C WhobreyRussiaBernardo Dominic NEGOTIATION
Ricardo L CaudyJapanElwin Sharvill PROPOSAL
Smith R OldroydItalyElwin Sharvill NEGOTIATION
James Y StensethItalyOnyama Limba NEW
Leon A MacleadBrazilOnyama Limba RENEWAL
Aditya C ShinkoCanadaBernardo Dominic NEW
Mayumi B MaletAustraliaXuxue Feng PROPOSAL
Smith G VenereItalyAmy Elsner UNQUALIFIED
Wickens J ButtSpainStephen Shaw RENEWAL
Tony C ShinkoAustraliaStephen Shaw PROPOSAL
Isabel D OstroskyUnited KingdomXuxue Feng NEW
Maisha L KolmetzGermanyIvan Magalhaes PROPOSAL
Adams U SlusarskiIndiaOnyama Limba NEGOTIATION
Nicolas O FollerSpainIoni Bowcher RENEWAL
Darci H MorascaUnited KingdomIvan Magalhaes QUALIFIED
Tony T AmigonIndiaIvan Magalhaes PROPOSAL
Deepesh V MaletArgentinaStephen Shaw NEGOTIATION
Kaitlin L SergiAustraliaIvan Magalhaes QUALIFIED
Smith D AlbaresCanadaAmy Elsner NEGOTIATION
Antonio H RimRussiaIvan Magalhaes NEW
Octavia S MaletIndiaOnyama Limba UNQUALIFIED
Jefferson K GillianItalyIvan Magalhaes RENEWAL
Julie Q StensethJapanOnyama Limba NEGOTIATION
Wickens Q ChuiSpainBernardo Dominic QUALIFIED
Costa D SergiCanadaAmy Elsner NEW
Murillo T FollerUnited KingdomElwin Sharvill QUALIFIED
Johnson S ChuiFranceAsiya Javayant QUALIFIED
Isabel F FollerItalyXuxue Feng QUALIFIED
Frozen Columns
Name
Aika J Inouye
Jeanfrancois F Saylors
Isabel S Schemmer
James L Albares
Octavia B Perin
Emily J Rim
Aditya L Rulapaugh
Jeanfrancois S Nestle
Darci S Stenseth
Ricardo T Maclead
Aditya P Slusarski
Salvatore L Darakjy
Ricardo H Darakjy
Deepesh H Sergi
Wickens Z Chui
Maria V Darakjy
James P Bolognia
Emily M Poquette
Misaki V Royster
Alejandro K Marrier
Maisha Y Briddick
Kadeem Y Ferencz
Murillo I Kusko
Clifford R Shinko
Jones P Malet
Jennifer F Garufi
Tony J Maclead
Jones Y Slusarski
Wickens R Waycott
Jeanfrancois E Darakjy
Juan N Butt
Maisha F Albares
Adams N Whobrey
James T Poquette
Clifford C Tollner
Smith C Ferencz
Ashley F Caudy
Kaitlin Y Figeroa
Antonio Y Malet
Ivar U Sergi
Jennifer U Ferencz
Kaitlin B Sergi
Rodrigues M Ferencz
Wickens J Stockham
Ashley J Perin
Wickens C Amigon
Maria J Rulapaugh
Maisha V Butt
Morrow P Flosi
Kadeem C Stenseth
IdCountryDate
1000Canada2026-09-20
1001United Kingdom2026-09-20
1002Argentina2026-08-30
1003Canada2026-09-09
1004United Kingdom2026-09-01
1005Germany2026-08-27
1006Canada2026-09-12
1007Germany2026-08-28
1008Brazil2026-09-01
1009Italy2026-09-17
1010Russia2026-09-23
1011India2026-09-16
1012Spain2026-09-17
1013Brazil2026-09-12
1014Japan2026-08-28
1015Argentina2026-09-12
1016India2026-09-05
1017India2026-09-17
1018India2026-09-01
1019Russia2026-09-08
1020India2026-09-04
1021United Kingdom2026-08-26
1022Canada2026-09-13
1023India2026-09-23
1024Japan2026-09-11
1025Italy2026-09-21
1026Spain2026-09-06
1027Australia2026-09-17
1028Canada2026-09-14
1029Spain2026-09-11
1030Australia2026-09-18
1031Italy2026-08-28
1032Italy2026-09-05
1033Argentina2026-09-15
1034Australia2026-09-12
1035Brazil2026-09-18
1036United Kingdom2026-09-09
1037Japan2026-09-10
1038Germany2026-09-16
1039United Kingdom2026-09-20
1040Australia2026-09-04
1041Canada2026-09-12
1042Argentina2026-09-20
1043Japan2026-09-21
1044India2026-09-13
1045Brazil2026-09-12
1046Russia2026-09-21
1047France2026-09-05
1048Brazil2026-09-24
1049Germany2026-09-12

On-Demand Data

NameIdCountryDate
Stacey Q Tollner1000Italy2026-09-02
Alejandro Y Bowley1001Germany2026-09-10
Izzy B Shinko1002United Kingdom2026-08-30
Silvio E Nestle1003Russia2026-09-07
Arvin Q Glick1004Russia2026-09-04
Jefferson K Vocelka1005Italy2026-09-16
Morrow G Saylors1006Japan2026-08-31
Maria D Campain1007Australia2026-09-13
Julie C Kusko1008Germany2026-09-03
Stacey A Poquette1009Italy2026-08-29
Jeanfrancois E Malet1010Spain2026-09-11
Octavia Y Tollner1011Japan2026-09-03
Costa X Nestle1012United Kingdom2026-09-05
Jones O Darakjy1013Japan2026-08-29
Darci Y Oldroyd1014Germany2026-08-27
Kaitlin F Slusarski1015Argentina2026-09-11
Arvin I Whobrey1016Spain2026-09-02
Greenwood I Briddick1017France2026-09-11
Alejandro H Ostrosky1018India2026-09-12
Cody I Oldroyd1019Italy2026-09-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jones N KuskoCanadaAnna Fali RENEWAL
Octavia Z RoysterBrazilStephen Shaw NEGOTIATION
Mayumi U SaylorsFranceAsiya Javayant NEW
Chavez H BriddickBrazilAsiya Javayant NEW
Ashley Q FerenczBrazilAsiya Javayant NEGOTIATION
Salvatore H OldroydFranceXuxue Feng PROPOSAL
Mujtaba D BriddickCanadaAmy Elsner NEW
Johnson L FlosiUnited KingdomStephen Shaw NEGOTIATION
Jennifer Q AmigonFranceAsiya Javayant NEGOTIATION
Costa D RulapaughGermanyIoni Bowcher RENEWAL
Smith X SaylorsCanadaOnyama Limba NEW
Greenwood L CaudyFranceIoni Bowcher QUALIFIED
Isabel E StockhamAustraliaBernardo Dominic UNQUALIFIED
Clifford F SchemmerArgentinaIvan Magalhaes UNQUALIFIED
Tony I IturbideGermanyAsiya Javayant RENEWAL
Claire H OstroskyJapanOnyama Limba PROPOSAL
Arvin J KolmetzItalyElwin Sharvill NEGOTIATION
Jones A KolmetzItalyXuxue Feng PROPOSAL
Deepesh P GarufiArgentinaAmy Elsner RENEWAL
Misaki J DilliardSpainElwin Sharvill NEW
Julie A DarakjyItalyOnyama Limba NEW
Claire M FollerArgentinaOnyama Limba NEW
Ashley N KuskoFranceAnna Fali NEW
Ricardo U SlusarskiUnited KingdomBernardo Dominic NEGOTIATION
Maisha R NestleFranceStephen Shaw UNQUALIFIED
David F PaprockiItalyOnyama Limba NEGOTIATION
Antonio D NickaCanadaAmy Elsner UNQUALIFIED
Darci U ShinkoArgentinaAnna Fali UNQUALIFIED
Nicolas S NestleUnited KingdomElwin Sharvill RENEWAL
Maisha J SlusarskiItalyXuxue Feng RENEWAL
Juan Q CaudyJapanStephen Shaw NEGOTIATION
David X MorascaIndiaStephen Shaw RENEWAL
Maria L GauchoBrazilStephen Shaw RENEWAL
Jennifer G AlbaresUnited KingdomXuxue Feng PROPOSAL
Isabel U FigeroaCanadaAnna Fali UNQUALIFIED
Kadeem R InouyeUnited KingdomOnyama Limba NEW
Juan I RutaBrazilAmy Elsner PROPOSAL
James L WaycottGermanyOnyama Limba NEW
Arvin O SaylorsArgentinaIoni Bowcher RENEWAL
Aditya H BriddickIndiaXuxue 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>