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
Ashley P SaylorsRussiaAnna Fali UNQUALIFIED
Nicolas G CampainIndiaAmy Elsner UNQUALIFIED
Jones J PoquetteIndiaBernardo Dominic UNQUALIFIED
Smith P MacleadUnited KingdomOnyama Limba NEGOTIATION
Morrow W TollnerCanadaAmy Elsner RENEWAL
Ashley Y DoeGermanyOnyama Limba RENEWAL
Tony R DilliardCanadaBernardo Dominic NEGOTIATION
Juan A CampainItalyAnna Fali NEGOTIATION
Leon R WhobreyAustraliaAnna Fali NEGOTIATION
Arvin L ShinkoSpainStephen Shaw NEGOTIATION
Arvin W ChuiGermanyBernardo Dominic RENEWAL
Emily W SergiIndiaAnna Fali NEW
Antonio W AmigonUnited KingdomAsiya Javayant UNQUALIFIED
Cody I VenereUnited KingdomOnyama Limba UNQUALIFIED
Antonio A CampainSpainIoni Bowcher NEW
Faith V ChuiItalyStephen Shaw NEW
Kadeem M VenereJapanAmy Elsner UNQUALIFIED
Arvin O CaldareraGermanyXuxue Feng PROPOSAL
Arvin X SchemmerUnited KingdomAmy Elsner UNQUALIFIED
Francesco Z GauchoIndiaAnna Fali PROPOSAL
Jennifer N RutaCanadaElwin Sharvill NEGOTIATION
Jennifer K GlickBrazilOnyama Limba NEW
Kadeem C OstroskyGermanyXuxue Feng NEGOTIATION
Ashley M DarakjyGermanyStephen Shaw NEW
Francesco O InouyeBrazilIoni Bowcher PROPOSAL
Murillo Y ButtGermanyIvan Magalhaes UNQUALIFIED
Wickens F FollerSpainIoni Bowcher QUALIFIED
David U RimUnited KingdomAmy Elsner PROPOSAL
Rodrigues T WhobreyArgentinaIvan Magalhaes PROPOSAL
Maisha U AlbaresRussiaIvan Magalhaes NEGOTIATION
David K CaldareraItalyAnna Fali QUALIFIED
Kadeem L ButtJapanAsiya Javayant NEGOTIATION
Wickens C StockhamIndiaAsiya Javayant RENEWAL
Ricardo K WaycottAustraliaStephen Shaw QUALIFIED
Cody B KuskoGermanyIoni Bowcher UNQUALIFIED
Rodrigues Z PaprockiJapanOnyama Limba UNQUALIFIED
Izzy O BowleyJapanAmy Elsner UNQUALIFIED
James G RimGermanyElwin Sharvill NEW
Salvatore F CaldareraArgentinaIoni Bowcher RENEWAL
Smith N StockhamUnited KingdomXuxue Feng QUALIFIED
Costa P InouyeAustraliaElwin Sharvill QUALIFIED
Ashley P ShinkoItalyIoni Bowcher NEW
Deepesh X VocelkaRussiaXuxue Feng NEGOTIATION
Arvin A SchemmerSpainIoni Bowcher RENEWAL
Izzy S CaldareraUnited KingdomOnyama Limba UNQUALIFIED
Silvio J CaudyGermanyIoni Bowcher NEW
Aruna S GillianArgentinaOnyama Limba PROPOSAL
James L PerinUnited KingdomIvan Magalhaes NEGOTIATION
Maisha M IturbideIndiaAsiya Javayant NEW
Ashley X DilliardIndiaBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Jennifer N ButtJapanIoni Bowcher QUALIFIED
Munro R RimItalyAnna Fali RENEWAL
Kaitlin F TollnerArgentinaAnna Fali QUALIFIED
Faith D OstroskyCanadaStephen Shaw RENEWAL
Darci S WaycottItalyElwin Sharvill NEW
Munro Z WaycottJapanStephen Shaw QUALIFIED
Wickens E PoquetteAustraliaStephen Shaw RENEWAL
Smith N FerenczArgentinaBernardo Dominic RENEWAL
Antonio D VenereUnited KingdomIoni Bowcher PROPOSAL
Silvio L RutaJapanBernardo Dominic PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Adams O BriddickCanada2026-09-06Feltz Printing Service PROPOSAL98Stephen Shaw
1001Salvatore Z FlosiItaly2026-09-30Chapman, Ross E Esq NEGOTIATION92Stephen Shaw
1002Jones T ShinkoGermany2026-09-11Chapman, Ross E Esq PROPOSAL21Stephen Shaw
1003Mayumi A GauchoBrazil2026-09-17Dorl, James J Esq NEW82Xuxue Feng
1004Francesco V MorascaSpain2026-09-27Feltz Printing Service NEGOTIATION95Elwin Sharvill
1005Ivar A MaletArgentina2026-09-26King, Christopher A Esq NEGOTIATION57Onyama Limba
1006Juan G BologniaFrance2026-09-12Benton, John B Jr RENEWAL69Xuxue Feng
1007Leja K GarufiSpain2026-10-04Morlong Associates QUALIFIED75Elwin Sharvill
1008Maisha T SlusarskiItaly2026-10-02Morlong Associates QUALIFIED95Asiya Javayant
1009Kaitlin D WieserSpain2026-09-13Buckley Miller Wright QUALIFIED83Ivan Magalhaes
1010Maisha A ChuiCanada2026-09-29Truhlar And Truhlar Attys PROPOSAL30Onyama Limba
1011Claire O VocelkaUnited Kingdom2026-09-15King, Christopher A Esq UNQUALIFIED59Bernardo Dominic
1012Ashley B PaprockiGermany2026-09-29Commercial Press RENEWAL76Xuxue Feng
1013Aika S PaprockiCanada2026-09-15Feltz Printing Service RENEWAL73Ioni Bowcher
1014Darci V RulapaughFrance2026-09-29Dorl, James J Esq QUALIFIED25Stephen Shaw
1015Maria G SaylorsRussia2026-09-30Feiner Bros PROPOSAL67Asiya Javayant
1016Deepesh M GillianGermany2026-10-01Morlong Associates NEW67Elwin Sharvill
1017Mayumi A MaletItaly2026-09-15Chapman, Ross E Esq NEGOTIATION67Stephen Shaw
1018Claire A VocelkaIndia2026-09-13Chapman, Ross E Esq NEGOTIATION48Bernardo Dominic
1019Maria L NestleCanada2026-09-20Rousseaux, Michael Esq RENEWAL84Xuxue Feng
1020Kadeem H VocelkaRussia2026-10-01Morlong Associates QUALIFIED92Stephen Shaw
1021Jefferson W NestleItaly2026-09-19Rousseaux, Michael Esq RENEWAL48Stephen Shaw
1022Adams I FerenczGermany2026-09-23Dorl, James J Esq UNQUALIFIED33Elwin Sharvill
1023Faith O GarufiBrazil2026-09-10Rousseaux, Michael Esq RENEWAL19Elwin Sharvill
1024Ashley N CaldareraGermany2026-09-23Rousseaux, Michael Esq UNQUALIFIED47Ioni Bowcher
1025Cody B WhobreyBrazil2026-09-26Dorl, James J Esq NEW61Asiya Javayant
1026Leon W OstroskyRussia2026-09-25Chemel, James L Cpa PROPOSAL72Onyama Limba
1027Jefferson C MorascaRussia2026-09-17Dorl, James J Esq QUALIFIED71Onyama Limba
1028Jefferson J GlickJapan2026-09-18Truhlar And Truhlar Attys QUALIFIED27Elwin Sharvill
1029Maria A SergiIndia2026-10-05Commercial Press NEGOTIATION71Ivan Magalhaes
1030Salvatore C StensethIndia2026-09-16Chapman, Ross E Esq UNQUALIFIED99Elwin Sharvill
1031Murillo T AmigonBrazil2026-09-17Rangoni Of Florence RENEWAL20Anna Fali
1032Octavia E InouyeSpain2026-09-09Rousseaux, Michael Esq NEGOTIATION53Onyama Limba
1033Morrow C PaprockiAustralia2026-09-28King, Christopher A Esq QUALIFIED3Xuxue Feng
1034Ricardo Q BologniaUnited Kingdom2026-09-26Rousseaux, Michael Esq NEW55Stephen Shaw
1035Salvatore X GauchoIndia2026-09-17Buckley Miller Wright UNQUALIFIED76Xuxue Feng
1036Greenwood Q RulapaughFrance2026-09-09Benton, John B Jr NEW46Anna Fali
1037Octavia V CaudyIndia2026-09-22Benton, John B Jr UNQUALIFIED78Onyama Limba
1038Jennifer J VocelkaBrazil2026-10-02Chanay, Jeffrey A Esq PROPOSAL90Xuxue Feng
1039Emily K AlbaresUnited Kingdom2026-10-02Chemel, James L Cpa RENEWAL98Bernardo Dominic
1040Julie V AlbaresUnited Kingdom2026-09-16Feltz Printing Service NEGOTIATION98Xuxue Feng
1041Aika U WaycottFrance2026-09-09Feltz Printing Service NEGOTIATION12Elwin Sharvill
1042Maria I BowleyArgentina2026-09-12King, Christopher A Esq QUALIFIED38Xuxue Feng
1043Ivar C MacleadSpain2026-09-16Morlong Associates NEGOTIATION60Xuxue Feng
1044Arvin H IturbideBrazil2026-09-21Buckley Miller Wright QUALIFIED81Stephen Shaw
1045Jeanfrancois A KuskoAustralia2026-09-18Feltz Printing Service PROPOSAL84Onyama Limba
1046Antonio S FigeroaAustralia2026-09-27Chemel, James L Cpa RENEWAL67Onyama Limba
1047Arvin S PoquetteRussia2026-09-29Feiner Bros NEGOTIATION36Elwin Sharvill
1048Octavia P TollnerItaly2026-09-30Morlong Associates NEW14Bernardo Dominic
1049Salvatore P StensethItaly2026-09-17Benton, John B Jr PROPOSAL33Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Jeanfrancois F WieserGermanyOnyama Limba UNQUALIFIED
Alejandro N GarufiItalyIvan Magalhaes PROPOSAL
Stacey H InouyeUnited KingdomXuxue Feng RENEWAL
Jennifer W CampainIndiaIoni Bowcher NEW
Tony B NickaRussiaIvan Magalhaes PROPOSAL
Maria B PaprockiJapanAmy Elsner RENEWAL
Tony O VenereUnited KingdomIoni Bowcher UNQUALIFIED
Munro X SaylorsFranceIoni Bowcher UNQUALIFIED
Aditya T WhobreyBrazilIoni Bowcher RENEWAL
Mujtaba Q GarufiRussiaOnyama Limba UNQUALIFIED
Clifford F BowleyCanadaIoni Bowcher UNQUALIFIED
Greenwood F RulapaughUnited KingdomIoni Bowcher QUALIFIED
Cody E VocelkaUnited KingdomBernardo Dominic PROPOSAL
Jennifer F DarakjyUnited KingdomAsiya Javayant QUALIFIED
Isabel T RoysterSpainAnna Fali QUALIFIED
Johnson F RimItalyIoni Bowcher RENEWAL
Stacey G GarufiCanadaStephen Shaw UNQUALIFIED
Ashley F StensethIndiaElwin Sharvill PROPOSAL
Johnson Q ChuiItalyStephen Shaw QUALIFIED
Arvin U OstroskyRussiaElwin Sharvill NEGOTIATION
Adams M BowleyBrazilIvan Magalhaes QUALIFIED
Alejandro J GauchoSpainAmy Elsner NEW
Costa R RulapaughBrazilBernardo Dominic NEW
Julie A AmigonBrazilIvan Magalhaes QUALIFIED
Smith J NickaArgentinaElwin Sharvill RENEWAL
Salvatore H SergiFranceElwin Sharvill UNQUALIFIED
Deepesh U RimJapanElwin Sharvill PROPOSAL
Greenwood Y WhobreyUnited KingdomBernardo Dominic RENEWAL
Deepesh N ButtIndiaIvan Magalhaes UNQUALIFIED
Leon N IturbideArgentinaIoni Bowcher NEW
Johnson R VenereArgentinaElwin Sharvill PROPOSAL
Johnson V GillianBrazilAsiya Javayant NEW
Tony H CampainIndiaXuxue Feng UNQUALIFIED
Julie T OldroydItalyAmy Elsner QUALIFIED
Jones V RimAustraliaXuxue Feng NEGOTIATION
Maisha L InouyeUnited KingdomAnna Fali UNQUALIFIED
Johnson N FerenczSpainXuxue Feng UNQUALIFIED
Sinclair N SaylorsAustraliaOnyama Limba UNQUALIFIED
Rodrigues N VenereJapanAsiya Javayant NEGOTIATION
Greenwood I WhobreyUnited KingdomIoni Bowcher NEW
Alejandro U MacleadSpainAsiya Javayant NEW
Silvio S BologniaIndiaAsiya Javayant QUALIFIED
Aditya L WaycottBrazilElwin Sharvill NEGOTIATION
Jones N FlosiSpainBernardo Dominic RENEWAL
Kadeem K AmigonJapanElwin Sharvill PROPOSAL
Juan P RulapaughUnited KingdomBernardo Dominic NEGOTIATION
James W FlosiArgentinaAmy Elsner NEW
Smith L SchemmerSpainIoni Bowcher NEW
Munro X GarufiBrazilStephen Shaw NEGOTIATION
Kadeem H ShinkoCanadaAsiya Javayant PROPOSAL
Frozen Columns
Name
Ricardo S Schemmer
Izzy Z Paprocki
Mujtaba D Perin
Greenwood T Whobrey
Nicolas A Stenseth
Octavia G Nestle
Claire G Oldroyd
Tony P Sergi
Deepesh H Royster
Jeanfrancois D Stockham
Faith S Stockham
Stacey F Tollner
Rodrigues Q Malet
Kadeem J Gillian
Murillo R Garufi
Mujtaba C Royster
Leja B Saylors
Izzy L Stockham
Costa E Rulapaugh
Arvin E Ostrosky
Isabel P Slusarski
Kaitlin I Maclead
Greenwood Z Poquette
Ivar C Morasca
Rodrigues G Dilliard
Arvin D Perin
Leon H Amigon
Misaki V Morasca
Mujtaba W Malet
Greenwood D Tollner
Maria W Inouye
Francesco S Nestle
Chavez A Malet
Leon B Poquette
Misaki Z Shinko
Smith F Dilliard
Nicolas K Tollner
Izzy V Poquette
Maria P Figeroa
Jeanfrancois M Garufi
Smith D Schemmer
Sinclair D Gillian
David S Darakjy
Jefferson J Maclead
Claire J Paprocki
Johnson O Inouye
Rodrigues V Caldarera
Francesco G Oldroyd
Aruna S Malet
Johnson Z Butt
IdCountryDate
1000France2026-09-24
1001Japan2026-09-14
1002Japan2026-09-20
1003Australia2026-09-15
1004Argentina2026-09-24
1005Argentina2026-09-12
1006India2026-09-19
1007Japan2026-09-17
1008Japan2026-09-28
1009India2026-09-09
1010United Kingdom2026-09-22
1011Germany2026-09-08
1012Germany2026-09-24
1013Canada2026-09-25
1014Japan2026-10-03
1015Italy2026-09-26
1016Russia2026-09-23
1017India2026-09-10
1018Italy2026-10-04
1019Brazil2026-09-28
1020Australia2026-09-25
1021France2026-09-06
1022Spain2026-09-12
1023France2026-09-15
1024United Kingdom2026-09-19
1025Japan2026-09-28
1026India2026-10-04
1027Australia2026-09-27
1028France2026-10-02
1029Brazil2026-09-08
1030Spain2026-09-06
1031Spain2026-09-22
1032France2026-09-20
1033Brazil2026-09-14
1034Spain2026-09-07
1035Italy2026-09-13
1036United Kingdom2026-10-01
1037India2026-09-09
1038Japan2026-10-05
1039Australia2026-09-13
1040Canada2026-10-04
1041Japan2026-09-22
1042Germany2026-09-08
1043Italy2026-09-14
1044France2026-09-17
1045Italy2026-09-24
1046United Kingdom2026-10-04
1047France2026-10-02
1048Argentina2026-10-01
1049Canada2026-09-27

