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
Faith Z CaldareraUnited KingdomBernardo Dominic UNQUALIFIED
Octavia D NestleItalyBernardo Dominic UNQUALIFIED
Aika H SergiIndiaAnna Fali NEW
Maria H WieserFranceAnna Fali PROPOSAL
Wickens L MacleadBrazilXuxue Feng NEW
Octavia X GillianFranceOnyama Limba PROPOSAL
Tony N CaldareraAustraliaStephen Shaw UNQUALIFIED
Chavez U SlusarskiRussiaElwin Sharvill NEW
Salvatore H MacleadAustraliaStephen Shaw NEGOTIATION
James R RoysterAustraliaBernardo Dominic QUALIFIED
Misaki T DilliardRussiaIoni Bowcher PROPOSAL
Silvio Q OldroydBrazilIoni Bowcher NEGOTIATION
Juan E AlbaresFranceBernardo Dominic UNQUALIFIED
Munro E MaletFranceElwin Sharvill NEW
Greenwood M RutaIndiaAnna Fali RENEWAL
Costa J DilliardUnited KingdomXuxue Feng NEW
Julie A FerenczGermanyOnyama Limba NEW
Stacey Z BowleyCanadaElwin Sharvill RENEWAL
Aika C SlusarskiItalyAnna Fali UNQUALIFIED
Silvio B FerenczCanadaAsiya Javayant UNQUALIFIED
Clifford M ChuiArgentinaElwin Sharvill PROPOSAL
James S MaletAustraliaStephen Shaw PROPOSAL
Leon E ChuiUnited KingdomAsiya Javayant UNQUALIFIED
Jennifer K BowleyFranceElwin Sharvill RENEWAL
Maisha Q SlusarskiUnited KingdomBernardo Dominic RENEWAL
Antonio W SchemmerBrazilOnyama Limba UNQUALIFIED
Salvatore E OldroydUnited KingdomStephen Shaw QUALIFIED
Cody U CaudyCanadaXuxue Feng RENEWAL
Jefferson M FollerJapanAnna Fali RENEWAL
Stacey C MaletBrazilAsiya Javayant NEW
Emily T FlosiArgentinaBernardo Dominic RENEWAL
Stacey W NickaRussiaElwin Sharvill PROPOSAL
Salvatore X SlusarskiArgentinaAmy Elsner PROPOSAL
Stacey Q OstroskyArgentinaAnna Fali UNQUALIFIED
Murillo B RimBrazilStephen Shaw PROPOSAL
Chavez V MaletItalyStephen Shaw PROPOSAL
Mayumi E SchemmerItalyOnyama Limba UNQUALIFIED
Greenwood P PoquetteRussiaBernardo Dominic UNQUALIFIED
Izzy Z VocelkaItalyIoni Bowcher NEGOTIATION
Kaitlin T DilliardAustraliaIoni Bowcher QUALIFIED
Ivar G StockhamAustraliaAmy Elsner UNQUALIFIED
Ashley B SergiSpainOnyama Limba NEGOTIATION
Salvatore N GillianSpainIoni Bowcher RENEWAL
Octavia T RulapaughItalyAmy Elsner NEGOTIATION
Julie S KolmetzSpainIoni Bowcher QUALIFIED
Juan A BowleyGermanyElwin Sharvill QUALIFIED
Maisha I SergiUnited KingdomAnna Fali NEW
Munro H InouyeSpainAsiya Javayant UNQUALIFIED
Clifford Z RimSpainXuxue Feng NEGOTIATION
Johnson Q BologniaArgentinaAmy Elsner NEGOTIATION
Horizontal
NameCountryRepresentativeStatus
Stacey X ShinkoArgentinaAsiya Javayant NEGOTIATION
Mujtaba Y PoquetteRussiaAnna Fali UNQUALIFIED
Izzy L SchemmerCanadaAnna Fali NEW
Jennifer M WhobreyArgentinaAsiya Javayant PROPOSAL
Octavia M RimGermanyAmy Elsner NEGOTIATION
Maria L SlusarskiJapanStephen Shaw NEW
Cody E StockhamItalyElwin Sharvill UNQUALIFIED
Adams T SaylorsFranceIoni Bowcher QUALIFIED
Juan D BologniaAustraliaBernardo Dominic PROPOSAL
Deepesh N RimCanadaXuxue Feng NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Francesco U SergiIndia2026-09-05Chanay, Jeffrey A Esq RENEWAL18Stephen Shaw
1001Leja K KuskoFrance2026-09-11Chapman, Ross E Esq NEW95Asiya Javayant
1002Adams V OstroskyFrance2026-09-03Rangoni Of Florence NEGOTIATION4Bernardo Dominic
1003Costa C CampainCanada2026-08-31Feiner Bros UNQUALIFIED77Asiya Javayant
1004Aruna U AlbaresArgentina2026-09-15Rangoni Of Florence NEW13Stephen Shaw
1005Johnson T KolmetzRussia2026-08-28Benton, John B Jr RENEWAL81Asiya Javayant
1006Costa A DarakjyRussia2026-09-02Chapman, Ross E Esq PROPOSAL20Onyama Limba
1007Darci R SlusarskiArgentina2026-09-22Dorl, James J Esq PROPOSAL67Amy Elsner
1008Faith W VocelkaGermany2026-09-04King, Christopher A Esq QUALIFIED76Ivan Magalhaes
1009Maisha X FerenczBrazil2026-09-05Printing Dimensions RENEWAL70Bernardo Dominic
1010Aika X MaletRussia2026-09-05King, Christopher A Esq UNQUALIFIED78Bernardo Dominic
1011Arvin D FlosiSpain2026-09-12Rousseaux, Michael Esq UNQUALIFIED25Ioni Bowcher
1012Alejandro K KolmetzCanada2026-09-14Chapman, Ross E Esq RENEWAL98Onyama Limba
1013Deepesh P GlickFrance2026-09-20Commercial Press UNQUALIFIED39Anna Fali
1014Jennifer D DarakjyAustralia2026-09-26Morlong Associates NEGOTIATION11Stephen Shaw
1015Mayumi E BologniaBrazil2026-09-19Rousseaux, Michael Esq PROPOSAL2Ioni Bowcher
1016Leja A GillianJapan2026-09-21Chemel, James L Cpa QUALIFIED48Onyama Limba
1017Alejandro E ButtSpain2026-09-01Feiner Bros RENEWAL57Bernardo Dominic
1018Antonio B AmigonGermany2026-08-31Buckley Miller Wright QUALIFIED41Ivan Magalhaes
1019Isabel O DilliardItaly2026-09-18Morlong Associates RENEWAL70Bernardo Dominic
1020Deepesh R ShinkoJapan2026-09-17Benton, John B Jr NEW40Ioni Bowcher
1021Emily E MaletFrance2026-09-05Printing Dimensions QUALIFIED85Xuxue Feng
1022Deepesh K RimUnited Kingdom2026-09-18Truhlar And Truhlar Attys RENEWAL36Anna Fali
1023Darci R FlosiGermany2026-09-05Chanay, Jeffrey A Esq NEGOTIATION98Xuxue Feng
1024Maisha L IturbideArgentina2026-09-10Rousseaux, Michael Esq NEGOTIATION6Onyama Limba
1025Aruna J AlbaresBrazil2026-09-16Truhlar And Truhlar Attys PROPOSAL66Onyama Limba
1026Johnson B ChuiGermany2026-09-17Chemel, James L Cpa RENEWAL9Elwin Sharvill
1027David G OstroskyGermany2026-09-11Chanay, Jeffrey A Esq QUALIFIED23Elwin Sharvill
1028Sinclair B PerinIndia2026-09-10Truhlar And Truhlar Attys QUALIFIED41Onyama Limba
1029David R SaylorsSpain2026-09-18Chemel, James L Cpa QUALIFIED12Xuxue Feng
1030Aditya I FerenczCanada2026-09-14King, Christopher A Esq UNQUALIFIED71Amy Elsner
1031Silvio Q CampainFrance2026-09-14Commercial Press QUALIFIED3Ioni Bowcher
1032Johnson T StensethItaly2026-09-08Chapman, Ross E Esq PROPOSAL6Anna Fali
1033Greenwood W SergiCanada2026-09-02Truhlar And Truhlar Attys UNQUALIFIED58Anna Fali
1034Jones K DoeItaly2026-09-09Rousseaux, Michael Esq NEGOTIATION6Stephen Shaw
1035Mujtaba Z BowleyItaly2026-09-26Buckley Miller Wright NEGOTIATION71Elwin Sharvill
1036Salvatore S NickaGermany2026-08-29Benton, John B Jr NEW45Asiya Javayant
1037Antonio D PerinRussia2026-09-22King, Christopher A Esq UNQUALIFIED89Xuxue Feng
1038Ashley E IturbideGermany2026-09-17Benton, John B Jr UNQUALIFIED26Elwin Sharvill
1039Kadeem G WieserIndia2026-09-04Morlong Associates QUALIFIED99Asiya Javayant
1040Smith A ChuiGermany2026-08-30Commercial Press QUALIFIED65Xuxue Feng
1041Smith X RimUnited Kingdom2026-09-14King, Christopher A Esq NEW3Elwin Sharvill
1042Wickens C StensethJapan2026-09-06Buckley Miller Wright QUALIFIED11Amy Elsner
1043Tony O VocelkaUnited Kingdom2026-09-10Dorl, James J Esq PROPOSAL44Amy Elsner
1044Julie A TollnerGermany2026-09-26King, Christopher A Esq RENEWAL58Bernardo Dominic
1045Kadeem Z PoquetteArgentina2026-09-11Rangoni Of Florence NEW43Anna Fali
1046Alejandro E PerinArgentina2026-09-17Chanay, Jeffrey A Esq NEW40Xuxue Feng
1047Alejandro Y VocelkaSpain2026-09-05Chemel, James L Cpa NEW81Stephen Shaw
1048Julie X DilliardUnited Kingdom2026-09-13King, Christopher A Esq NEW93Stephen Shaw
1049Jefferson L VocelkaArgentina2026-08-28Truhlar And Truhlar Attys PROPOSAL75Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Juan B ButtIndiaOnyama Limba RENEWAL
Wickens P NickaCanadaOnyama Limba NEGOTIATION
Jefferson A DarakjyUnited KingdomXuxue Feng QUALIFIED
Maisha K KolmetzRussiaIoni Bowcher PROPOSAL
Mujtaba C ShinkoFranceAmy Elsner NEW
Aruna O MarrierFranceOnyama Limba NEW
Claire V GarufiRussiaIvan Magalhaes QUALIFIED
Kaitlin D MorascaJapanOnyama Limba NEW
Greenwood P IturbideSpainXuxue Feng UNQUALIFIED
Maria U AmigonAustraliaAmy Elsner PROPOSAL
Murillo J NestleRussiaAnna Fali PROPOSAL
Alejandro E IturbideSpainAnna Fali UNQUALIFIED
Nicolas G InouyeRussiaStephen Shaw UNQUALIFIED
Darci H AlbaresUnited KingdomElwin Sharvill RENEWAL
Maisha C ButtJapanAsiya Javayant PROPOSAL
Morrow T BowleyAustraliaAsiya Javayant RENEWAL
Cody E FerenczIndiaStephen Shaw UNQUALIFIED
Isabel X OldroydGermanyIoni Bowcher QUALIFIED
Mayumi Z CaldareraIndiaOnyama Limba UNQUALIFIED
Mujtaba O RoysterCanadaElwin Sharvill NEW
Emily B FlosiJapanStephen Shaw PROPOSAL
Smith B MaletItalyStephen Shaw RENEWAL
Juan L FigeroaItalyBernardo Dominic PROPOSAL
Jones N ShinkoUnited KingdomStephen Shaw NEW
Tony A KolmetzSpainOnyama Limba NEGOTIATION
Ivar F VenereUnited KingdomElwin Sharvill RENEWAL
Claire X PaprockiItalyAsiya Javayant NEGOTIATION
Rodrigues A BriddickArgentinaXuxue Feng RENEWAL
Clifford I DoeItalyIvan Magalhaes NEGOTIATION
Maisha H RimIndiaAsiya Javayant UNQUALIFIED
Tony Q MaletFranceAnna Fali NEW
Greenwood I SaylorsJapanElwin Sharvill RENEWAL
Kadeem Z StensethFranceElwin Sharvill NEW
Stacey Q OldroydIndiaAsiya Javayant NEGOTIATION
Alejandro R KuskoArgentinaOnyama Limba PROPOSAL
Emily I InouyeArgentinaIoni Bowcher UNQUALIFIED
Julie L FerenczUnited KingdomAnna Fali UNQUALIFIED
Darci Z AlbaresUnited KingdomAsiya Javayant NEW
Mujtaba L MorascaFranceIvan Magalhaes QUALIFIED
Aruna F OldroydUnited KingdomIoni Bowcher QUALIFIED
Maria R MaletRussiaStephen Shaw PROPOSAL
Salvatore W FollerAustraliaAnna Fali RENEWAL
Arvin O NestleJapanBernardo Dominic UNQUALIFIED
Leja R NickaBrazilXuxue Feng NEGOTIATION
Jefferson M MaletAustraliaXuxue Feng UNQUALIFIED
Emily X PoquetteArgentinaXuxue Feng NEW
Izzy Y SaylorsArgentinaAnna Fali NEW
Tony K ShinkoAustraliaOnyama Limba PROPOSAL
Izzy Z InouyeAustraliaIoni Bowcher QUALIFIED
Johnson A SergiSpainBernardo Dominic NEGOTIATION
Frozen Columns
Name
Jones G Kusko
Clifford T Wieser
Juan O Gaucho
Misaki H Kolmetz
Chavez K Perin
Darci C Venere
Smith Q Slusarski
Darci L Albares
Jones P Caldarera
Greenwood P Dilliard
James V Glick
Clifford I Wieser
Misaki L Venere
Octavia Q Campain
Ivar P Royster
Mujtaba V Butt
Octavia U Iturbide
Chavez W Malet
James H Campain
Stacey F Wieser
Leja F Malet
Maria Z Inouye
Maria Z Saylors
Tony F Perin
Jeanfrancois Y Slusarski
Wickens S Caudy
Jones I Briddick
Murillo U Tollner
Jennifer Y Morasca
Jones L Kolmetz
Darci U Bowley
David X Ferencz
Salvatore I Vocelka
Kadeem W Wieser
Octavia D Flosi
Silvio C Glick
Kadeem X Schemmer
Johnson H Perin
Misaki K Marrier
Munro Q Rim
Jennifer U Waycott
Aika C Venere
Misaki G Dilliard
Kadeem S Malet
Silvio E Foller
Ivar O Caudy
Clifford K Foller
Isabel R Bolognia
Darci C Kolmetz
Tony O Figeroa
IdCountryDate
1000Spain2026-08-28
1001Italy2026-09-15
1002Spain2026-09-14
1003Canada2026-09-14
1004Canada2026-09-21
1005Canada2026-09-15
1006Germany2026-09-22
1007Japan2026-09-24
1008Brazil2026-09-13
1009Germany2026-09-06
1010Russia2026-09-09
1011India2026-09-17
1012Russia2026-08-30
1013Germany2026-09-24
1014United Kingdom2026-09-11
1015Brazil2026-09-08
1016Canada2026-09-02
1017Argentina2026-09-03
1018Australia2026-09-10
1019Japan2026-09-08
1020Argentina2026-09-18
1021Canada2026-09-16
1022Canada2026-09-13
1023United Kingdom2026-08-30
1024Japan2026-09-26
1025Germany2026-09-13
1026Spain2026-09-03
1027Italy2026-08-31
1028Italy2026-09-08
1029Japan2026-09-13
1030Russia2026-09-09
1031Italy2026-08-30
1032Russia2026-09-04
1033United Kingdom2026-09-01
1034Argentina2026-09-07
1035Argentina2026-09-13
1036Canada2026-09-10
1037France2026-09-06
1038Germany2026-09-21
1039Argentina2026-09-09
1040Spain2026-08-29
1041France2026-08-29
1042United Kingdom2026-09-24
1043Brazil2026-09-16
1044Italy2026-09-05
1045Russia2026-09-01
1046Spain2026-09-03
1047Canada2026-09-06
1048Brazil2026-09-20
1049Australia2026-09-13

