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
Emily J DarakjyFranceAnna Fali NEW
Arvin Z StensethSpainStephen Shaw NEW
Antonio V WhobreyArgentinaAnna Fali NEGOTIATION
Francesco V NickaUnited KingdomIvan Magalhaes RENEWAL
Nicolas U GarufiGermanyAmy Elsner NEGOTIATION
Kaitlin W AlbaresArgentinaBernardo Dominic NEW
Sinclair U RutaGermanyOnyama Limba PROPOSAL
Ashley L BriddickSpainIvan Magalhaes NEGOTIATION
Deepesh I StensethJapanElwin Sharvill QUALIFIED
Jeanfrancois T TollnerUnited KingdomAnna Fali PROPOSAL
David G GlickRussiaOnyama Limba RENEWAL
Murillo Q VenereIndiaStephen Shaw RENEWAL
Alejandro L GarufiFranceIvan Magalhaes NEW
Wickens U MarrierSpainBernardo Dominic UNQUALIFIED
Morrow F MaletUnited KingdomAnna Fali QUALIFIED
Ashley N GillianIndiaAnna Fali RENEWAL
Aika W MorascaFranceElwin Sharvill QUALIFIED
Mujtaba D VenereFranceOnyama Limba UNQUALIFIED
Juan U GillianIndiaAsiya Javayant NEGOTIATION
Clifford X ShinkoJapanAsiya Javayant RENEWAL
Claire T BriddickSpainAsiya Javayant PROPOSAL
Mujtaba J CaudyUnited KingdomBernardo Dominic RENEWAL
Deepesh I ButtUnited KingdomAmy Elsner PROPOSAL
Ashley K FlosiRussiaIoni Bowcher UNQUALIFIED
David M SlusarskiJapanOnyama Limba QUALIFIED
Kadeem H WaycottRussiaAnna Fali UNQUALIFIED
Smith O GauchoRussiaIoni Bowcher RENEWAL
Nicolas E BriddickJapanXuxue Feng RENEWAL
Alejandro N WieserSpainOnyama Limba NEGOTIATION
Faith Q KuskoIndiaIoni Bowcher UNQUALIFIED
Leon Q KolmetzItalyElwin Sharvill UNQUALIFIED
Octavia D OstroskyJapanXuxue Feng NEW
Ricardo F NestleArgentinaAmy Elsner NEW
Morrow R BriddickAustraliaAsiya Javayant RENEWAL
Leon N PaprockiIndiaIvan Magalhaes UNQUALIFIED
Antonio O GillianBrazilIoni Bowcher NEGOTIATION
Cody F WaycottGermanyStephen Shaw PROPOSAL
Aika C DoeBrazilXuxue Feng PROPOSAL
Rodrigues Z SchemmerRussiaIvan Magalhaes QUALIFIED
Jennifer E PaprockiAustraliaBernardo Dominic PROPOSAL
Morrow A FerenczIndiaIoni Bowcher NEGOTIATION
Jennifer L PoquetteArgentinaElwin Sharvill QUALIFIED
Maisha B IturbideRussiaStephen Shaw UNQUALIFIED
Faith P PerinSpainAsiya Javayant UNQUALIFIED
Alejandro Z DoeAustraliaXuxue Feng UNQUALIFIED
Stacey Z WaycottRussiaIoni Bowcher QUALIFIED
Salvatore C MaletSpainStephen Shaw NEW
Greenwood B DilliardArgentinaAmy Elsner UNQUALIFIED
Wickens O ChuiItalyIvan Magalhaes NEGOTIATION
Maria N DilliardSpainStephen Shaw RENEWAL
Horizontal
NameCountryRepresentativeStatus
Juan M InouyeGermanyAnna Fali NEGOTIATION
Leon W InouyeRussiaIoni Bowcher UNQUALIFIED
Octavia H VenereSpainIoni Bowcher PROPOSAL
Murillo L VocelkaGermanyXuxue Feng NEW
Julie N RimIndiaAmy Elsner QUALIFIED
Izzy S MacleadGermanyAmy Elsner UNQUALIFIED
Maisha T SlusarskiCanadaStephen Shaw PROPOSAL
Octavia U FollerSpainElwin Sharvill RENEWAL
Smith I SchemmerJapanElwin Sharvill PROPOSAL
Jones T MacleadRussiaOnyama Limba RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Faith Z PaprockiUnited Kingdom2026-08-29Commercial Press RENEWAL39Onyama Limba
1001Juan L SaylorsArgentina2026-08-29Rangoni Of Florence PROPOSAL75Amy Elsner
1002Greenwood Z StockhamArgentina2026-09-11Printing Dimensions NEW73Stephen Shaw
1003Emily B VocelkaUnited Kingdom2026-09-15Benton, John B Jr NEGOTIATION2Ivan Magalhaes
1004Juan L MacleadSpain2026-09-12Buckley Miller Wright RENEWAL94Ioni Bowcher
1005Sinclair K MorascaArgentina2026-09-18Truhlar And Truhlar Attys NEW46Elwin Sharvill
1006Kaitlin I FlosiUnited Kingdom2026-09-12King, Christopher A Esq RENEWAL34Ioni Bowcher
1007Alejandro V RoysterCanada2026-09-17King, Christopher A Esq NEW45Bernardo Dominic
1008Greenwood Q GlickBrazil2026-09-08Chemel, James L Cpa NEGOTIATION50Elwin Sharvill
1009Faith L WieserIndia2026-09-10Morlong Associates NEGOTIATION92Elwin Sharvill
1010Kaitlin S BowleyFrance2026-09-19Truhlar And Truhlar Attys QUALIFIED37Ioni Bowcher
1011Tony D RimAustralia2026-09-06Rangoni Of Florence QUALIFIED63Stephen Shaw
1012Deepesh J RoysterJapan2026-09-18Chemel, James L Cpa NEW82Stephen Shaw
1013Jefferson Q InouyeJapan2026-09-01Rousseaux, Michael Esq PROPOSAL80Xuxue Feng
1014Mayumi K NickaItaly2026-09-16Morlong Associates PROPOSAL10Ioni Bowcher
1015Nicolas S WieserAustralia2026-09-15Buckley Miller Wright NEW53Bernardo Dominic
1016Faith O MaletRussia2026-09-02Truhlar And Truhlar Attys RENEWAL53Ivan Magalhaes
1017Jeanfrancois T ShinkoGermany2026-09-16King, Christopher A Esq UNQUALIFIED77Anna Fali
1018Wickens M VocelkaJapan2026-09-04Rousseaux, Michael Esq UNQUALIFIED70Ioni Bowcher
1019Costa F GarufiJapan2026-09-01Feltz Printing Service PROPOSAL44Stephen Shaw
1020Sinclair L BologniaSpain2026-08-27Rousseaux, Michael Esq NEW49Anna Fali
1021Costa Z RimCanada2026-09-12Chapman, Ross E Esq UNQUALIFIED98Amy Elsner
1022Sinclair V TollnerSpain2026-08-27Feiner Bros NEW4Ivan Magalhaes
1023Julie Q FollerJapan2026-08-28Feltz Printing Service PROPOSAL43Asiya Javayant
1024Munro Z WaycottSpain2026-08-26Chemel, James L Cpa PROPOSAL83Amy Elsner
1025David Z SaylorsGermany2026-09-12Dorl, James J Esq RENEWAL48Onyama Limba
1026Faith U MaletAustralia2026-08-24King, Christopher A Esq NEGOTIATION38Asiya Javayant
1027Claire P AmigonUnited Kingdom2026-08-26Feltz Printing Service PROPOSAL85Bernardo Dominic
1028Deepesh S InouyeFrance2026-08-25Truhlar And Truhlar Attys NEW10Amy Elsner
1029Kaitlin N StensethSpain2026-09-07King, Christopher A Esq UNQUALIFIED12Ivan Magalhaes
1030Leon V NestleItaly2026-09-12Commercial Press NEGOTIATION45Onyama Limba
1031Ashley S MaletRussia2026-09-19Chapman, Ross E Esq NEW48Xuxue Feng
1032David H MarrierGermany2026-08-28Feiner Bros QUALIFIED95Anna Fali
1033Greenwood N RoysterGermany2026-09-04Chapman, Ross E Esq RENEWAL65Bernardo Dominic
1034Faith N PaprockiBrazil2026-09-08Rousseaux, Michael Esq QUALIFIED48Bernardo Dominic
1035Leja W CaudyIndia2026-09-17Rousseaux, Michael Esq NEGOTIATION97Asiya Javayant
1036Ashley H ChuiBrazil2026-09-19Truhlar And Truhlar Attys NEGOTIATION2Onyama Limba
1037Leja I SlusarskiIndia2026-09-04Printing Dimensions PROPOSAL49Xuxue Feng
1038Salvatore P AmigonSpain2026-09-17Dorl, James J Esq PROPOSAL62Stephen Shaw
1039Salvatore F FollerJapan2026-09-21Feltz Printing Service QUALIFIED90Amy Elsner
1040Stacey L GlickIndia2026-09-08Dorl, James J Esq NEGOTIATION18Amy Elsner
1041Misaki S KuskoIndia2026-09-13Truhlar And Truhlar Attys UNQUALIFIED77Xuxue Feng
1042Francesco F MarrierRussia2026-09-20Rangoni Of Florence RENEWAL53Xuxue Feng
1043Sinclair P CaldareraAustralia2026-08-25Dorl, James J Esq UNQUALIFIED94Bernardo Dominic
1044Jennifer B AmigonCanada2026-09-18Rousseaux, Michael Esq RENEWAL22Ivan Magalhaes
1045Ricardo N BologniaCanada2026-09-17Printing Dimensions UNQUALIFIED21Stephen Shaw
1046Adams T OstroskyGermany2026-09-02Rousseaux, Michael Esq NEW94Bernardo Dominic
1047Tony Y CaudyIndia2026-09-12Rangoni Of Florence NEGOTIATION96Anna Fali
1048James V InouyeSpain2026-08-24Feltz Printing Service QUALIFIED81Stephen Shaw
1049Adams Y NickaCanada2026-09-15Chemel, James L Cpa NEGOTIATION26Ivan Magalhaes
Frozen Rows
NameCountryRepresentativeStatus
Aika H SergiAustraliaAmy Elsner PROPOSAL
Alejandro G GlickFranceAsiya Javayant QUALIFIED
Jefferson X IturbideFranceBernardo Dominic RENEWAL
Clifford E CaudyItalyOnyama Limba UNQUALIFIED
Kadeem I WieserJapanXuxue Feng NEGOTIATION
Jefferson R OstroskyFranceAsiya Javayant PROPOSAL
Leon K VocelkaUnited KingdomOnyama Limba NEGOTIATION
Jennifer L FigeroaJapanOnyama Limba QUALIFIED
Stacey D CampainAustraliaAnna Fali RENEWAL
Darci Z FigeroaBrazilIvan Magalhaes UNQUALIFIED
Aika B StensethFranceAnna Fali RENEWAL
Maisha Z KuskoArgentinaAmy Elsner RENEWAL
Adams E MarrierUnited KingdomAmy Elsner RENEWAL
Murillo A RimSpainXuxue Feng QUALIFIED
Ashley V GarufiFranceXuxue Feng RENEWAL
Kaitlin K DilliardRussiaBernardo Dominic RENEWAL
Rodrigues U MaletJapanAnna Fali NEW
Mayumi E SchemmerFranceAnna Fali QUALIFIED
Morrow R VenereUnited KingdomBernardo Dominic QUALIFIED
Francesco R StockhamAustraliaStephen Shaw UNQUALIFIED
Arvin T DarakjyBrazilIoni Bowcher QUALIFIED
Misaki Z MarrierIndiaXuxue Feng QUALIFIED
Aruna A PerinIndiaIvan Magalhaes PROPOSAL
Ashley B RimSpainAmy Elsner NEGOTIATION
Tony H ShinkoFranceIoni Bowcher UNQUALIFIED
Leon R GauchoGermanyOnyama Limba PROPOSAL
Jennifer R DilliardCanadaAnna Fali QUALIFIED
Aika W BowleyJapanOnyama Limba UNQUALIFIED
James Z SaylorsArgentinaXuxue Feng QUALIFIED
Munro P MaletGermanyAsiya Javayant NEW
Kadeem I SlusarskiFranceOnyama Limba QUALIFIED
Juan G StockhamGermanyAmy Elsner RENEWAL
Mayumi D PaprockiFranceElwin Sharvill NEGOTIATION
Misaki E BriddickJapanIvan Magalhaes RENEWAL
Chavez A AlbaresFranceIvan Magalhaes NEW
Ivar A TollnerSpainElwin Sharvill QUALIFIED
Tony F MacleadSpainBernardo Dominic QUALIFIED
Mujtaba I PaprockiFranceOnyama Limba RENEWAL
Salvatore Q BowleyUnited KingdomStephen Shaw NEW
Jeanfrancois D NestleArgentinaAmy Elsner UNQUALIFIED
Kaitlin S DilliardSpainIvan Magalhaes NEGOTIATION
Chavez E PaprockiFranceIvan Magalhaes UNQUALIFIED
Murillo J AlbaresFranceAmy Elsner PROPOSAL
Jennifer W FigeroaBrazilOnyama Limba QUALIFIED
Jeanfrancois D AlbaresAustraliaStephen Shaw PROPOSAL
Claire B VocelkaFranceXuxue Feng RENEWAL
Rodrigues V WaycottSpainXuxue Feng NEW
Aruna M TollnerArgentinaAnna Fali RENEWAL
Aika W SlusarskiFranceBernardo Dominic PROPOSAL
Silvio P RimItalyIvan Magalhaes NEW
Frozen Columns
Name
Misaki R Vocelka
Julie K Schemmer
Johnson R Slusarski
Arvin P Iturbide
Aruna X Maclead
Aika I Bolognia
Misaki E Darakjy
Aruna N Briddick
Jefferson H Gaucho
Kadeem E Malet
Darci C Gillian
Claire T Stockham
Morrow L Waycott
Antonio G Sergi
Izzy J Glick
Smith N Marrier
Smith H Malet
Salvatore J Wieser
Arvin Z Bolognia
Faith Y Tollner
Munro E Paprocki
Sinclair V Malet
Kaitlin M Whobrey
Nicolas B Darakjy
Julie N Saylors
Arvin G Chui
Sinclair S Stockham
Antonio Z Kolmetz
Julie D Tollner
Nicolas W Ferencz
Francesco P Dilliard
Izzy Y Gaucho
Emily R Glick
Smith S Royster
Murillo C Paprocki
Cody J Slusarski
Adams H Flosi
Alejandro K Saylors
Wickens Q Albares
Deepesh D Royster
Murillo T Shinko
Cody V Flosi
Mayumi Q Briddick
Izzy L Chui
Johnson F Marrier
Octavia G Royster
Munro T Chui
Smith G Bowley
Sinclair P Malet
Nicolas S Marrier
IdCountryDate
1000Japan2026-09-16
1001Italy2026-09-21
1002Japan2026-09-13
1003Japan2026-09-06
1004Canada2026-09-18
1005India2026-09-02
1006Australia2026-09-13
1007Argentina2026-09-08
1008Russia2026-08-24
1009Spain2026-09-08
1010Argentina2026-08-26
1011India2026-09-16
1012Germany2026-09-09
1013Brazil2026-09-12
1014Spain2026-08-27
1015Australia2026-09-15
1016Argentina2026-09-20
1017France2026-08-24
1018France2026-09-07
1019United Kingdom2026-09-07
1020Brazil2026-09-09
1021Australia2026-08-26
1022Germany2026-09-02
1023Argentina2026-08-23
1024Argentina2026-09-18
1025Japan2026-09-14
1026Spain2026-09-19
1027France2026-09-01
1028Australia2026-08-24
1029France2026-08-25
1030India2026-09-04
1031United Kingdom2026-09-03
1032France2026-09-12
1033United Kingdom2026-09-17
1034Brazil2026-09-20
1035Russia2026-08-24
1036Spain2026-09-03
1037Italy2026-09-02
1038Australia2026-09-18
1039Russia2026-09-08
1040United Kingdom2026-09-17
1041Japan2026-09-04
1042Japan2026-09-14
1043Argentina2026-08-24
1044Canada2026-09-04
1045Brazil2026-09-17
1046Canada2026-09-19
1047Australia2026-09-01
1048Japan2026-09-04
1049Spain2026-08-30

