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
Juan S ButtItalyOnyama Limba UNQUALIFIED
Clifford I KolmetzItalyAnna Fali RENEWAL
Sinclair Y GillianBrazilAmy Elsner NEGOTIATION
Emily Q TollnerAustraliaIoni Bowcher QUALIFIED
Munro S MaletBrazilIvan Magalhaes NEGOTIATION
Jefferson G NestleRussiaStephen Shaw UNQUALIFIED
Octavia T FlosiCanadaAsiya Javayant NEW
Nicolas P PerinArgentinaAnna Fali QUALIFIED
Mayumi B BowleyGermanyElwin Sharvill NEGOTIATION
Misaki M AlbaresGermanyStephen Shaw RENEWAL
Costa T KolmetzItalyAnna Fali NEGOTIATION
Rodrigues G BowleyRussiaAmy Elsner NEW
Claire O StensethJapanOnyama Limba NEW
Darci B NestleJapanAmy Elsner QUALIFIED
David F SergiArgentinaElwin Sharvill PROPOSAL
Kaitlin W BowleyCanadaAsiya Javayant UNQUALIFIED
Silvio G InouyeBrazilElwin Sharvill NEW
Tony G GillianFranceOnyama Limba PROPOSAL
Nicolas K RulapaughGermanyXuxue Feng PROPOSAL
Aruna V RulapaughIndiaAnna Fali NEW
Aditya X NickaItalyAnna Fali PROPOSAL
Maisha U FerenczJapanIoni Bowcher NEGOTIATION
Silvio W SchemmerItalyIvan Magalhaes QUALIFIED
Leja A RutaAustraliaAmy Elsner PROPOSAL
Johnson W PoquetteJapanXuxue Feng PROPOSAL
Alejandro Z RulapaughFranceAmy Elsner RENEWAL
Claire U WhobreyArgentinaIoni Bowcher QUALIFIED
Octavia S PaprockiGermanyBernardo Dominic PROPOSAL
Maria S RulapaughSpainElwin Sharvill RENEWAL
Maisha H WhobreyAustraliaOnyama Limba PROPOSAL
Julie Y PoquetteCanadaXuxue Feng RENEWAL
Cody E ShinkoItalyBernardo Dominic QUALIFIED
Jefferson A VocelkaAustraliaElwin Sharvill NEGOTIATION
Emily O WhobreyFranceStephen Shaw NEGOTIATION
Wickens X MaletGermanyIoni Bowcher UNQUALIFIED
Morrow Z CaldareraSpainAmy Elsner NEGOTIATION
Ricardo U OstroskyItalyAnna Fali NEW
Alejandro Z ButtBrazilStephen Shaw PROPOSAL
Stacey B OldroydIndiaIvan Magalhaes QUALIFIED
Cody D SaylorsRussiaXuxue Feng NEW
Cody W RoysterGermanyAmy Elsner PROPOSAL
Julie K AlbaresFranceStephen Shaw NEGOTIATION
Juan C StensethFranceAmy Elsner UNQUALIFIED
Smith M RoysterBrazilAnna Fali UNQUALIFIED
Chavez M FigeroaItalyIvan Magalhaes PROPOSAL
Cody K FigeroaRussiaAnna Fali RENEWAL
Smith T DilliardItalyAsiya Javayant NEW
Ricardo K RulapaughItalyElwin Sharvill NEGOTIATION
Mujtaba T AlbaresRussiaOnyama Limba UNQUALIFIED
Rodrigues B ChuiSpainBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jennifer X GarufiArgentinaElwin Sharvill NEGOTIATION
Johnson C SlusarskiAustraliaOnyama Limba NEW
Adams T RimFranceIoni Bowcher RENEWAL
Greenwood P FerenczJapanStephen Shaw NEGOTIATION
Isabel G GarufiRussiaBernardo Dominic NEW
Claire L DilliardFranceAnna Fali NEW
Salvatore R SchemmerBrazilAnna Fali UNQUALIFIED
Morrow S PaprockiRussiaElwin Sharvill NEGOTIATION
Munro H RulapaughArgentinaAsiya Javayant RENEWAL
Juan U SaylorsUnited KingdomAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Sinclair N GarufiItaly2026-10-10Benton, John B Jr QUALIFIED53Asiya Javayant
1001Salvatore K CaudyArgentina2026-09-20Morlong Associates NEGOTIATION16Elwin Sharvill
1002Silvio B WieserAustralia2026-10-06King, Christopher A Esq PROPOSAL3Asiya Javayant
1003Munro J VenereFrance2026-10-17Benton, John B Jr NEW14Stephen Shaw
1004Silvio C ShinkoJapan2026-09-22Feiner Bros QUALIFIED1Stephen Shaw
1005Maisha I DarakjyArgentina2026-09-28Morlong Associates NEW89Ioni Bowcher
1006Murillo Q CaldareraGermany2026-09-21Morlong Associates UNQUALIFIED93Stephen Shaw
1007Murillo F DarakjySpain2026-10-10Benton, John B Jr QUALIFIED18Anna Fali
1008Juan R GlickArgentina2026-10-01Truhlar And Truhlar Attys PROPOSAL99Ivan Magalhaes
1009Chavez H GarufiUnited Kingdom2026-10-11Printing Dimensions RENEWAL83Xuxue Feng
1010Jefferson U CaldareraRussia2026-10-18Chemel, James L Cpa NEW26Stephen Shaw
1011Adams P RoysterIndia2026-10-16Rangoni Of Florence UNQUALIFIED86Anna Fali
1012Stacey D SaylorsSpain2026-09-23Chapman, Ross E Esq NEW29Bernardo Dominic
1013Leon K GauchoUnited Kingdom2026-10-08Chanay, Jeffrey A Esq PROPOSAL36Ivan Magalhaes
1014Greenwood D StensethFrance2026-10-12Chanay, Jeffrey A Esq PROPOSAL80Elwin Sharvill
1015Murillo K VocelkaUnited Kingdom2026-10-08Benton, John B Jr QUALIFIED46Onyama Limba
1016Julie V WieserCanada2026-10-10Truhlar And Truhlar Attys PROPOSAL35Xuxue Feng
1017Wickens G ButtGermany2026-10-09Morlong Associates RENEWAL14Stephen Shaw
1018Morrow K AmigonIndia2026-09-23Buckley Miller Wright RENEWAL8Elwin Sharvill
1019Jones Q WaycottIndia2026-10-11Chanay, Jeffrey A Esq QUALIFIED35Asiya Javayant
1020Morrow O ChuiArgentina2026-09-26Feiner Bros RENEWAL61Bernardo Dominic
1021David H RutaCanada2026-10-03Feltz Printing Service RENEWAL89Ioni Bowcher
1022Stacey N PoquetteBrazil2026-10-01Rangoni Of Florence PROPOSAL14Elwin Sharvill
1023Maria K RulapaughUnited Kingdom2026-10-12Feltz Printing Service UNQUALIFIED41Bernardo Dominic
1024Emily A MarrierArgentina2026-09-26Truhlar And Truhlar Attys RENEWAL4Ivan Magalhaes
1025Leon L StensethArgentina2026-10-19Commercial Press PROPOSAL35Ivan Magalhaes
1026David J AmigonIndia2026-10-13Dorl, James J Esq NEW84Stephen Shaw
1027Johnson T RoysterIndia2026-10-11Rousseaux, Michael Esq PROPOSAL11Ioni Bowcher
1028Chavez B WieserSpain2026-10-10Feltz Printing Service NEGOTIATION57Anna Fali
1029Cody E NickaRussia2026-10-02Rangoni Of Florence PROPOSAL44Ivan Magalhaes
1030Costa S SchemmerArgentina2026-09-28Truhlar And Truhlar Attys UNQUALIFIED46Ivan Magalhaes
1031Kadeem Z SaylorsSpain2026-10-01Buckley Miller Wright NEGOTIATION62Bernardo Dominic
1032Murillo O GauchoAustralia2026-10-17Rangoni Of Florence PROPOSAL94Stephen Shaw
1033James X GillianCanada2026-10-04Benton, John B Jr UNQUALIFIED63Anna Fali
1034Ivar P FollerBrazil2026-10-15King, Christopher A Esq UNQUALIFIED53Amy Elsner
1035Rodrigues M RimIndia2026-10-17Chanay, Jeffrey A Esq NEW43Asiya Javayant
1036Emily I CaudyItaly2026-09-27Truhlar And Truhlar Attys UNQUALIFIED44Stephen Shaw
1037Juan X MarrierIndia2026-10-10Rousseaux, Michael Esq PROPOSAL57Ioni Bowcher
1038Jefferson M MaletFrance2026-10-17King, Christopher A Esq NEW70Ioni Bowcher
1039Rodrigues A FigeroaIndia2026-10-11Benton, John B Jr NEW18Amy Elsner
1040Arvin L InouyeGermany2026-10-16Feiner Bros RENEWAL8Anna Fali
1041Silvio C CaldareraUnited Kingdom2026-09-29Feiner Bros RENEWAL78Asiya Javayant
1042Silvio N SaylorsAustralia2026-10-09King, Christopher A Esq UNQUALIFIED54Onyama Limba
1043Sinclair B FigeroaSpain2026-09-28Rousseaux, Michael Esq QUALIFIED25Onyama Limba
1044Cody F FigeroaArgentina2026-09-26Benton, John B Jr NEGOTIATION37Ioni Bowcher
1045Silvio M DilliardRussia2026-09-22Benton, John B Jr QUALIFIED33Amy Elsner
1046Julie Q DarakjyIndia2026-10-02Rangoni Of Florence UNQUALIFIED44Stephen Shaw
1047Alejandro N FollerJapan2026-10-01Rousseaux, Michael Esq UNQUALIFIED29Elwin Sharvill
1048Francesco Z TollnerSpain2026-09-24Rangoni Of Florence PROPOSAL17Asiya Javayant
1049Aruna J DarakjyGermany2026-09-26Dorl, James J Esq QUALIFIED57Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Mayumi C IturbideRussiaAnna Fali RENEWAL
Wickens E SchemmerFranceOnyama Limba RENEWAL
Tony V DoeIndiaAsiya Javayant NEW
Kaitlin N InouyeFranceAsiya Javayant NEGOTIATION
Juan B MacleadFranceOnyama Limba UNQUALIFIED
Jefferson R PaprockiGermanyAmy Elsner NEGOTIATION
Leja U DoeBrazilAnna Fali NEW
Faith X PerinRussiaBernardo Dominic NEGOTIATION
Aruna Q StockhamAustraliaAsiya Javayant UNQUALIFIED
Claire P PoquetteCanadaXuxue Feng UNQUALIFIED
Chavez I FlosiArgentinaStephen Shaw NEGOTIATION
Claire H FigeroaCanadaBernardo Dominic UNQUALIFIED
Greenwood I OldroydCanadaXuxue Feng PROPOSAL
Mujtaba S InouyeUnited KingdomBernardo Dominic PROPOSAL
Izzy K DoeUnited KingdomIoni Bowcher QUALIFIED
Rodrigues P OldroydRussiaAsiya Javayant QUALIFIED
Jeanfrancois B WhobreyJapanOnyama Limba UNQUALIFIED
David J RulapaughUnited KingdomAsiya Javayant NEW
Ricardo B MaletIndiaAsiya Javayant PROPOSAL
Jones F OldroydRussiaElwin Sharvill UNQUALIFIED
Juan H SaylorsItalyXuxue Feng NEW
David C WaycottItalyXuxue Feng NEW
Johnson M DoeItalyBernardo Dominic QUALIFIED
Francesco F MacleadSpainXuxue Feng PROPOSAL
Cody S GauchoAustraliaBernardo Dominic PROPOSAL
Darci Y VocelkaItalyAsiya Javayant QUALIFIED
Misaki E PaprockiAustraliaBernardo Dominic NEGOTIATION
Kadeem K CaudySpainAnna Fali RENEWAL
Ivar H GillianBrazilAmy Elsner UNQUALIFIED
Greenwood X MacleadBrazilAnna Fali NEGOTIATION
Maria Z AlbaresAustraliaStephen Shaw PROPOSAL
Tony U FollerUnited KingdomAnna Fali RENEWAL
Jones Q FigeroaGermanyAsiya Javayant PROPOSAL
Murillo J AlbaresItalyElwin Sharvill PROPOSAL
Jefferson K BriddickUnited KingdomAsiya Javayant PROPOSAL
Claire Z AlbaresArgentinaXuxue Feng UNQUALIFIED
Maisha S PerinRussiaOnyama Limba UNQUALIFIED
Greenwood Z BowleyCanadaIvan Magalhaes UNQUALIFIED
Antonio O VocelkaRussiaAnna Fali UNQUALIFIED
Sinclair G GillianBrazilIoni Bowcher QUALIFIED
Silvio I WaycottCanadaBernardo Dominic UNQUALIFIED
Aruna L GauchoAustraliaBernardo Dominic NEGOTIATION
Morrow H OstroskyArgentinaAsiya Javayant RENEWAL
Rodrigues K SergiUnited KingdomBernardo Dominic RENEWAL
Kaitlin T NestleRussiaAsiya Javayant PROPOSAL
Alejandro L StockhamFranceIoni Bowcher NEGOTIATION
Maisha H RutaArgentinaXuxue Feng PROPOSAL
Misaki I SaylorsJapanIoni Bowcher UNQUALIFIED
Aditya M BowleyArgentinaIoni Bowcher QUALIFIED
Stacey E MorascaGermanyIvan Magalhaes UNQUALIFIED
Frozen Columns
Name
Kadeem E Albares
Faith V Ferencz
Aditya K Garufi
Aditya O Rulapaugh
Sinclair S Amigon
Ivar T Marrier
Tony Z Morasca
Silvio Q Oldroyd
Ashley B Vocelka
Jennifer Q Figeroa
Maria D Bowley
Aruna Q Maclead
Johnson L Venere
Murillo S Ostrosky
Mujtaba M Saylors
Jefferson Z Kusko
David Y Ruta
Johnson Z Kolmetz
Tony V Inouye
Maria L Caudy
Claire J Malet
Nicolas C Briddick
Munro Y Foller
Izzy R Nicka
Munro Z Rim
Greenwood F Poquette
Izzy P Inouye
Adams A Gaucho
Ivar F Wieser
Arvin V Shinko
Leon Y Saylors
Mujtaba H Perin
Maria V Morasca
Adams O Ferencz
Jones Y Briddick
Antonio I Briddick
Wickens W Morasca
Johnson C Glick
Mayumi I Nicka
Ivar H Poquette
Smith C Dilliard
Ivar I Caldarera
Munro O Bolognia
Adams S Royster
Juan Y Waycott
Jeanfrancois M Saylors
Misaki N Garufi
Darci M Tollner
Jennifer E Caudy
Silvio L Ferencz
IdCountryDate
1000Canada2026-09-28
1001Australia2026-10-18
1002Japan2026-10-18
1003Germany2026-10-06
1004Russia2026-09-25
1005Germany2026-10-11
1006Italy2026-10-16
1007Australia2026-10-02
1008Brazil2026-09-29
1009France2026-10-04
1010United Kingdom2026-10-05
1011Italy2026-10-11
1012Japan2026-10-03
1013Australia2026-10-16
1014Germany2026-09-30
1015Brazil2026-10-14
1016Russia2026-10-17
1017United Kingdom2026-10-17
1018Canada2026-10-07
1019United Kingdom2026-10-08
1020Canada2026-09-20
1021Canada2026-10-18
1022United Kingdom2026-10-19
1023Brazil2026-10-12
1024Spain2026-10-19
1025Australia2026-10-10
1026Italy2026-10-01
1027United Kingdom2026-09-24
1028Russia2026-09-24
1029Germany2026-10-01
1030India2026-09-21
1031Japan2026-10-03
1032Russia2026-10-15
1033Germany2026-10-04
1034France2026-09-24
1035Australia2026-09-29
1036Argentina2026-09-23
1037Russia2026-10-13
1038Russia2026-10-15
1039Canada2026-09-25
1040Canada2026-09-29
1041Australia2026-10-08
1042Japan2026-10-09
1043Brazil2026-09-24
1044Italy2026-10-01
1045Australia2026-10-08
1046Canada2026-09-25
1047Spain2026-09-25
1048Italy2026-10-09
1049Canada2026-09-24