On-Demand Data

NameIdCountryDate
Wickens L Royster1000Russia2026-09-09
Mayumi J Perin1001Japan2026-09-20
Misaki U Chui1002United Kingdom2026-09-16
Ricardo I Shinko1003Italy2026-10-04
Ricardo B Oldroyd1004Argentina2026-09-17
David M Caldarera1005France2026-09-08
Octavia F Nestle1006Spain2026-09-11
Sinclair C Foller1007Italy2026-09-27
Alejandro U Malet1008Canada2026-09-16
Deepesh G Kusko1009Italy2026-09-15
Isabel I Dilliard1010Russia2026-09-18
Kadeem Q Bowley1011Brazil2026-09-22
Nicolas F Saylors1012Brazil2026-09-19
Leja N Poquette1013India2026-09-29
Juan E Foller1014Japan2026-09-12
Silvio N Bolognia1015Russia2026-09-14
Jones P Ostrosky1016Italy2026-09-20
Aditya W Whobrey1017Japan2026-09-16
Faith S Butt1018Japan2026-09-26
Darci C Royster1019India2026-10-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar B DarakjyFranceXuxue Feng NEW
Smith R WaycottIndiaXuxue Feng NEGOTIATION
Maria L InouyeSpainStephen Shaw RENEWAL
Ivar D CampainAustraliaStephen Shaw UNQUALIFIED
Deepesh Q DilliardArgentinaXuxue Feng UNQUALIFIED
Misaki T DarakjyBrazilAnna Fali QUALIFIED
Greenwood U CaldareraBrazilAsiya Javayant UNQUALIFIED
Clifford N BriddickBrazilStephen Shaw RENEWAL
David I BologniaGermanyBernardo Dominic NEGOTIATION
Leon M SlusarskiItalyAnna Fali QUALIFIED
Maisha E MacleadFranceAsiya Javayant NEW
Smith L GlickItalyElwin Sharvill PROPOSAL
Ivar N GillianBrazilElwin Sharvill PROPOSAL
Julie D CaldareraItalyAsiya Javayant PROPOSAL
Adams S OstroskyRussiaOnyama Limba QUALIFIED
Emily D SchemmerCanadaOnyama Limba QUALIFIED
Octavia Q VocelkaGermanyElwin Sharvill NEGOTIATION
Johnson F SaylorsUnited KingdomAsiya Javayant NEGOTIATION
Costa H NickaJapanIvan Magalhaes NEGOTIATION
Jeanfrancois K NickaSpainAmy Elsner PROPOSAL
Leja V OstroskyBrazilXuxue Feng UNQUALIFIED
Munro I SchemmerFranceOnyama Limba NEGOTIATION
Smith B CaudyFranceOnyama Limba PROPOSAL
David L RutaArgentinaXuxue Feng NEGOTIATION
Misaki U VocelkaArgentinaBernardo Dominic NEW
Aruna I BowleyGermanyAmy Elsner UNQUALIFIED
Arvin F AlbaresItalyElwin Sharvill RENEWAL
Mayumi U WhobreyBrazilAnna Fali RENEWAL
Murillo U WhobreyJapanAmy Elsner NEW
David D ChuiCanadaIoni Bowcher RENEWAL
Alejandro O NestleArgentinaAsiya Javayant NEGOTIATION
Octavia K MacleadIndiaAnna Fali PROPOSAL
Claire A NestleIndiaStephen Shaw RENEWAL
Deepesh R CaudyJapanBernardo Dominic NEW
Greenwood U CaudyJapanIvan Magalhaes UNQUALIFIED
Juan H DarakjyAustraliaXuxue Feng NEGOTIATION
Julie I BologniaAustraliaStephen Shaw RENEWAL
Stacey Y MarrierIndiaAmy Elsner QUALIFIED
Leon F WieserArgentinaAsiya Javayant QUALIFIED
Salvatore R OldroydJapanAnna 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>