On-Demand Data

NameIdCountryDate
Greenwood O Flosi1000Australia2026-08-28
Claire A Inouye1001India2026-09-07
Cody R Amigon1002Japan2026-09-07
Smith L Sergi1003Japan2026-09-23
Maria S Morasca1004Canada2026-09-10
Alejandro Z Kolmetz1005Japan2026-08-30
Maria S Ostrosky1006United Kingdom2026-09-17
Aika X Stenseth1007Japan2026-09-11
Ricardo Z Vocelka1008Australia2026-09-09
Faith Y Butt1009Japan2026-09-02
Rodrigues A Gaucho1010Argentina2026-09-03
Smith U Darakjy1011France2026-09-15
Wickens E Rim1012Australia2026-09-19
Adams W Maclead1013Argentina2026-09-18
Costa D Kolmetz1014Italy2026-09-17
James N Inouye1015United Kingdom2026-09-18
Wickens W Whobrey1016United Kingdom2026-09-22
Aditya J Foller1017Argentina2026-09-16
Leon D Nestle1018Australia2026-09-08
Jefferson L Bolognia1019Argentina2026-09-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Rodrigues J DarakjyFranceAsiya Javayant NEW
Tony B FigeroaAustraliaXuxue Feng NEGOTIATION
Jeanfrancois V CaldareraArgentinaIoni Bowcher RENEWAL
Cody B FerenczUnited KingdomAnna Fali QUALIFIED
Salvatore M RimSpainElwin Sharvill QUALIFIED
Mujtaba K GarufiFranceAmy Elsner NEGOTIATION
Sinclair Y CampainArgentinaIoni Bowcher RENEWAL
Arvin Q NickaGermanyIoni Bowcher QUALIFIED
Octavia X DarakjyGermanyAsiya Javayant QUALIFIED
Antonio C MorascaUnited KingdomAmy Elsner PROPOSAL
Ricardo O IturbideItalyOnyama Limba RENEWAL
Julie G IturbideItalyAmy Elsner NEGOTIATION
Jeanfrancois T SaylorsAustraliaXuxue Feng PROPOSAL
Rodrigues M FigeroaAustraliaAmy Elsner QUALIFIED
Morrow D AlbaresCanadaStephen Shaw NEGOTIATION
Antonio P FlosiAustraliaBernardo Dominic NEGOTIATION
Morrow I WieserItalyIoni Bowcher NEW
Smith E SaylorsRussiaAsiya Javayant QUALIFIED
Jefferson I IturbideUnited KingdomXuxue Feng RENEWAL
Greenwood Q PerinSpainAnna Fali QUALIFIED
Ashley I WieserIndiaAsiya Javayant QUALIFIED
Antonio F AlbaresArgentinaOnyama Limba NEGOTIATION
Arvin J FerenczRussiaBernardo Dominic NEW
Juan F FlosiItalyXuxue Feng PROPOSAL
Alejandro S KuskoRussiaXuxue Feng PROPOSAL
Francesco P PaprockiBrazilElwin Sharvill UNQUALIFIED
Mayumi V CaudyJapanAmy Elsner QUALIFIED
David R SlusarskiBrazilElwin Sharvill QUALIFIED
Francesco K NickaSpainAmy Elsner NEW
Chavez H ShinkoAustraliaBernardo Dominic RENEWAL
Murillo W RoysterCanadaIoni Bowcher QUALIFIED
Munro V BriddickUnited KingdomIoni Bowcher NEW
Antonio D PerinCanadaAsiya Javayant PROPOSAL
Deepesh P WieserRussiaElwin Sharvill UNQUALIFIED
Cody L VenereSpainBernardo Dominic NEW
Arvin A PaprockiAustraliaIvan Magalhaes QUALIFIED
Clifford N PerinSpainOnyama Limba QUALIFIED
Wickens D FigeroaArgentinaAmy Elsner RENEWAL
Kaitlin U ButtJapanAmy Elsner QUALIFIED
Sinclair N MorascaCanadaXuxue Feng UNQUALIFIED

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