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
Isabel K DarakjyCanadaAnna Fali NEW
Chavez G CaudySpainIoni Bowcher PROPOSAL
Alejandro A WieserIndiaBernardo Dominic PROPOSAL
Tony W NestleUnited KingdomIoni Bowcher RENEWAL
Ashley X FerenczUnited KingdomBernardo Dominic NEGOTIATION
Costa E PaprockiSpainElwin Sharvill PROPOSAL
Maisha L SaylorsIndiaAmy Elsner RENEWAL
Deepesh W GauchoJapanAsiya Javayant PROPOSAL
Jeanfrancois T NestleSpainAmy Elsner UNQUALIFIED
Sinclair O BologniaArgentinaAnna Fali RENEWAL
Arvin X FerenczRussiaIvan Magalhaes NEW
Rodrigues Z OldroydGermanyAnna Fali NEW
Isabel A DarakjyRussiaAnna Fali NEW
Ashley V DilliardFranceStephen Shaw PROPOSAL
Smith J NestleUnited KingdomBernardo Dominic RENEWAL
Julie L ShinkoJapanAsiya Javayant NEW
Maisha N VenereSpainElwin Sharvill QUALIFIED
Kadeem K StensethAustraliaBernardo Dominic PROPOSAL
Adams U DilliardFranceBernardo Dominic QUALIFIED
Emily Z MorascaItalyIvan Magalhaes NEGOTIATION
Francesco I FollerRussiaAsiya Javayant PROPOSAL
Juan G MorascaIndiaOnyama Limba NEGOTIATION
David O MarrierCanadaIvan Magalhaes NEW
Nicolas U TollnerJapanStephen Shaw UNQUALIFIED
Jefferson C TollnerCanadaIvan Magalhaes UNQUALIFIED
Claire F PaprockiArgentinaStephen Shaw NEW
David H InouyeSpainXuxue Feng NEGOTIATION
Nicolas R MacleadJapanStephen Shaw RENEWAL
Juan O PerinGermanyAsiya Javayant NEW
Izzy O AlbaresCanadaIvan Magalhaes NEGOTIATION
David P ShinkoIndiaStephen Shaw QUALIFIED
Antonio W CaudyItalyBernardo Dominic RENEWAL
Maisha S CaldareraCanadaStephen Shaw NEGOTIATION
Silvio K FollerArgentinaBernardo Dominic UNQUALIFIED
Jennifer A SaylorsJapanAnna Fali NEW
Ricardo L DarakjyGermanyAnna Fali UNQUALIFIED
Greenwood M VocelkaRussiaIvan Magalhaes NEW
Morrow W RoysterSpainOnyama Limba PROPOSAL
Leon T DoeArgentinaBernardo Dominic QUALIFIED
Mayumi B CaudyIndiaElwin Sharvill NEW
Julie I CaudyAustraliaIoni Bowcher UNQUALIFIED
Johnson D PaprockiIndiaStephen Shaw PROPOSAL
Tony F SaylorsBrazilBernardo Dominic UNQUALIFIED
Nicolas T VenereCanadaIvan Magalhaes UNQUALIFIED
Cody F NickaCanadaBernardo Dominic QUALIFIED
James V RulapaughGermanyElwin Sharvill UNQUALIFIED
Isabel G DilliardCanadaAnna Fali NEGOTIATION
Francesco J WaycottItalyAmy Elsner PROPOSAL
Jones M GarufiUnited KingdomIoni Bowcher NEW
Arvin H IturbideIndiaIoni Bowcher NEW
Horizontal
NameCountryRepresentativeStatus
Jeanfrancois I StensethBrazilIvan Magalhaes UNQUALIFIED
Murillo Y CaldareraSpainAmy Elsner RENEWAL
Silvio N MarrierArgentinaAmy Elsner RENEWAL
Ivar D RoysterGermanyIvan Magalhaes PROPOSAL
Cody Q ChuiGermanyOnyama Limba RENEWAL
Alejandro M BologniaGermanyBernardo Dominic QUALIFIED
Izzy E KuskoJapanXuxue Feng NEW
Salvatore V MaletArgentinaOnyama Limba NEW
Tony K PaprockiItalyStephen Shaw UNQUALIFIED
Francesco Q SergiSpainIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Kaitlin M RutaJapan2026-11-02Rousseaux, Michael Esq NEW27Amy Elsner
1001Nicolas V VocelkaItaly2026-11-05Benton, John B Jr NEGOTIATION2Elwin Sharvill
1002Leon Y WhobreyAustralia2026-10-29Morlong Associates PROPOSAL96Ivan Magalhaes
1003Sinclair Z VenereRussia2026-11-03Feiner Bros NEGOTIATION47Stephen Shaw
1004Kaitlin X DarakjyBrazil2026-11-08Buckley Miller Wright QUALIFIED43Elwin Sharvill
1005Ivar I FigeroaFrance2026-11-08Commercial Press PROPOSAL14Elwin Sharvill
1006Stacey V IturbideArgentina2026-10-26Chapman, Ross E Esq RENEWAL37Elwin Sharvill
1007Ricardo I RulapaughItaly2026-10-20King, Christopher A Esq QUALIFIED60Stephen Shaw
1008Morrow Z GarufiArgentina2026-11-11Dorl, James J Esq NEW12Onyama Limba
1009Deepesh Q SlusarskiSpain2026-11-05Truhlar And Truhlar Attys RENEWAL48Asiya Javayant
1010Ashley E GillianGermany2026-11-13Truhlar And Truhlar Attys UNQUALIFIED58Anna Fali
1011Smith W KuskoJapan2026-10-16Buckley Miller Wright NEW91Asiya Javayant
1012Julie M VocelkaArgentina2026-10-21Truhlar And Truhlar Attys QUALIFIED61Xuxue Feng
1013Morrow B BowleySpain2026-10-27Chanay, Jeffrey A Esq PROPOSAL49Stephen Shaw
1014Francesco I FerenczFrance2026-11-05Morlong Associates RENEWAL60Onyama Limba
1015Silvio Q SaylorsAustralia2026-11-10Feiner Bros NEW44Asiya Javayant
1016David P FlosiFrance2026-10-22Printing Dimensions NEGOTIATION43Asiya Javayant
1017James K PoquetteGermany2026-10-15Chapman, Ross E Esq PROPOSAL51Ivan Magalhaes
1018Greenwood Q RoysterBrazil2026-10-16Printing Dimensions NEW32Asiya Javayant
1019Isabel S SlusarskiIndia2026-10-25Feiner Bros NEGOTIATION74Onyama Limba
1020Leon P RulapaughAustralia2026-11-06Benton, John B Jr RENEWAL99Ioni Bowcher
1021Ivar Y KolmetzBrazil2026-11-11Rousseaux, Michael Esq QUALIFIED10Elwin Sharvill
1022Morrow F GauchoUnited Kingdom2026-10-16Chanay, Jeffrey A Esq PROPOSAL83Stephen Shaw
1023Misaki L MaletCanada2026-10-26Rangoni Of Florence PROPOSAL10Amy Elsner
1024Silvio Q RimGermany2026-10-25Chapman, Ross E Esq NEW15Bernardo Dominic
1025Jefferson A IturbideIndia2026-11-09Chemel, James L Cpa PROPOSAL30Ivan Magalhaes
1026Octavia D RimItaly2026-11-09Buckley Miller Wright QUALIFIED44Bernardo Dominic
1027Juan P GauchoFrance2026-11-13Chemel, James L Cpa NEGOTIATION82Amy Elsner
1028Francesco S BriddickRussia2026-10-29Morlong Associates NEW73Xuxue Feng
1029Faith Z NickaBrazil2026-11-04Morlong Associates NEGOTIATION21Asiya Javayant
1030Sinclair A SchemmerSpain2026-11-02Feltz Printing Service RENEWAL99Ivan Magalhaes
1031Adams V MacleadBrazil2026-11-13Truhlar And Truhlar Attys UNQUALIFIED52Elwin Sharvill
1032Arvin W FlosiRussia2026-10-25Rangoni Of Florence RENEWAL82Asiya Javayant
1033Octavia I SergiIndia2026-10-24Buckley Miller Wright UNQUALIFIED79Onyama Limba
1034Murillo X RoysterBrazil2026-10-16Feltz Printing Service NEGOTIATION37Amy Elsner
1035Aruna W CampainIndia2026-10-24Chapman, Ross E Esq NEGOTIATION99Stephen Shaw
1036Alejandro K ChuiBrazil2026-10-16Rangoni Of Florence RENEWAL79Stephen Shaw
1037Johnson N PaprockiCanada2026-10-31Rousseaux, Michael Esq NEW17Onyama Limba
1038Julie K MorascaSpain2026-11-07Benton, John B Jr UNQUALIFIED49Ioni Bowcher
1039James O RulapaughItaly2026-11-03Printing Dimensions UNQUALIFIED51Asiya Javayant
1040Salvatore T AmigonAustralia2026-11-06Rousseaux, Michael Esq UNQUALIFIED72Onyama Limba
1041Isabel D AlbaresGermany2026-11-04Chanay, Jeffrey A Esq PROPOSAL44Anna Fali
1042Jennifer N DarakjyArgentina2026-11-08Truhlar And Truhlar Attys UNQUALIFIED70Ivan Magalhaes
1043Stacey K BowleyItaly2026-10-21Chapman, Ross E Esq QUALIFIED4Ioni Bowcher
1044Stacey S DarakjyArgentina2026-11-02Rousseaux, Michael Esq RENEWAL55Ivan Magalhaes
1045Ricardo E PaprockiGermany2026-11-04Dorl, James J Esq NEGOTIATION58Asiya Javayant
1046Maisha E RutaFrance2026-10-26Chanay, Jeffrey A Esq QUALIFIED38Bernardo Dominic
1047Julie X GauchoSpain2026-10-20Chanay, Jeffrey A Esq NEW52Onyama Limba
1048Emily F SaylorsUnited Kingdom2026-11-05Feltz Printing Service RENEWAL43Asiya Javayant
1049Ricardo L FerenczUnited Kingdom2026-10-16Feltz Printing Service NEGOTIATION6Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Salvatore S GillianIndiaBernardo Dominic QUALIFIED
Greenwood G MaletSpainElwin Sharvill PROPOSAL
Aika X FerenczAustraliaIoni Bowcher QUALIFIED
Chavez D SlusarskiGermanyXuxue Feng NEW
Leja S MacleadJapanAsiya Javayant UNQUALIFIED
Silvio D FollerItalyIoni Bowcher UNQUALIFIED
Jones E OldroydIndiaIvan Magalhaes NEGOTIATION
Murillo R VenereIndiaXuxue Feng NEW
Misaki S SaylorsGermanyXuxue Feng NEGOTIATION
Aruna L CaudyGermanyAsiya Javayant RENEWAL
Aika G GarufiArgentinaIoni Bowcher RENEWAL
Salvatore E BowleyFranceIvan Magalhaes NEW
Aditya J AlbaresUnited KingdomXuxue Feng NEGOTIATION
Francesco D AlbaresJapanAmy Elsner NEW
Jeanfrancois P PerinJapanAsiya Javayant QUALIFIED
Johnson F MarrierItalyAnna Fali PROPOSAL
Murillo K OstroskyArgentinaElwin Sharvill RENEWAL
Ricardo R NestleAustraliaAmy Elsner NEW
Mujtaba J InouyeBrazilAsiya Javayant RENEWAL
Jeanfrancois P DoeAustraliaAnna Fali UNQUALIFIED
Kadeem T MaletUnited KingdomXuxue Feng NEGOTIATION
Kadeem G GlickGermanyAsiya Javayant RENEWAL
Salvatore M FigeroaJapanIvan Magalhaes NEGOTIATION
Faith A SergiBrazilBernardo Dominic NEW
Morrow D SergiRussiaAmy Elsner RENEWAL
Jennifer S GauchoUnited KingdomElwin Sharvill PROPOSAL
Kadeem I KuskoJapanAmy Elsner NEGOTIATION
Darci O GauchoRussiaBernardo Dominic NEW
Murillo B DarakjyAustraliaOnyama Limba NEW
Ivar L TollnerAustraliaIvan Magalhaes QUALIFIED
Cody I AlbaresRussiaStephen Shaw NEGOTIATION
Silvio Q WaycottRussiaOnyama Limba NEW
Alejandro T BriddickJapanAnna Fali QUALIFIED
Julie R FlosiCanadaAsiya Javayant NEW
Emily Y AmigonFranceAnna Fali QUALIFIED
Misaki Q StensethBrazilOnyama Limba QUALIFIED
Kadeem W VocelkaAustraliaOnyama Limba NEW
Emily U SergiIndiaAmy Elsner UNQUALIFIED
Aruna W OldroydArgentinaIoni Bowcher QUALIFIED
Aditya Y CampainSpainAsiya Javayant UNQUALIFIED
Morrow D CaldareraJapanXuxue Feng UNQUALIFIED
Antonio O WhobreySpainXuxue Feng NEGOTIATION
Julie P MaletAustraliaElwin Sharvill UNQUALIFIED
Murillo P GauchoAustraliaIoni Bowcher NEW
Nicolas N FollerCanadaBernardo Dominic QUALIFIED
Aruna B MaletJapanStephen Shaw PROPOSAL
Chavez C OldroydItalyIvan Magalhaes NEW
Jennifer W NickaCanadaElwin Sharvill UNQUALIFIED
Jefferson S FollerBrazilIoni Bowcher RENEWAL
Wickens P KolmetzFranceAmy Elsner QUALIFIED
Frozen Columns
Name
Silvio J Wieser
Murillo M Doe
Deepesh T Slusarski
Jennifer C Butt
Arvin G Morasca
Greenwood A Caldarera
Misaki K Slusarski
Maria W Nicka
Isabel U Nestle
Rodrigues X Paprocki
Wickens Z Oldroyd
Jones F Stenseth
Stacey I Ruta
Jefferson Y Chui
Aika U Darakjy
Stacey M Garufi
Tony Z Caldarera
Leja Z Wieser
Alejandro V Vocelka
Nicolas P Vocelka
Salvatore A Amigon
Aruna X Stockham
Kadeem E Dilliard
Costa U Malet
Aruna V Poquette
Arvin W Garufi
Misaki G Stenseth
Murillo J Darakjy
Jones H Chui
Morrow E Slusarski
Aditya W Campain
Kadeem Y Nicka
Tony X Oldroyd
Ricardo L Venere
Aruna S Bolognia
Greenwood K Perin
Costa M Briddick
Alejandro Q Ruta
Alejandro Q Kolmetz
Tony B Oldroyd
Rodrigues W Iturbide
Emily N Saylors
Silvio R Oldroyd
Jennifer L Poquette
Leja S Waycott
Faith D Kusko
Costa X Kolmetz
Claire V Wieser
Ricardo H Whobrey
Morrow I Bolognia
IdCountryDate
1000Canada2026-11-05
1001Russia2026-11-13
1002Canada2026-11-09
1003Brazil2026-10-29
1004Italy2026-10-31
1005Russia2026-11-03
1006Japan2026-11-08
1007France2026-11-06
1008India2026-11-13
1009Germany2026-10-21
1010Argentina2026-10-18
1011France2026-10-21
1012Brazil2026-10-16
1013Canada2026-10-21
1014Japan2026-10-23
1015Australia2026-11-09
1016Brazil2026-11-01
1017Italy2026-11-06
1018Argentina2026-10-22
1019Brazil2026-11-10
1020Brazil2026-10-27
1021Brazil2026-10-28
1022Brazil2026-11-09
1023Russia2026-11-12
1024Canada2026-11-08
1025Russia2026-10-27
1026United Kingdom2026-10-23
1027Spain2026-11-08
1028France2026-10-27
1029Russia2026-10-22
1030Japan2026-11-03
1031Brazil2026-10-24
1032Australia2026-11-11
1033Russia2026-10-25
1034India2026-11-11
1035Russia2026-10-18
1036India2026-10-22
1037United Kingdom2026-10-24
1038France2026-10-22
1039United Kingdom2026-10-20
1040Canada2026-10-30
1041Brazil2026-10-24
1042Russia2026-11-02
1043Argentina2026-11-11
1044Australia2026-11-08
1045Russia2026-11-09
1046Russia2026-11-12
1047Germany2026-11-10
1048United Kingdom2026-10-20
1049France2026-10-29

