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
Greenwood I StensethGermanyOnyama Limba PROPOSAL
Mayumi B FollerSpainIoni Bowcher PROPOSAL
Mujtaba H FigeroaUnited KingdomAmy Elsner QUALIFIED
Murillo Z StensethGermanyAnna Fali RENEWAL
Aika M KolmetzJapanBernardo Dominic NEW
Adams C ChuiIndiaAnna Fali QUALIFIED
Izzy K OstroskyJapanIoni Bowcher NEGOTIATION
Nicolas Z PaprockiBrazilAsiya Javayant QUALIFIED
Darci T GarufiArgentinaOnyama Limba QUALIFIED
Clifford Y MacleadFranceAsiya Javayant RENEWAL
Emily V WaycottJapanAnna Fali NEGOTIATION
Jennifer C FerenczFranceBernardo Dominic UNQUALIFIED
Chavez X ButtCanadaAmy Elsner NEGOTIATION
Salvatore K FerenczBrazilBernardo Dominic NEW
Costa T MacleadBrazilIoni Bowcher NEW
Ricardo O KolmetzBrazilOnyama Limba UNQUALIFIED
Johnson W MarrierRussiaOnyama Limba NEW
Kadeem H OstroskySpainIvan Magalhaes NEGOTIATION
James I ButtBrazilAnna Fali NEGOTIATION
Antonio Y IturbideArgentinaAsiya Javayant PROPOSAL
Cody F IturbideIndiaAmy Elsner NEGOTIATION
Arvin R RimFranceElwin Sharvill RENEWAL
Arvin L CaldareraSpainIoni Bowcher RENEWAL
Jeanfrancois H StensethJapanElwin Sharvill UNQUALIFIED
Faith B KuskoJapanOnyama Limba UNQUALIFIED
Darci U KuskoIndiaXuxue Feng NEGOTIATION
Mayumi K MorascaJapanIoni Bowcher NEW
Jefferson F StockhamSpainAsiya Javayant PROPOSAL
Ivar U DarakjyFranceIoni Bowcher UNQUALIFIED
Morrow N VenereItalyIoni Bowcher NEGOTIATION
Tony J FerenczFranceBernardo Dominic NEGOTIATION
Mayumi K GarufiGermanyXuxue Feng UNQUALIFIED
Deepesh E CaldareraCanadaAsiya Javayant UNQUALIFIED
Deepesh A ButtBrazilAmy Elsner RENEWAL
Alejandro N GlickArgentinaStephen Shaw QUALIFIED
Clifford P PoquetteGermanyBernardo Dominic NEGOTIATION
Mujtaba Y CampainFranceAmy Elsner NEGOTIATION
Juan I MorascaItalyIvan Magalhaes UNQUALIFIED
Faith A RimArgentinaOnyama Limba QUALIFIED
Silvio B MaletFranceXuxue Feng UNQUALIFIED
Jeanfrancois C FigeroaItalyBernardo Dominic NEW
Faith R CaudyFranceAmy Elsner UNQUALIFIED
Ricardo Q SlusarskiJapanAsiya Javayant NEW
Rodrigues Q BowleyArgentinaOnyama Limba PROPOSAL
James G IturbideItalyStephen Shaw UNQUALIFIED
Isabel G OldroydItalyStephen Shaw UNQUALIFIED
Nicolas S PerinBrazilIoni Bowcher NEW
Mayumi L CampainFranceAnna Fali NEW
Nicolas V FerenczSpainAnna Fali NEGOTIATION
Jeanfrancois T DarakjyItalyAsiya Javayant RENEWAL
Horizontal
NameCountryRepresentativeStatus
Claire P RulapaughRussiaIoni Bowcher QUALIFIED
Adams A ButtArgentinaXuxue Feng RENEWAL
Darci N KolmetzRussiaIvan Magalhaes PROPOSAL
Johnson L ShinkoRussiaOnyama Limba PROPOSAL
Leon K StockhamJapanStephen Shaw NEW
Rodrigues M BowleyBrazilIoni Bowcher PROPOSAL
Clifford Q MorascaFranceElwin Sharvill PROPOSAL
Kaitlin K PaprockiUnited KingdomAnna Fali RENEWAL
Darci G RoysterItalyXuxue Feng RENEWAL
Emily W SergiGermanyAnna Fali RENEWAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ashley O SaylorsUnited Kingdom2026-10-06Rousseaux, Michael Esq QUALIFIED46Asiya Javayant
1001Silvio B BriddickAustralia2026-09-21Truhlar And Truhlar Attys QUALIFIED96Xuxue Feng
1002Mujtaba E OldroydIndia2026-09-27Truhlar And Truhlar Attys NEW30Ivan Magalhaes
1003Morrow Y MacleadItaly2026-09-17Chanay, Jeffrey A Esq PROPOSAL13Anna Fali
1004Octavia F KuskoRussia2026-09-28Chemel, James L Cpa UNQUALIFIED19Bernardo Dominic
1005Tony Y FlosiIndia2026-09-20Printing Dimensions NEGOTIATION13Elwin Sharvill
1006Alejandro E PaprockiIndia2026-10-12King, Christopher A Esq NEGOTIATION80Bernardo Dominic
1007Nicolas H AmigonSpain2026-10-01Truhlar And Truhlar Attys UNQUALIFIED92Bernardo Dominic
1008Kadeem M InouyeSpain2026-09-22Buckley Miller Wright UNQUALIFIED17Stephen Shaw
1009James F TollnerSpain2026-10-09Morlong Associates QUALIFIED27Asiya Javayant
1010David I AmigonUnited Kingdom2026-09-16Printing Dimensions PROPOSAL4Asiya Javayant
1011Costa J ButtBrazil2026-09-24Chemel, James L Cpa NEW66Asiya Javayant
1012Julie H MarrierJapan2026-09-21Benton, John B Jr QUALIFIED37Anna Fali
1013Mayumi I PerinGermany2026-09-17Chanay, Jeffrey A Esq UNQUALIFIED57Asiya Javayant
1014Wickens B VenereSpain2026-09-24Chemel, James L Cpa RENEWAL81Anna Fali
1015Jennifer O MarrierArgentina2026-09-21Rousseaux, Michael Esq NEGOTIATION73Ivan Magalhaes
1016Kadeem D ChuiIndia2026-09-18Commercial Press PROPOSAL5Ivan Magalhaes
1017Jones M DoeGermany2026-10-12Rousseaux, Michael Esq RENEWAL8Onyama Limba
1018Claire G PoquetteRussia2026-09-14Commercial Press PROPOSAL1Ioni Bowcher
1019Tony U WaycottAustralia2026-09-15Truhlar And Truhlar Attys UNQUALIFIED84Amy Elsner
1020Jones E PerinAustralia2026-10-01King, Christopher A Esq RENEWAL94Amy Elsner
1021Maisha Z IturbideJapan2026-10-04Rangoni Of Florence PROPOSAL77Amy Elsner
1022Deepesh O InouyeJapan2026-09-25King, Christopher A Esq NEW4Ivan Magalhaes
1023Deepesh P RulapaughRussia2026-10-05Chemel, James L Cpa UNQUALIFIED7Anna Fali
1024Antonio Q GlickUnited Kingdom2026-10-10Chapman, Ross E Esq QUALIFIED53Stephen Shaw
1025Misaki V CampainBrazil2026-09-21Benton, John B Jr QUALIFIED53Ioni Bowcher
1026Jeanfrancois Q ShinkoArgentina2026-10-08Chapman, Ross E Esq NEGOTIATION23Xuxue Feng
1027Salvatore H MarrierGermany2026-09-23King, Christopher A Esq NEGOTIATION72Bernardo Dominic
1028Munro S FerenczArgentina2026-09-23Chanay, Jeffrey A Esq QUALIFIED63Elwin Sharvill
1029Emily L NickaJapan2026-10-10Printing Dimensions RENEWAL51Onyama Limba
1030Izzy N BowleyBrazil2026-09-17Printing Dimensions QUALIFIED62Bernardo Dominic
1031Jefferson Y MorascaAustralia2026-09-20Feiner Bros PROPOSAL77Anna Fali
1032Deepesh C NickaArgentina2026-09-26Rangoni Of Florence RENEWAL32Amy Elsner
1033Kaitlin K VenereItaly2026-09-19Chemel, James L Cpa NEW87Ivan Magalhaes
1034Murillo X MarrierCanada2026-10-08Chemel, James L Cpa PROPOSAL78Amy Elsner
1035Aruna V KuskoItaly2026-10-06Rousseaux, Michael Esq NEW54Bernardo Dominic
1036Cody E DarakjyJapan2026-10-09Rousseaux, Michael Esq QUALIFIED20Amy Elsner
1037Clifford E CaldareraUnited Kingdom2026-09-18Printing Dimensions NEGOTIATION71Asiya Javayant
1038Kaitlin A VenereBrazil2026-10-01Buckley Miller Wright QUALIFIED56Ivan Magalhaes
1039Ricardo A ChuiFrance2026-10-11Commercial Press RENEWAL68Onyama Limba
1040Sinclair G RulapaughUnited Kingdom2026-10-04Printing Dimensions NEGOTIATION75Onyama Limba
1041Arvin A MarrierAustralia2026-10-06Chapman, Ross E Esq QUALIFIED97Ivan Magalhaes
1042Mayumi L BowleyAustralia2026-10-05Feltz Printing Service RENEWAL49Onyama Limba
1043Isabel Q StockhamCanada2026-09-28Printing Dimensions NEGOTIATION18Bernardo Dominic
1044Wickens C MaletItaly2026-10-03Buckley Miller Wright QUALIFIED81Elwin Sharvill
1045Aditya Z NestleBrazil2026-10-02Benton, John B Jr UNQUALIFIED3Onyama Limba
1046Munro Y BriddickArgentina2026-09-25Chanay, Jeffrey A Esq PROPOSAL8Onyama Limba
1047Greenwood U KuskoCanada2026-10-12King, Christopher A Esq QUALIFIED32Onyama Limba
1048Chavez A MorascaJapan2026-09-27Buckley Miller Wright NEW59Anna Fali
1049Adams T VenereBrazil2026-09-16Rousseaux, Michael Esq QUALIFIED70Amy Elsner
Frozen Rows
NameCountryRepresentativeStatus
Izzy L GillianAustraliaAmy Elsner QUALIFIED
Ricardo P DilliardItalyIvan Magalhaes NEGOTIATION
Misaki H AmigonFranceAsiya Javayant PROPOSAL
Emily F WhobreyItalyAmy Elsner NEW
Julie C IturbideFranceAmy Elsner NEW
Silvio N GillianGermanyXuxue Feng NEW
Kadeem A GlickIndiaAsiya Javayant NEGOTIATION
Misaki U CaudySpainOnyama Limba PROPOSAL
Ivar J CaudyItalyIoni Bowcher RENEWAL
Chavez M SchemmerUnited KingdomAnna Fali NEGOTIATION
Rodrigues T ShinkoBrazilIvan Magalhaes RENEWAL
Ashley F SchemmerItalyAmy Elsner PROPOSAL
Juan S MaletArgentinaAnna Fali UNQUALIFIED
Wickens Q VenereAustraliaBernardo Dominic QUALIFIED
Francesco I DarakjyIndiaXuxue Feng QUALIFIED
Darci R CampainFranceStephen Shaw RENEWAL
Aruna D GillianItalyAmy Elsner NEGOTIATION
Isabel T BriddickArgentinaAnna Fali PROPOSAL
Deepesh I VenereJapanStephen Shaw QUALIFIED
Izzy A CaldareraSpainStephen Shaw QUALIFIED
Octavia S ShinkoArgentinaXuxue Feng QUALIFIED
Aika U NickaGermanyAsiya Javayant PROPOSAL
Maisha U ShinkoCanadaOnyama Limba PROPOSAL
Isabel P DilliardGermanyIoni Bowcher PROPOSAL
Francesco W DoeItalyIoni Bowcher NEGOTIATION
Wickens N OstroskyCanadaStephen Shaw NEW
Smith Z GauchoRussiaAmy Elsner PROPOSAL
David N SlusarskiRussiaElwin Sharvill UNQUALIFIED
Ashley H OldroydCanadaIvan Magalhaes UNQUALIFIED
Nicolas X WieserUnited KingdomStephen Shaw NEW
Mujtaba K SlusarskiItalyXuxue Feng RENEWAL
Leon V RulapaughRussiaIvan Magalhaes RENEWAL
Morrow O GlickRussiaXuxue Feng NEGOTIATION
Isabel T OldroydCanadaBernardo Dominic QUALIFIED
Adams B RoysterAustraliaBernardo Dominic UNQUALIFIED
Smith J ButtCanadaAnna Fali RENEWAL
Antonio M KolmetzCanadaAsiya Javayant NEW
Aika E SergiArgentinaOnyama Limba QUALIFIED
Nicolas I BologniaUnited KingdomXuxue Feng PROPOSAL
Sinclair I SaylorsGermanyOnyama Limba QUALIFIED
Johnson C SlusarskiArgentinaStephen Shaw PROPOSAL
Murillo Z WaycottFranceStephen Shaw NEW
Isabel Y DoeItalyIoni Bowcher PROPOSAL
Deepesh X ButtJapanElwin Sharvill UNQUALIFIED
Jefferson U BowleySpainBernardo Dominic NEW
Aika F GauchoRussiaElwin Sharvill NEGOTIATION
Julie J SchemmerSpainAnna Fali PROPOSAL
Clifford P RoysterCanadaOnyama Limba QUALIFIED
Salvatore S AmigonCanadaBernardo Dominic PROPOSAL
Munro Q ButtGermanyStephen Shaw RENEWAL
Frozen Columns
Name
Jennifer S Oldroyd
Sinclair E Stenseth
Emily R Bowley
Antonio K Saylors
Sinclair T Schemmer
Francesco Z Tollner
Johnson A Caudy
Jennifer C Inouye
Chavez L Gillian
Francesco C Whobrey
Clifford V Flosi
Leja V Maclead
Ivar Y Kusko
Chavez O Chui
Mujtaba D Venere
Ricardo Q Darakjy
Francesco W Gillian
Izzy I Kusko
Julie I Ruta
Wickens N Albares
Emily P Stenseth
Leja C Royster
Adams M Malet
Maisha Q Gillian
Wickens Q Maclead
Clifford E Shinko
Greenwood Q Briddick
Chavez L Nestle
Greenwood B Nestle
Ivar B Iturbide
Arvin F Malet
Costa W Poquette
Misaki B Doe
Wickens I Gillian
Greenwood Q Doe
Salvatore E Tollner
Misaki F Stockham
Mayumi R Stenseth
Maisha Q Schemmer
Leon B Glick
Aruna X Dilliard
Darci N Royster
Silvio Z Kusko
Ashley S Garufi
Ricardo F Wieser
Jennifer L Malet
Costa D Bowley
Ivar Z Nestle
Aruna K Malet
James R Nicka
IdCountryDate
1000Russia2026-10-11
1001Japan2026-10-05
1002India2026-09-14
1003Australia2026-09-17
1004France2026-09-25
1005Germany2026-10-05
1006Canada2026-10-08
1007Argentina2026-09-30
1008Spain2026-09-25
1009Australia2026-09-15
1010France2026-09-16
1011France2026-10-05
1012Spain2026-09-23
1013France2026-09-29
1014Brazil2026-09-28
1015Argentina2026-09-27
1016United Kingdom2026-10-05
1017Italy2026-09-27
1018Spain2026-10-11
1019Australia2026-10-04
1020Canada2026-09-20
1021Japan2026-09-18
1022Japan2026-09-27
1023India2026-09-27
1024Germany2026-09-25
1025United Kingdom2026-09-30
1026Canada2026-09-23
1027Canada2026-10-10
1028India2026-10-13
1029India2026-09-20
1030Argentina2026-09-29
1031Japan2026-09-20
1032Germany2026-10-03
1033Brazil2026-10-07
1034Argentina2026-09-18
1035India2026-09-27
1036United Kingdom2026-09-27
1037Spain2026-10-07
1038Australia2026-10-02
1039Argentina2026-10-02
1040India2026-09-22
1041Spain2026-10-11
1042Spain2026-09-30
1043Japan2026-09-26
1044Brazil2026-10-07
1045Germany2026-10-10
1046Brazil2026-09-19
1047Argentina2026-10-11
1048Russia2026-09-14
1049United Kingdom2026-10-05

