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
Leon A GarufiAustraliaIvan Magalhaes NEW
Kadeem A BologniaAustraliaAsiya Javayant PROPOSAL
Silvio A MaletBrazilBernardo Dominic UNQUALIFIED
Mujtaba V TollnerRussiaXuxue Feng QUALIFIED
Mujtaba H KuskoAustraliaBernardo Dominic NEGOTIATION
Stacey P MorascaArgentinaBernardo Dominic NEGOTIATION
Sinclair Q OldroydCanadaAnna Fali QUALIFIED
Claire T StockhamCanadaBernardo Dominic NEGOTIATION
Jennifer G PerinItalyIoni Bowcher RENEWAL
Izzy Z CampainItalyIvan Magalhaes RENEWAL
Nicolas B MaletBrazilStephen Shaw PROPOSAL
Silvio Z ShinkoGermanyBernardo Dominic UNQUALIFIED
Octavia N SlusarskiItalyOnyama Limba NEGOTIATION
Johnson P WhobreyJapanAsiya Javayant RENEWAL
Isabel Q KuskoIndiaOnyama Limba QUALIFIED
Tony E VenereSpainIoni Bowcher PROPOSAL
Deepesh D GauchoFranceAsiya Javayant UNQUALIFIED
Misaki X RulapaughIndiaXuxue Feng RENEWAL
Juan A GauchoBrazilAsiya Javayant PROPOSAL
Darci L SlusarskiSpainAmy Elsner RENEWAL
Tony G TollnerIndiaBernardo Dominic RENEWAL
Silvio N PaprockiItalyAnna Fali PROPOSAL
Cody T MacleadJapanElwin Sharvill UNQUALIFIED
Aruna R MacleadFranceXuxue Feng NEW
Deepesh B MarrierUnited KingdomStephen Shaw UNQUALIFIED
Misaki S FigeroaFranceAsiya Javayant RENEWAL
Leja M NickaGermanyXuxue Feng QUALIFIED
Sinclair Z AmigonGermanyXuxue Feng UNQUALIFIED
Kadeem E GarufiSpainAmy Elsner PROPOSAL
Francesco T GauchoUnited KingdomAsiya Javayant NEW
Nicolas H DarakjyGermanyBernardo Dominic UNQUALIFIED
Costa H WieserBrazilAmy Elsner PROPOSAL
Darci P RoysterArgentinaIvan Magalhaes NEGOTIATION
Faith A NickaItalyElwin Sharvill QUALIFIED
Jefferson Y MorascaArgentinaAmy Elsner NEGOTIATION
Mayumi C MaletCanadaStephen Shaw NEW
Arvin X ShinkoRussiaIvan Magalhaes NEGOTIATION
James A AlbaresSpainAsiya Javayant UNQUALIFIED
Faith V StockhamSpainAsiya Javayant RENEWAL
James B RutaItalyAmy Elsner QUALIFIED
Emily V VocelkaItalyAmy Elsner QUALIFIED
Juan E MorascaGermanyAmy Elsner NEGOTIATION
Emily L DarakjyItalyIoni Bowcher NEW
Ashley J ChuiFranceOnyama Limba NEGOTIATION
Ivar H IturbideBrazilXuxue Feng PROPOSAL
Alejandro Y GlickUnited KingdomStephen Shaw NEW
Jefferson N MarrierSpainIvan Magalhaes QUALIFIED
Ricardo K MacleadRussiaAsiya Javayant QUALIFIED
Sinclair V BowleyGermanyIoni Bowcher UNQUALIFIED
Smith J FerenczBrazilBernardo Dominic UNQUALIFIED
Horizontal
NameCountryRepresentativeStatus
Stacey O PoquetteGermanyStephen Shaw NEW
Costa S RimUnited KingdomElwin Sharvill PROPOSAL
Mujtaba T BriddickJapanElwin Sharvill QUALIFIED
Jefferson E IturbideUnited KingdomStephen Shaw QUALIFIED
Silvio D PaprockiBrazilOnyama Limba NEGOTIATION
Julie I BowleyGermanyStephen Shaw PROPOSAL
Izzy J MaletUnited KingdomAsiya Javayant QUALIFIED
Darci X WieserSpainBernardo Dominic NEW
Rodrigues A ShinkoRussiaOnyama Limba RENEWAL
Jeanfrancois U GillianSpainAnna Fali UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha P GlickIndia2026-08-28Truhlar And Truhlar Attys NEGOTIATION50Onyama Limba
1001Faith H BriddickJapan2026-09-13Rangoni Of Florence PROPOSAL15Elwin Sharvill
1002Alejandro H OldroydAustralia2026-08-28Printing Dimensions QUALIFIED50Ioni Bowcher
1003Deepesh O PerinItaly2026-09-11Rousseaux, Michael Esq NEW61Bernardo Dominic
1004Costa W ChuiFrance2026-09-12Chapman, Ross E Esq NEW68Asiya Javayant
1005Costa D ChuiBrazil2026-09-12Chapman, Ross E Esq NEGOTIATION26Anna Fali
1006Izzy A BriddickJapan2026-09-12Commercial Press QUALIFIED29Onyama Limba
1007Ashley J PoquetteCanada2026-09-17Rangoni Of Florence QUALIFIED25Xuxue Feng
1008David B DoeIndia2026-09-18Benton, John B Jr NEGOTIATION58Anna Fali
1009Kadeem E StensethIndia2026-09-07Chanay, Jeffrey A Esq PROPOSAL50Elwin Sharvill
1010Rodrigues Z PaprockiCanada2026-08-30Dorl, James J Esq UNQUALIFIED80Bernardo Dominic
1011Ricardo L ButtItaly2026-08-25Truhlar And Truhlar Attys NEW98Bernardo Dominic
1012Claire F OldroydCanada2026-09-11Chanay, Jeffrey A Esq QUALIFIED44Ivan Magalhaes
1013David U VocelkaUnited Kingdom2026-08-30Feiner Bros QUALIFIED62Xuxue Feng
1014Smith Q GauchoUnited Kingdom2026-09-01Buckley Miller Wright NEW20Anna Fali
1015Ashley H MorascaUnited Kingdom2026-09-19Buckley Miller Wright NEGOTIATION16Ioni Bowcher
1016Ricardo Q FlosiItaly2026-08-23Feltz Printing Service NEW85Ivan Magalhaes
1017Emily M BowleyIndia2026-08-31Printing Dimensions QUALIFIED61Ivan Magalhaes
1018Leon I FerenczArgentina2026-08-29Rangoni Of Florence UNQUALIFIED70Anna Fali
1019Arvin O BologniaArgentina2026-08-25Printing Dimensions NEGOTIATION45Ivan Magalhaes
1020Antonio P WieserItaly2026-09-15King, Christopher A Esq RENEWAL29Ivan Magalhaes
1021Kaitlin Q GlickArgentina2026-09-17Rangoni Of Florence PROPOSAL29Amy Elsner
1022Leja L DilliardItaly2026-08-30Feiner Bros NEGOTIATION90Anna Fali
1023Alejandro B WieserIndia2026-09-04Chapman, Ross E Esq UNQUALIFIED36Ioni Bowcher
1024Silvio J SchemmerAustralia2026-08-27Morlong Associates UNQUALIFIED48Ivan Magalhaes
1025Aika M AlbaresJapan2026-09-06Feiner Bros NEGOTIATION64Onyama Limba
1026Isabel L MaletItaly2026-09-12Printing Dimensions RENEWAL65Ioni Bowcher
1027Munro K StensethRussia2026-09-05Printing Dimensions PROPOSAL90Anna Fali
1028Tony H CaldareraJapan2026-09-11Morlong Associates UNQUALIFIED65Stephen Shaw
1029Morrow E GlickItaly2026-09-16Benton, John B Jr QUALIFIED12Xuxue Feng
1030Ivar X SaylorsRussia2026-08-22Dorl, James J Esq NEW71Stephen Shaw
1031Maisha Y FlosiCanada2026-08-26Commercial Press NEW0Stephen Shaw
1032Sinclair Z DoeGermany2026-09-06Chapman, Ross E Esq NEW88Stephen Shaw
1033Sinclair I InouyeBrazil2026-09-13Rousseaux, Michael Esq NEW42Ioni Bowcher
1034Jeanfrancois G StockhamItaly2026-08-22Buckley Miller Wright UNQUALIFIED74Amy Elsner
1035Jennifer P GauchoFrance2026-09-17Rousseaux, Michael Esq PROPOSAL0Ioni Bowcher
1036Ivar W VocelkaBrazil2026-09-14Commercial Press UNQUALIFIED76Amy Elsner
1037Claire P FerenczItaly2026-09-15Morlong Associates PROPOSAL76Onyama Limba
1038Aika J VenereJapan2026-08-21Benton, John B Jr NEW65Ioni Bowcher
1039Maisha B StensethGermany2026-08-21Commercial Press UNQUALIFIED40Anna Fali
1040Chavez R MacleadCanada2026-09-18Chemel, James L Cpa RENEWAL49Stephen Shaw
1041Silvio S FigeroaUnited Kingdom2026-09-16Dorl, James J Esq UNQUALIFIED47Bernardo Dominic
1042Claire P DoeRussia2026-08-22Truhlar And Truhlar Attys NEW7Onyama Limba
1043Morrow J FigeroaItaly2026-09-09Buckley Miller Wright QUALIFIED28Ioni Bowcher
1044Jennifer L WaycottGermany2026-08-25Printing Dimensions PROPOSAL33Amy Elsner
1045Kadeem G DilliardGermany2026-08-31Chanay, Jeffrey A Esq NEGOTIATION74Asiya Javayant
1046Costa G StockhamAustralia2026-08-25Commercial Press UNQUALIFIED26Onyama Limba
1047Darci N VocelkaSpain2026-08-25Chapman, Ross E Esq PROPOSAL9Onyama Limba
1048Johnson G RoysterCanada2026-09-11Truhlar And Truhlar Attys NEGOTIATION37Ivan Magalhaes
1049Izzy L AlbaresJapan2026-09-14Truhlar And Truhlar Attys NEGOTIATION61Asiya Javayant
Frozen Rows
NameCountryRepresentativeStatus
Stacey G AmigonFranceAmy Elsner PROPOSAL
Wickens J FigeroaSpainIvan Magalhaes RENEWAL
Isabel R SchemmerRussiaAmy Elsner NEW
Maria A MaletArgentinaElwin Sharvill PROPOSAL
Maria G VocelkaAustraliaIoni Bowcher RENEWAL
Jefferson C OstroskyBrazilStephen Shaw RENEWAL
Ricardo M MacleadBrazilAsiya Javayant NEW
Emily I StockhamArgentinaOnyama Limba RENEWAL
Emily Q GlickFranceAsiya Javayant QUALIFIED
Aika V IturbideItalyOnyama Limba NEGOTIATION
Kaitlin Q GarufiSpainStephen Shaw UNQUALIFIED
Julie L SaylorsFranceElwin Sharvill NEW
Murillo W DarakjyFranceBernardo Dominic RENEWAL
Morrow W AlbaresJapanStephen Shaw NEW
Emily B SergiJapanAmy Elsner PROPOSAL
Wickens U RoysterUnited KingdomElwin Sharvill RENEWAL
Leja A MacleadFranceBernardo Dominic RENEWAL
Jones C NestleItalyStephen Shaw RENEWAL
Kaitlin F WhobreyJapanAnna Fali RENEWAL
Salvatore L TollnerSpainStephen Shaw NEGOTIATION
Antonio E OstroskySpainElwin Sharvill NEGOTIATION
Smith I IturbideUnited KingdomAsiya Javayant QUALIFIED
Chavez R DilliardFranceAsiya Javayant UNQUALIFIED
Stacey E RoysterCanadaXuxue Feng RENEWAL
Morrow S GauchoArgentinaStephen Shaw RENEWAL
Murillo S NestleUnited KingdomAnna Fali NEW
Aika T RoysterItalyAsiya Javayant QUALIFIED
Francesco D ButtCanadaStephen Shaw UNQUALIFIED
Munro D ChuiFranceStephen Shaw QUALIFIED
Jefferson J FlosiRussiaOnyama Limba UNQUALIFIED
Ricardo N GauchoCanadaAmy Elsner NEW
Aruna H CampainUnited KingdomXuxue Feng QUALIFIED
Izzy U GillianArgentinaXuxue Feng NEW
Rodrigues E PaprockiGermanyElwin Sharvill UNQUALIFIED
Morrow N PerinIndiaBernardo Dominic NEGOTIATION
Aruna C BowleySpainIoni Bowcher UNQUALIFIED
Leon D MarrierBrazilAnna Fali UNQUALIFIED
Silvio O DilliardJapanAsiya Javayant QUALIFIED
Ashley W RoysterGermanyOnyama Limba RENEWAL
Faith H RimArgentinaStephen Shaw PROPOSAL
Emily M WaycottFranceAnna Fali QUALIFIED
Jefferson O BriddickAustraliaElwin Sharvill UNQUALIFIED
Emily K InouyeArgentinaAsiya Javayant PROPOSAL
Ashley I StockhamJapanAsiya Javayant PROPOSAL
James T NestleRussiaOnyama Limba NEGOTIATION
Salvatore J DarakjyItalyAnna Fali PROPOSAL
Wickens P PaprockiFranceAnna Fali PROPOSAL
Aruna I MaletRussiaStephen Shaw UNQUALIFIED
Cody F GarufiJapanBernardo Dominic NEW
Cody L PaprockiSpainIvan Magalhaes QUALIFIED
Frozen Columns
Name
Maria D Bolognia
Emily J Schemmer
Misaki U Whobrey
Alejandro T Perin
Mujtaba B Marrier
Julie P Wieser
James S Doe
Maria C Oldroyd
Izzy H Stockham
Tony F Whobrey
Cody P Briddick
Julie L Stenseth
Aruna J Doe
Mayumi O Nicka
Murillo O Bowley
Claire I Vocelka
Aika I Kusko
Alejandro J Ferencz
Juan E Inouye
Izzy W Kolmetz
Chavez M Bolognia
James G Vocelka
Julie Y Rulapaugh
Cody E Campain
Izzy P Chui
Clifford E Amigon
Kadeem G Figeroa
Chavez G Schemmer
Emily L Saylors
Ivar U Bowley
Darci K Paprocki
Chavez H Butt
Deepesh A Gillian
Ricardo K Rim
Stacey A Nicka
Kaitlin E Whobrey
Sinclair S Paprocki
Munro D Maclead
James J Amigon
Kaitlin S Doe
Chavez H Kusko
Octavia F Ferencz
Mujtaba O Briddick
Morrow I Figeroa
David L Venere
Maisha C Morasca
Aruna W Saylors
Aruna X Rulapaugh
Leon K Dilliard
Maria D Oldroyd
IdCountryDate
1000United Kingdom2026-08-29
1001United Kingdom2026-09-18
1002India2026-08-21
1003United Kingdom2026-09-17
1004Italy2026-09-03
1005Spain2026-09-01
1006Australia2026-08-24
1007Australia2026-09-15
1008Canada2026-09-03
1009United Kingdom2026-09-12
1010Canada2026-09-13
1011Australia2026-09-14
1012Canada2026-08-28
1013Italy2026-09-11
1014Russia2026-09-02
1015Australia2026-09-06
1016Japan2026-08-22
1017Japan2026-09-18
1018Spain2026-09-06
1019United Kingdom2026-08-28
1020Italy2026-08-27
1021Italy2026-08-23
1022Russia2026-08-30
1023Canada2026-09-18
1024Russia2026-09-08
1025Australia2026-09-10
1026Spain2026-08-21
1027United Kingdom2026-09-05
1028France2026-08-25
1029Brazil2026-09-05
1030Spain2026-09-12
1031Japan2026-08-24
1032Japan2026-09-07
1033Argentina2026-08-21
1034France2026-08-31
1035United Kingdom2026-09-04
1036Russia2026-09-14
1037Japan2026-08-23
1038Japan2026-08-26
1039India2026-08-24
1040Russia2026-08-30
1041United Kingdom2026-09-09
1042India2026-09-13
1043Italy2026-09-10
1044Canada2026-09-08
1045Argentina2026-09-07
1046Argentina2026-08-26
1047Germany2026-08-22
1048Spain2026-09-14
1049Brazil2026-09-01

