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
Francesco Z CampainJapanOnyama Limba UNQUALIFIED
Ivar C WaycottBrazilOnyama Limba NEW
Costa K MarrierItalyOnyama Limba NEW
Costa Q SaylorsBrazilOnyama Limba RENEWAL
Darci M RoysterBrazilOnyama Limba NEW
Mujtaba T OstroskyBrazilXuxue Feng QUALIFIED
Johnson K FigeroaRussiaBernardo Dominic PROPOSAL
Izzy A IturbideAustraliaStephen Shaw QUALIFIED
Silvio T SchemmerArgentinaOnyama Limba PROPOSAL
Johnson W GarufiJapanAmy Elsner NEGOTIATION
Antonio W VocelkaArgentinaElwin Sharvill NEW
Aika Z CampainRussiaAmy Elsner QUALIFIED
Izzy V WhobreyCanadaXuxue Feng NEGOTIATION
Mujtaba U WieserArgentinaAsiya Javayant PROPOSAL
Aika J RulapaughCanadaIoni Bowcher UNQUALIFIED
Salvatore U StensethFranceElwin Sharvill PROPOSAL
Cody E BologniaAustraliaXuxue Feng NEGOTIATION
Juan B RoysterGermanyAsiya Javayant RENEWAL
Clifford F GlickAustraliaElwin Sharvill QUALIFIED
Claire D GarufiIndiaAsiya Javayant NEGOTIATION
Faith S BriddickJapanAsiya Javayant RENEWAL
James L PerinItalyAnna Fali NEW
Sinclair D WaycottItalyBernardo Dominic PROPOSAL
Clifford N KuskoJapanIvan Magalhaes NEW
James F ButtCanadaXuxue Feng NEW
Wickens N MarrierUnited KingdomAmy Elsner NEW
Jeanfrancois R WaycottAustraliaBernardo Dominic PROPOSAL
David K FollerArgentinaXuxue Feng QUALIFIED
Jones K VocelkaJapanAmy Elsner PROPOSAL
Aruna D DoeRussiaOnyama Limba QUALIFIED
Alejandro M GlickGermanyAsiya Javayant NEGOTIATION
Claire I OldroydIndiaBernardo Dominic UNQUALIFIED
Jeanfrancois L SchemmerGermanyStephen Shaw QUALIFIED
Ivar C AmigonRussiaAnna Fali PROPOSAL
Juan I AlbaresCanadaElwin Sharvill PROPOSAL
Misaki W FollerBrazilStephen Shaw UNQUALIFIED
Misaki T CaudySpainAmy Elsner NEGOTIATION
Jennifer I VenereSpainElwin Sharvill QUALIFIED
Antonio X FerenczCanadaIvan Magalhaes NEGOTIATION
Isabel O SaylorsArgentinaElwin Sharvill PROPOSAL
Salvatore V IturbideRussiaIoni Bowcher RENEWAL
Wickens F WhobreyArgentinaStephen Shaw NEW
Leja R AlbaresFranceIvan Magalhaes PROPOSAL
Arvin P StensethSpainBernardo Dominic PROPOSAL
Antonio U TollnerRussiaElwin Sharvill RENEWAL
Ivar S DilliardFranceStephen Shaw NEW
Wickens M RutaFranceStephen Shaw PROPOSAL
Johnson W FollerUnited KingdomIvan Magalhaes UNQUALIFIED
Faith J RoysterGermanyStephen Shaw QUALIFIED
Leja N FlosiArgentinaIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Izzy O OldroydAustraliaIoni Bowcher UNQUALIFIED
Chavez U NestleGermanyStephen Shaw NEGOTIATION
Faith Y MaletCanadaAmy Elsner QUALIFIED
Deepesh Y VenereRussiaStephen Shaw RENEWAL
Maisha V PoquetteBrazilIvan Magalhaes UNQUALIFIED
Octavia M IturbideSpainElwin Sharvill QUALIFIED
Alejandro V SlusarskiUnited KingdomElwin Sharvill PROPOSAL
Murillo U RulapaughBrazilIvan Magalhaes RENEWAL
Johnson P MaletItalyAmy Elsner QUALIFIED
Wickens C ChuiCanadaAmy Elsner NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Darci X IturbideBrazil2026-08-29Rousseaux, Michael Esq NEGOTIATION31Onyama Limba
1001Adams Q MacleadCanada2026-08-20Rousseaux, Michael Esq PROPOSAL48Ioni Bowcher
1002Jefferson O NickaFrance2026-09-15Rangoni Of Florence PROPOSAL11Asiya Javayant
1003Munro T BologniaArgentina2026-09-10Dorl, James J Esq RENEWAL56Elwin Sharvill
1004Ashley H KuskoBrazil2026-08-22Benton, John B Jr UNQUALIFIED63Stephen Shaw
1005Leon J CaldareraGermany2026-09-05Benton, John B Jr RENEWAL79Ivan Magalhaes
1006Misaki O StockhamJapan2026-08-22Rangoni Of Florence NEGOTIATION84Xuxue Feng
1007Emily U ChuiGermany2026-08-19Chemel, James L Cpa QUALIFIED53Ioni Bowcher
1008Kaitlin X MarrierArgentina2026-09-06Dorl, James J Esq NEGOTIATION6Onyama Limba
1009Maria J FlosiRussia2026-08-21Rousseaux, Michael Esq PROPOSAL4Stephen Shaw
1010Leja L DilliardGermany2026-08-25Printing Dimensions QUALIFIED87Onyama Limba
1011Octavia Z IturbideBrazil2026-09-12Chanay, Jeffrey A Esq UNQUALIFIED41Ivan Magalhaes
1012Julie Y GarufiRussia2026-09-02Chapman, Ross E Esq NEGOTIATION2Bernardo Dominic
1013Johnson O MaletItaly2026-09-05Truhlar And Truhlar Attys NEGOTIATION22Xuxue Feng
1014David I SaylorsArgentina2026-08-20Truhlar And Truhlar Attys RENEWAL52Xuxue Feng
1015Morrow V RutaSpain2026-09-02King, Christopher A Esq QUALIFIED60Elwin Sharvill
1016Costa Y AmigonAustralia2026-09-01Truhlar And Truhlar Attys NEGOTIATION91Onyama Limba
1017Ashley M SergiRussia2026-08-21Buckley Miller Wright RENEWAL18Ioni Bowcher
1018Wickens K TollnerBrazil2026-09-01King, Christopher A Esq NEW47Anna Fali
1019Izzy F DarakjyBrazil2026-08-29Morlong Associates NEW49Anna Fali
1020Stacey N MarrierFrance2026-08-28Dorl, James J Esq NEW21Ivan Magalhaes
1021Silvio W FigeroaItaly2026-08-22Chapman, Ross E Esq PROPOSAL89Stephen Shaw
1022Nicolas L SlusarskiFrance2026-08-28Chapman, Ross E Esq RENEWAL25Amy Elsner
1023Maisha A WhobreyUnited Kingdom2026-08-22Rangoni Of Florence QUALIFIED38Asiya Javayant
1024Salvatore Q SchemmerFrance2026-09-15Benton, John B Jr UNQUALIFIED18Xuxue Feng
1025Misaki B SergiArgentina2026-09-03Rangoni Of Florence RENEWAL20Stephen Shaw
1026Johnson X ShinkoFrance2026-08-28Commercial Press NEW46Onyama Limba
1027Maisha G TollnerUnited Kingdom2026-09-07Benton, John B Jr RENEWAL80Stephen Shaw
1028Stacey Q PerinRussia2026-09-09Buckley Miller Wright QUALIFIED38Asiya Javayant
1029David J RoysterUnited Kingdom2026-09-01Benton, John B Jr NEW16Bernardo Dominic
1030Munro A WaycottJapan2026-09-17Feiner Bros NEW91Asiya Javayant
1031Mujtaba M ButtSpain2026-08-22Dorl, James J Esq UNQUALIFIED87Anna Fali
1032Aika O GlickArgentina2026-08-20Chapman, Ross E Esq NEGOTIATION77Asiya Javayant
1033Jennifer B MacleadBrazil2026-09-14Printing Dimensions NEGOTIATION14Anna Fali
1034David A WieserGermany2026-08-26Truhlar And Truhlar Attys NEGOTIATION35Elwin Sharvill
1035Morrow V OstroskyRussia2026-09-15Rangoni Of Florence RENEWAL80Elwin Sharvill
1036Julie R FlosiBrazil2026-09-11Morlong Associates RENEWAL39Elwin Sharvill
1037Izzy C StockhamGermany2026-08-24Rousseaux, Michael Esq PROPOSAL42Elwin Sharvill
1038Leja D PoquetteGermany2026-08-30Chemel, James L Cpa NEW92Ioni Bowcher
1039Kaitlin E FigeroaJapan2026-09-17Dorl, James J Esq UNQUALIFIED16Anna Fali
1040Greenwood N SlusarskiJapan2026-09-13Feiner Bros NEGOTIATION86Stephen Shaw
1041Murillo J FigeroaItaly2026-08-20Feiner Bros PROPOSAL13Ioni Bowcher
1042Greenwood P VocelkaCanada2026-09-17Rousseaux, Michael Esq PROPOSAL50Asiya Javayant
1043Clifford N NickaCanada2026-09-02Commercial Press PROPOSAL8Asiya Javayant
1044Rodrigues R VenereRussia2026-08-31King, Christopher A Esq NEGOTIATION5Bernardo Dominic
1045Juan S FigeroaGermany2026-09-03Chanay, Jeffrey A Esq QUALIFIED20Asiya Javayant
1046Aruna Y StockhamJapan2026-09-16Buckley Miller Wright NEGOTIATION95Ioni Bowcher
1047Nicolas V VenereRussia2026-08-28Commercial Press NEGOTIATION3Asiya Javayant
1048Maisha P AmigonItaly2026-08-29Chapman, Ross E Esq UNQUALIFIED82Amy Elsner
1049Emily X GauchoBrazil2026-08-22Rangoni Of Florence NEGOTIATION92Xuxue Feng
Frozen Rows
NameCountryRepresentativeStatus
Juan P WhobreyUnited KingdomStephen Shaw NEW
Silvio U CampainFranceBernardo Dominic PROPOSAL
Ashley H NestleGermanyStephen Shaw UNQUALIFIED
Kaitlin T MaletArgentinaAsiya Javayant NEGOTIATION
Mayumi V StockhamAustraliaIoni Bowcher UNQUALIFIED
Mayumi X VocelkaSpainIoni Bowcher NEW
Chavez E NestleRussiaIvan Magalhaes NEW
Greenwood V BriddickSpainAsiya Javayant NEW
Maria Z KuskoJapanIvan Magalhaes NEGOTIATION
Claire M FerenczIndiaBernardo Dominic RENEWAL
Stacey W ChuiJapanBernardo Dominic PROPOSAL
Maisha G CaudyGermanyIvan Magalhaes RENEWAL
Sinclair D RutaArgentinaBernardo Dominic PROPOSAL
Leja Q VocelkaArgentinaAmy Elsner QUALIFIED
Jefferson U VenereAustraliaOnyama Limba RENEWAL
Tony R RimItalyAnna Fali UNQUALIFIED
Francesco R SlusarskiSpainAmy Elsner NEGOTIATION
Sinclair S DarakjyBrazilIvan Magalhaes UNQUALIFIED
David P ShinkoAustraliaElwin Sharvill UNQUALIFIED
Morrow E SchemmerBrazilOnyama Limba UNQUALIFIED
Jefferson O RutaRussiaAmy Elsner QUALIFIED
Antonio R OldroydItalyAnna Fali QUALIFIED
Tony E SlusarskiUnited KingdomElwin Sharvill UNQUALIFIED
Maria R FigeroaArgentinaAmy Elsner UNQUALIFIED
Aditya U PerinSpainStephen Shaw NEW
Aditya B SlusarskiRussiaOnyama Limba NEGOTIATION
Aruna R VocelkaAustraliaIvan Magalhaes RENEWAL
Sinclair O GauchoIndiaElwin Sharvill PROPOSAL
Jennifer Z WieserArgentinaIoni Bowcher NEW
Ivar I MarrierArgentinaBernardo Dominic QUALIFIED
Jefferson P FollerArgentinaAmy Elsner PROPOSAL
Morrow R VocelkaCanadaStephen Shaw NEGOTIATION
Jefferson Q KuskoAustraliaIoni Bowcher QUALIFIED
Maisha G PerinBrazilBernardo Dominic PROPOSAL
Jones F PaprockiArgentinaBernardo Dominic RENEWAL
Aditya Z InouyeArgentinaXuxue Feng RENEWAL
Mayumi W GarufiFranceAmy Elsner NEW
Izzy D VocelkaUnited KingdomElwin Sharvill PROPOSAL
Tony Q CaudyGermanyIvan Magalhaes PROPOSAL
Adams O SlusarskiAustraliaXuxue Feng QUALIFIED
Silvio F KolmetzIndiaOnyama Limba PROPOSAL
Salvatore M NickaJapanIvan Magalhaes PROPOSAL
Aditya J RulapaughRussiaAnna Fali UNQUALIFIED
Julie S SlusarskiGermanyXuxue Feng NEGOTIATION
David O NickaArgentinaXuxue Feng QUALIFIED
Ashley D MarrierCanadaAnna Fali UNQUALIFIED
Morrow F TollnerFranceAnna Fali UNQUALIFIED
Johnson U TollnerArgentinaBernardo Dominic NEW
Maria E AmigonJapanIvan Magalhaes UNQUALIFIED
Francesco R StockhamGermanyAnna Fali NEW
Frozen Columns
Name
Jones T Saylors
Mayumi I Rim
Wickens C Shinko
Nicolas K Waycott
Adams E Ruta
Jones L Foller
Darci V Venere
Isabel T Doe
David Q Bowley
Leon D Stockham
Ashley Q Malet
Izzy J Garufi
Juan L Marrier
Claire N Bolognia
James Z Ostrosky
Leon W Royster
Wickens H Rulapaugh
Juan W Garufi
Jeanfrancois A Waycott
Francesco R Figeroa
Darci O Stockham
Darci V Gaucho
Tony V Saylors
Antonio V Perin
Kaitlin S Gaucho
Kaitlin E Bolognia
Misaki K Kusko
Jeanfrancois X Ostrosky
Jennifer Y Whobrey
Mayumi D Slusarski
Costa T Bolognia
Jones W Nestle
Faith K Briddick
Aruna D Albares
Wickens P Schemmer
Kadeem W Bolognia
Aruna O Gaucho
Aika E Marrier
Aditya B Rulapaugh
Cody R Saylors
Johnson F Butt
Kaitlin T Inouye
Jennifer Z Ruta
Clifford B Marrier
Jennifer S Nicka
Smith X Vocelka
Ricardo F Malet
Juan M Flosi
Darci D Ferencz
Juan F Venere
IdCountryDate
1000France2026-09-17
1001Germany2026-09-17
1002Germany2026-09-07
1003Italy2026-09-09
1004Spain2026-09-06
1005Spain2026-08-23
1006Italy2026-09-11
1007United Kingdom2026-08-19
1008Canada2026-09-14
1009Australia2026-09-02
1010Brazil2026-08-27
1011Canada2026-08-28
1012Australia2026-08-19
1013Japan2026-08-26
1014France2026-08-24
1015Canada2026-08-28
1016Canada2026-08-28
1017India2026-09-15
1018Brazil2026-09-04
1019Germany2026-08-31
1020Brazil2026-09-05
1021India2026-09-11
1022Australia2026-08-20
1023Australia2026-09-14
1024United Kingdom2026-08-22
1025Germany2026-08-23
1026Australia2026-09-16
1027Spain2026-08-26
1028Canada2026-09-12
1029Italy2026-08-19
1030India2026-08-26
1031Canada2026-08-28
1032Russia2026-08-27
1033India2026-09-13
1034France2026-09-15
1035Italy2026-09-12
1036Brazil2026-09-13
1037Italy2026-08-28
1038Australia2026-09-06
1039Australia2026-08-27
1040Argentina2026-09-12
1041United Kingdom2026-09-02
1042Australia2026-09-09
1043Brazil2026-08-31
1044Italy2026-09-12
1045Argentina2026-09-16
1046Italy2026-08-24
1047Spain2026-08-22
1048Spain2026-08-28
1049Brazil2026-08-22

