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
Octavia Y VenereBrazilBernardo Dominic NEW
Aditya M CampainJapanOnyama Limba RENEWAL
Wickens V MorascaFranceIvan Magalhaes QUALIFIED
Nicolas T KolmetzGermanyBernardo Dominic NEGOTIATION
Jones O TollnerRussiaStephen Shaw NEGOTIATION
Mujtaba R OstroskyItalyIoni Bowcher QUALIFIED
Ashley F IturbideAustraliaElwin Sharvill RENEWAL
Sinclair R StockhamCanadaBernardo Dominic RENEWAL
Morrow W AmigonCanadaStephen Shaw PROPOSAL
Misaki K RimItalyOnyama Limba RENEWAL
Jennifer M StensethGermanyStephen Shaw NEGOTIATION
Arvin M FollerAustraliaIoni Bowcher PROPOSAL
Darci P VenereGermanyXuxue Feng NEGOTIATION
Francesco Q RoysterRussiaAmy Elsner UNQUALIFIED
Greenwood T PoquetteUnited KingdomElwin Sharvill PROPOSAL
Francesco S FerenczIndiaXuxue Feng PROPOSAL
Jeanfrancois D VocelkaArgentinaAsiya Javayant NEW
Munro T TollnerJapanAmy Elsner QUALIFIED
James Q RimItalyOnyama Limba RENEWAL
Jones R RoysterGermanyOnyama Limba RENEWAL
Jeanfrancois T PoquetteItalyOnyama Limba NEW
Aruna C MorascaIndiaAmy Elsner NEW
Chavez E MarrierUnited KingdomOnyama Limba NEW
Isabel K CampainArgentinaAnna Fali QUALIFIED
Sinclair V PaprockiUnited KingdomXuxue Feng NEW
Jennifer Q StockhamItalyXuxue Feng PROPOSAL
Murillo O CampainGermanyIoni Bowcher RENEWAL
Leon K BologniaFranceIoni Bowcher UNQUALIFIED
Cody T RimRussiaBernardo Dominic UNQUALIFIED
Nicolas A PoquetteIndiaBernardo Dominic RENEWAL
Costa F NestleAustraliaOnyama Limba PROPOSAL
Aika J DoeFranceXuxue Feng RENEWAL
Smith Q GlickAustraliaElwin Sharvill NEGOTIATION
Aditya P NestleIndiaBernardo Dominic NEW
Salvatore T StockhamGermanyAsiya Javayant QUALIFIED
Greenwood Z WieserIndiaXuxue Feng NEW
Salvatore B GillianUnited KingdomOnyama Limba RENEWAL
Maria H WaycottGermanyStephen Shaw QUALIFIED
Aruna L GauchoJapanOnyama Limba NEGOTIATION
Francesco T StockhamUnited KingdomIvan Magalhaes QUALIFIED
Francesco X TollnerCanadaStephen Shaw RENEWAL
Jefferson Q RulapaughJapanAsiya Javayant NEGOTIATION
Morrow X GarufiRussiaStephen Shaw NEW
Jones R GauchoIndiaStephen Shaw PROPOSAL
Arvin C OldroydAustraliaAsiya Javayant PROPOSAL
Cody M WieserAustraliaIoni Bowcher PROPOSAL
Darci A KuskoArgentinaAsiya Javayant QUALIFIED
Aruna W MaletFranceElwin Sharvill UNQUALIFIED
Aruna K RutaArgentinaIoni Bowcher QUALIFIED
Leon Q AmigonRussiaAnna Fali PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Leon U KuskoJapanIvan Magalhaes UNQUALIFIED
Wickens X RoysterGermanyBernardo Dominic NEGOTIATION
Maria E RimJapanOnyama Limba QUALIFIED
Kaitlin W DilliardUnited KingdomStephen Shaw QUALIFIED
Ricardo X RulapaughUnited KingdomStephen Shaw NEGOTIATION
Aditya L CaldareraSpainBernardo Dominic PROPOSAL
Deepesh S AmigonUnited KingdomIvan Magalhaes RENEWAL
David H VocelkaGermanyXuxue Feng QUALIFIED
Costa E RutaAustraliaAmy Elsner UNQUALIFIED
Adams A WaycottCanadaIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aruna Z FollerCanada2026-09-27Buckley Miller Wright RENEWAL54Elwin Sharvill
1001Ivar P MorascaFrance2026-09-30Feiner Bros PROPOSAL31Xuxue Feng
1002Smith Z OldroydGermany2026-10-19Morlong Associates QUALIFIED18Anna Fali
1003Ricardo C ButtUnited Kingdom2026-10-24Chapman, Ross E Esq QUALIFIED2Ivan Magalhaes
1004Ivar Z FollerJapan2026-10-06Rangoni Of Florence RENEWAL14Xuxue Feng
1005Jefferson B StockhamJapan2026-10-23Printing Dimensions RENEWAL23Bernardo Dominic
1006Adams Z GarufiRussia2026-09-27King, Christopher A Esq UNQUALIFIED73Asiya Javayant
1007Mayumi N AlbaresCanada2026-09-27Feltz Printing Service NEW39Amy Elsner
1008Chavez D ShinkoSpain2026-10-23Printing Dimensions RENEWAL5Amy Elsner
1009Tony A BowleyJapan2026-09-28Printing Dimensions QUALIFIED5Asiya Javayant
1010Kaitlin E VenereCanada2026-09-26Commercial Press RENEWAL29Elwin Sharvill
1011Clifford H StensethItaly2026-10-19Buckley Miller Wright QUALIFIED10Amy Elsner
1012Darci C BologniaJapan2026-10-14Commercial Press RENEWAL22Asiya Javayant
1013Jones Y MarrierAustralia2026-09-30Benton, John B Jr NEW5Bernardo Dominic
1014Aruna O CampainGermany2026-10-08Rangoni Of Florence UNQUALIFIED42Ioni Bowcher
1015Maisha H NickaUnited Kingdom2026-09-26Benton, John B Jr RENEWAL41Ioni Bowcher
1016Jennifer Q DoeJapan2026-10-14Benton, John B Jr NEGOTIATION24Onyama Limba
1017Aruna N MorascaBrazil2026-10-13Commercial Press QUALIFIED81Bernardo Dominic
1018Leon V VocelkaBrazil2026-10-17Feiner Bros QUALIFIED86Bernardo Dominic
1019Ivar C FlosiGermany2026-10-06Truhlar And Truhlar Attys UNQUALIFIED87Ioni Bowcher
1020Kaitlin U GarufiItaly2026-10-15Chemel, James L Cpa NEW58Anna Fali
1021Morrow Q DilliardRussia2026-10-24Commercial Press UNQUALIFIED76Bernardo Dominic
1022Kaitlin O TollnerCanada2026-10-05Morlong Associates QUALIFIED63Ioni Bowcher
1023Johnson H DilliardArgentina2026-10-17Rangoni Of Florence NEW28Ivan Magalhaes
1024Johnson L GillianCanada2026-10-21Dorl, James J Esq RENEWAL66Ivan Magalhaes
1025Darci O MacleadUnited Kingdom2026-10-01Chapman, Ross E Esq RENEWAL97Xuxue Feng
1026Aika Q WaycottArgentina2026-10-14Chanay, Jeffrey A Esq UNQUALIFIED83Bernardo Dominic
1027Cody L InouyeJapan2026-10-12Feiner Bros RENEWAL94Xuxue Feng
1028Juan M PerinGermany2026-10-09Truhlar And Truhlar Attys NEW66Stephen Shaw
1029Antonio P BriddickFrance2026-09-25Chanay, Jeffrey A Esq PROPOSAL19Bernardo Dominic
1030Deepesh L BriddickBrazil2026-10-12Chapman, Ross E Esq PROPOSAL95Anna Fali
1031Aditya W GauchoAustralia2026-10-12Chapman, Ross E Esq NEGOTIATION39Ioni Bowcher
1032Antonio M MacleadCanada2026-10-23Rousseaux, Michael Esq RENEWAL56Elwin Sharvill
1033Tony U GillianSpain2026-10-05Benton, John B Jr UNQUALIFIED74Amy Elsner
1034Munro Y ButtIndia2026-10-12Morlong Associates QUALIFIED10Stephen Shaw
1035Salvatore X RimGermany2026-10-10Rousseaux, Michael Esq UNQUALIFIED44Anna Fali
1036James T CampainJapan2026-10-13Printing Dimensions QUALIFIED54Ivan Magalhaes
1037Kaitlin R SergiSpain2026-10-19Chemel, James L Cpa NEW37Anna Fali
1038Sinclair B NestleItaly2026-09-29Rangoni Of Florence RENEWAL89Xuxue Feng
1039Smith C GillianJapan2026-10-12Chemel, James L Cpa QUALIFIED94Ivan Magalhaes
1040Maisha D FerenczRussia2026-10-22Commercial Press RENEWAL32Ivan Magalhaes
1041Jefferson M DilliardCanada2026-09-27Chanay, Jeffrey A Esq NEW12Elwin Sharvill
1042Francesco J KolmetzCanada2026-09-25Chapman, Ross E Esq NEW97Onyama Limba
1043Nicolas Z DoeBrazil2026-10-18Buckley Miller Wright RENEWAL63Anna Fali
1044Jennifer G SaylorsArgentina2026-09-27Feltz Printing Service NEGOTIATION20Ivan Magalhaes
1045Claire P BologniaCanada2026-10-20Feltz Printing Service NEGOTIATION26Bernardo Dominic
1046Salvatore R ButtCanada2026-10-13Rangoni Of Florence UNQUALIFIED75Ioni Bowcher
1047Octavia I MarrierUnited Kingdom2026-10-01Feiner Bros QUALIFIED4Anna Fali
1048Mujtaba L GillianJapan2026-10-17Feiner Bros RENEWAL83Ioni Bowcher
1049Cody Y WhobreyUnited Kingdom2026-10-18Printing Dimensions PROPOSAL20Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Ashley U CaldareraAustraliaAnna Fali NEGOTIATION
Julie X GillianJapanBernardo Dominic NEGOTIATION
Mujtaba E DoeFranceAnna Fali NEGOTIATION
Juan M AlbaresGermanyIoni Bowcher QUALIFIED
Emily R DarakjyRussiaOnyama Limba NEGOTIATION
James S TollnerSpainAmy Elsner QUALIFIED
Leon Q GarufiArgentinaAnna Fali RENEWAL
Morrow U ButtAustraliaOnyama Limba PROPOSAL
Johnson B AlbaresUnited KingdomElwin Sharvill PROPOSAL
Wickens A CampainArgentinaAsiya Javayant NEGOTIATION
Costa E CaldareraGermanyBernardo Dominic NEGOTIATION
Wickens S OldroydJapanIvan Magalhaes UNQUALIFIED
Munro I OstroskyJapanAnna Fali NEW
Aditya W OldroydRussiaOnyama Limba RENEWAL
Chavez T SchemmerItalyXuxue Feng UNQUALIFIED
Faith U SergiRussiaAsiya Javayant RENEWAL
Jones X RimFranceIvan Magalhaes NEW
Greenwood T GarufiFranceElwin Sharvill UNQUALIFIED
Rodrigues K FerenczItalyStephen Shaw QUALIFIED
Smith R FlosiFranceAnna Fali UNQUALIFIED
Stacey R SchemmerIndiaAsiya Javayant NEGOTIATION
Sinclair K RoysterArgentinaIoni Bowcher UNQUALIFIED
Rodrigues A DilliardBrazilBernardo Dominic PROPOSAL
Kadeem O RutaJapanBernardo Dominic QUALIFIED
David X GillianIndiaIvan Magalhaes NEGOTIATION
Sinclair U FerenczSpainIvan Magalhaes PROPOSAL
David I StockhamSpainIoni Bowcher NEW
Julie Y SergiSpainAmy Elsner PROPOSAL
Ricardo Q BowleyUnited KingdomIvan Magalhaes PROPOSAL
Ashley Y PaprockiBrazilElwin Sharvill PROPOSAL
Sinclair V GillianBrazilStephen Shaw QUALIFIED
Leja M VocelkaRussiaElwin Sharvill PROPOSAL
Jeanfrancois P CaldareraGermanyBernardo Dominic RENEWAL
Emily R ButtCanadaAnna Fali PROPOSAL
Isabel X PaprockiItalyIoni Bowcher RENEWAL
Costa K MaletArgentinaXuxue Feng PROPOSAL
Leon G GarufiUnited KingdomAnna Fali NEGOTIATION
Alejandro R SlusarskiSpainIoni Bowcher UNQUALIFIED
Tony S MacleadIndiaIvan Magalhaes NEGOTIATION
Clifford G OldroydArgentinaIvan Magalhaes PROPOSAL
Misaki Z InouyeBrazilElwin Sharvill RENEWAL
Murillo D IturbideJapanAmy Elsner NEGOTIATION
Kaitlin A IturbideArgentinaAsiya Javayant NEW
Francesco W PoquetteItalyIoni Bowcher NEW
Juan C GauchoFranceIvan Magalhaes PROPOSAL
Chavez R StensethFranceIvan Magalhaes RENEWAL
Maisha K SchemmerGermanyElwin Sharvill UNQUALIFIED
Claire T PoquetteIndiaBernardo Dominic RENEWAL
Maisha C AlbaresCanadaAsiya Javayant NEGOTIATION
Juan P KuskoItalyIvan Magalhaes NEW
Frozen Columns
Name
Clifford A Whobrey
Emily F Ruta
Morrow U Figeroa
Stacey P Doe
David I Poquette
Salvatore R Waycott
Jefferson U Nicka
Darci S Sergi
Chavez P Kolmetz
Aditya D Glick
Aruna I Briddick
Faith I Rim
Stacey X Gaucho
Murillo I Gaucho
Jones B Slusarski
Chavez K Flosi
Maisha E Marrier
Nicolas Z Glick
Juan W Kolmetz
Faith R Morasca
James A Schemmer
Deepesh B Albares
Mayumi G Albares
Faith K Kolmetz
Isabel K Ostrosky
Chavez N Caudy
Kaitlin F Morasca
Murillo C Morasca
Leon D Rim
Arvin Q Royster
David N Whobrey
Leja Z Dilliard
Misaki D Maclead
Leja Q Sergi
Mujtaba U Campain
Emily K Marrier
Costa A Garufi
Ricardo Z Stenseth
Deepesh V Maclead
Wickens C Rulapaugh
Wickens H Caldarera
Ashley O Bolognia
Adams E Doe
David T Chui
Ricardo W Sergi
Murillo E Stockham
Aditya N Maclead
Ashley K Iturbide
Darci L Ruta
Deepesh R Venere
IdCountryDate
1000India2026-10-21
1001India2026-10-09
1002France2026-10-15
1003France2026-10-22
1004India2026-09-28
1005Brazil2026-10-04
1006Italy2026-09-25
1007Russia2026-10-02
1008Italy2026-10-19
1009Italy2026-10-02
1010Argentina2026-10-24
1011India2026-10-05
1012Australia2026-10-10
1013Italy2026-10-18
1014Japan2026-09-30
1015United Kingdom2026-10-21
1016France2026-10-04
1017Germany2026-10-14
1018Germany2026-10-13
1019Canada2026-10-14
1020Japan2026-09-26
1021Argentina2026-10-10
1022Russia2026-10-07
1023Russia2026-10-04
1024Argentina2026-10-07
1025Germany2026-10-06
1026Spain2026-10-02
1027Germany2026-09-29
1028Canada2026-10-02
1029Russia2026-10-21
1030Argentina2026-10-09
1031Japan2026-09-30
1032Australia2026-10-07
1033Russia2026-10-05
1034Canada2026-10-04
1035Spain2026-10-12
1036Argentina2026-10-08
1037Canada2026-10-20
1038Australia2026-09-28
1039Japan2026-09-30
1040United Kingdom2026-10-03
1041Australia2026-10-17
1042India2026-09-29
1043Canada2026-10-23
1044Canada2026-09-30
1045Germany2026-10-13
1046United Kingdom2026-10-01
1047Russia2026-10-09
1048Argentina2026-09-25
1049Canada2026-10-10

