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
Nicolas R RoysterIndiaAsiya Javayant NEW
Clifford H NickaBrazilIvan Magalhaes QUALIFIED
Maria M MarrierRussiaAmy Elsner RENEWAL
Ivar C GillianBrazilAnna Fali NEW
Octavia J MorascaItalyElwin Sharvill QUALIFIED
Francesco J GauchoBrazilXuxue Feng QUALIFIED
Mujtaba U PaprockiBrazilXuxue Feng QUALIFIED
Nicolas H ChuiItalyElwin Sharvill RENEWAL
Leon E SergiUnited KingdomIoni Bowcher QUALIFIED
Isabel N GillianIndiaIoni Bowcher NEGOTIATION
Murillo A AmigonRussiaBernardo Dominic NEGOTIATION
Chavez K BologniaIndiaAmy Elsner NEW
Jeanfrancois M GillianAustraliaOnyama Limba UNQUALIFIED
Tony L ChuiFranceAmy Elsner RENEWAL
Isabel Q FigeroaArgentinaElwin Sharvill NEW
Kadeem N AmigonSpainOnyama Limba NEGOTIATION
Antonio O FigeroaUnited KingdomIvan Magalhaes PROPOSAL
Misaki F AlbaresAustraliaAmy Elsner NEW
Chavez B KuskoBrazilAmy Elsner UNQUALIFIED
Ivar E RutaAustraliaAnna Fali NEGOTIATION
Greenwood V GillianUnited KingdomBernardo Dominic NEW
Stacey J DarakjyGermanyAmy Elsner QUALIFIED
Emily U AmigonGermanyStephen Shaw UNQUALIFIED
Leja C BriddickUnited KingdomAmy Elsner NEGOTIATION
Greenwood N DarakjyJapanElwin Sharvill UNQUALIFIED
Isabel K SchemmerCanadaXuxue Feng NEW
Claire E CaudySpainIoni Bowcher NEGOTIATION
Maisha X VenereBrazilIoni Bowcher NEW
Sinclair H OldroydItalyOnyama Limba RENEWAL
Leja G ShinkoRussiaIvan Magalhaes NEW
Aruna Q DarakjyBrazilXuxue Feng QUALIFIED
Jones D NickaAustraliaIvan Magalhaes NEGOTIATION
Ashley K MaletAustraliaXuxue Feng QUALIFIED
David Y SlusarskiRussiaAsiya Javayant PROPOSAL
David T ButtCanadaAsiya Javayant PROPOSAL
Jeanfrancois O WieserRussiaOnyama Limba PROPOSAL
Leja H StensethRussiaOnyama Limba UNQUALIFIED
Rodrigues M MarrierSpainAnna Fali PROPOSAL
Munro L PaprockiBrazilBernardo Dominic QUALIFIED
Faith M GarufiFranceAmy Elsner PROPOSAL
Smith X PoquetteUnited KingdomBernardo Dominic QUALIFIED
Stacey I IturbideIndiaAmy Elsner UNQUALIFIED
David M OstroskySpainAmy Elsner UNQUALIFIED
Ricardo S PerinFranceBernardo Dominic NEW
Emily W SergiArgentinaAsiya Javayant UNQUALIFIED
Ashley E FigeroaCanadaElwin Sharvill UNQUALIFIED
Cody O InouyeJapanIvan Magalhaes RENEWAL
James N SlusarskiFranceAmy Elsner QUALIFIED
Leja D FollerArgentinaStephen Shaw QUALIFIED
Ricardo P RutaIndiaBernardo Dominic PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Isabel P StensethItalyStephen Shaw RENEWAL
Adams S DoeAustraliaXuxue Feng RENEWAL
Chavez D SaylorsArgentinaIvan Magalhaes NEGOTIATION
Ashley T FerenczJapanXuxue Feng NEGOTIATION
Alejandro R DarakjyIndiaIoni Bowcher UNQUALIFIED
Nicolas Y AlbaresJapanXuxue Feng RENEWAL
Jones Q RoysterAustraliaOnyama Limba NEW
James B InouyeItalyElwin Sharvill PROPOSAL
Costa G MaletGermanyOnyama Limba QUALIFIED
Wickens F PoquetteGermanyOnyama Limba QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi B RulapaughFrance2026-10-07Commercial Press QUALIFIED50Elwin Sharvill
1001Rodrigues O BowleyArgentina2026-10-08Truhlar And Truhlar Attys NEGOTIATION88Xuxue Feng
1002Clifford P AlbaresAustralia2026-10-13Truhlar And Truhlar Attys NEGOTIATION7Stephen Shaw
1003Deepesh S BriddickItaly2026-10-26Truhlar And Truhlar Attys RENEWAL50Bernardo Dominic
1004Silvio V ButtRussia2026-10-02Rousseaux, Michael Esq NEGOTIATION81Xuxue Feng
1005Kaitlin U FlosiSpain2026-10-23Chemel, James L Cpa RENEWAL14Elwin Sharvill
1006James R RutaUnited Kingdom2026-10-18Morlong Associates QUALIFIED89Ioni Bowcher
1007Wickens Q FollerBrazil2026-10-04Dorl, James J Esq UNQUALIFIED27Elwin Sharvill
1008Ashley S CaudyBrazil2026-10-28Printing Dimensions RENEWAL15Ivan Magalhaes
1009Munro O MaletIndia2026-10-20Truhlar And Truhlar Attys UNQUALIFIED88Elwin Sharvill
1010Jeanfrancois E VenereGermany2026-10-27Commercial Press PROPOSAL79Ioni Bowcher
1011Antonio N SchemmerIndia2026-10-03Printing Dimensions PROPOSAL72Ivan Magalhaes
1012Morrow Z OldroydUnited Kingdom2026-10-02Dorl, James J Esq NEW58Amy Elsner
1013Greenwood B OldroydUnited Kingdom2026-10-10Feltz Printing Service NEW44Bernardo Dominic
1014Costa F FollerFrance2026-10-11Chapman, Ross E Esq UNQUALIFIED7Elwin Sharvill
1015Jennifer K ChuiFrance2026-10-07Feiner Bros NEGOTIATION89Elwin Sharvill
1016Aruna I KuskoItaly2026-10-25Rousseaux, Michael Esq NEGOTIATION34Stephen Shaw
1017David J CaudyCanada2026-10-25Printing Dimensions PROPOSAL41Asiya Javayant
1018Clifford A MaletSpain2026-10-10Chemel, James L Cpa PROPOSAL79Amy Elsner
1019Leon F WhobreyIndia2026-10-29Chemel, James L Cpa PROPOSAL68Anna Fali
1020Smith U CaudyFrance2026-10-10Feltz Printing Service NEGOTIATION21Ioni Bowcher
1021Jeanfrancois E BowleyGermany2026-10-26Rangoni Of Florence NEW51Anna Fali
1022Leon W FollerRussia2026-10-14King, Christopher A Esq QUALIFIED20Stephen Shaw
1023Jennifer F MarrierSpain2026-10-31Chapman, Ross E Esq NEGOTIATION10Amy Elsner
1024James C CaldareraArgentina2026-10-04Chapman, Ross E Esq QUALIFIED47Stephen Shaw
1025Aruna I SergiCanada2026-10-23Chemel, James L Cpa NEW47Asiya Javayant
1026Tony E FlosiAustralia2026-10-02Printing Dimensions PROPOSAL11Ivan Magalhaes
1027Clifford S MarrierArgentina2026-10-25Chapman, Ross E Esq QUALIFIED12Ioni Bowcher
1028Jeanfrancois F NestleFrance2026-10-13Feltz Printing Service PROPOSAL42Asiya Javayant
1029Cody A RoysterArgentina2026-10-25Printing Dimensions UNQUALIFIED61Asiya Javayant
1030Sinclair C GillianUnited Kingdom2026-10-19Commercial Press QUALIFIED15Asiya Javayant
1031Arvin M RoysterCanada2026-10-04King, Christopher A Esq PROPOSAL33Elwin Sharvill
1032Leon K SchemmerGermany2026-10-31Feiner Bros QUALIFIED67Ivan Magalhaes
1033David I ChuiUnited Kingdom2026-10-23Commercial Press NEGOTIATION95Ioni Bowcher
1034Aditya N AmigonAustralia2026-10-16Rangoni Of Florence RENEWAL53Stephen Shaw
1035Izzy R PerinIndia2026-10-25Truhlar And Truhlar Attys UNQUALIFIED1Onyama Limba
1036Darci D RulapaughRussia2026-10-23Rousseaux, Michael Esq QUALIFIED4Elwin Sharvill
1037Jennifer A ShinkoFrance2026-10-16Chanay, Jeffrey A Esq PROPOSAL15Elwin Sharvill
1038Jeanfrancois P PerinBrazil2026-10-21Truhlar And Truhlar Attys NEGOTIATION20Ioni Bowcher
1039Leon V MaletFrance2026-10-06Dorl, James J Esq PROPOSAL10Anna Fali
1040Aditya R MaletArgentina2026-10-07Rangoni Of Florence PROPOSAL86Onyama Limba
1041Darci V TollnerFrance2026-10-07Rousseaux, Michael Esq QUALIFIED35Amy Elsner
1042Faith N KolmetzUnited Kingdom2026-10-21Printing Dimensions NEW53Bernardo Dominic
1043Octavia L OstroskyRussia2026-10-16King, Christopher A Esq UNQUALIFIED81Bernardo Dominic
1044Munro Y PaprockiIndia2026-10-10Chapman, Ross E Esq NEGOTIATION5Stephen Shaw
1045Rodrigues O WaycottFrance2026-10-21King, Christopher A Esq NEGOTIATION74Ioni Bowcher
1046Greenwood H RoysterUnited Kingdom2026-10-17Morlong Associates NEGOTIATION83Anna Fali
1047Cody U KuskoRussia2026-10-09Buckley Miller Wright NEGOTIATION38Amy Elsner
1048Kadeem J GillianJapan2026-10-31Chapman, Ross E Esq RENEWAL71Ivan Magalhaes
1049Rodrigues Q RulapaughCanada2026-10-08Printing Dimensions NEW20Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Nicolas Y FigeroaAustraliaXuxue Feng QUALIFIED
Juan P VenereArgentinaIvan Magalhaes RENEWAL
Ashley O DilliardRussiaIoni Bowcher PROPOSAL
Arvin P SaylorsCanadaOnyama Limba RENEWAL
Kaitlin C NickaRussiaAmy Elsner NEGOTIATION
Chavez Y FollerIndiaElwin Sharvill PROPOSAL
Smith P PaprockiUnited KingdomOnyama Limba UNQUALIFIED
Antonio M GarufiSpainAsiya Javayant UNQUALIFIED
Mujtaba L BologniaBrazilAnna Fali QUALIFIED
Clifford Z AlbaresArgentinaAsiya Javayant RENEWAL
Isabel L ShinkoJapanAsiya Javayant NEW
Murillo Y KuskoArgentinaIvan Magalhaes NEGOTIATION
Morrow M SergiSpainOnyama Limba UNQUALIFIED
Aika I StockhamFranceBernardo Dominic RENEWAL
Julie D FlosiItalyAsiya Javayant RENEWAL
Julie H MarrierUnited KingdomAnna Fali QUALIFIED
Johnson Q GarufiBrazilAsiya Javayant PROPOSAL
Aika M ShinkoBrazilAsiya Javayant UNQUALIFIED
Antonio G BologniaFranceStephen Shaw UNQUALIFIED
Leja C PoquetteJapanAmy Elsner PROPOSAL
Deepesh B InouyeCanadaOnyama Limba UNQUALIFIED
Sinclair L KuskoSpainBernardo Dominic NEW
Jones Q PoquetteIndiaBernardo Dominic QUALIFIED
Costa X SchemmerFranceBernardo Dominic RENEWAL
Leon I PaprockiCanadaAmy Elsner NEGOTIATION
Greenwood E CaudyJapanAsiya Javayant PROPOSAL
Nicolas N PoquetteIndiaAnna Fali NEGOTIATION
Tony Q MarrierItalyAnna Fali PROPOSAL
Smith C CaudyAustraliaStephen Shaw UNQUALIFIED
Aditya M GillianFranceIvan Magalhaes NEW
Aruna K VocelkaBrazilIvan Magalhaes NEGOTIATION
Leon M DarakjyItalyIvan Magalhaes RENEWAL
Morrow D ButtGermanyIvan Magalhaes UNQUALIFIED
Francesco H RimIndiaOnyama Limba PROPOSAL
Isabel B DarakjyJapanAnna Fali NEGOTIATION
Leja J DoeJapanBernardo Dominic NEW
Julie W FollerJapanAnna Fali NEW
Izzy S BologniaRussiaElwin Sharvill NEW
Mayumi N GarufiCanadaAnna Fali QUALIFIED
Kaitlin U SlusarskiFranceElwin Sharvill UNQUALIFIED
Octavia T PerinGermanyXuxue Feng UNQUALIFIED
Maisha C DoeFranceBernardo Dominic QUALIFIED
Murillo L SaylorsJapanAsiya Javayant NEW
Munro V BowleyGermanyStephen Shaw RENEWAL
Aruna I GlickGermanyStephen Shaw PROPOSAL
Ashley C RimUnited KingdomOnyama Limba PROPOSAL
Silvio K SergiFranceStephen Shaw PROPOSAL
Ivar N ShinkoUnited KingdomOnyama Limba UNQUALIFIED
Juan Z CaudyGermanyXuxue Feng RENEWAL
Mayumi U SlusarskiBrazilStephen Shaw NEW
Frozen Columns
Name
Deepesh C Royster
Faith U Caldarera
Salvatore L Whobrey
Chavez M Gillian
Deepesh S Stockham
Silvio X Foller
David K Inouye
Salvatore B Garufi
Morrow W Albares
Jennifer T Ostrosky
Claire O Garufi
Aruna X Venere
Sinclair U Oldroyd
Sinclair L Caldarera
Deepesh Z Paprocki
James J Sergi
Ricardo S Caldarera
Juan L Kusko
Greenwood D Slusarski
Jefferson O Nestle
Isabel N Gaucho
Chavez I Paprocki
Maisha D Kusko
Kadeem G Oldroyd
Munro R Darakjy
Kaitlin C Venere
Mayumi M Figeroa
Mujtaba T Garufi
Ashley O Bolognia
Alejandro P Figeroa
Jefferson A Doe
Smith Y Bolognia
Kadeem H Darakjy
Claire M Poquette
Claire I Venere
Kaitlin K Shinko
Kaitlin C Rulapaugh
Maisha J Gillian
Jeanfrancois J Oldroyd
Smith S Sergi
Stacey A Waycott
Deepesh E Garufi
Alejandro N Caldarera
Juan N Waycott
Aruna I Waycott
Julie W Poquette
David L Stenseth
Arvin C Saylors
Jefferson H Garufi
Cody P Foller
IdCountryDate
1000Germany2026-10-10
1001Germany2026-10-16
1002United Kingdom2026-10-13
1003Spain2026-10-22
1004Japan2026-10-06
1005Italy2026-10-29
1006Canada2026-10-24
1007Canada2026-10-24
1008Japan2026-10-29
1009United Kingdom2026-10-31
1010Spain2026-10-02
1011Argentina2026-10-18
1012Australia2026-10-22
1013Japan2026-10-17
1014Japan2026-10-11
1015Russia2026-10-16
1016Canada2026-10-25
1017France2026-10-10
1018Russia2026-10-22
1019Germany2026-10-11
1020Spain2026-10-23
1021Brazil2026-10-23
1022United Kingdom2026-10-31
1023Russia2026-10-10
1024Italy2026-10-27
1025India2026-10-28
1026United Kingdom2026-10-15
1027Japan2026-10-18
1028India2026-10-20
1029Australia2026-10-06
1030Japan2026-10-18
1031Japan2026-10-07
1032Brazil2026-10-21
1033Spain2026-10-31
1034Brazil2026-10-25
1035Japan2026-10-27
1036Russia2026-10-21
1037Argentina2026-10-27
1038India2026-10-26
1039France2026-10-13
1040Germany2026-10-12
1041Spain2026-10-13
1042Canada2026-10-04
1043Germany2026-10-29
1044Australia2026-10-07
1045United Kingdom2026-10-31
1046India2026-10-12
1047Australia2026-10-18
1048United Kingdom2026-10-13
1049Canada2026-10-31

