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 B IturbideRussiaIvan Magalhaes NEGOTIATION
Kaitlin V RimSpainBernardo Dominic UNQUALIFIED
Mujtaba V RimSpainOnyama Limba QUALIFIED
Cody P PaprockiSpainBernardo Dominic RENEWAL
Kadeem A MaletIndiaAnna Fali UNQUALIFIED
Rodrigues K SchemmerCanadaIoni Bowcher UNQUALIFIED
Misaki Z PerinSpainAmy Elsner PROPOSAL
Costa G FigeroaUnited KingdomElwin Sharvill NEW
Murillo J RoysterRussiaXuxue Feng PROPOSAL
Ashley R MarrierSpainAmy Elsner NEW
Darci W MacleadJapanBernardo Dominic QUALIFIED
Leon Q SlusarskiCanadaBernardo Dominic PROPOSAL
Jennifer I ShinkoRussiaIvan Magalhaes PROPOSAL
Arvin T NickaJapanXuxue Feng PROPOSAL
Adams C TollnerGermanyAnna Fali NEGOTIATION
Maisha M CaudyRussiaStephen Shaw RENEWAL
Nicolas D MaletBrazilAmy Elsner RENEWAL
Antonio K InouyeFranceAsiya Javayant QUALIFIED
Octavia V PerinFranceIvan Magalhaes QUALIFIED
Leja Q MarrierArgentinaAnna Fali QUALIFIED
Kadeem H TollnerSpainAsiya Javayant QUALIFIED
Octavia Y RimSpainAnna Fali NEGOTIATION
Johnson T StockhamCanadaAmy Elsner QUALIFIED
Ivar M NestleRussiaAmy Elsner NEGOTIATION
Francesco P InouyeBrazilAsiya Javayant PROPOSAL
Claire I PaprockiUnited KingdomAsiya Javayant QUALIFIED
Silvio M MacleadIndiaElwin Sharvill NEW
Silvio U FigeroaJapanElwin Sharvill NEW
Morrow B SergiAustraliaIvan Magalhaes NEW
Izzy Z MacleadSpainBernardo Dominic RENEWAL
Deepesh G OldroydRussiaElwin Sharvill NEW
Mujtaba D AlbaresJapanBernardo Dominic PROPOSAL
Leja O RutaRussiaAnna Fali PROPOSAL
Silvio K DilliardBrazilStephen Shaw NEW
Kadeem B MacleadUnited KingdomIoni Bowcher NEGOTIATION
Munro W AmigonCanadaXuxue Feng NEGOTIATION
Jeanfrancois T BowleyBrazilElwin Sharvill RENEWAL
Ricardo Z ChuiAustraliaBernardo Dominic NEW
Chavez U DarakjyAustraliaAmy Elsner NEGOTIATION
Faith K CaudyFranceAsiya Javayant RENEWAL
Izzy Q DoeCanadaOnyama Limba RENEWAL
Emily D ButtIndiaAsiya Javayant RENEWAL
Claire S MacleadUnited KingdomOnyama Limba PROPOSAL
Maisha D NestleRussiaElwin Sharvill RENEWAL
Faith I VocelkaCanadaOnyama Limba RENEWAL
Tony L DilliardItalyIoni Bowcher NEW
Smith U SaylorsArgentinaIoni Bowcher PROPOSAL
Leon B KolmetzGermanyAsiya Javayant UNQUALIFIED
Arvin S DarakjySpainAnna Fali QUALIFIED
Octavia V PaprockiGermanyElwin Sharvill RENEWAL
Horizontal
NameCountryRepresentativeStatus
Cody I OstroskyBrazilAmy Elsner PROPOSAL
Tony F SchemmerUnited KingdomAnna Fali NEGOTIATION
Smith I BowleyFranceStephen Shaw PROPOSAL
Nicolas U FigeroaGermanyBernardo Dominic NEW
Aditya H OldroydJapanIoni Bowcher UNQUALIFIED
Mujtaba L RoysterAustraliaOnyama Limba NEW
Misaki P MaletArgentinaAnna Fali QUALIFIED
Jones B SchemmerAustraliaIoni Bowcher QUALIFIED
Clifford T OstroskyGermanyOnyama Limba NEGOTIATION
Emily L WaycottGermanyElwin Sharvill NEW
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Murillo G NestleSpain2026-10-19Morlong Associates NEGOTIATION39Amy Elsner
1001Chavez U MaletAustralia2026-10-21Chemel, James L Cpa RENEWAL35Amy Elsner
1002Isabel X DarakjyGermany2026-10-20Benton, John B Jr PROPOSAL58Bernardo Dominic
1003Aika S DarakjyItaly2026-10-18Morlong Associates QUALIFIED31Elwin Sharvill
1004Murillo U InouyeAustralia2026-10-24Chanay, Jeffrey A Esq QUALIFIED84Asiya Javayant
1005Aruna J DoeSpain2026-10-11Benton, John B Jr NEGOTIATION34Elwin Sharvill
1006Aditya R WaycottSpain2026-10-05Feiner Bros NEGOTIATION49Stephen Shaw
1007Leon E CaudyIndia2026-10-08Benton, John B Jr NEGOTIATION13Elwin Sharvill
1008Aika S SlusarskiItaly2026-10-03Chapman, Ross E Esq NEGOTIATION8Onyama Limba
1009Antonio J VocelkaRussia2026-10-26Rousseaux, Michael Esq PROPOSAL86Asiya Javayant
1010Izzy L PerinAustralia2026-10-14Printing Dimensions PROPOSAL90Anna Fali
1011Claire P CampainBrazil2026-10-05Benton, John B Jr NEGOTIATION16Amy Elsner
1012Aditya O WieserBrazil2026-10-22Chemel, James L Cpa QUALIFIED10Elwin Sharvill
1013Darci W WhobreySpain2026-09-29Chanay, Jeffrey A Esq QUALIFIED49Ioni Bowcher
1014Sinclair J SaylorsRussia2026-10-08Commercial Press PROPOSAL83Amy Elsner
1015Maria N PaprockiItaly2026-10-07Commercial Press PROPOSAL44Ivan Magalhaes
1016Octavia S AlbaresJapan2026-10-16Buckley Miller Wright PROPOSAL65Asiya Javayant
1017Costa Y SchemmerItaly2026-10-07Chapman, Ross E Esq UNQUALIFIED0Elwin Sharvill
1018James G AmigonFrance2026-10-06Printing Dimensions UNQUALIFIED89Onyama Limba
1019Wickens V TollnerSpain2026-10-26Printing Dimensions NEGOTIATION13Ivan Magalhaes
1020Ashley A WhobreyItaly2026-10-27Feltz Printing Service PROPOSAL94Anna Fali
1021Stacey O PoquetteArgentina2026-10-10Truhlar And Truhlar Attys NEW85Onyama Limba
1022Juan O FollerRussia2026-10-19Chemel, James L Cpa NEW95Xuxue Feng
1023Isabel F MaletBrazil2026-10-09Truhlar And Truhlar Attys NEW65Elwin Sharvill
1024Ashley V VenereBrazil2026-10-26Dorl, James J Esq UNQUALIFIED95Elwin Sharvill
1025Francesco H FerenczItaly2026-10-04Dorl, James J Esq UNQUALIFIED98Onyama Limba
1026Emily B DilliardUnited Kingdom2026-10-06Feiner Bros PROPOSAL5Ivan Magalhaes
1027Aditya I GauchoGermany2026-10-26Chemel, James L Cpa NEGOTIATION21Elwin Sharvill
1028James S MacleadRussia2026-10-24Printing Dimensions RENEWAL34Bernardo Dominic
1029Alejandro R ShinkoArgentina2026-10-27Rangoni Of Florence UNQUALIFIED44Asiya Javayant
1030Mayumi J NickaSpain2026-10-20Rousseaux, Michael Esq PROPOSAL2Anna Fali
1031Francesco B BriddickFrance2026-10-17Dorl, James J Esq PROPOSAL75Elwin Sharvill
1032Morrow A CaudyItaly2026-10-08Truhlar And Truhlar Attys QUALIFIED47Stephen Shaw
1033Aruna J RulapaughIndia2026-09-29King, Christopher A Esq NEGOTIATION49Elwin Sharvill
1034Isabel L OstroskyItaly2026-10-16Buckley Miller Wright UNQUALIFIED74Ivan Magalhaes
1035Isabel H VocelkaItaly2026-10-14Benton, John B Jr NEGOTIATION55Onyama Limba
1036Maisha E OldroydItaly2026-10-13Feiner Bros NEW83Asiya Javayant
1037Rodrigues U PerinUnited Kingdom2026-10-01Feiner Bros PROPOSAL5Onyama Limba
1038Rodrigues Y DilliardFrance2026-10-03Chapman, Ross E Esq RENEWAL37Amy Elsner
1039Greenwood Q RutaBrazil2026-10-25Feiner Bros QUALIFIED21Elwin Sharvill
1040Greenwood G DilliardFrance2026-10-21Printing Dimensions RENEWAL64Ivan Magalhaes
1041Leja E SaylorsItaly2026-10-03Benton, John B Jr QUALIFIED89Elwin Sharvill
1042Aditya X MaletSpain2026-10-14Rangoni Of Florence UNQUALIFIED82Stephen Shaw
1043Ricardo G GarufiFrance2026-10-10Chemel, James L Cpa UNQUALIFIED64Stephen Shaw
1044Aika S WaycottItaly2026-10-09Rousseaux, Michael Esq PROPOSAL41Xuxue Feng
1045Francesco A DarakjySpain2026-10-04Buckley Miller Wright NEW33Ivan Magalhaes
1046Sinclair H RulapaughGermany2026-10-08Feltz Printing Service RENEWAL47Xuxue Feng
1047Morrow U BowleyUnited Kingdom2026-10-05Feltz Printing Service NEW88Bernardo Dominic
1048Ashley Q GauchoFrance2026-10-23Benton, John B Jr RENEWAL28Xuxue Feng
1049Jeanfrancois G ShinkoRussia2026-10-14Chanay, Jeffrey A Esq PROPOSAL8Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Rodrigues H BriddickBrazilAsiya Javayant NEGOTIATION
Rodrigues J WieserCanadaElwin Sharvill RENEWAL
Darci C RoysterRussiaOnyama Limba RENEWAL
Tony O MaletIndiaAsiya Javayant QUALIFIED
Johnson U GlickUnited KingdomElwin Sharvill UNQUALIFIED
Adams F IturbideFranceStephen Shaw NEGOTIATION
Claire Q AlbaresUnited KingdomIoni Bowcher RENEWAL
Cody W ButtItalyStephen Shaw UNQUALIFIED
Julie A KuskoCanadaIoni Bowcher UNQUALIFIED
Salvatore Z RoysterItalyAsiya Javayant UNQUALIFIED
Faith K DilliardGermanyElwin Sharvill UNQUALIFIED
Aika R CaudyAustraliaStephen Shaw UNQUALIFIED
Darci Z VocelkaRussiaXuxue Feng QUALIFIED
Darci Z RutaIndiaAnna Fali RENEWAL
Juan T DarakjyJapanAnna Fali UNQUALIFIED
Faith H TollnerAustraliaElwin Sharvill PROPOSAL
Wickens L WaycottFranceXuxue Feng NEW
Izzy I RimSpainStephen Shaw PROPOSAL
Clifford T DoeBrazilIvan Magalhaes QUALIFIED
Jeanfrancois H DarakjyRussiaAsiya Javayant NEW
Aruna L PoquetteAustraliaAnna Fali RENEWAL
Chavez V FlosiCanadaOnyama Limba UNQUALIFIED
Rodrigues U FollerUnited KingdomAsiya Javayant NEGOTIATION
James O FerenczRussiaIvan Magalhaes NEGOTIATION
Aditya R PoquetteFranceStephen Shaw UNQUALIFIED
Darci R GarufiRussiaAmy Elsner UNQUALIFIED
Kaitlin L PoquetteAustraliaXuxue Feng NEGOTIATION
Clifford B RimRussiaAmy Elsner QUALIFIED
Aruna O KolmetzItalyAmy Elsner RENEWAL
David V InouyeCanadaXuxue Feng QUALIFIED
Sinclair V RoysterCanadaIvan Magalhaes RENEWAL
Jeanfrancois B BowleyAustraliaAmy Elsner QUALIFIED
Munro H MacleadItalyStephen Shaw QUALIFIED
Izzy R ButtIndiaBernardo Dominic NEW
Aika C KuskoGermanyAmy Elsner QUALIFIED
Mayumi T ButtGermanyXuxue Feng QUALIFIED
Alejandro M FigeroaArgentinaOnyama Limba NEGOTIATION
Smith Y FollerCanadaIvan Magalhaes NEW
Maisha Z CampainGermanyIvan Magalhaes NEW
David M CampainUnited KingdomElwin Sharvill NEGOTIATION
Juan G OstroskyGermanyStephen Shaw UNQUALIFIED
Faith U SergiUnited KingdomElwin Sharvill NEGOTIATION
Arvin V GlickGermanyAnna Fali UNQUALIFIED
Mayumi X VenereBrazilIvan Magalhaes RENEWAL
Emily E GarufiSpainIvan Magalhaes NEGOTIATION
Morrow E ButtIndiaStephen Shaw NEGOTIATION
Francesco Y TollnerIndiaStephen Shaw QUALIFIED
Faith Y MacleadIndiaAnna Fali QUALIFIED
Stacey F VenereJapanOnyama Limba QUALIFIED
Ricardo R MarrierSpainElwin Sharvill RENEWAL
Frozen Columns
Name
Wickens R Rim
Juan B Caudy
Johnson T Bolognia
Wickens U Ferencz
Cody F Iturbide
Tony C Iturbide
David I Doe
Cody S Foller
Deepesh I Royster
Ashley P Tollner
Maisha S Bowley
Mayumi F Kolmetz
Tony N Maclead
Wickens A Stenseth
Adams Q Tollner
Francesco D Tollner
Leja Q Doe
Johnson F Briddick
Jones X Saylors
Darci M Nestle
Isabel N Briddick
James L Kusko
Wickens Z Whobrey
Jennifer E Glick
Deepesh V Slusarski
Murillo W Garufi
Ricardo R Darakjy
Ricardo Q Flosi
Emily A Kolmetz
Darci F Glick
Johnson R Campain
Jeanfrancois C Rim
Leja J Figeroa
Julie L Darakjy
Kadeem N Slusarski
Ivar E Paprocki
Costa L Poquette
Juan O Wieser
Stacey G Marrier
Silvio Q Briddick
Munro J Amigon
Tony D Ruta
Mayumi A Inouye
Adams U Morasca
Jefferson Z Bowley
Ricardo P Glick
Ricardo B Malet
Jennifer Z Paprocki
Leja I Malet
Jennifer A Morasca
IdCountryDate
1000Germany2026-10-10
1001Spain2026-09-30
1002Spain2026-10-25
1003Spain2026-10-10
1004Canada2026-10-26
1005Japan2026-10-12
1006Brazil2026-10-03
1007Germany2026-10-13
1008United Kingdom2026-10-12
1009Canada2026-10-13
1010Japan2026-10-07
1011Japan2026-10-08
1012Japan2026-10-06
1013Russia2026-10-17
1014Russia2026-10-10
1015India2026-10-05
1016Brazil2026-09-29
1017India2026-10-07
1018Canada2026-10-07
1019Australia2026-10-19
1020Russia2026-10-09
1021Spain2026-10-21
1022Argentina2026-10-13
1023Brazil2026-10-23
1024United Kingdom2026-10-28
1025Germany2026-10-12
1026Brazil2026-10-27
1027Australia2026-10-11
1028Argentina2026-10-28
1029Japan2026-10-18
1030United Kingdom2026-10-23
1031Brazil2026-10-08
1032Japan2026-09-29
1033Russia2026-10-15
1034United Kingdom2026-10-21
1035Argentina2026-10-13
1036Brazil2026-10-18
1037Germany2026-10-13
1038Argentina2026-10-07
1039Australia2026-10-01
1040France2026-10-03
1041Spain2026-10-19
1042Japan2026-10-21
1043Brazil2026-10-20
1044Brazil2026-10-23
1045Russia2026-09-29
1046Italy2026-10-28
1047Canada2026-10-20
1048India2026-10-11
1049Canada2026-10-25

