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
Tony M AlbaresJapanAmy Elsner NEW
Juan C StensethCanadaBernardo Dominic NEGOTIATION
Jennifer L RimGermanyBernardo Dominic QUALIFIED
Silvio F VenereUnited KingdomStephen Shaw NEW
Izzy J DoeItalyElwin Sharvill NEW
Misaki R WhobreyCanadaAmy Elsner NEW
Costa L GillianFranceElwin Sharvill RENEWAL
Murillo C RutaFranceAsiya Javayant NEGOTIATION
Deepesh U StockhamCanadaAsiya Javayant NEGOTIATION
Misaki N SaylorsFranceAsiya Javayant UNQUALIFIED
Silvio S AlbaresIndiaAnna Fali RENEWAL
Smith E GillianArgentinaIvan Magalhaes PROPOSAL
Claire S BriddickGermanyStephen Shaw UNQUALIFIED
Rodrigues T GillianIndiaIoni Bowcher NEGOTIATION
Ivar U AmigonJapanStephen Shaw RENEWAL
Misaki L IturbideGermanyAnna Fali NEGOTIATION
James W KuskoSpainElwin Sharvill PROPOSAL
Deepesh K IturbideArgentinaIvan Magalhaes NEW
Chavez T IturbideFranceElwin Sharvill UNQUALIFIED
Kadeem I PoquetteBrazilOnyama Limba PROPOSAL
Maisha O OldroydCanadaIvan Magalhaes QUALIFIED
Tony A RimFranceOnyama Limba NEGOTIATION
Nicolas V OstroskyBrazilElwin Sharvill NEGOTIATION
David Z RimRussiaElwin Sharvill UNQUALIFIED
Ricardo C SlusarskiAustraliaOnyama Limba QUALIFIED
Misaki R CaldareraRussiaIoni Bowcher UNQUALIFIED
Aditya R NickaJapanElwin Sharvill RENEWAL
Adams J WaycottSpainAsiya Javayant QUALIFIED
Jones L MarrierJapanAmy Elsner NEW
Aditya P NickaRussiaOnyama Limba PROPOSAL
Johnson T CampainJapanStephen Shaw RENEWAL
Ricardo X GarufiFranceStephen Shaw UNQUALIFIED
David J SlusarskiItalyOnyama Limba UNQUALIFIED
Kaitlin E InouyeRussiaAnna Fali UNQUALIFIED
Arvin W BowleyGermanyAmy Elsner UNQUALIFIED
Antonio R MorascaRussiaAnna Fali UNQUALIFIED
Clifford M TollnerArgentinaIoni Bowcher NEW
Tony X SergiBrazilAsiya Javayant NEW
Stacey C NestleUnited KingdomAmy Elsner PROPOSAL
Nicolas I FigeroaBrazilIoni Bowcher UNQUALIFIED
Costa P BowleySpainAnna Fali RENEWAL
Faith I ButtBrazilBernardo Dominic RENEWAL
Izzy V DarakjyItalyBernardo Dominic RENEWAL
Maria X GarufiIndiaIoni Bowcher NEGOTIATION
Francesco O VenereCanadaIvan Magalhaes NEW
James K DilliardArgentinaElwin Sharvill NEW
Jeanfrancois U PaprockiCanadaAnna Fali UNQUALIFIED
Aruna J IturbideBrazilOnyama Limba PROPOSAL
Aika M DoeSpainOnyama Limba NEGOTIATION
Ashley K GarufiArgentinaIoni Bowcher RENEWAL
Horizontal
NameCountryRepresentativeStatus
Alejandro A RulapaughItalyStephen Shaw QUALIFIED
Rodrigues Y TollnerItalyXuxue Feng NEW
Faith M CaudySpainBernardo Dominic NEW
Aika X GlickJapanStephen Shaw PROPOSAL
Greenwood Q TollnerFranceAsiya Javayant RENEWAL
Jennifer N StensethArgentinaAsiya Javayant RENEWAL
Rodrigues F VenereCanadaOnyama Limba NEGOTIATION
Stacey C FlosiRussiaXuxue Feng RENEWAL
Munro Z DarakjyRussiaAmy Elsner QUALIFIED
Jennifer H FlosiItalyAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Aditya S CaldareraBrazil2026-09-16Benton, John B Jr QUALIFIED75Onyama Limba
1001Murillo I GarufiCanada2026-09-10Chapman, Ross E Esq NEW42Ivan Magalhaes
1002Deepesh B SchemmerItaly2026-10-03Feltz Printing Service UNQUALIFIED80Bernardo Dominic
1003Leja F CampainRussia2026-09-19Buckley Miller Wright PROPOSAL58Elwin Sharvill
1004Alejandro H OstroskyCanada2026-09-26Chemel, James L Cpa UNQUALIFIED90Bernardo Dominic
1005Jeanfrancois B OldroydArgentina2026-09-30Morlong Associates NEGOTIATION32Onyama Limba
1006Costa W IturbideArgentina2026-10-05Commercial Press QUALIFIED72Stephen Shaw
1007Ashley C VenereArgentina2026-10-04Feiner Bros UNQUALIFIED26Asiya Javayant
1008Leon B GauchoArgentina2026-09-27Rangoni Of Florence PROPOSAL68Elwin Sharvill
1009Mujtaba P OstroskyFrance2026-09-21Benton, John B Jr NEW60Amy Elsner
1010Francesco W VocelkaSpain2026-10-03Feiner Bros RENEWAL29Ivan Magalhaes
1011Sinclair Q IturbideBrazil2026-09-25King, Christopher A Esq NEGOTIATION50Xuxue Feng
1012Aditya B OldroydGermany2026-10-08Buckley Miller Wright NEGOTIATION77Ivan Magalhaes
1013Mayumi Q AmigonItaly2026-09-10Feiner Bros RENEWAL74Bernardo Dominic
1014Misaki S ButtFrance2026-09-20Dorl, James J Esq QUALIFIED47Bernardo Dominic
1015Kaitlin O RulapaughUnited Kingdom2026-09-29Morlong Associates UNQUALIFIED49Xuxue Feng
1016Ricardo F IturbideAustralia2026-10-03Benton, John B Jr UNQUALIFIED87Bernardo Dominic
1017Chavez C FollerFrance2026-09-15Buckley Miller Wright UNQUALIFIED0Stephen Shaw
1018Arvin E FigeroaCanada2026-09-25Commercial Press NEGOTIATION50Anna Fali
1019Jennifer D MaletJapan2026-09-11Rousseaux, Michael Esq NEGOTIATION28Amy Elsner
1020Jennifer X MaletCanada2026-10-08Rousseaux, Michael Esq NEGOTIATION69Asiya Javayant
1021Deepesh R SlusarskiSpain2026-09-16Dorl, James J Esq QUALIFIED53Asiya Javayant
1022Izzy J WaycottAustralia2026-09-18King, Christopher A Esq RENEWAL44Elwin Sharvill
1023Nicolas V FigeroaArgentina2026-09-21Feltz Printing Service NEGOTIATION37Onyama Limba
1024Nicolas D FerenczBrazil2026-09-20Morlong Associates NEGOTIATION74Ivan Magalhaes
1025David F GauchoCanada2026-09-26Buckley Miller Wright NEGOTIATION83Anna Fali
1026Faith V BowleyItaly2026-10-09Feltz Printing Service NEW63Asiya Javayant
1027Alejandro W BowleyArgentina2026-10-09Buckley Miller Wright NEW11Elwin Sharvill
1028Rodrigues L SergiFrance2026-09-11Commercial Press RENEWAL3Anna Fali
1029Emily A AmigonArgentina2026-09-19Morlong Associates NEGOTIATION47Ivan Magalhaes
1030James T MaletJapan2026-10-09Morlong Associates NEGOTIATION75Ioni Bowcher
1031Misaki E GauchoRussia2026-10-04Truhlar And Truhlar Attys UNQUALIFIED95Asiya Javayant
1032Greenwood O MacleadBrazil2026-09-16Rousseaux, Michael Esq NEW30Xuxue Feng
1033Silvio R PerinUnited Kingdom2026-10-08Feltz Printing Service NEW20Onyama Limba
1034Ashley N OldroydSpain2026-09-28Chanay, Jeffrey A Esq RENEWAL82Asiya Javayant
1035Antonio B SchemmerArgentina2026-09-15Chapman, Ross E Esq NEGOTIATION71Elwin Sharvill
1036Isabel R FerenczGermany2026-09-22Feiner Bros PROPOSAL18Elwin Sharvill
1037Tony I MorascaUnited Kingdom2026-09-17Morlong Associates PROPOSAL53Ivan Magalhaes
1038Julie Q GlickGermany2026-09-25Rangoni Of Florence QUALIFIED79Elwin Sharvill
1039Isabel O KuskoGermany2026-09-23Truhlar And Truhlar Attys RENEWAL27Amy Elsner
1040Octavia V BriddickArgentina2026-10-02Rousseaux, Michael Esq PROPOSAL95Stephen Shaw
1041David T BriddickIndia2026-09-11Chemel, James L Cpa NEGOTIATION36Bernardo Dominic
1042Murillo A DoeUnited Kingdom2026-09-25Truhlar And Truhlar Attys RENEWAL23Xuxue Feng
1043Mayumi A GlickJapan2026-10-04Benton, John B Jr PROPOSAL48Xuxue Feng
1044Munro O PaprockiJapan2026-09-22Rangoni Of Florence QUALIFIED53Xuxue Feng
1045Salvatore J RimBrazil2026-09-11Rangoni Of Florence UNQUALIFIED47Asiya Javayant
1046Aika K ChuiSpain2026-10-01Benton, John B Jr NEGOTIATION80Elwin Sharvill
1047Mujtaba F RutaCanada2026-09-14Printing Dimensions RENEWAL55Ivan Magalhaes
1048Darci R KolmetzGermany2026-09-11Dorl, James J Esq RENEWAL46Stephen Shaw
1049Wickens X VenereRussia2026-09-15King, Christopher A Esq QUALIFIED55Onyama Limba
Frozen Rows
NameCountryRepresentativeStatus
James Z CampainIndiaXuxue Feng UNQUALIFIED
Salvatore A CaldareraGermanyIvan Magalhaes QUALIFIED
Salvatore P GillianArgentinaBernardo Dominic UNQUALIFIED
Leja P GarufiIndiaStephen Shaw RENEWAL
Salvatore J SlusarskiRussiaBernardo Dominic NEW
Tony Z BologniaAustraliaIoni Bowcher NEGOTIATION
Isabel G WaycottAustraliaAmy Elsner RENEWAL
Silvio W FigeroaArgentinaBernardo Dominic RENEWAL
Sinclair L StockhamIndiaIvan Magalhaes RENEWAL
Adams Q MorascaBrazilAmy Elsner UNQUALIFIED
Antonio W RutaJapanAnna Fali NEW
Claire V WieserGermanyOnyama Limba UNQUALIFIED
Mujtaba C FerenczJapanXuxue Feng RENEWAL
Greenwood L RulapaughAustraliaIvan Magalhaes RENEWAL
Murillo L KolmetzArgentinaIoni Bowcher PROPOSAL
Deepesh M IturbideGermanyElwin Sharvill NEW
Murillo P StensethJapanIoni Bowcher PROPOSAL
Jeanfrancois I FerenczUnited KingdomAnna Fali QUALIFIED
Mujtaba S GauchoItalyIvan Magalhaes NEW
Aruna I GarufiGermanyBernardo Dominic UNQUALIFIED
Faith G StockhamIndiaIoni Bowcher NEGOTIATION
Kaitlin X BowleyAustraliaAsiya Javayant NEW
Kaitlin P SlusarskiArgentinaStephen Shaw UNQUALIFIED
Arvin F WieserUnited KingdomElwin Sharvill NEGOTIATION
Rodrigues Y CaudyGermanyBernardo Dominic RENEWAL
Cody F GauchoJapanOnyama Limba RENEWAL
James H DarakjyRussiaBernardo Dominic RENEWAL
Salvatore N PerinItalyAsiya Javayant NEW
Leja N CaudyUnited KingdomIvan Magalhaes PROPOSAL
James W WieserCanadaAnna Fali NEW
Octavia S CaudyBrazilIoni Bowcher NEGOTIATION
Mujtaba Y GillianArgentinaAmy Elsner PROPOSAL
Jones O StensethItalyAnna Fali RENEWAL
Arvin B VocelkaSpainXuxue Feng NEGOTIATION
Stacey K VenereGermanyIvan Magalhaes RENEWAL
Claire C DoeAustraliaXuxue Feng NEGOTIATION
Francesco F MarrierIndiaIoni Bowcher NEW
Sinclair A WaycottFranceAsiya Javayant RENEWAL
Maisha G ShinkoAustraliaIoni Bowcher PROPOSAL
Adams L RulapaughItalyElwin Sharvill NEW
David J RulapaughUnited KingdomOnyama Limba QUALIFIED
Misaki Z NestleFranceOnyama Limba QUALIFIED
Nicolas K PoquetteUnited KingdomOnyama Limba UNQUALIFIED
Mayumi D RimAustraliaStephen Shaw PROPOSAL
Mayumi Q CampainItalyAsiya Javayant QUALIFIED
Wickens T BowleyJapanElwin Sharvill PROPOSAL
Kadeem B WieserJapanIvan Magalhaes NEGOTIATION
Aika I VocelkaJapanStephen Shaw RENEWAL
Costa D MorascaIndiaAnna Fali UNQUALIFIED
Juan D WieserAustraliaElwin Sharvill NEW
Frozen Columns
Name
Wickens U Poquette
Kaitlin Y Flosi
Aruna T Rim
Adams V Oldroyd
Kaitlin T Chui
Antonio H Inouye
Munro H Stenseth
Leon F Tollner
Wickens A Oldroyd
Misaki L Rim
Ricardo A Saylors
Aika A Bowley
Mujtaba W Inouye
David M Foller
Aika N Rulapaugh
Silvio W Rim
Aika M Morasca
Aruna Z Malet
Misaki Q Kusko
James K Stockham
Arvin G Foller
Ricardo G Sergi
Leja P Stockham
Kaitlin F Glick
Antonio R Dilliard
Rodrigues B Amigon
Julie P Ostrosky
Claire I Campain
Wickens L Bowley
Claire T Ostrosky
Greenwood G Bowley
Maria J Saylors
Mayumi O Kolmetz
Julie H Poquette
Francesco E Stenseth
Leja Z Slusarski
Juan E Inouye
Jennifer S Waycott
Izzy P Malet
Stacey J Rim
Rodrigues M Bolognia
James Q Slusarski
Emily I Iturbide
Chavez J Gillian
Jefferson R Briddick
Johnson F Albares
Kadeem Q Bolognia
Isabel J Vocelka
Smith Y Stenseth
Isabel Q Maclead
IdCountryDate
1000Argentina2026-09-30
1001Brazil2026-10-03
1002France2026-09-11
1003United Kingdom2026-09-27
1004Japan2026-10-09
1005India2026-09-11
1006United Kingdom2026-10-08
1007United Kingdom2026-09-16
1008Spain2026-10-05
1009Spain2026-09-27
1010Argentina2026-10-01
1011Japan2026-09-25
1012India2026-09-17
1013Australia2026-10-06
1014Italy2026-10-03
1015France2026-10-09
1016Italy2026-09-27
1017Japan2026-09-13
1018Germany2026-09-20
1019France2026-09-21
1020Argentina2026-09-20
1021Russia2026-10-01
1022India2026-09-21
1023Italy2026-09-25
1024Spain2026-09-29
1025India2026-09-12
1026Canada2026-10-01
1027Australia2026-09-14
1028Germany2026-09-18
1029Brazil2026-10-01
1030France2026-09-19
1031Russia2026-09-26
1032Spain2026-09-29
1033Canada2026-10-06
1034Italy2026-09-15
1035Italy2026-09-24
1036Australia2026-09-16
1037Spain2026-09-14
1038Germany2026-10-05
1039India2026-10-07
1040France2026-09-10
1041Italy2026-10-06
1042Germany2026-09-12
1043Spain2026-09-14
1044Argentina2026-09-12
1045United Kingdom2026-09-16
1046Australia2026-09-30
1047Japan2026-10-09
1048Japan2026-09-18
1049Australia2026-10-07

