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
Julie V MorascaBrazilAmy Elsner RENEWAL
Kaitlin C OstroskyIndiaStephen Shaw NEGOTIATION
Aika J IturbideAustraliaIvan Magalhaes RENEWAL
Emily B InouyeGermanyAnna Fali NEGOTIATION
Claire B WieserItalyAmy Elsner NEW
Deepesh Q DoeBrazilAsiya Javayant NEW
Deepesh M SaylorsGermanyAsiya Javayant UNQUALIFIED
Morrow T OstroskyRussiaXuxue Feng NEGOTIATION
Munro Y GarufiArgentinaAnna Fali RENEWAL
Isabel X RutaArgentinaAnna Fali QUALIFIED
David Q WhobreyFranceXuxue Feng PROPOSAL
Maisha V CaldareraCanadaAsiya Javayant QUALIFIED
Leon E GarufiCanadaBernardo Dominic QUALIFIED
Jefferson H GillianAustraliaAmy Elsner NEW
Arvin W ChuiIndiaOnyama Limba UNQUALIFIED
Ivar L StockhamBrazilIvan Magalhaes UNQUALIFIED
Aika C GauchoArgentinaXuxue Feng RENEWAL
Clifford F NestleGermanyElwin Sharvill QUALIFIED
Francesco N DarakjyJapanXuxue Feng NEW
Faith I SergiBrazilElwin Sharvill UNQUALIFIED
David F FollerGermanyIoni Bowcher NEW
Alejandro B OstroskyIndiaOnyama Limba QUALIFIED
David S SergiArgentinaAnna Fali PROPOSAL
Faith G GarufiItalyAnna Fali UNQUALIFIED
Ivar N PaprockiArgentinaStephen Shaw PROPOSAL
Costa V FollerIndiaIoni Bowcher NEGOTIATION
Chavez X MarrierCanadaIvan Magalhaes QUALIFIED
David G FigeroaBrazilOnyama Limba PROPOSAL
Juan W PaprockiCanadaBernardo Dominic QUALIFIED
Chavez G SchemmerFranceStephen Shaw PROPOSAL
Izzy H OldroydJapanAsiya Javayant PROPOSAL
Rodrigues J KolmetzUnited KingdomOnyama Limba RENEWAL
Aika B MaletItalyAsiya Javayant NEGOTIATION
Maisha Q DilliardAustraliaOnyama Limba NEGOTIATION
Isabel O WaycottIndiaElwin Sharvill QUALIFIED
Antonio F MarrierUnited KingdomIvan Magalhaes UNQUALIFIED
Mujtaba H SergiArgentinaElwin Sharvill RENEWAL
Adams V GlickRussiaIvan Magalhaes NEGOTIATION
Julie L CaudyFranceStephen Shaw UNQUALIFIED
Jones T FerenczIndiaAsiya Javayant UNQUALIFIED
Kaitlin N FerenczCanadaElwin Sharvill QUALIFIED
Alejandro F MarrierRussiaAsiya Javayant NEGOTIATION
Ashley R SergiCanadaStephen Shaw QUALIFIED
Cody M OstroskyCanadaAsiya Javayant UNQUALIFIED
Faith M CampainCanadaBernardo Dominic PROPOSAL
Jones Z SlusarskiRussiaOnyama Limba UNQUALIFIED
Kadeem B BowleyBrazilAmy Elsner NEW
Alejandro C RoysterBrazilIvan Magalhaes UNQUALIFIED
Sinclair Z PaprockiGermanyStephen Shaw NEGOTIATION
Leja S MarrierUnited KingdomBernardo Dominic QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Ivar J SlusarskiBrazilStephen Shaw UNQUALIFIED
Silvio J FlosiUnited KingdomStephen Shaw PROPOSAL
Salvatore K GillianSpainIvan Magalhaes NEGOTIATION
Francesco V OstroskyIndiaBernardo Dominic UNQUALIFIED
Darci S SlusarskiBrazilAnna Fali PROPOSAL
Leja T RutaArgentinaIoni Bowcher UNQUALIFIED
Darci J SergiAustraliaAmy Elsner PROPOSAL
Mujtaba Y NickaBrazilAmy Elsner QUALIFIED
Antonio A GlickGermanyElwin Sharvill NEW
Munro C PaprockiRussiaXuxue Feng RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Nicolas C SergiUnited Kingdom2026-09-25King, Christopher A Esq NEW26Asiya Javayant
1001Johnson V VocelkaFrance2026-09-11Benton, John B Jr PROPOSAL41Amy Elsner
1002Deepesh H AlbaresRussia2026-10-04Chemel, James L Cpa NEW92Elwin Sharvill
1003Kadeem N DarakjyItaly2026-09-21Morlong Associates PROPOSAL54Asiya Javayant
1004Jennifer E MaletUnited Kingdom2026-09-26Printing Dimensions RENEWAL83Ivan Magalhaes
1005Antonio B RimItaly2026-09-13Morlong Associates PROPOSAL83Ioni Bowcher
1006Salvatore L KolmetzJapan2026-09-21Feltz Printing Service NEW69Elwin Sharvill
1007Munro L VocelkaRussia2026-09-19Dorl, James J Esq QUALIFIED10Bernardo Dominic
1008Emily J SchemmerSpain2026-10-05Chemel, James L Cpa QUALIFIED66Ivan Magalhaes
1009Aditya W TollnerRussia2026-09-19Dorl, James J Esq NEGOTIATION60Stephen Shaw
1010Tony N StockhamSpain2026-09-21Morlong Associates NEGOTIATION61Xuxue Feng
1011Aruna I PerinJapan2026-09-18King, Christopher A Esq NEGOTIATION33Onyama Limba
1012Kadeem A MarrierArgentina2026-09-21Chemel, James L Cpa RENEWAL56Xuxue Feng
1013Octavia D BologniaUnited Kingdom2026-09-17Commercial Press PROPOSAL57Xuxue Feng
1014Jefferson G AlbaresArgentina2026-09-13Rangoni Of Florence QUALIFIED28Xuxue Feng
1015Jeanfrancois F RutaSpain2026-09-30Printing Dimensions NEW91Ioni Bowcher
1016Leon N PaprockiFrance2026-10-01Feiner Bros RENEWAL77Ivan Magalhaes
1017Wickens C ShinkoBrazil2026-09-11Morlong Associates RENEWAL26Asiya Javayant
1018Munro T VocelkaItaly2026-09-19Buckley Miller Wright QUALIFIED34Amy Elsner
1019Sinclair V SaylorsJapan2026-10-03Feltz Printing Service QUALIFIED16Xuxue Feng
1020Jefferson N FollerBrazil2026-09-18Benton, John B Jr RENEWAL7Ioni Bowcher
1021Chavez W ShinkoJapan2026-09-30Commercial Press RENEWAL32Bernardo Dominic
1022Kadeem Y PaprockiIndia2026-09-17Chanay, Jeffrey A Esq NEGOTIATION44Xuxue Feng
1023Adams M WaycottSpain2026-09-19Benton, John B Jr NEGOTIATION19Elwin Sharvill
1024Clifford W MacleadSpain2026-10-06Rousseaux, Michael Esq PROPOSAL74Anna Fali
1025Maria E IturbideCanada2026-09-19King, Christopher A Esq QUALIFIED96Onyama Limba
1026James U RoysterJapan2026-09-30Buckley Miller Wright NEGOTIATION66Amy Elsner
1027Mayumi O RimFrance2026-10-04Truhlar And Truhlar Attys RENEWAL54Xuxue Feng
1028Misaki Q ChuiGermany2026-09-14Morlong Associates PROPOSAL55Amy Elsner
1029Nicolas Z DarakjyBrazil2026-10-05Chapman, Ross E Esq QUALIFIED55Ivan Magalhaes
1030Juan R PoquetteJapan2026-09-09Feltz Printing Service QUALIFIED57Xuxue Feng
1031Misaki H IturbideUnited Kingdom2026-09-11Buckley Miller Wright RENEWAL56Bernardo Dominic
1032Jennifer J GlickBrazil2026-09-25Dorl, James J Esq NEW84Bernardo Dominic
1033Nicolas S VocelkaGermany2026-10-05King, Christopher A Esq PROPOSAL42Stephen Shaw
1034Leja Z MorascaArgentina2026-09-13Printing Dimensions NEGOTIATION91Bernardo Dominic
1035Julie K RulapaughGermany2026-09-25Chanay, Jeffrey A Esq NEW25Ivan Magalhaes
1036Stacey Z NickaBrazil2026-09-20King, Christopher A Esq QUALIFIED69Xuxue Feng
1037Smith L ButtGermany2026-10-06Commercial Press UNQUALIFIED62Amy Elsner
1038Ivar I KuskoItaly2026-10-02Truhlar And Truhlar Attys NEGOTIATION5Ivan Magalhaes
1039Antonio L FollerSpain2026-09-24Printing Dimensions UNQUALIFIED70Xuxue Feng
1040Jones G AmigonUnited Kingdom2026-09-17Buckley Miller Wright UNQUALIFIED80Ioni Bowcher
1041Isabel Z GauchoGermany2026-09-10Chemel, James L Cpa RENEWAL80Anna Fali
1042Aika F IturbideJapan2026-09-15Chemel, James L Cpa QUALIFIED98Xuxue Feng
1043Antonio S KuskoJapan2026-10-07Chanay, Jeffrey A Esq NEGOTIATION6Ivan Magalhaes
1044Leja D PoquetteBrazil2026-10-04Chemel, James L Cpa RENEWAL6Elwin Sharvill
1045Tony E WaycottFrance2026-09-26Chanay, Jeffrey A Esq QUALIFIED63Ioni Bowcher
1046Ricardo R DarakjyItaly2026-09-08Printing Dimensions RENEWAL70Elwin Sharvill
1047Darci W WhobreyUnited Kingdom2026-09-27Buckley Miller Wright NEW99Elwin Sharvill
1048Maria B FlosiIndia2026-10-07Rangoni Of Florence RENEWAL56Stephen Shaw
1049Leja P BowleySpain2026-10-03Morlong Associates UNQUALIFIED82Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Emily R MaletItalyOnyama Limba PROPOSAL
Silvio T TollnerItalyStephen Shaw UNQUALIFIED
Darci U PerinSpainAmy Elsner NEW
Sinclair E OstroskyIndiaAnna Fali QUALIFIED
Misaki N RoysterSpainOnyama Limba RENEWAL
Costa G GauchoRussiaIoni Bowcher NEW
Sinclair G KolmetzCanadaOnyama Limba PROPOSAL
Claire H RimUnited KingdomBernardo Dominic QUALIFIED
Darci B NickaCanadaBernardo Dominic PROPOSAL
Maria G WieserCanadaIoni Bowcher UNQUALIFIED
Cody U IturbideArgentinaAnna Fali QUALIFIED
Emily F SergiArgentinaAnna Fali UNQUALIFIED
Johnson N MaletCanadaAsiya Javayant QUALIFIED
Wickens Z SaylorsCanadaIoni Bowcher QUALIFIED
Ashley G AmigonIndiaOnyama Limba NEW
Izzy C KolmetzArgentinaAmy Elsner NEW
Izzy M MorascaAustraliaOnyama Limba PROPOSAL
Adams W RulapaughCanadaIvan Magalhaes NEW
Jeanfrancois K BriddickAustraliaAsiya Javayant NEW
Aika S VenereCanadaXuxue Feng RENEWAL
Claire M ButtBrazilAsiya Javayant NEGOTIATION
Tony U IturbideArgentinaBernardo Dominic UNQUALIFIED
Francesco F StensethFranceAsiya Javayant UNQUALIFIED
Arvin D NestleCanadaBernardo Dominic NEGOTIATION
Smith F StensethItalyElwin Sharvill UNQUALIFIED
Greenwood L PaprockiArgentinaXuxue Feng RENEWAL
Julie O NestleJapanOnyama Limba RENEWAL
Emily V VocelkaBrazilOnyama Limba RENEWAL
Tony Z RulapaughUnited KingdomAnna Fali QUALIFIED
Stacey G DilliardJapanAmy Elsner NEW
Francesco X SaylorsBrazilBernardo Dominic RENEWAL
Maisha D BowleySpainAsiya Javayant UNQUALIFIED
Nicolas U IturbideUnited KingdomXuxue Feng UNQUALIFIED
Nicolas F PaprockiAustraliaXuxue Feng RENEWAL
Costa J MaletCanadaIvan Magalhaes UNQUALIFIED
Jefferson A WieserBrazilOnyama Limba NEGOTIATION
Cody I OldroydItalyIoni Bowcher QUALIFIED
Costa I PaprockiJapanBernardo Dominic NEW
David M MorascaFranceAsiya Javayant NEGOTIATION
Isabel I GarufiSpainAnna Fali QUALIFIED
Tony L SchemmerFranceAnna Fali RENEWAL
Murillo T RimIndiaIvan Magalhaes QUALIFIED
Emily L CaudyGermanyIoni Bowcher PROPOSAL
Leja M RutaItalyAnna Fali RENEWAL
Deepesh P FlosiSpainElwin Sharvill PROPOSAL
David W RutaIndiaAnna Fali NEGOTIATION
Antonio G AmigonUnited KingdomElwin Sharvill PROPOSAL
Claire T StockhamJapanIoni Bowcher PROPOSAL
Arvin X KuskoSpainElwin Sharvill QUALIFIED
Nicolas K AmigonJapanElwin Sharvill RENEWAL
Frozen Columns
Name
Leon U Maclead
Deepesh I Dilliard
Francesco I Marrier
Jefferson R Whobrey
Deepesh P Caudy
Misaki D Ferencz
Aika F Malet
Isabel J Venere
Emily T Stenseth
Claire R Venere
Johnson Y Ferencz
Cody I Stockham
Morrow X Gaucho
Clifford R Rulapaugh
Emily D Chui
Francesco S Campain
Stacey X Campain
Alejandro Z Marrier
Nicolas F Morasca
Smith G Campain
Aika M Nestle
Aika C Whobrey
Ashley L Caudy
Ashley T Wieser
Aditya I Flosi
Kaitlin L Dilliard
David F Amigon
Jefferson P Glick
Rodrigues R Caldarera
Jennifer Y Caldarera
Jones Y Kusko
Izzy Y Bowley
Morrow D Figeroa
Emily P Stenseth
Adams I Briddick
Faith B Schemmer
Ashley P Stockham
Isabel H Campain
Smith A Flosi
Francesco V Kolmetz
Misaki S Figeroa
Octavia O Figeroa
Juan W Kusko
James G Kolmetz
Wickens F Ostrosky
Mayumi T Vocelka
Arvin N Schemmer
Cody S Poquette
Isabel N Briddick
Juan S Rim
IdCountryDate
1000France2026-09-25
1001France2026-10-03
1002Russia2026-10-07
1003Argentina2026-09-18
1004Russia2026-09-15
1005Spain2026-09-16
1006United Kingdom2026-09-08
1007Australia2026-10-03
1008Brazil2026-10-03
1009Canada2026-09-22
1010India2026-09-12
1011France2026-09-23
1012Argentina2026-09-18
1013Australia2026-09-24
1014Japan2026-09-22
1015Argentina2026-09-21
1016Russia2026-09-21
1017Germany2026-09-16
1018Brazil2026-10-03
1019Japan2026-09-16
1020Canada2026-09-25
1021Germany2026-09-09
1022India2026-10-04
1023Canada2026-09-15
1024Spain2026-09-19
1025India2026-09-11
1026United Kingdom2026-10-02
1027India2026-09-11
1028Canada2026-09-26
1029United Kingdom2026-09-18
1030Australia2026-10-03
1031Canada2026-09-28
1032Spain2026-09-08
1033Argentina2026-09-13
1034France2026-09-14
1035Argentina2026-10-07
1036France2026-10-07
1037Russia2026-09-17
1038Spain2026-10-04
1039Italy2026-09-20
1040Argentina2026-09-30
1041Argentina2026-10-04
1042Spain2026-09-15
1043Italy2026-09-30
1044Japan2026-10-05
1045Canada2026-09-17
1046Canada2026-09-29
1047Japan2026-09-14
1048Australia2026-09-23
1049Australia2026-10-07

