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
Smith Z FerenczGermanyAmy Elsner NEW
Jefferson G WaycottArgentinaElwin Sharvill UNQUALIFIED
Rodrigues M WaycottArgentinaAsiya Javayant UNQUALIFIED
Leja I WhobreyUnited KingdomElwin Sharvill NEW
Kadeem B RutaAustraliaAsiya Javayant QUALIFIED
Stacey E RutaIndiaAmy Elsner UNQUALIFIED
Jennifer Z MacleadFranceElwin Sharvill UNQUALIFIED
Arvin C PaprockiArgentinaIoni Bowcher UNQUALIFIED
Isabel Z ShinkoAustraliaAmy Elsner NEW
Jennifer D DoeArgentinaXuxue Feng UNQUALIFIED
Claire W KuskoSpainBernardo Dominic PROPOSAL
Costa W BowleyJapanAnna Fali NEW
Leon F SchemmerFranceAsiya Javayant PROPOSAL
Silvio W ButtBrazilElwin Sharvill NEW
Tony N CaudyCanadaXuxue Feng RENEWAL
Aika Z AlbaresAustraliaBernardo Dominic NEGOTIATION
Nicolas Q NestleFranceIvan Magalhaes PROPOSAL
Stacey Q SlusarskiGermanyXuxue Feng PROPOSAL
Ashley Y MaletUnited KingdomXuxue Feng QUALIFIED
Mujtaba M CaldareraArgentinaElwin Sharvill UNQUALIFIED
Mayumi W SlusarskiBrazilElwin Sharvill UNQUALIFIED
Emily B KuskoAustraliaAmy Elsner NEW
Leja Y VenereItalyAnna Fali QUALIFIED
Emily P SergiJapanIoni Bowcher RENEWAL
Jeanfrancois N MacleadJapanOnyama Limba RENEWAL
Sinclair C ButtRussiaOnyama Limba NEGOTIATION
Jefferson V SchemmerItalyXuxue Feng NEW
Antonio K VenereFranceAsiya Javayant PROPOSAL
Deepesh F BriddickUnited KingdomAnna Fali PROPOSAL
Mujtaba V DoeItalyStephen Shaw PROPOSAL
Claire P MarrierSpainStephen Shaw QUALIFIED
Leja T OldroydCanadaAmy Elsner PROPOSAL
Ashley G AlbaresIndiaAmy Elsner UNQUALIFIED
Leon L RulapaughUnited KingdomBernardo Dominic NEGOTIATION
Clifford A AlbaresIndiaOnyama Limba RENEWAL
Octavia K GarufiGermanyAmy Elsner NEW
Mujtaba M VenereArgentinaBernardo Dominic NEGOTIATION
Jennifer H WaycottIndiaOnyama Limba UNQUALIFIED
Jones G DilliardBrazilAmy Elsner UNQUALIFIED
Jennifer A VenereItalyXuxue Feng QUALIFIED
Ashley G CaldareraUnited KingdomIvan Magalhaes RENEWAL
Mayumi Y FlosiCanadaOnyama Limba NEW
Ricardo W MacleadJapanElwin Sharvill NEGOTIATION
Isabel E ShinkoCanadaBernardo Dominic QUALIFIED
Darci C AmigonArgentinaAsiya Javayant PROPOSAL
Jennifer K SchemmerCanadaAsiya Javayant NEW
Juan J RoysterJapanBernardo Dominic UNQUALIFIED
Nicolas D RutaGermanyOnyama Limba NEW
David R RutaSpainAmy Elsner PROPOSAL
Ivar H SaylorsAustraliaIoni Bowcher UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Alejandro S VocelkaUnited KingdomOnyama Limba NEW
Arvin L FerenczBrazilAsiya Javayant NEGOTIATION
Maria Q PerinArgentinaAsiya Javayant UNQUALIFIED
Kaitlin Y NestleBrazilAmy Elsner RENEWAL
Maria U GillianSpainIoni Bowcher UNQUALIFIED
Clifford B GlickGermanyIvan Magalhaes PROPOSAL
Rodrigues T IturbideSpainAmy Elsner RENEWAL
Nicolas E MorascaBrazilOnyama Limba QUALIFIED
Ashley T GauchoRussiaBernardo Dominic NEW
Costa H FigeroaJapanIoni Bowcher UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Smith R SchemmerSpain2026-09-26Benton, John B Jr QUALIFIED99Elwin Sharvill
1001Morrow P FigeroaBrazil2026-09-27Feltz Printing Service NEW33Ioni Bowcher
1002Wickens I ChuiAustralia2026-09-30Truhlar And Truhlar Attys UNQUALIFIED91Ioni Bowcher
1003Tony W NestleAustralia2026-10-08Chapman, Ross E Esq UNQUALIFIED38Onyama Limba
1004Stacey G BowleyCanada2026-10-04Truhlar And Truhlar Attys QUALIFIED6Anna Fali
1005Jeanfrancois X GarufiUnited Kingdom2026-10-07Feiner Bros PROPOSAL49Ivan Magalhaes
1006Costa F SergiUnited Kingdom2026-10-10Buckley Miller Wright PROPOSAL66Amy Elsner
1007Kadeem B TollnerItaly2026-10-01Commercial Press RENEWAL30Asiya Javayant
1008Mujtaba M SlusarskiAustralia2026-10-03Benton, John B Jr NEGOTIATION43Stephen Shaw
1009Jeanfrancois R IturbideIndia2026-10-04Truhlar And Truhlar Attys NEW33Onyama Limba
1010Ashley O MacleadUnited Kingdom2026-09-21Morlong Associates UNQUALIFIED56Onyama Limba
1011Emily M VocelkaArgentina2026-09-23Benton, John B Jr RENEWAL81Xuxue Feng
1012Ashley P FlosiUnited Kingdom2026-10-18Benton, John B Jr NEW20Elwin Sharvill
1013Isabel J MaletFrance2026-09-21Truhlar And Truhlar Attys PROPOSAL8Bernardo Dominic
1014Chavez K AlbaresRussia2026-10-11Feiner Bros NEW41Amy Elsner
1015David X OldroydCanada2026-09-25Feiner Bros NEW97Ioni Bowcher
1016Silvio E MorascaItaly2026-10-02Chemel, James L Cpa PROPOSAL44Ioni Bowcher
1017Chavez T ButtJapan2026-10-06King, Christopher A Esq QUALIFIED94Amy Elsner
1018Octavia X PoquetteRussia2026-09-30Chanay, Jeffrey A Esq NEGOTIATION74Elwin Sharvill
1019Ivar E SaylorsJapan2026-10-15Chemel, James L Cpa NEW74Anna Fali
1020Ashley N KuskoFrance2026-10-16Truhlar And Truhlar Attys RENEWAL41Elwin Sharvill
1021Rodrigues P WhobreyUnited Kingdom2026-09-30Buckley Miller Wright QUALIFIED27Onyama Limba
1022Jones G RulapaughFrance2026-10-03Commercial Press UNQUALIFIED6Ioni Bowcher
1023Antonio E SergiSpain2026-09-26Rousseaux, Michael Esq UNQUALIFIED11Ioni Bowcher
1024Octavia B WhobreyIndia2026-10-04Chapman, Ross E Esq QUALIFIED31Xuxue Feng
1025Clifford U PerinAustralia2026-10-05Rangoni Of Florence UNQUALIFIED43Elwin Sharvill
1026Leja E GlickItaly2026-09-23Chanay, Jeffrey A Esq PROPOSAL3Bernardo Dominic
1027Jones W PaprockiBrazil2026-10-07Commercial Press RENEWAL22Ioni Bowcher
1028Leon K SchemmerSpain2026-10-01King, Christopher A Esq NEW83Ivan Magalhaes
1029David B VocelkaCanada2026-10-01King, Christopher A Esq UNQUALIFIED80Xuxue Feng
1030Cody S DilliardItaly2026-09-22Chemel, James L Cpa UNQUALIFIED56Anna Fali
1031Julie E NickaItaly2026-09-30Printing Dimensions UNQUALIFIED66Xuxue Feng
1032Izzy E SaylorsBrazil2026-10-08Benton, John B Jr RENEWAL47Ivan Magalhaes
1033Aika Q DarakjyIndia2026-10-06Benton, John B Jr QUALIFIED69Bernardo Dominic
1034Faith T PerinCanada2026-10-15Rangoni Of Florence NEGOTIATION55Anna Fali
1035Ivar K MacleadItaly2026-09-28Chapman, Ross E Esq NEGOTIATION55Xuxue Feng
1036Maisha G KolmetzBrazil2026-10-03Buckley Miller Wright QUALIFIED95Stephen Shaw
1037Izzy X ShinkoFrance2026-09-19Morlong Associates QUALIFIED30Xuxue Feng
1038Maria O BriddickJapan2026-10-05Chapman, Ross E Esq PROPOSAL12Ioni Bowcher
1039Deepesh J PerinItaly2026-09-29Dorl, James J Esq QUALIFIED86Stephen Shaw
1040Misaki F NickaGermany2026-10-14King, Christopher A Esq NEW6Bernardo Dominic
1041Chavez X KolmetzCanada2026-09-21Printing Dimensions NEGOTIATION0Ivan Magalhaes
1042Juan G WhobreyIndia2026-09-19Chanay, Jeffrey A Esq NEGOTIATION20Xuxue Feng
1043Julie P RulapaughRussia2026-10-12Feiner Bros NEGOTIATION80Bernardo Dominic
1044Octavia O GlickCanada2026-10-16King, Christopher A Esq QUALIFIED21Anna Fali
1045Murillo Q ButtUnited Kingdom2026-09-25Rangoni Of Florence NEW80Elwin Sharvill
1046Ashley N BriddickAustralia2026-09-27Chapman, Ross E Esq NEW51Anna Fali
1047Emily W ChuiJapan2026-10-01Morlong Associates UNQUALIFIED38Xuxue Feng
1048Octavia Y WhobreySpain2026-09-29Morlong Associates NEGOTIATION15Ivan Magalhaes
1049Izzy U OldroydRussia2026-10-16Rousseaux, Michael Esq PROPOSAL18Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Octavia V RulapaughAustraliaIoni Bowcher NEW
Octavia P FlosiGermanyXuxue Feng NEW
Alejandro F PoquetteGermanyIoni Bowcher QUALIFIED
Ricardo K BriddickArgentinaBernardo Dominic PROPOSAL
Isabel P PaprockiRussiaIvan Magalhaes QUALIFIED
Tony U SaylorsSpainBernardo Dominic QUALIFIED
Kadeem G OldroydGermanyBernardo Dominic PROPOSAL
Costa F SergiIndiaBernardo Dominic NEW
Antonio X SlusarskiFranceOnyama Limba NEW
Sinclair Z SaylorsIndiaXuxue Feng PROPOSAL
Costa C KolmetzAustraliaXuxue Feng RENEWAL
Mujtaba P DoeIndiaAnna Fali NEW
Nicolas L KolmetzItalyIoni Bowcher UNQUALIFIED
Izzy E PaprockiBrazilOnyama Limba QUALIFIED
Maisha F MaletItalyStephen Shaw QUALIFIED
Emily U KuskoItalyIvan Magalhaes NEW
Juan U VocelkaArgentinaIoni Bowcher QUALIFIED
Cody G WieserArgentinaElwin Sharvill NEGOTIATION
Greenwood Z SchemmerRussiaIoni Bowcher QUALIFIED
Kaitlin Q SaylorsUnited KingdomOnyama Limba UNQUALIFIED
Johnson F IturbideItalyAsiya Javayant PROPOSAL
Greenwood H NickaGermanyAmy Elsner NEGOTIATION
Maisha L MaletIndiaIvan Magalhaes QUALIFIED
Morrow J BowleyAustraliaBernardo Dominic UNQUALIFIED
Alejandro U CaldareraBrazilAmy Elsner QUALIFIED
Jennifer W BologniaBrazilElwin Sharvill NEGOTIATION
Ivar M SergiRussiaBernardo Dominic PROPOSAL
Salvatore U OstroskyIndiaOnyama Limba NEW
Clifford K MaletRussiaXuxue Feng PROPOSAL
Cody W TollnerBrazilIvan Magalhaes NEW
Costa A FlosiFranceIvan Magalhaes NEGOTIATION
Emily O SlusarskiGermanyXuxue Feng UNQUALIFIED
Faith W BriddickAustraliaIoni Bowcher RENEWAL
Deepesh D BologniaAustraliaXuxue Feng PROPOSAL
Murillo X IturbideJapanXuxue Feng UNQUALIFIED
Alejandro C SlusarskiArgentinaXuxue Feng NEGOTIATION
Kadeem C MaletAustraliaXuxue Feng NEW
Ricardo K FigeroaCanadaBernardo Dominic NEGOTIATION
Salvatore M VocelkaArgentinaIoni Bowcher PROPOSAL
Costa F AmigonAustraliaElwin Sharvill PROPOSAL
Ashley N CaldareraCanadaStephen Shaw UNQUALIFIED
James B WhobreyJapanElwin Sharvill RENEWAL
Isabel G MaletIndiaOnyama Limba UNQUALIFIED
Aruna K PaprockiIndiaOnyama Limba QUALIFIED
Rodrigues Y SergiFranceAmy Elsner PROPOSAL
Darci S PoquetteCanadaAsiya Javayant UNQUALIFIED
Jefferson Y BowleyFranceXuxue Feng PROPOSAL
Deepesh Q KuskoSpainOnyama Limba RENEWAL
Claire M SlusarskiSpainAmy Elsner NEGOTIATION
Mayumi W GlickBrazilElwin Sharvill QUALIFIED
Frozen Columns
Name
Claire E Butt
Stacey W Ferencz
Costa U Albares
Octavia J Inouye
Silvio K Royster
Kadeem J Venere
Adams F Darakjy
Jennifer D Venere
Ricardo R Glick
Sinclair G Waycott
James J Inouye
Darci I Doe
Jeanfrancois M Slusarski
Sinclair O Tollner
Jeanfrancois Z Oldroyd
Maisha H Bowley
Octavia T Briddick
Francesco K Saylors
Isabel M Foller
Kadeem Q Waycott
Jefferson R Stenseth
Johnson Z Ferencz
Jennifer Y Whobrey
Jeanfrancois Y Perin
Aditya H Waycott
Arvin U Flosi
Silvio L Paprocki
Clifford K Schemmer
James X Ostrosky
Arvin E Iturbide
Aika X Malet
Claire S Ruta
Wickens E Garufi
Deepesh X Malet
Silvio F Nicka
Ivar S Doe
Aruna P Gillian
Maisha X Caldarera
Smith U Malet
Claire U Malet
Antonio C Doe
Jennifer K Rulapaugh
Chavez O Malet
Morrow H Rim
Octavia E Maclead
Ashley I Morasca
Aika Z Shinko
Aruna I Stockham
Mayumi W Morasca
Emily W Bowley
IdCountryDate
1000Argentina2026-09-25
1001Brazil2026-09-22
1002France2026-10-17
1003Canada2026-09-23
1004Spain2026-09-29
1005Spain2026-10-03
1006India2026-10-08
1007France2026-09-22
1008Australia2026-09-22
1009India2026-10-10
1010Australia2026-10-13
1011Japan2026-10-04
1012Brazil2026-10-08
1013Canada2026-10-08
1014Germany2026-10-07
1015India2026-10-01
1016Italy2026-09-24
1017Canada2026-09-29
1018Canada2026-10-16
1019Argentina2026-09-23
1020Italy2026-10-12
1021Canada2026-09-20
1022Spain2026-10-02
1023Japan2026-10-02
1024Russia2026-10-06
1025Germany2026-10-15
1026Canada2026-09-21
1027India2026-10-09
1028United Kingdom2026-09-28
1029India2026-09-26
1030Canada2026-10-12
1031Japan2026-09-29
1032France2026-09-22
1033Australia2026-10-06
1034Australia2026-10-12
1035Spain2026-10-17
1036Spain2026-10-13
1037Italy2026-10-10
1038Russia2026-09-29
1039Brazil2026-09-24
1040Brazil2026-09-27
1041Australia2026-09-29
1042France2026-09-19
1043Canada2026-09-25
1044Italy2026-09-26
1045Argentina2026-09-30
1046Canada2026-10-14
1047Germany2026-10-02
1048Japan2026-10-11
1049Japan2026-10-02