On-Demand Data

NameIdCountryDate
Morrow X Schemmer1000India2026-10-01
Maisha G Garufi1001Russia2026-09-13
Sinclair Y Gillian1002Canada2026-09-12
Maisha X Kusko1003Russia2026-09-20
Alejandro U Nestle1004India2026-09-28
Maria V Albares1005Argentina2026-09-28
Alejandro Q Paprocki1006Argentina2026-10-02
Misaki L Shinko1007Italy2026-09-26
Costa Z Perin1008Japan2026-09-14
Darci R Amigon1009Spain2026-09-11
David S Poquette1010Russia2026-09-23
Julie D Poquette1011United Kingdom2026-09-28
Deepesh D Saylors1012Italy2026-09-12
Stacey E Inouye1013Brazil2026-09-21
Izzy B Tollner1014Brazil2026-10-03
Emily F Kolmetz1015Argentina2026-10-03
Alejandro F Marrier1016France2026-09-29
Nicolas M Shinko1017Australia2026-09-21
Misaki V Doe1018India2026-09-19
Ricardo A Nestle1019Spain2026-09-22
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Maria G NestleIndiaStephen Shaw QUALIFIED
Rodrigues W KuskoRussiaAmy Elsner PROPOSAL
Darci S SlusarskiUnited KingdomElwin Sharvill PROPOSAL
Murillo U BologniaFranceStephen Shaw PROPOSAL
Mujtaba K StockhamArgentinaIvan Magalhaes UNQUALIFIED
Julie Z BologniaJapanAnna Fali UNQUALIFIED
Maria Z NickaArgentinaElwin Sharvill UNQUALIFIED
Jefferson G OldroydArgentinaBernardo Dominic PROPOSAL
Tony G RulapaughAustraliaIvan Magalhaes PROPOSAL
Izzy A FigeroaBrazilXuxue Feng NEGOTIATION
Alejandro C BologniaAustraliaIvan Magalhaes QUALIFIED
Darci J VocelkaCanadaIoni Bowcher RENEWAL
Greenwood Q CaldareraIndiaElwin Sharvill NEGOTIATION
Wickens D FerenczBrazilOnyama Limba NEGOTIATION
Leja G InouyeJapanAsiya Javayant RENEWAL
Antonio B RimJapanBernardo Dominic UNQUALIFIED
Leon V AmigonSpainAsiya Javayant QUALIFIED
Rodrigues J SlusarskiJapanIoni Bowcher RENEWAL
Stacey E MaletFranceIoni Bowcher NEGOTIATION
Isabel C RoysterSpainAnna Fali PROPOSAL
Murillo U DoeIndiaBernardo Dominic PROPOSAL
Silvio D WaycottGermanyStephen Shaw QUALIFIED
Jones M MaletUnited KingdomStephen Shaw UNQUALIFIED
Aruna I DilliardUnited KingdomElwin Sharvill NEW
Adams L SchemmerUnited KingdomIvan Magalhaes NEW
Ashley I FerenczRussiaElwin Sharvill UNQUALIFIED
Emily G MarrierFranceStephen Shaw NEGOTIATION
Misaki Z DarakjyIndiaAmy Elsner PROPOSAL
Johnson T CampainItalyAmy Elsner NEW
Aditya B MaletItalyXuxue Feng NEGOTIATION
Ashley R FlosiJapanAnna Fali RENEWAL
Clifford U AlbaresFranceElwin Sharvill UNQUALIFIED
Misaki P ButtRussiaIvan Magalhaes UNQUALIFIED
Munro Q StockhamJapanStephen Shaw NEGOTIATION
Jefferson E WhobreyIndiaAnna Fali NEGOTIATION
Leon C CaldareraFranceXuxue Feng NEGOTIATION
Emily L FerenczIndiaIvan Magalhaes RENEWAL
Chavez Z GillianUnited KingdomIoni Bowcher RENEWAL
Salvatore K VenereItalyIoni Bowcher PROPOSAL
Aditya W ChuiAustraliaStephen Shaw UNQUALIFIED

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