On-Demand Data

NameIdCountryDate
Ivar X Oldroyd1000Japan2026-09-22
Darci U Briddick1001Australia2026-10-09
James E Flosi1002Spain2026-09-27
Maisha Z Albares1003Canada2026-10-13
Darci V Rulapaugh1004United Kingdom2026-09-24
David M Shinko1005Canada2026-10-03
Arvin S Inouye1006Russia2026-10-07
Adams T Kolmetz1007India2026-10-11
Deepesh O Poquette1008India2026-10-08
Morrow T Rim1009Russia2026-10-14
Misaki O Caudy1010Canada2026-09-20
Mayumi D Albares1011Canada2026-10-15
Izzy Y Perin1012France2026-10-08
Francesco O Caudy1013Germany2026-10-07
Maisha A Venere1014Spain2026-10-18
Salvatore A Briddick1015Germany2026-09-22
Misaki P Albares1016India2026-09-20
Cody E Ferencz1017France2026-10-03
Emily I Stenseth1018Germany2026-10-05
Cody N Kusko1019Canada2026-09-29
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Jefferson G ChuiArgentinaBernardo Dominic PROPOSAL
Aika D RimBrazilAmy Elsner PROPOSAL
Claire C ShinkoFranceBernardo Dominic NEW
Misaki R CaldareraRussiaAmy Elsner NEW
Aditya G WaycottGermanyIoni Bowcher PROPOSAL
Kaitlin L IturbideSpainIvan Magalhaes UNQUALIFIED
Tony G SchemmerBrazilElwin Sharvill PROPOSAL
Kadeem O DilliardAustraliaIvan Magalhaes NEGOTIATION
Ricardo L WieserJapanAsiya Javayant PROPOSAL
Salvatore R VenereAustraliaIoni Bowcher NEGOTIATION
Jones F DoeArgentinaBernardo Dominic NEW
Leja V VenereSpainStephen Shaw PROPOSAL
Alejandro G StockhamAustraliaAmy Elsner RENEWAL
Emily P KolmetzBrazilBernardo Dominic NEW
Maisha V MacleadAustraliaElwin Sharvill NEGOTIATION
Maisha W RutaCanadaAnna Fali RENEWAL
Jeanfrancois K SchemmerArgentinaElwin Sharvill QUALIFIED
Emily Z GillianRussiaElwin Sharvill RENEWAL
Chavez L GlickItalyAmy Elsner PROPOSAL
Arvin W GarufiCanadaAnna Fali UNQUALIFIED
Deepesh O SchemmerArgentinaStephen Shaw NEGOTIATION
Maisha Y BriddickGermanyAnna Fali UNQUALIFIED
Maisha L FerenczSpainAsiya Javayant PROPOSAL
Cody R FerenczGermanyStephen Shaw UNQUALIFIED
Jones M FollerJapanAsiya Javayant NEW
Clifford F KolmetzGermanyElwin Sharvill RENEWAL
Adams S CampainItalyAsiya Javayant RENEWAL
Faith K StockhamArgentinaAnna Fali QUALIFIED
Aruna F MacleadRussiaOnyama Limba QUALIFIED
Chavez W DilliardGermanyBernardo Dominic NEW
Chavez P AlbaresRussiaAmy Elsner PROPOSAL
Greenwood S KolmetzFranceAsiya Javayant UNQUALIFIED
David F PaprockiUnited KingdomAnna Fali RENEWAL
Alejandro D SaylorsArgentinaOnyama Limba RENEWAL
Salvatore W WhobreyFranceAnna Fali NEW
Isabel R MacleadIndiaAnna Fali NEGOTIATION
Stacey Y GillianGermanyXuxue Feng UNQUALIFIED
Mujtaba B PerinUnited KingdomIvan Magalhaes UNQUALIFIED
Maria C KuskoIndiaAmy Elsner PROPOSAL
Jones U DilliardGermanyAnna Fali QUALIFIED

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