On-Demand Data

NameIdCountryDate
Antonio D Foller1000Canada2026-10-29
Julie A Ruta1001Italy2026-10-16
Morrow U Gaucho1002Spain2026-10-10
Mayumi R Tollner1003Argentina2026-10-07
Ashley P Perin1004Argentina2026-10-31
Nicolas U Malet1005Brazil2026-10-15
Kadeem U Wieser1006Japan2026-10-13
Silvio Q Morasca1007Japan2026-10-03
Juan Y Maclead1008Canada2026-10-20
Nicolas Q Doe1009Spain2026-10-05
Izzy N Royster1010Italy2026-10-09
Maisha X Inouye1011Australia2026-10-06
Cody U Stenseth1012Germany2026-10-07
Morrow T Nicka1013France2026-10-30
Mayumi R Butt1014Australia2026-10-31
Leja Q Bowley1015Argentina2026-10-29
Johnson R Poquette1016Russia2026-10-04
Antonio B Gillian1017Argentina2026-10-02
Jones N Amigon1018Spain2026-10-31
Maria I Poquette1019India2026-10-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
James L VocelkaItalyStephen Shaw RENEWAL
Nicolas A FerenczGermanyOnyama Limba UNQUALIFIED
Murillo I BologniaFranceIvan Magalhaes PROPOSAL
Jennifer A CaldareraJapanAnna Fali PROPOSAL
Kaitlin J MaletItalyOnyama Limba UNQUALIFIED
Ashley K DarakjyBrazilAsiya Javayant RENEWAL
Julie F OstroskyBrazilIvan Magalhaes QUALIFIED
Nicolas I MorascaRussiaOnyama Limba RENEWAL
Salvatore P OstroskyIndiaStephen Shaw QUALIFIED
David Y FerenczFranceIoni Bowcher RENEWAL
Johnson N OstroskyRussiaIvan Magalhaes PROPOSAL
Francesco A ButtRussiaXuxue Feng PROPOSAL
Claire A MacleadJapanBernardo Dominic PROPOSAL
Mujtaba B AlbaresSpainElwin Sharvill NEGOTIATION
Greenwood J ShinkoFranceBernardo Dominic NEW
Jennifer B CaldareraBrazilStephen Shaw QUALIFIED
Emily N BriddickArgentinaElwin Sharvill QUALIFIED
Maisha B RimSpainStephen Shaw NEGOTIATION
Deepesh N BologniaArgentinaBernardo Dominic NEW
David S RimJapanIoni Bowcher QUALIFIED
Francesco L CaldareraArgentinaXuxue Feng PROPOSAL
Jones W NestleAustraliaXuxue Feng NEW
Chavez H SaylorsArgentinaAnna Fali UNQUALIFIED
David F PoquetteAustraliaElwin Sharvill NEGOTIATION
Kaitlin W RoysterJapanStephen Shaw NEW
Alejandro K FlosiJapanIvan Magalhaes NEW
Isabel V OstroskyUnited KingdomAmy Elsner NEW
Silvio F DoeUnited KingdomIoni Bowcher NEW
Claire W StensethItalyIoni Bowcher PROPOSAL
Stacey M WieserItalyIoni Bowcher QUALIFIED
Leja G CampainGermanyBernardo Dominic PROPOSAL
Octavia D GarufiSpainIoni Bowcher NEGOTIATION
Costa O BologniaRussiaXuxue Feng NEGOTIATION
Maria P TollnerBrazilAsiya Javayant UNQUALIFIED
Francesco F PerinFranceIvan Magalhaes PROPOSAL
David I GarufiBrazilAsiya Javayant QUALIFIED
Arvin D FigeroaAustraliaXuxue Feng NEGOTIATION
Arvin E WieserFranceStephen Shaw NEW
Emily R OstroskySpainBernardo Dominic NEW
Octavia G TollnerRussiaAnna 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>