On-Demand Data

NameIdCountryDate
Mayumi S Marrier1000France2026-10-16
David Y Poquette1001Germany2026-10-22
Sinclair K Chui1002Germany2026-09-28
Ivar V Flosi1003Spain2026-10-20
James V Glick1004Germany2026-10-21
Misaki A Flosi1005United Kingdom2026-10-06
Leon P Oldroyd1006United Kingdom2026-09-28
Jefferson G Nicka1007Germany2026-10-16
Octavia J Rulapaugh1008Argentina2026-10-24
Alejandro L Darakjy1009Brazil2026-10-19
Arvin F Gaucho1010Japan2026-10-18
Emily U Whobrey1011India2026-10-06
Kadeem G Nicka1012France2026-10-06
Stacey H Caldarera1013Australia2026-10-06
Faith S Dilliard1014India2026-10-16
Francesco G Schemmer1015Japan2026-09-26
Wickens B Garufi1016Argentina2026-09-30
Costa H Caldarera1017Japan2026-10-20
Kaitlin D Rim1018Brazil2026-10-15
Smith J Maclead1019Brazil2026-10-20
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony H DarakjyAustraliaElwin Sharvill NEW
Kadeem O KuskoAustraliaIoni Bowcher RENEWAL
Aruna J KolmetzGermanyBernardo Dominic UNQUALIFIED
Juan F FigeroaGermanyXuxue Feng NEGOTIATION
Mujtaba U GlickRussiaAnna Fali NEW
Juan C WaycottUnited KingdomIvan Magalhaes RENEWAL
Mayumi U FigeroaItalyBernardo Dominic UNQUALIFIED
Arvin V MacleadBrazilOnyama Limba UNQUALIFIED
Claire B CaldareraCanadaElwin Sharvill PROPOSAL
Antonio K CaudyIndiaBernardo Dominic QUALIFIED
Stacey Q InouyeGermanyXuxue Feng PROPOSAL
Jennifer P BriddickSpainBernardo Dominic NEW
Leon H AmigonItalyAnna Fali PROPOSAL
Greenwood A KuskoCanadaOnyama Limba UNQUALIFIED
Isabel E OldroydSpainAnna Fali RENEWAL
Darci P CaudyUnited KingdomAsiya Javayant PROPOSAL
Johnson L FigeroaFranceElwin Sharvill RENEWAL
Wickens V CaldareraJapanAmy Elsner PROPOSAL
Ivar B OstroskyFranceAsiya Javayant PROPOSAL
Emily G FigeroaUnited KingdomBernardo Dominic NEGOTIATION
Cody P MorascaUnited KingdomAmy Elsner PROPOSAL
James P VocelkaAustraliaIoni Bowcher NEGOTIATION
Chavez Q NestleGermanyAmy Elsner UNQUALIFIED
Clifford N SaylorsCanadaXuxue Feng QUALIFIED
Clifford E OstroskyFranceAmy Elsner RENEWAL
Francesco R TollnerFranceAnna Fali RENEWAL
Munro N MacleadAustraliaElwin Sharvill UNQUALIFIED
Jefferson O CaldareraGermanyXuxue Feng NEW
Deepesh P AmigonJapanAsiya Javayant UNQUALIFIED
Claire M ChuiSpainXuxue Feng PROPOSAL
James H SaylorsUnited KingdomAnna Fali QUALIFIED
Izzy I PoquetteRussiaOnyama Limba UNQUALIFIED
Kaitlin W MorascaRussiaXuxue Feng NEGOTIATION
Ricardo A FollerCanadaAnna Fali UNQUALIFIED
Nicolas A CaldareraCanadaStephen Shaw QUALIFIED
Deepesh T SchemmerAustraliaAsiya Javayant PROPOSAL
Juan M SchemmerAustraliaAsiya Javayant NEGOTIATION
Alejandro C SergiCanadaOnyama Limba RENEWAL
Mujtaba R FlosiArgentinaAmy Elsner NEGOTIATION
Silvio C RoysterFranceAnna Fali PROPOSAL

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