On-Demand Data

NameIdCountryDate
Maria G Bowley1000Australia2026-10-03
Munro P Schemmer1001United Kingdom2026-09-27
Leon O Caudy1002France2026-10-07
Antonio J Glick1003France2026-09-28
Sinclair E Doe1004Australia2026-09-19
Wickens L Figeroa1005Spain2026-10-04
Octavia X Marrier1006Russia2026-09-29
Smith M Glick1007India2026-09-17
Maria J Kusko1008Germany2026-09-25
Aika I Oldroyd1009Germany2026-09-28
Morrow U Ostrosky1010France2026-09-13
Julie F Slusarski1011Canada2026-09-28
Cody X Royster1012Japan2026-09-14
Salvatore Y Nicka1013United Kingdom2026-09-08
Jennifer Q Inouye1014Germany2026-09-15
Kaitlin P Ferencz1015Russia2026-09-25
Sinclair R Saylors1016France2026-09-10
Aruna F Morasca1017Russia2026-09-18
Arvin W Bolognia1018Italy2026-09-27
Ricardo Z Waycott1019Russia2026-09-09
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire N BowleySpainIoni Bowcher QUALIFIED
Aika R GillianSpainStephen Shaw UNQUALIFIED
Faith U BowleyCanadaAnna Fali UNQUALIFIED
Costa P KuskoItalyStephen Shaw RENEWAL
Ashley Z MaletIndiaIoni Bowcher UNQUALIFIED
Tony B RutaItalyAsiya Javayant PROPOSAL
Johnson W BologniaCanadaAmy Elsner UNQUALIFIED
Clifford Q AmigonFranceAsiya Javayant NEW
Johnson R ChuiCanadaAmy Elsner QUALIFIED
Kadeem X GarufiSpainStephen Shaw NEGOTIATION
Ashley P NestleItalyElwin Sharvill NEW
Jeanfrancois F OldroydUnited KingdomOnyama Limba QUALIFIED
Nicolas U ChuiJapanAnna Fali RENEWAL
Alejandro V RoysterSpainElwin Sharvill NEGOTIATION
Ricardo G SaylorsCanadaIoni Bowcher UNQUALIFIED
Johnson B SchemmerAustraliaOnyama Limba PROPOSAL
Julie F SergiItalyBernardo Dominic QUALIFIED
Isabel L RimSpainXuxue Feng QUALIFIED
Faith F SaylorsFranceOnyama Limba UNQUALIFIED
Mayumi K CaudyCanadaBernardo Dominic PROPOSAL
Murillo P WaycottJapanOnyama Limba NEW
Juan B SaylorsArgentinaXuxue Feng UNQUALIFIED
Alejandro T WhobreyIndiaElwin Sharvill PROPOSAL
Misaki F GillianIndiaElwin Sharvill QUALIFIED
Claire P StockhamItalyStephen Shaw NEW
Nicolas A DoeAustraliaIvan Magalhaes RENEWAL
Jennifer W GlickBrazilBernardo Dominic PROPOSAL
Jennifer E VocelkaItalyAsiya Javayant QUALIFIED
Misaki I MarrierGermanyElwin Sharvill NEGOTIATION
Misaki Z StensethSpainElwin Sharvill QUALIFIED
Murillo D StensethBrazilBernardo Dominic NEW
Jefferson S TollnerItalyAmy Elsner QUALIFIED
Misaki I TollnerFranceIoni Bowcher QUALIFIED
Greenwood D VocelkaIndiaOnyama Limba RENEWAL
Emily A FigeroaJapanAmy Elsner NEGOTIATION
Octavia J ButtFranceIvan Magalhaes PROPOSAL
Misaki H PaprockiRussiaIvan Magalhaes NEGOTIATION
Aditya L BriddickGermanyXuxue Feng NEGOTIATION
Clifford K KolmetzRussiaBernardo Dominic NEGOTIATION
Mujtaba L DilliardIndiaIvan Magalhaes 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>