On-Demand Data

NameIdCountryDate
Darci L Slusarski1000United Kingdom2026-08-30
Julie R Ruta1001Canada2026-09-03
Ricardo R Kusko1002Italy2026-08-25
Ivar X Flosi1003France2026-09-09
Cody W Flosi1004Australia2026-08-31
Ricardo G Darakjy1005Germany2026-09-07
Morrow L Kolmetz1006India2026-09-19
Aditya D Wieser1007France2026-09-16
James I Inouye1008Canada2026-09-05
Maisha C Campain1009Argentina2026-08-29
Izzy Y Flosi1010Spain2026-08-29
Jeanfrancois J Shinko1011Brazil2026-09-16
Maria M Nicka1012Russia2026-08-29
Francesco F Nestle1013Germany2026-09-08
Silvio Q Glick1014Canada2026-09-12
Smith B Dilliard1015Germany2026-08-22
Francesco N Gaucho1016Russia2026-09-09
Mayumi Z Saylors1017United Kingdom2026-09-09
James P Rulapaugh1018Argentina2026-08-24
Antonio X Maclead1019Japan2026-09-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maisha O AmigonFranceOnyama Limba NEGOTIATION
Murillo X DilliardJapanXuxue Feng RENEWAL
Silvio C CampainAustraliaStephen Shaw NEW
James M FigeroaArgentinaOnyama Limba RENEWAL
Costa K SaylorsBrazilStephen Shaw RENEWAL
Misaki O WhobreyRussiaElwin Sharvill RENEWAL
Morrow C BologniaAustraliaStephen Shaw NEW
Alejandro O WhobreyFranceAsiya Javayant UNQUALIFIED
Claire K ChuiIndiaAsiya Javayant PROPOSAL
Jennifer W AmigonCanadaBernardo Dominic RENEWAL
Mayumi Q DoeGermanyAsiya Javayant NEW
Wickens G OldroydRussiaIoni Bowcher UNQUALIFIED
Chavez U MaletAustraliaXuxue Feng RENEWAL
Chavez L WhobreyBrazilAnna Fali QUALIFIED
Darci Q AlbaresBrazilIoni Bowcher NEGOTIATION
Leja F DarakjyRussiaIvan Magalhaes NEW
Greenwood E PoquetteUnited KingdomStephen Shaw PROPOSAL
Murillo V MarrierJapanOnyama Limba NEW
Izzy G AlbaresUnited KingdomStephen Shaw PROPOSAL
Leja J AmigonIndiaOnyama Limba UNQUALIFIED
Smith T MacleadArgentinaAsiya Javayant UNQUALIFIED
Adams D BriddickItalyOnyama Limba NEGOTIATION
Aika J FigeroaGermanyStephen Shaw RENEWAL
Clifford E RulapaughGermanyOnyama Limba RENEWAL
Isabel D RutaUnited KingdomAmy Elsner QUALIFIED
Sinclair J ChuiIndiaAmy Elsner NEW
Aruna I ButtGermanyAnna Fali NEGOTIATION
Juan K SergiIndiaIvan Magalhaes QUALIFIED
Jones W SergiCanadaAmy Elsner QUALIFIED
Francesco F PaprockiBrazilXuxue Feng NEGOTIATION
Jeanfrancois D VenereUnited KingdomElwin Sharvill NEW
Adams N IturbideRussiaAnna Fali UNQUALIFIED
Aika Q RoysterJapanXuxue Feng QUALIFIED
Kaitlin L DilliardUnited KingdomStephen Shaw NEW
Tony D SlusarskiIndiaAnna Fali UNQUALIFIED
Ricardo U SergiGermanyIvan Magalhaes QUALIFIED
Adams I WhobreySpainIoni Bowcher RENEWAL
Adams R KolmetzUnited KingdomStephen Shaw PROPOSAL
Murillo G BologniaIndiaXuxue Feng NEGOTIATION
Maria L ShinkoCanadaAnna Fali 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>