On-Demand Data

NameIdCountryDate
Francesco P Maclead1000Japan2026-10-19
Kaitlin X Malet1001Spain2026-11-13
Mayumi B Figeroa1002Spain2026-10-21
Aika F Rulapaugh1003Brazil2026-11-01
Clifford A Inouye1004Russia2026-10-26
Mujtaba W Sergi1005Argentina2026-10-26
James D Bolognia1006United Kingdom2026-10-27
Aruna Y Tollner1007Germany2026-11-01
Rodrigues C Kusko1008Germany2026-10-17
Leja T Kolmetz1009Germany2026-10-27
Jones V Malet1010India2026-11-10
Aruna H Royster1011United Kingdom2026-10-18
Francesco C Oldroyd1012Argentina2026-11-10
Maisha L Nestle1013France2026-11-01
Maisha T Stockham1014United Kingdom2026-10-20
Leon A Ruta1015Canada2026-11-11
Stacey Q Butt1016Australia2026-10-30
Isabel G Darakjy1017India2026-10-29
Kadeem Z Poquette1018Spain2026-11-04
Jefferson V Perin1019France2026-11-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Clifford O MorascaArgentinaStephen Shaw RENEWAL
Cody R IturbideJapanOnyama Limba PROPOSAL
Munro A SlusarskiJapanIvan Magalhaes NEW
Antonio J NickaArgentinaAmy Elsner PROPOSAL
Ivar C GauchoArgentinaElwin Sharvill RENEWAL
Jeanfrancois M RulapaughUnited KingdomIvan Magalhaes RENEWAL
Kaitlin M MorascaBrazilAnna Fali UNQUALIFIED
Jefferson V BriddickArgentinaIoni Bowcher RENEWAL
Murillo P FlosiCanadaAnna Fali QUALIFIED
Aika T MaletBrazilAsiya Javayant RENEWAL
Smith M FerenczSpainOnyama Limba RENEWAL
Rodrigues T WieserFranceElwin Sharvill QUALIFIED
Deepesh J PaprockiRussiaAnna Fali NEGOTIATION
Kaitlin R SlusarskiItalyIoni Bowcher PROPOSAL
Juan T CaldareraJapanAsiya Javayant NEW
Aika Q DarakjyIndiaXuxue Feng UNQUALIFIED
Claire F AmigonJapanOnyama Limba NEW
Francesco P FlosiItalyXuxue Feng PROPOSAL
Johnson M KolmetzFranceXuxue Feng PROPOSAL
Jones U MacleadArgentinaAmy Elsner PROPOSAL
Maria T IturbideBrazilOnyama Limba NEGOTIATION
Costa U BriddickJapanAsiya Javayant UNQUALIFIED
Murillo X MorascaIndiaBernardo Dominic NEGOTIATION
Jefferson B PerinGermanyAsiya Javayant NEGOTIATION
Maria X IturbideArgentinaAnna Fali PROPOSAL
Misaki N SaylorsCanadaAnna Fali UNQUALIFIED
Faith I MaletBrazilBernardo Dominic QUALIFIED
Maria K KolmetzGermanyElwin Sharvill RENEWAL
Darci S OldroydCanadaAsiya Javayant PROPOSAL
Clifford F AmigonUnited KingdomElwin Sharvill PROPOSAL
Aditya V PerinRussiaIoni Bowcher NEGOTIATION
Francesco R FerenczItalyBernardo Dominic NEGOTIATION
Aika Y MorascaItalyElwin Sharvill NEW
Cody H PaprockiItalyBernardo Dominic UNQUALIFIED
Salvatore K WaycottCanadaAmy Elsner QUALIFIED
Deepesh L PerinSpainStephen Shaw NEGOTIATION
Kadeem P FigeroaArgentinaXuxue Feng NEW
Mayumi M FlosiAustraliaBernardo Dominic PROPOSAL
Chavez V CaudyFranceIoni Bowcher PROPOSAL
Tony Q RimGermanyOnyama Limba PROPOSAL

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