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
Leon R OstroskyArgentinaIoni Bowcher NEGOTIATION
Ricardo U FlosiAustraliaElwin Sharvill NEGOTIATION
Alejandro Q WaycottSpainAsiya Javayant QUALIFIED
Arvin J BologniaAustraliaAnna Fali UNQUALIFIED
Costa D TollnerIndiaOnyama Limba NEGOTIATION
Smith P IturbideFranceIvan Magalhaes NEGOTIATION
Stacey A ButtCanadaAmy Elsner PROPOSAL
Mujtaba P SlusarskiFranceOnyama Limba UNQUALIFIED
Stacey T SaylorsArgentinaAnna Fali UNQUALIFIED
Izzy T ButtRussiaIoni Bowcher PROPOSAL
Arvin J VocelkaCanadaAsiya Javayant QUALIFIED
Kaitlin J SlusarskiItalyElwin Sharvill RENEWAL
Jennifer Z DarakjyRussiaStephen Shaw NEGOTIATION
Tony J GarufiIndiaElwin Sharvill QUALIFIED
Munro H VenereBrazilAmy Elsner NEGOTIATION
Ashley P WaycottIndiaAmy Elsner RENEWAL
Aditya N CaldareraBrazilXuxue Feng QUALIFIED
Clifford P MaletJapanXuxue Feng NEGOTIATION
Misaki A WhobreyItalyOnyama Limba PROPOSAL
Nicolas P FigeroaJapanXuxue Feng PROPOSAL
Deepesh V MorascaRussiaBernardo Dominic NEW
Maria S WaycottFranceIvan Magalhaes UNQUALIFIED
Morrow L AmigonIndiaIvan Magalhaes NEGOTIATION
Ivar H PoquetteRussiaAmy Elsner RENEWAL
Rodrigues M CaudyJapanAnna Fali PROPOSAL
Misaki C SlusarskiArgentinaBernardo Dominic UNQUALIFIED
Julie J PaprockiArgentinaElwin Sharvill NEW
Ivar S IturbideAustraliaElwin Sharvill NEW
Ashley U AmigonUnited KingdomStephen Shaw NEGOTIATION
Darci R WieserBrazilAnna Fali PROPOSAL
Leon H BologniaItalyOnyama Limba QUALIFIED
Deepesh W FerenczAustraliaOnyama Limba NEGOTIATION
Leja Z MarrierAustraliaAnna Fali RENEWAL
Faith W WhobreyGermanyAnna Fali NEW
Ashley M GillianCanadaAsiya Javayant PROPOSAL
Leon I OstroskyBrazilStephen Shaw RENEWAL
Maisha R ButtArgentinaStephen Shaw NEGOTIATION
Kadeem T IturbideUnited KingdomIvan Magalhaes PROPOSAL
Greenwood O SergiBrazilOnyama Limba QUALIFIED
Costa J RutaCanadaStephen Shaw RENEWAL
Ashley E MarrierRussiaElwin Sharvill UNQUALIFIED
Jeanfrancois K OstroskyGermanyBernardo Dominic NEW
Emily T PerinFranceAnna Fali QUALIFIED
Izzy Z RulapaughSpainStephen Shaw QUALIFIED
Chavez H GlickAustraliaAsiya Javayant NEW
Wickens J MorascaSpainAnna Fali UNQUALIFIED
Chavez Z WaycottAustraliaXuxue Feng QUALIFIED
Salvatore D KolmetzFranceAmy Elsner RENEWAL
Izzy L AlbaresSpainIvan Magalhaes QUALIFIED
Stacey L FollerSpainXuxue Feng UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Stacey Y BologniaAustraliaOnyama Limba NEW
Rodrigues S DoeCanadaStephen Shaw RENEWAL
Izzy Z MorascaItalyElwin Sharvill UNQUALIFIED
Darci M MaletIndiaElwin Sharvill RENEWAL
Antonio W StockhamGermanyStephen Shaw QUALIFIED
Cody A GarufiCanadaAsiya Javayant QUALIFIED
Johnson N SaylorsItalyIoni Bowcher NEGOTIATION
Stacey H RoysterAustraliaIvan Magalhaes NEW
Antonio O ButtRussiaAmy Elsner RENEWAL
Maisha F StensethArgentinaAsiya Javayant PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Rodrigues V WieserGermany2026-09-29Chemel, James L Cpa NEGOTIATION44Anna Fali
1001Juan I MaletSpain2026-10-07Chapman, Ross E Esq RENEWAL39Amy Elsner
1002Smith H CaldareraFrance2026-10-14Truhlar And Truhlar Attys NEW93Anna Fali
1003Jones J GillianJapan2026-10-20Rangoni Of Florence NEW93Ivan Magalhaes
1004Leja W MorascaItaly2026-10-17Morlong Associates UNQUALIFIED71Bernardo Dominic
1005Silvio R ShinkoJapan2026-10-18Feiner Bros QUALIFIED90Bernardo Dominic
1006David I FerenczItaly2026-10-22Rousseaux, Michael Esq QUALIFIED62Asiya Javayant
1007Mujtaba O AmigonBrazil2026-10-05Chanay, Jeffrey A Esq RENEWAL98Asiya Javayant
1008Kadeem D BriddickAustralia2026-10-14Rangoni Of Florence QUALIFIED10Bernardo Dominic
1009Costa D GlickAustralia2026-10-08Truhlar And Truhlar Attys PROPOSAL82Xuxue Feng
1010Isabel A GillianUnited Kingdom2026-10-10Feiner Bros NEW64Xuxue Feng
1011Adams R BologniaUnited Kingdom2026-10-06Chanay, Jeffrey A Esq RENEWAL78Xuxue Feng
1012Greenwood C DoeAustralia2026-10-03King, Christopher A Esq QUALIFIED30Bernardo Dominic
1013Ricardo H StensethSpain2026-10-11Dorl, James J Esq QUALIFIED48Stephen Shaw
1014Misaki Y FerenczItaly2026-10-16Feltz Printing Service UNQUALIFIED66Ioni Bowcher
1015Claire O NickaSpain2026-10-16Chanay, Jeffrey A Esq NEGOTIATION7Ioni Bowcher
1016Salvatore J BowleyItaly2026-10-15Morlong Associates NEW6Asiya Javayant
1017Clifford H NickaItaly2026-10-16Morlong Associates QUALIFIED51Asiya Javayant
1018Jennifer E TollnerBrazil2026-09-28Printing Dimensions NEW62Xuxue Feng
1019Silvio O FlosiCanada2026-10-13Commercial Press UNQUALIFIED50Elwin Sharvill
1020Jefferson O VenereCanada2026-10-20Chemel, James L Cpa NEW26Bernardo Dominic
1021Francesco X DarakjyItaly2026-10-05Feiner Bros NEW5Elwin Sharvill
1022Morrow M BowleyRussia2026-10-20Commercial Press PROPOSAL30Amy Elsner
1023Leja K ButtUnited Kingdom2026-10-04Rangoni Of Florence PROPOSAL36Anna Fali
1024Silvio W ShinkoAustralia2026-10-25Chemel, James L Cpa PROPOSAL60Ioni Bowcher
1025James E VenereGermany2026-10-15Rousseaux, Michael Esq RENEWAL61Ioni Bowcher
1026Adams W MacleadArgentina2026-10-01Truhlar And Truhlar Attys UNQUALIFIED61Elwin Sharvill
1027Jennifer H AmigonSpain2026-10-08Chemel, James L Cpa UNQUALIFIED1Xuxue Feng
1028Octavia L SchemmerCanada2026-10-01Chanay, Jeffrey A Esq UNQUALIFIED58Onyama Limba
1029Smith J CaudyRussia2026-10-25Truhlar And Truhlar Attys PROPOSAL20Ivan Magalhaes
1030Leon P ButtFrance2026-10-20Chemel, James L Cpa RENEWAL28Bernardo Dominic
1031Clifford Z VenereRussia2026-10-23Chapman, Ross E Esq NEGOTIATION83Elwin Sharvill
1032Rodrigues Y FerenczItaly2026-10-25Benton, John B Jr RENEWAL38Anna Fali
1033Maria Q StensethUnited Kingdom2026-10-06Dorl, James J Esq PROPOSAL18Amy Elsner
1034Darci R KuskoBrazil2026-10-18King, Christopher A Esq NEW48Xuxue Feng
1035David B SlusarskiUnited Kingdom2026-10-19Printing Dimensions QUALIFIED9Anna Fali
1036Salvatore S IturbideAustralia2026-10-03Truhlar And Truhlar Attys RENEWAL96Amy Elsner
1037Octavia J MaletSpain2026-10-21Chapman, Ross E Esq NEW26Onyama Limba
1038Antonio I DoeCanada2026-10-13Chapman, Ross E Esq QUALIFIED89Ioni Bowcher
1039Adams L CampainArgentina2026-10-02Chemel, James L Cpa UNQUALIFIED8Ioni Bowcher
1040Jeanfrancois G WaycottCanada2026-10-09Dorl, James J Esq PROPOSAL57Asiya Javayant
1041Aditya R GillianBrazil2026-10-25Printing Dimensions RENEWAL52Xuxue Feng
1042Leja X RoysterCanada2026-10-17Truhlar And Truhlar Attys QUALIFIED1Elwin Sharvill
1043Smith I MorascaJapan2026-10-22Commercial Press QUALIFIED75Elwin Sharvill
1044Leon E WieserJapan2026-10-27Dorl, James J Esq RENEWAL31Amy Elsner
1045Silvio I CaudyIndia2026-10-19Feiner Bros UNQUALIFIED35Elwin Sharvill
1046Morrow K CaudyCanada2026-10-06King, Christopher A Esq NEGOTIATION42Onyama Limba
1047Tony C SaylorsAustralia2026-10-16Rousseaux, Michael Esq RENEWAL20Stephen Shaw
1048Francesco U CaudyIndia2026-10-21Commercial Press UNQUALIFIED31Onyama Limba
1049Sinclair W BriddickRussia2026-09-29Chapman, Ross E Esq UNQUALIFIED67Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Octavia S BologniaGermanyXuxue Feng PROPOSAL
David A PerinJapanStephen Shaw RENEWAL
Wickens Y NickaItalyAnna Fali RENEWAL
Francesco M TollnerArgentinaOnyama Limba RENEWAL
Faith O CampainUnited KingdomElwin Sharvill PROPOSAL
Salvatore W CampainRussiaStephen Shaw QUALIFIED
Clifford Q KolmetzIndiaBernardo Dominic UNQUALIFIED
Cody Q PerinSpainAmy Elsner PROPOSAL
Johnson A ShinkoRussiaElwin Sharvill PROPOSAL
Johnson P SchemmerIndiaIvan Magalhaes PROPOSAL
Clifford S RoysterJapanOnyama Limba PROPOSAL
Deepesh H SchemmerBrazilBernardo Dominic RENEWAL
Kadeem N KolmetzCanadaXuxue Feng PROPOSAL
Stacey M KuskoCanadaAmy Elsner PROPOSAL
Leja F OldroydArgentinaElwin Sharvill NEW
Faith B FerenczIndiaIoni Bowcher RENEWAL
Maisha M ButtAustraliaIvan Magalhaes QUALIFIED
Silvio L MaletGermanyXuxue Feng NEGOTIATION
Maisha F MarrierCanadaIoni Bowcher NEW
Isabel U StockhamItalyIvan Magalhaes RENEWAL
Aika X MaletSpainOnyama Limba PROPOSAL
Mujtaba W MorascaRussiaBernardo Dominic PROPOSAL
Clifford R WhobreyAustraliaAmy Elsner UNQUALIFIED
Rodrigues A CaudyFranceOnyama Limba PROPOSAL
Izzy F RimJapanStephen Shaw UNQUALIFIED
Kadeem Y DilliardIndiaBernardo Dominic RENEWAL
Julie V RulapaughJapanOnyama Limba QUALIFIED
Mujtaba H SchemmerBrazilAnna Fali NEGOTIATION
James K RutaIndiaAsiya Javayant NEW
Jeanfrancois B CampainUnited KingdomOnyama Limba PROPOSAL
Misaki E ChuiFranceAmy Elsner PROPOSAL
Francesco F DilliardBrazilIvan Magalhaes QUALIFIED
Mujtaba K BologniaItalyAmy Elsner PROPOSAL
Faith B OstroskyIndiaIoni Bowcher NEW
Izzy I KuskoBrazilOnyama Limba RENEWAL
Aika H GarufiRussiaXuxue Feng QUALIFIED
Deepesh D GarufiIndiaAnna Fali PROPOSAL
James S StockhamIndiaBernardo Dominic UNQUALIFIED
Costa F FollerArgentinaAsiya Javayant NEW
Munro C WieserIndiaStephen Shaw QUALIFIED
Emily X MorascaSpainStephen Shaw QUALIFIED
Leja A NickaBrazilAsiya Javayant UNQUALIFIED
Izzy F GarufiIndiaStephen Shaw PROPOSAL
Ashley T FerenczItalyIoni Bowcher NEW
Faith Q SchemmerJapanAmy Elsner UNQUALIFIED
Mayumi D MaletGermanyAsiya Javayant QUALIFIED
David Q IturbideItalyAmy Elsner PROPOSAL
Julie T RoysterUnited KingdomOnyama Limba NEW
Jones E SergiCanadaIoni Bowcher UNQUALIFIED
Faith E NestleArgentinaStephen Shaw RENEWAL
Frozen Columns
Name
Clifford R Stenseth
Isabel F Ferencz
Julie J Butt
Clifford G Wieser
Ivar I Doe
Aditya P Vocelka
Arvin X Briddick
Greenwood J Rim
Alejandro L Caudy
Francesco W Vocelka
Salvatore X Oldroyd
Izzy M Waycott
Antonio H Vocelka
James Z Campain
Antonio C Morasca
Johnson T Ostrosky
Leon L Rulapaugh
Rodrigues X Inouye
Wickens D Gillian
Chavez R Perin
Maisha D Vocelka
Alejandro V Stenseth
Leon S Bowley
Izzy N Caudy
Darci G Shinko
Murillo P Paprocki
Tony N Kolmetz
Morrow T Morasca
Maria X Maclead
Julie D Royster
Francesco F Albares
Claire E Rulapaugh
Misaki N Malet
Leja E Nicka
Julie I Dilliard
Silvio J Gaucho
Aika D Schemmer
Ashley C Whobrey
Stacey D Schemmer
Salvatore G Sergi
Chavez Z Venere
Costa F Chui
Alejandro A Stenseth
Stacey X Sergi
Jeanfrancois Y Ruta
Arvin F Paprocki
Faith C Nicka
James Z Sergi
Mujtaba R Caldarera
Ivar Q Amigon
IdCountryDate
1000France2026-10-02
1001United Kingdom2026-10-14
1002India2026-10-10
1003Brazil2026-10-12
1004Canada2026-10-09
1005Russia2026-10-18
1006United Kingdom2026-10-20
1007Italy2026-10-26
1008Spain2026-10-07
1009Argentina2026-10-14
1010Japan2026-10-09
1011Japan2026-10-06
1012Australia2026-09-30
1013Italy2026-10-17
1014Russia2026-10-25
1015Japan2026-10-17
1016Germany2026-10-03
1017Australia2026-10-08
1018Russia2026-10-12
1019Australia2026-10-10
1020Russia2026-10-13
1021Spain2026-10-21
1022United Kingdom2026-10-17
1023Russia2026-10-24
1024United Kingdom2026-10-17
1025United Kingdom2026-10-17
1026Canada2026-10-21
1027Australia2026-10-07
1028Spain2026-10-27
1029Argentina2026-10-19
1030Italy2026-09-30
1031Canada2026-10-11
1032Japan2026-10-20
1033Canada2026-10-02
1034Argentina2026-10-15
1035Russia2026-10-27
1036Canada2026-10-07
1037Germany2026-10-26
1038Spain2026-10-22
1039Argentina2026-10-10
1040Australia2026-10-05
1041United Kingdom2026-10-11
1042Brazil2026-10-18
1043Japan2026-10-22
1044Brazil2026-10-22
1045United Kingdom2026-10-27
1046Argentina2026-10-08
1047United Kingdom2026-09-30
1048Australia2026-10-22
1049Brazil2026-10-16