On-Demand Data

NameIdCountryDate
Smith U Ostrosky1000Australia2026-10-03
Ricardo U Gillian1001Spain2026-09-17
Jeanfrancois T Ruta1002Canada2026-10-01
Francesco K Amigon1003Brazil2026-10-09
Francesco E Figeroa1004United Kingdom2026-09-27
Claire J Malet1005Japan2026-09-25
Johnson A Dilliard1006Japan2026-09-25
Maria P Shinko1007Russia2026-10-13
Chavez J Glick1008Russia2026-10-03
Smith C Ostrosky1009Argentina2026-10-10
Cody S Tollner1010Brazil2026-09-26
Clifford B Malet1011Spain2026-10-06
Faith Q Caldarera1012Brazil2026-09-26
Jones Z Albares1013Japan2026-09-29
Juan N Nestle1014Argentina2026-09-25
Cody G Kolmetz1015Canada2026-09-21
Clifford X Saylors1016Canada2026-09-17
Morrow W Saylors1017Spain2026-09-16
Adams R Malet1018Argentina2026-10-04
Aditya S Albares1019France2026-09-24
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas R ShinkoAustraliaAmy Elsner NEW
Misaki U MorascaGermanyAnna Fali QUALIFIED
Greenwood A VenereSpainIoni Bowcher NEW
Smith T FlosiJapanBernardo Dominic NEGOTIATION
Costa P MaletArgentinaBernardo Dominic QUALIFIED
James K SchemmerUnited KingdomIvan Magalhaes RENEWAL
Tony I NickaJapanXuxue Feng QUALIFIED
Salvatore M ChuiFranceXuxue Feng NEW
Faith L AlbaresJapanAsiya Javayant QUALIFIED
Ivar W MorascaAustraliaBernardo Dominic QUALIFIED
Jeanfrancois T FigeroaRussiaBernardo Dominic QUALIFIED
Ashley J GarufiRussiaAsiya Javayant PROPOSAL
David M CaudyAustraliaAmy Elsner NEW
Salvatore S ChuiAustraliaBernardo Dominic QUALIFIED
Costa K BowleyBrazilIoni Bowcher NEW
Greenwood V BologniaGermanyOnyama Limba QUALIFIED
Leon G DoeBrazilAsiya Javayant UNQUALIFIED
Emily V DoeIndiaIoni Bowcher UNQUALIFIED
Jennifer W VenereBrazilIoni Bowcher NEGOTIATION
Smith G MarrierRussiaAnna Fali PROPOSAL
Maisha K FerenczAustraliaIvan Magalhaes QUALIFIED
Ivar E FlosiAustraliaStephen Shaw NEW
Cody X BriddickRussiaIoni Bowcher PROPOSAL
Ivar N KuskoSpainIvan Magalhaes UNQUALIFIED
Rodrigues B PoquetteItalyXuxue Feng NEW
Alejandro T GarufiJapanAmy Elsner PROPOSAL
Octavia V RutaCanadaAnna Fali UNQUALIFIED
Wickens G FollerBrazilAsiya Javayant QUALIFIED
Costa E BologniaSpainAmy Elsner QUALIFIED
Ivar P BowleyAustraliaElwin Sharvill NEW
Claire Q FlosiSpainAnna Fali QUALIFIED
Wickens C SlusarskiFranceElwin Sharvill UNQUALIFIED
Munro J MaletCanadaStephen Shaw RENEWAL
Mayumi E FigeroaSpainOnyama Limba NEGOTIATION
Isabel N ShinkoGermanyOnyama Limba PROPOSAL
Maria F SaylorsRussiaOnyama Limba NEW
Adams L GarufiAustraliaStephen Shaw RENEWAL
Deepesh C GillianRussiaAnna Fali RENEWAL
Clifford S ChuiCanadaAsiya Javayant QUALIFIED
Faith T DoeIndiaElwin Sharvill NEGOTIATION

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