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
Sinclair G OstroskyFranceIvan Magalhaes PROPOSAL
Johnson I DoeIndiaStephen Shaw PROPOSAL
Darci Z MaletSpainIvan Magalhaes NEW
Alejandro M SaylorsAustraliaIoni Bowcher NEGOTIATION
Smith A BriddickGermanyElwin Sharvill RENEWAL
Mujtaba B DarakjyRussiaOnyama Limba UNQUALIFIED
David G KolmetzCanadaBernardo Dominic UNQUALIFIED
Adams M DarakjyJapanBernardo Dominic NEGOTIATION
Darci D SergiSpainElwin Sharvill PROPOSAL
Clifford A ChuiSpainElwin Sharvill UNQUALIFIED
Jennifer B WieserUnited KingdomOnyama Limba RENEWAL
Wickens T MacleadFranceIvan Magalhaes PROPOSAL
Ivar W AlbaresRussiaAsiya Javayant NEW
Chavez Y FerenczIndiaXuxue Feng QUALIFIED
Aditya H FollerAustraliaIoni Bowcher QUALIFIED
Silvio E MaletUnited KingdomAmy Elsner UNQUALIFIED
Wickens Z MorascaArgentinaXuxue Feng RENEWAL
Jones K BologniaFranceAmy Elsner PROPOSAL
Sinclair A RutaCanadaAsiya Javayant QUALIFIED
Izzy H IturbideAustraliaElwin Sharvill QUALIFIED
Francesco V DarakjyCanadaElwin Sharvill QUALIFIED
James N MaletArgentinaIvan Magalhaes NEGOTIATION
Silvio L SchemmerBrazilIvan Magalhaes NEGOTIATION
Maisha M GarufiCanadaOnyama Limba PROPOSAL
Leja A MorascaSpainOnyama Limba PROPOSAL
Deepesh S VenereUnited KingdomBernardo Dominic NEW
Jeanfrancois C OstroskyGermanyAmy Elsner PROPOSAL
Mujtaba Y StensethAustraliaElwin Sharvill PROPOSAL
Murillo T VocelkaBrazilBernardo Dominic NEW
Octavia S RimSpainBernardo Dominic UNQUALIFIED
Jeanfrancois J FlosiCanadaIvan Magalhaes NEW
Emily S WieserAustraliaStephen Shaw RENEWAL
Johnson F FlosiAustraliaElwin Sharvill NEW
Stacey D SaylorsGermanyIvan Magalhaes UNQUALIFIED
Jefferson R SchemmerAustraliaElwin Sharvill RENEWAL
Octavia U ButtItalyAnna Fali UNQUALIFIED
Izzy B FollerCanadaAmy Elsner RENEWAL
Antonio Y SlusarskiJapanAnna Fali QUALIFIED
Maisha T RulapaughItalyOnyama Limba QUALIFIED
Munro E WhobreySpainBernardo Dominic PROPOSAL
Darci R PaprockiIndiaXuxue Feng QUALIFIED
Adams F RulapaughRussiaAmy Elsner NEW
Jeanfrancois E KolmetzGermanyIvan Magalhaes NEGOTIATION
Leja F SaylorsCanadaIvan Magalhaes RENEWAL
Jennifer S OstroskyIndiaOnyama Limba NEGOTIATION
Antonio T DarakjyRussiaBernardo Dominic NEGOTIATION
Jennifer X BriddickCanadaAnna Fali NEGOTIATION
Leon F NickaSpainIvan Magalhaes NEGOTIATION
James I FlosiItalyElwin Sharvill QUALIFIED
Leon G NickaItalyXuxue Feng QUALIFIED
Horizontal
NameCountryRepresentativeStatus
Darci R SaylorsFranceElwin Sharvill UNQUALIFIED
Salvatore H WieserGermanyBernardo Dominic QUALIFIED
Izzy R AmigonJapanAsiya Javayant PROPOSAL
Aruna S OstroskyUnited KingdomElwin Sharvill UNQUALIFIED
Alejandro B SergiIndiaStephen Shaw RENEWAL
Ricardo D VocelkaIndiaXuxue Feng NEW
Jeanfrancois X AmigonSpainAnna Fali UNQUALIFIED
Alejandro J BologniaCanadaIoni Bowcher PROPOSAL
Emily L NestleSpainIvan Magalhaes RENEWAL
Nicolas T MacleadBrazilOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Maisha R AmigonRussia2026-09-16King, Christopher A Esq QUALIFIED73Bernardo Dominic
1001Munro K RulapaughUnited Kingdom2026-09-05Buckley Miller Wright NEW99Anna Fali
1002Octavia K KolmetzArgentina2026-09-02Buckley Miller Wright UNQUALIFIED99Anna Fali
1003Adams D SergiBrazil2026-09-18Dorl, James J Esq NEW44Elwin Sharvill
1004Cody I MorascaFrance2026-09-03Feiner Bros NEGOTIATION59Ioni Bowcher
1005Isabel K RoysterCanada2026-09-05Chanay, Jeffrey A Esq NEGOTIATION94Amy Elsner
1006Julie E NickaGermany2026-09-19Buckley Miller Wright NEW16Elwin Sharvill
1007Silvio W SergiUnited Kingdom2026-09-17Chanay, Jeffrey A Esq RENEWAL15Anna Fali
1008Aruna O RoysterItaly2026-09-08Truhlar And Truhlar Attys UNQUALIFIED29Anna Fali
1009Francesco W KolmetzArgentina2026-09-21King, Christopher A Esq RENEWAL92Elwin Sharvill
1010Wickens H CampainIndia2026-09-21Morlong Associates RENEWAL2Xuxue Feng
1011Tony E ButtCanada2026-09-13Chapman, Ross E Esq PROPOSAL90Elwin Sharvill
1012Ashley F TollnerJapan2026-09-04Printing Dimensions NEGOTIATION37Anna Fali
1013Mayumi B MaletGermany2026-09-20Truhlar And Truhlar Attys QUALIFIED16Bernardo Dominic
1014Leja B BriddickBrazil2026-09-24Feltz Printing Service NEGOTIATION53Bernardo Dominic
1015Munro O ChuiFrance2026-09-03Chapman, Ross E Esq RENEWAL36Xuxue Feng
1016Costa K PerinSpain2026-09-12Rangoni Of Florence UNQUALIFIED90Xuxue Feng
1017Jeanfrancois H GlickJapan2026-09-04Dorl, James J Esq UNQUALIFIED13Stephen Shaw
1018Maria J PoquetteSpain2026-09-19Chemel, James L Cpa RENEWAL90Stephen Shaw
1019Chavez Y MaletIndia2026-09-12Chapman, Ross E Esq UNQUALIFIED57Stephen Shaw
1020Jeanfrancois J AlbaresJapan2026-08-30Buckley Miller Wright PROPOSAL58Amy Elsner
1021Darci B PaprockiUnited Kingdom2026-09-21Printing Dimensions PROPOSAL39Bernardo Dominic
1022Deepesh I CaudyJapan2026-09-04Dorl, James J Esq UNQUALIFIED83Stephen Shaw
1023Kaitlin X MacleadFrance2026-09-25Commercial Press NEW33Ioni Bowcher
1024Julie M StockhamItaly2026-09-17Chapman, Ross E Esq UNQUALIFIED76Asiya Javayant
1025Antonio R FlosiJapan2026-09-03Feltz Printing Service NEGOTIATION95Amy Elsner
1026Morrow Z SergiSpain2026-09-28Truhlar And Truhlar Attys NEGOTIATION51Ioni Bowcher
1027Cody J MacleadItaly2026-09-27Chemel, James L Cpa PROPOSAL31Stephen Shaw
1028James E RimAustralia2026-09-28Chemel, James L Cpa NEGOTIATION87Bernardo Dominic
1029Clifford O BowleyAustralia2026-09-09Chapman, Ross E Esq QUALIFIED33Onyama Limba
1030Mayumi Z VenereArgentina2026-09-26Feltz Printing Service PROPOSAL98Asiya Javayant
1031Salvatore D PerinRussia2026-09-18Feltz Printing Service QUALIFIED94Stephen Shaw
1032Faith P BriddickAustralia2026-09-12Commercial Press RENEWAL28Asiya Javayant
1033Faith X CaudyIndia2026-09-28Chanay, Jeffrey A Esq NEW11Xuxue Feng
1034Sinclair O SaylorsFrance2026-09-06Chapman, Ross E Esq PROPOSAL66Elwin Sharvill
1035Nicolas Y PerinSpain2026-09-05Chanay, Jeffrey A Esq UNQUALIFIED74Ivan Magalhaes
1036Alejandro C FollerJapan2026-09-09Commercial Press QUALIFIED78Elwin Sharvill
1037Johnson G AlbaresAustralia2026-09-20Chemel, James L Cpa UNQUALIFIED9Anna Fali
1038Johnson B DilliardCanada2026-09-04Dorl, James J Esq QUALIFIED90Onyama Limba
1039Salvatore Q CaudyAustralia2026-09-19King, Christopher A Esq UNQUALIFIED53Xuxue Feng
1040Jennifer J MacleadFrance2026-09-27Rangoni Of Florence NEGOTIATION42Anna Fali
1041Izzy S MacleadJapan2026-09-21Commercial Press PROPOSAL39Onyama Limba
1042Izzy F KolmetzGermany2026-09-06Commercial Press QUALIFIED88Bernardo Dominic
1043Smith L GauchoItaly2026-09-05Rousseaux, Michael Esq NEW5Asiya Javayant
1044Francesco X SlusarskiGermany2026-09-21Commercial Press UNQUALIFIED28Amy Elsner
1045Francesco Z NickaRussia2026-09-09Printing Dimensions NEGOTIATION54Anna Fali
1046Maria H PerinItaly2026-09-07Commercial Press NEW23Onyama Limba
1047Arvin D BriddickBrazil2026-09-07Morlong Associates QUALIFIED18Onyama Limba
1048Octavia I RoysterAustralia2026-09-27Feiner Bros NEW55Amy Elsner
1049Jones C RimFrance2026-09-16Rangoni Of Florence NEGOTIATION77Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Arvin Y AlbaresCanadaStephen Shaw RENEWAL
Darci E SchemmerRussiaStephen Shaw NEGOTIATION
Isabel Z BowleyFranceXuxue Feng NEGOTIATION
Kaitlin S KuskoFranceXuxue Feng NEW
Morrow L FigeroaCanadaBernardo Dominic RENEWAL
Juan W VenereCanadaAmy Elsner UNQUALIFIED
Johnson N FlosiItalyElwin Sharvill QUALIFIED
Chavez V SlusarskiJapanStephen Shaw NEW
Antonio L DarakjySpainIoni Bowcher NEGOTIATION
Silvio W CaudyUnited KingdomBernardo Dominic NEW
Murillo N AmigonBrazilXuxue Feng NEGOTIATION
Jones D CaldareraGermanyIoni Bowcher PROPOSAL
Salvatore C CampainCanadaOnyama Limba NEGOTIATION
Rodrigues L NickaBrazilIvan Magalhaes NEW
Maria H WieserSpainStephen Shaw NEW
Clifford T CampainJapanAsiya Javayant RENEWAL
Morrow H SchemmerItalyElwin Sharvill UNQUALIFIED
Leon P CaudyAustraliaAnna Fali NEGOTIATION
Kadeem B SaylorsFranceIvan Magalhaes UNQUALIFIED
Jeanfrancois A GillianItalyAsiya Javayant PROPOSAL
Arvin Z CaudyCanadaBernardo Dominic NEW
Mayumi T GlickCanadaElwin Sharvill NEGOTIATION
Wickens S MaletItalyIvan Magalhaes UNQUALIFIED
Julie I DoeArgentinaAmy Elsner NEGOTIATION
Adams Z ShinkoJapanIvan Magalhaes UNQUALIFIED
Ricardo J MaletArgentinaBernardo Dominic NEW
Misaki R RoysterRussiaElwin Sharvill RENEWAL
Leja V RutaCanadaAmy Elsner RENEWAL
Murillo S RimUnited KingdomOnyama Limba NEGOTIATION
Jones L SergiGermanyIvan Magalhaes UNQUALIFIED
Wickens B PerinCanadaAsiya Javayant NEGOTIATION
Aruna M ChuiIndiaStephen Shaw RENEWAL
Emily U StockhamFranceElwin Sharvill RENEWAL
Isabel N OldroydBrazilOnyama Limba NEGOTIATION
James G BologniaJapanElwin Sharvill UNQUALIFIED
Greenwood M VocelkaCanadaAmy Elsner QUALIFIED
Munro R MacleadItalyIvan Magalhaes PROPOSAL
Ashley Q AlbaresRussiaIvan Magalhaes NEW
Maisha F GlickSpainElwin Sharvill NEGOTIATION
Izzy S CampainGermanyAsiya Javayant RENEWAL
Maria C ButtSpainStephen Shaw PROPOSAL
Silvio S RimGermanyBernardo Dominic UNQUALIFIED
Julie J FigeroaIndiaXuxue Feng UNQUALIFIED
Jefferson G RulapaughSpainOnyama Limba QUALIFIED
Tony N AlbaresIndiaXuxue Feng QUALIFIED
Greenwood C NestleFranceBernardo Dominic NEGOTIATION
Faith C WhobreyItalyIvan Magalhaes RENEWAL
Tony M BriddickGermanyIvan Magalhaes PROPOSAL
Murillo R WhobreyItalyAmy Elsner RENEWAL
Arvin I MaletArgentinaXuxue Feng PROPOSAL
Frozen Columns
Name
Ricardo Y Albares
Emily A Iturbide
Francesco D Darakjy
Johnson Y Ruta
Arvin T Saylors
Ricardo U Nicka
Nicolas V Figeroa
Jefferson M Iturbide
Wickens F Schemmer
Darci U Glick
Stacey S Albares
Chavez P Kusko
Rodrigues K Caudy
Claire E Perin
Sinclair F Gaucho
Cody G Amigon
Tony G Bolognia
Deepesh T Ferencz
Greenwood C Malet
Arvin D Poquette
Maisha S Nicka
Silvio X Campain
Clifford M Stenseth
Wickens D Butt
Kaitlin G Doe
Rodrigues R Glick
Jefferson O Kolmetz
Izzy R Flosi
Izzy T Whobrey
Ricardo Z Whobrey
Mayumi W Stenseth
Wickens D Royster
Alejandro Q Morasca
Costa G Darakjy
Cody A Bowley
Julie B Inouye
Antonio F Inouye
Salvatore E Paprocki
Emily E Perin
Maria W Gaucho
Johnson X Albares
Jeanfrancois G Malet
Aika N Ferencz
Jefferson F Saylors
Clifford V Ostrosky
Aditya J Iturbide
Chavez B Wieser
Greenwood R Chui
Silvio Q Figeroa
Stacey R Glick
IdCountryDate
1000Italy2026-09-06
1001Australia2026-09-27
1002France2026-09-02
1003Canada2026-09-25
1004Brazil2026-09-07
1005Italy2026-09-08
1006Russia2026-09-07
1007Germany2026-09-04
1008United Kingdom2026-09-23
1009United Kingdom2026-09-10
1010India2026-09-13
1011Italy2026-09-22
1012Brazil2026-09-27
1013Russia2026-09-02
1014Russia2026-09-11
1015Brazil2026-09-09
1016Germany2026-09-26
1017Argentina2026-09-01
1018Brazil2026-09-04
1019Spain2026-09-11
1020Italy2026-09-13
1021Brazil2026-09-11
1022Spain2026-09-18
1023India2026-09-11
1024United Kingdom2026-09-10
1025Argentina2026-09-07
1026Australia2026-09-04
1027Italy2026-09-12
1028India2026-09-19
1029Russia2026-09-11
1030Spain2026-09-09
1031Italy2026-09-28
1032Argentina2026-09-06
1033Russia2026-09-24
1034Brazil2026-09-12
1035Spain2026-09-11
1036Russia2026-09-27
1037Canada2026-09-06
1038Australia2026-09-08
1039Australia2026-09-25
1040Japan2026-09-25
1041Russia2026-08-30
1042United Kingdom2026-09-06
1043Brazil2026-09-07
1044Spain2026-09-03
1045Argentina2026-09-10
1046Italy2026-09-01
1047Russia2026-09-07
1048Italy2026-09-14
1049Spain2026-09-12