On-Demand Data

NameIdCountryDate
Jeanfrancois L Albares1000Australia2026-10-27
Leon J Slusarski1001India2026-10-03
Rodrigues F Albares1002Russia2026-10-03
Kaitlin K Rulapaugh1003Argentina2026-10-05
Claire N Dilliard1004Brazil2026-10-14
James A Kolmetz1005Italy2026-10-21
Antonio K Figeroa1006United Kingdom2026-10-16
Greenwood K Iturbide1007Canada2026-10-08
Leon N Royster1008Italy2026-09-28
Emily L Caudy1009India2026-10-19
Kadeem J Vocelka1010Italy2026-10-01
Jennifer B Stenseth1011Australia2026-10-04
Arvin F Rim1012Australia2026-10-15
Rodrigues M Rulapaugh1013Spain2026-10-16
Ivar J Rulapaugh1014Spain2026-10-22
Maria Q Garufi1015Italy2026-10-03
Nicolas J Bolognia1016India2026-10-23
Tony K Doe1017Japan2026-10-18
Faith T Inouye1018Canada2026-10-24
Leon K Oldroyd1019Japan2026-10-18
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ashley D MaletUnited KingdomAmy Elsner UNQUALIFIED
Clifford L PaprockiItalyXuxue Feng PROPOSAL
Johnson L RimRussiaIoni Bowcher RENEWAL
Juan K TollnerBrazilBernardo Dominic NEW
Isabel Z WhobreyCanadaOnyama Limba PROPOSAL
Mujtaba S SergiAustraliaIoni Bowcher PROPOSAL
Greenwood Y MacleadJapanAmy Elsner RENEWAL
Julie O MaletItalyBernardo Dominic QUALIFIED
Mayumi J MacleadBrazilAmy Elsner QUALIFIED
Julie Q FlosiItalyIvan Magalhaes QUALIFIED
Adams J GillianIndiaElwin Sharvill QUALIFIED
Claire E FollerArgentinaElwin Sharvill NEW
Leon Q FigeroaCanadaAnna Fali RENEWAL
Claire X FerenczCanadaAnna Fali NEW
Kadeem L IturbideUnited KingdomStephen Shaw RENEWAL
Tony N CaldareraUnited KingdomIoni Bowcher UNQUALIFIED
Mujtaba P KuskoArgentinaAsiya Javayant QUALIFIED
Izzy X StockhamUnited KingdomBernardo Dominic NEW
Mayumi Z SaylorsJapanElwin Sharvill UNQUALIFIED
Leon U RimArgentinaAmy Elsner NEGOTIATION
Aruna C SlusarskiAustraliaAnna Fali NEW
Julie S TollnerSpainOnyama Limba NEGOTIATION
Leja P TollnerRussiaElwin Sharvill NEW
Julie L AlbaresSpainBernardo Dominic PROPOSAL
Cody P CaudyAustraliaIoni Bowcher RENEWAL
Tony O SergiAustraliaElwin Sharvill QUALIFIED
Adams Y FerenczItalyXuxue Feng QUALIFIED
Stacey C MacleadGermanyIvan Magalhaes NEGOTIATION
Jeanfrancois D PerinRussiaBernardo Dominic NEGOTIATION
Munro M VocelkaBrazilBernardo Dominic QUALIFIED
Nicolas S SlusarskiUnited KingdomBernardo Dominic NEW
Octavia X NickaAustraliaAsiya Javayant UNQUALIFIED
Maria B CampainArgentinaStephen Shaw NEGOTIATION
Clifford X NestleItalyIvan Magalhaes PROPOSAL
Isabel T DoeRussiaAsiya Javayant PROPOSAL
Octavia K RoysterAustraliaOnyama Limba NEGOTIATION
Ivar P WhobreyIndiaIvan Magalhaes QUALIFIED
Maria S FigeroaJapanXuxue Feng RENEWAL
Kadeem F BowleyCanadaXuxue Feng NEGOTIATION
Maisha F DarakjyUnited KingdomElwin Sharvill 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>