On-Demand Data

NameIdCountryDate
Juan C Briddick1000Argentina2026-08-24
Antonio Z Wieser1001Italy2026-09-09
Wickens V Sergi1002India2026-09-05
Adams E Perin1003Spain2026-08-20
Leja X Caldarera1004Brazil2026-09-01
Stacey U Caldarera1005Spain2026-08-22
Claire Z Campain1006Germany2026-08-31
Johnson T Slusarski1007France2026-08-30
Adams A Stenseth1008United Kingdom2026-08-30
Ashley X Morasca1009Japan2026-09-01
Morrow Z Malet1010Italy2026-09-03
Octavia P Paprocki1011Russia2026-09-11
Salvatore G Darakjy1012Canada2026-09-13
Smith L Campain1013Brazil2026-09-07
Chavez S Morasca1014Spain2026-09-05
Francesco D Chui1015Japan2026-09-08
Salvatore P Waycott1016Brazil2026-08-29
Greenwood C Bowley1017Russia2026-09-03
Munro A Nicka1018Canada2026-09-03
Leon T Wieser1019India2026-09-08
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan X RimUnited KingdomIoni Bowcher NEW
Silvio F CampainRussiaStephen Shaw PROPOSAL
Kadeem L FollerIndiaIoni Bowcher NEW
Sinclair Z SlusarskiFranceBernardo Dominic QUALIFIED
Aika D FigeroaCanadaStephen Shaw PROPOSAL
Jeanfrancois I SchemmerAustraliaOnyama Limba UNQUALIFIED
Izzy D GarufiGermanyAsiya Javayant PROPOSAL
Mujtaba R GlickCanadaIoni Bowcher PROPOSAL
Claire G GarufiFranceIvan Magalhaes NEGOTIATION
Maria A WieserCanadaOnyama Limba NEW
Ashley G KolmetzArgentinaBernardo Dominic NEW
Jeanfrancois S RoysterJapanStephen Shaw QUALIFIED
Julie M AmigonArgentinaBernardo Dominic PROPOSAL
Jefferson E OldroydAustraliaAnna Fali NEGOTIATION
Maisha K DoeArgentinaAmy Elsner RENEWAL
Sinclair M SlusarskiCanadaStephen Shaw PROPOSAL
Morrow R RoysterAustraliaStephen Shaw PROPOSAL
Ashley U SergiRussiaIoni Bowcher QUALIFIED
Costa N BowleyRussiaAmy Elsner QUALIFIED
Arvin L GlickCanadaOnyama Limba UNQUALIFIED
Rodrigues Z FigeroaArgentinaIoni Bowcher NEW
Alejandro O MarrierSpainIvan Magalhaes NEGOTIATION
Kadeem Q FlosiAustraliaAsiya Javayant NEGOTIATION
Costa T NickaArgentinaAnna Fali NEW
Kadeem N KolmetzArgentinaAnna Fali NEGOTIATION
Ricardo N OstroskyGermanyIvan Magalhaes RENEWAL
Isabel S SergiRussiaOnyama Limba NEGOTIATION
Rodrigues J FigeroaBrazilStephen Shaw PROPOSAL
Antonio T SaylorsSpainXuxue Feng NEGOTIATION
Rodrigues N GillianUnited KingdomBernardo Dominic NEGOTIATION
Ricardo W BriddickIndiaIvan Magalhaes UNQUALIFIED
Mayumi R RulapaughAustraliaAsiya Javayant RENEWAL
Rodrigues X GauchoUnited KingdomIvan Magalhaes RENEWAL
Francesco I ChuiItalyElwin Sharvill NEW
Julie K RoysterAustraliaAmy Elsner NEGOTIATION
David O TollnerJapanXuxue Feng RENEWAL
Johnson D RulapaughArgentinaBernardo Dominic NEGOTIATION
Aruna J KolmetzBrazilIoni Bowcher RENEWAL
Ivar Y CampainAustraliaStephen Shaw QUALIFIED
Wickens G PerinAustraliaAsiya Javayant QUALIFIED

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