On-Demand Data

NameIdCountryDate
Jeanfrancois F Rim1000Russia2026-09-08
Rodrigues W Slusarski1001United Kingdom2026-09-12
Emily D Albares1002United Kingdom2026-09-25
Tony C Nicka1003Germany2026-09-18
Greenwood U Saylors1004United Kingdom2026-09-26
Jennifer P Garufi1005Australia2026-09-01
Jennifer Y Bolognia1006Japan2026-09-12
Silvio X Chui1007Russia2026-09-05
Chavez Y Amigon1008Argentina2026-09-16
Deepesh R Albares1009United Kingdom2026-09-21
Morrow W Royster1010Russia2026-09-05
Jeanfrancois Y Campain1011Brazil2026-09-22
Tony Q Bowley1012Australia2026-09-23
Rodrigues B Vocelka1013France2026-09-04
Francesco I Waycott1014United Kingdom2026-09-09
Maisha L Caudy1015France2026-09-25
Julie Q Malet1016Argentina2026-09-06
Costa K Bolognia1017Japan2026-09-06
Silvio D Iturbide1018Argentina2026-09-21
Francesco D Gillian1019Canada2026-09-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Antonio W MaletItalyStephen Shaw UNQUALIFIED
David Q WaycottBrazilBernardo Dominic RENEWAL
Murillo A BriddickAustraliaIoni Bowcher UNQUALIFIED
Leon I TollnerArgentinaAsiya Javayant UNQUALIFIED
Stacey B SchemmerArgentinaStephen Shaw QUALIFIED
Emily K SlusarskiAustraliaIoni Bowcher UNQUALIFIED
Rodrigues Z MaletBrazilAnna Fali QUALIFIED
James Z RoysterRussiaBernardo Dominic NEGOTIATION
Clifford M FollerJapanAsiya Javayant QUALIFIED
Smith H ButtIndiaStephen Shaw RENEWAL
Jennifer M GauchoGermanyAnna Fali QUALIFIED
Mayumi X NestleJapanAnna Fali PROPOSAL
Nicolas X GauchoSpainAnna Fali NEGOTIATION
Silvio A TollnerFranceBernardo Dominic RENEWAL
Ivar D DoeAustraliaAsiya Javayant QUALIFIED
Munro W GauchoItalyElwin Sharvill NEGOTIATION
Wickens B DilliardCanadaAsiya Javayant QUALIFIED
Claire C KuskoFranceOnyama Limba QUALIFIED
Antonio D ChuiItalyAsiya Javayant NEW
Wickens C KolmetzRussiaBernardo Dominic NEGOTIATION
Clifford N SergiFranceAmy Elsner UNQUALIFIED
Aika G BologniaFranceAnna Fali QUALIFIED
Jeanfrancois D AlbaresIndiaElwin Sharvill NEGOTIATION
Maria D SchemmerItalyStephen Shaw NEW
Mujtaba V GarufiAustraliaAmy Elsner RENEWAL
Mayumi Q StockhamJapanIoni Bowcher NEW
Aruna V StockhamArgentinaElwin Sharvill PROPOSAL
Jeanfrancois V OstroskyGermanyOnyama Limba NEW
Mujtaba C WaycottJapanAsiya Javayant NEGOTIATION
Salvatore C InouyeAustraliaOnyama Limba UNQUALIFIED
Juan G ButtIndiaAsiya Javayant NEW
Rodrigues Q MarrierAustraliaXuxue Feng PROPOSAL
Ivar Q GillianSpainAmy Elsner NEGOTIATION
Morrow B RutaItalyBernardo Dominic RENEWAL
Aika Y StensethBrazilXuxue Feng UNQUALIFIED
Ivar L FerenczItalyXuxue Feng QUALIFIED
Jones M AlbaresItalyBernardo Dominic NEGOTIATION
Jefferson B RutaCanadaElwin Sharvill PROPOSAL
Emily E ChuiAustraliaAnna Fali QUALIFIED
Faith J FigeroaFranceAmy Elsner 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>