On-Demand Data

NameIdCountryDate
Silvio W Darakjy1000Russia2026-10-24
Deepesh Y Bolognia1001Japan2026-10-06
Deepesh T Briddick1002Argentina2026-10-02
Izzy H Venere1003Argentina2026-10-13
Stacey L Saylors1004United Kingdom2026-10-13
Greenwood W Rulapaugh1005India2026-10-09
Kaitlin Q Inouye1006France2026-10-07
Maisha M Ostrosky1007Australia2026-10-28
Emily F Maclead1008Russia2026-10-04
Aika P Marrier1009Germany2026-10-14
Johnson O Whobrey1010Australia2026-10-19
Arvin B Caldarera1011Germany2026-10-08
Mayumi R Morasca1012Russia2026-10-13
Chavez B Slusarski1013Brazil2026-10-08
Jones J Rulapaugh1014Spain2026-10-27
Morrow Z Chui1015Brazil2026-10-02
Octavia R Caldarera1016Australia2026-10-16
Misaki J Gaucho1017Italy2026-10-02
Izzy Z Shinko1018Italy2026-10-28
David O Bolognia1019United Kingdom2026-10-14
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Juan J MarrierCanadaIoni Bowcher NEW
Rodrigues F OldroydRussiaStephen Shaw NEW
Greenwood O AmigonSpainBernardo Dominic UNQUALIFIED
Ivar T RulapaughSpainAmy Elsner UNQUALIFIED
Julie T RoysterAustraliaIvan Magalhaes PROPOSAL
Leja B BologniaItalyBernardo Dominic RENEWAL
Maisha S RutaBrazilOnyama Limba QUALIFIED
David A KolmetzGermanyOnyama Limba PROPOSAL
Julie R PaprockiRussiaAmy Elsner QUALIFIED
James P BriddickAustraliaAmy Elsner PROPOSAL
Maria Q RoysterGermanyAmy Elsner NEGOTIATION
Mayumi C RimIndiaAmy Elsner NEW
Leon G PaprockiFranceAsiya Javayant PROPOSAL
Misaki Q CaudyGermanyBernardo Dominic RENEWAL
Misaki T FollerRussiaXuxue Feng QUALIFIED
Rodrigues B ShinkoItalyIoni Bowcher NEW
Jennifer L MaletFranceElwin Sharvill PROPOSAL
Ricardo G KuskoUnited KingdomOnyama Limba UNQUALIFIED
David X NickaBrazilBernardo Dominic NEW
Antonio W CaudyArgentinaAnna Fali RENEWAL
Jones M DarakjyItalyAsiya Javayant NEGOTIATION
Jefferson B FerenczSpainStephen Shaw NEGOTIATION
Alejandro X VocelkaFranceXuxue Feng UNQUALIFIED
Darci Q MaletBrazilOnyama Limba RENEWAL
Leja C KolmetzJapanStephen Shaw NEW
Salvatore X SaylorsBrazilElwin Sharvill NEGOTIATION
Aditya Y PerinUnited KingdomStephen Shaw QUALIFIED
Maria H BologniaBrazilXuxue Feng NEGOTIATION
Claire B GillianCanadaBernardo Dominic RENEWAL
Antonio C PaprockiUnited KingdomIoni Bowcher NEGOTIATION
Jefferson K DoeCanadaOnyama Limba NEGOTIATION
James B WieserCanadaStephen Shaw NEGOTIATION
Alejandro G CaudyIndiaXuxue Feng RENEWAL
Tony T SlusarskiCanadaIoni Bowcher RENEWAL
Costa I StockhamGermanyBernardo Dominic UNQUALIFIED
Misaki X FerenczRussiaXuxue Feng UNQUALIFIED
Aruna G VenereRussiaIvan Magalhaes RENEWAL
Faith F InouyeAustraliaIoni Bowcher RENEWAL
Costa Y VocelkaJapanAsiya Javayant QUALIFIED
Costa Z WaycottArgentinaBernardo Dominic 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>