On-Demand Data

NameIdCountryDate
Morrow L Saylors1000Japan2026-09-14
Wickens V Garufi1001Russia2026-09-09
Silvio C Ferencz1002Argentina2026-09-15
Smith Y Nicka1003Brazil2026-09-05
Octavia A Butt1004Canada2026-09-08
Isabel H Morasca1005Germany2026-09-09
Salvatore D Iturbide1006Russia2026-08-31
Rodrigues R Wieser1007India2026-09-04
Wickens S Chui1008Germany2026-08-24
Chavez M Briddick1009Argentina2026-08-31
Smith X Malet1010Australia2026-08-31
Isabel A Foller1011Italy2026-08-31
Misaki T Malet1012India2026-08-29
Darci E Ruta1013India2026-09-14
David Y Albares1014Canada2026-09-14
Kaitlin F Gillian1015Russia2026-08-27
Greenwood Z Venere1016Australia2026-08-25
Salvatore W Bolognia1017Spain2026-09-05
Cody O Figeroa1018France2026-08-24
Aruna M Kolmetz1019United Kingdom2026-09-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Leja N RimGermanyAnna Fali QUALIFIED
Ivar J StensethGermanyAmy Elsner UNQUALIFIED
Cody I MarrierGermanyAmy Elsner RENEWAL
Juan F BowleySpainAsiya Javayant QUALIFIED
Octavia O MorascaFranceAnna Fali UNQUALIFIED
Maria D FlosiCanadaAmy Elsner PROPOSAL
James F FlosiCanadaIvan Magalhaes RENEWAL
Morrow Z NickaRussiaAnna Fali QUALIFIED
Isabel E GarufiGermanyXuxue Feng PROPOSAL
Wickens X GlickIndiaOnyama Limba NEW
Adams H FigeroaArgentinaAsiya Javayant NEGOTIATION
Maria Y AlbaresArgentinaIoni Bowcher NEW
Chavez T IturbideSpainAmy Elsner NEW
Chavez B BowleyAustraliaAsiya Javayant NEGOTIATION
Cody W TollnerIndiaAsiya Javayant PROPOSAL
Salvatore I AlbaresFranceAnna Fali NEGOTIATION
Jennifer N BriddickUnited KingdomBernardo Dominic NEW
Chavez C GarufiFranceStephen Shaw RENEWAL
Mujtaba T WieserAustraliaXuxue Feng PROPOSAL
David M MarrierAustraliaIvan Magalhaes PROPOSAL
Aditya D MorascaGermanyAsiya Javayant UNQUALIFIED
Antonio A ButtItalyAmy Elsner NEGOTIATION
David E KolmetzAustraliaStephen Shaw UNQUALIFIED
Jeanfrancois Z FollerBrazilAnna Fali RENEWAL
Alejandro I IturbideJapanStephen Shaw UNQUALIFIED
Aditya Y GauchoGermanyAsiya Javayant UNQUALIFIED
Sinclair L RoysterSpainOnyama Limba PROPOSAL
Kaitlin U SlusarskiBrazilAmy Elsner RENEWAL
Adams M TollnerUnited KingdomBernardo Dominic RENEWAL
Ricardo M FollerBrazilElwin Sharvill PROPOSAL
Jeanfrancois W TollnerGermanyStephen Shaw QUALIFIED
Maria C BriddickFranceAsiya Javayant PROPOSAL
Francesco C CaldareraRussiaIoni Bowcher UNQUALIFIED
Stacey G CaldareraGermanyXuxue Feng NEGOTIATION
Deepesh B DoeUnited KingdomOnyama Limba PROPOSAL
Mujtaba I IturbideJapanStephen Shaw RENEWAL
Aditya P SchemmerIndiaIoni Bowcher UNQUALIFIED
Arvin U BowleyIndiaAmy Elsner UNQUALIFIED
Rodrigues N VenereGermanyIoni Bowcher NEW
Alejandro L VocelkaItalyIvan Magalhaes NEW

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