On-Demand Data

NameIdCountryDate
Mujtaba S Stockham1000United Kingdom2026-10-15
Aruna Q Malet1001Japan2026-09-26
Silvio A Kolmetz1002Argentina2026-10-02
Morrow X Ostrosky1003India2026-09-30
Tony U Kolmetz1004Japan2026-09-19
Kadeem W Perin1005Italy2026-09-21
Faith X Whobrey1006Japan2026-09-23
Mayumi B Malet1007Argentina2026-09-28
Leja D Malet1008Spain2026-09-20
Deepesh L Morasca1009United Kingdom2026-09-19
Izzy M Rim1010France2026-10-14
Stacey G Figeroa1011United Kingdom2026-09-21
Octavia I Rulapaugh1012India2026-10-18
Cody N Stockham1013Australia2026-10-04
Maria A Campain1014Japan2026-10-13
Morrow G Oldroyd1015United Kingdom2026-10-10
Morrow J Ruta1016Germany2026-10-16
Maria D Wieser1017Germany2026-10-17
Wickens P Rim1018India2026-09-20
Kaitlin Q Bowley1019Germany2026-09-23
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Mujtaba Q WaycottItalyAnna Fali PROPOSAL
Smith K DoeJapanAnna Fali RENEWAL
Emily I RutaBrazilIvan Magalhaes QUALIFIED
Faith W FigeroaUnited KingdomXuxue Feng NEW
Mujtaba Q KuskoRussiaAsiya Javayant UNQUALIFIED
Alejandro C GillianArgentinaXuxue Feng NEW
Aditya X RutaBrazilAnna Fali NEW
Clifford W PaprockiJapanBernardo Dominic QUALIFIED
Greenwood O BriddickSpainAsiya Javayant QUALIFIED
Alejandro H WhobreyArgentinaIoni Bowcher QUALIFIED
Octavia F IturbideGermanyIoni Bowcher UNQUALIFIED
Stacey W RoysterIndiaElwin Sharvill QUALIFIED
Julie T InouyeRussiaElwin Sharvill PROPOSAL
Clifford N OldroydCanadaOnyama Limba NEGOTIATION
Aika M OldroydBrazilOnyama Limba NEGOTIATION
Jefferson I AmigonUnited KingdomBernardo Dominic RENEWAL
Aditya T RulapaughAustraliaAsiya Javayant RENEWAL
Salvatore H OstroskyItalyAsiya Javayant RENEWAL
Arvin N PaprockiFranceXuxue Feng NEW
Isabel A AmigonGermanyIvan Magalhaes NEGOTIATION
Deepesh V CaldareraFranceElwin Sharvill UNQUALIFIED
Juan P BologniaRussiaIvan Magalhaes QUALIFIED
David H VenereJapanAsiya Javayant UNQUALIFIED
Maria H OldroydBrazilStephen Shaw NEGOTIATION
Costa X OstroskyGermanyAsiya Javayant PROPOSAL
Nicolas V AlbaresCanadaAsiya Javayant UNQUALIFIED
Ricardo A ShinkoRussiaAnna Fali PROPOSAL
Kadeem L VocelkaAustraliaIvan Magalhaes UNQUALIFIED
Munro C FlosiSpainAmy Elsner QUALIFIED
Smith R WaycottSpainAsiya Javayant NEGOTIATION
Rodrigues B InouyeJapanBernardo Dominic UNQUALIFIED
Deepesh S FlosiGermanyAmy Elsner NEW
Octavia A InouyeIndiaBernardo Dominic PROPOSAL
Silvio O RimGermanyAsiya Javayant QUALIFIED
Emily I DarakjyAustraliaIvan Magalhaes NEW
Nicolas W CaudyAustraliaBernardo Dominic NEGOTIATION
Sinclair Q AlbaresBrazilAsiya Javayant PROPOSAL
Salvatore H VenereRussiaAnna Fali QUALIFIED
Leon D MacleadAustraliaAnna Fali NEW
Jeanfrancois U SchemmerRussiaAmy Elsner RENEWAL

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