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
Cody S BologniaFranceOnyama Limba UNQUALIFIED
Maria Y OldroydRussiaOnyama Limba NEGOTIATION
James O FerenczAustraliaIvan Magalhaes QUALIFIED
Rodrigues R RulapaughItalyIvan Magalhaes PROPOSAL
Leja G BologniaFranceBernardo Dominic UNQUALIFIED
Isabel Y SchemmerIndiaOnyama Limba NEGOTIATION
Stacey W MacleadArgentinaStephen Shaw NEW
Deepesh D RulapaughBrazilAsiya Javayant UNQUALIFIED
Munro W FerenczFranceXuxue Feng NEGOTIATION
Wickens J MarrierArgentinaIvan Magalhaes NEW
Aditya W KuskoBrazilAmy Elsner PROPOSAL
Kadeem V FerenczFranceIoni Bowcher UNQUALIFIED
Wickens S SergiGermanyIvan Magalhaes NEW
Mujtaba Q RutaUnited KingdomIoni Bowcher UNQUALIFIED
Juan U RutaIndiaXuxue Feng QUALIFIED
Wickens L RutaCanadaOnyama Limba PROPOSAL
Jennifer K ButtSpainElwin Sharvill RENEWAL
Kaitlin L PerinCanadaIoni Bowcher NEGOTIATION
Chavez S MarrierArgentinaIoni Bowcher NEGOTIATION
Munro K AlbaresGermanyIoni Bowcher NEW
Costa J SergiRussiaOnyama Limba NEGOTIATION
Emily O GlickItalyIoni Bowcher NEGOTIATION
Jefferson Z BologniaIndiaElwin Sharvill NEW
Chavez M WieserJapanAmy Elsner QUALIFIED
Johnson G PerinItalyAnna Fali UNQUALIFIED
Isabel W RimBrazilOnyama Limba RENEWAL
Deepesh U CaldareraAustraliaXuxue Feng QUALIFIED
Chavez L RimCanadaAnna Fali QUALIFIED
Darci R CaudyArgentinaIoni Bowcher NEW
Francesco L MaletArgentinaIvan Magalhaes UNQUALIFIED
Deepesh D VocelkaUnited KingdomAnna Fali RENEWAL
Johnson P MorascaFranceXuxue Feng NEGOTIATION
Tony Z VocelkaGermanyBernardo Dominic NEW
Jones B InouyeRussiaOnyama Limba NEW
Faith K AmigonJapanAnna Fali PROPOSAL
Juan H GauchoGermanyElwin Sharvill NEGOTIATION
David G MaletCanadaStephen Shaw UNQUALIFIED
Misaki C MorascaBrazilAsiya Javayant RENEWAL
Johnson T BriddickBrazilIvan Magalhaes NEW
Salvatore W CampainItalyStephen Shaw QUALIFIED
Misaki B AmigonRussiaElwin Sharvill RENEWAL
Aika Q ChuiArgentinaElwin Sharvill NEGOTIATION
Maria L SchemmerFranceAsiya Javayant PROPOSAL
Jeanfrancois P FerenczGermanyXuxue Feng NEGOTIATION
Mayumi L GauchoFranceXuxue Feng PROPOSAL
Rodrigues C GillianUnited KingdomXuxue Feng NEGOTIATION
Clifford I WieserArgentinaOnyama Limba QUALIFIED
Misaki R PoquetteJapanAsiya Javayant QUALIFIED
Leon G DoeGermanyIoni Bowcher UNQUALIFIED
Adams U OstroskySpainBernardo Dominic RENEWAL
Horizontal
NameCountryRepresentativeStatus
Aruna B BriddickFranceIoni Bowcher QUALIFIED
Murillo J IturbideJapanBernardo Dominic PROPOSAL
Jefferson E VocelkaSpainBernardo Dominic UNQUALIFIED
Antonio U SaylorsFranceOnyama Limba UNQUALIFIED
Salvatore Q MacleadRussiaXuxue Feng QUALIFIED
Maria T FerenczUnited KingdomOnyama Limba QUALIFIED
Darci E FerenczArgentinaElwin Sharvill NEGOTIATION
Juan D StensethItalyXuxue Feng PROPOSAL
Johnson K DilliardGermanyElwin Sharvill PROPOSAL
Aruna Q AmigonGermanyAmy Elsner UNQUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh B WieserBrazil2026-09-18Benton, John B Jr UNQUALIFIED57Anna Fali
1001Leon O MarrierGermany2026-09-01Morlong Associates RENEWAL66Xuxue Feng
1002Rodrigues C FollerFrance2026-08-21Benton, John B Jr PROPOSAL34Xuxue Feng
1003Faith W AmigonIndia2026-08-28Printing Dimensions UNQUALIFIED10Xuxue Feng
1004Jefferson D FollerJapan2026-09-15Feiner Bros PROPOSAL41Ioni Bowcher
1005Jennifer L CaldareraFrance2026-09-07Dorl, James J Esq NEGOTIATION39Bernardo Dominic
1006James C GlickSpain2026-09-11Buckley Miller Wright UNQUALIFIED10Elwin Sharvill
1007Alejandro H PoquetteBrazil2026-08-26Feltz Printing Service NEGOTIATION80Elwin Sharvill
1008Aika E RoysterSpain2026-08-28Feiner Bros UNQUALIFIED84Xuxue Feng
1009Cody E RimJapan2026-09-06Rangoni Of Florence RENEWAL17Asiya Javayant
1010Jeanfrancois Z NickaCanada2026-08-26Rousseaux, Michael Esq NEGOTIATION87Asiya Javayant
1011Greenwood R FerenczAustralia2026-08-31Printing Dimensions NEW4Amy Elsner
1012Kadeem A PoquetteArgentina2026-08-30Morlong Associates RENEWAL78Stephen Shaw
1013Johnson U NestleArgentina2026-08-26Dorl, James J Esq PROPOSAL85Anna Fali
1014Mayumi X PaprockiCanada2026-09-14Rousseaux, Michael Esq RENEWAL63Anna Fali
1015Tony N StensethGermany2026-09-09Printing Dimensions NEW31Anna Fali
1016Smith P GlickAustralia2026-09-06Feiner Bros QUALIFIED61Ivan Magalhaes
1017Adams K OldroydJapan2026-09-14Morlong Associates NEGOTIATION5Bernardo Dominic
1018Murillo H IturbideUnited Kingdom2026-09-09Chapman, Ross E Esq NEGOTIATION99Stephen Shaw
1019Chavez V ButtArgentina2026-08-20Morlong Associates RENEWAL55Ivan Magalhaes
1020Jeanfrancois C ButtItaly2026-09-14Printing Dimensions RENEWAL27Ivan Magalhaes
1021Adams K GarufiUnited Kingdom2026-09-04Truhlar And Truhlar Attys UNQUALIFIED63Onyama Limba
1022Antonio H BriddickUnited Kingdom2026-09-01Dorl, James J Esq QUALIFIED47Stephen Shaw
1023Aika L DoeCanada2026-08-31Truhlar And Truhlar Attys PROPOSAL46Anna Fali
1024Adams H WaycottCanada2026-09-04Morlong Associates PROPOSAL49Bernardo Dominic
1025Leja S DarakjyRussia2026-08-29Feltz Printing Service NEGOTIATION4Amy Elsner
1026Morrow O GlickArgentina2026-08-22Printing Dimensions NEGOTIATION33Stephen Shaw
1027Emily M PerinSpain2026-09-03Feltz Printing Service NEGOTIATION78Xuxue Feng
1028Aruna S FlosiGermany2026-09-16Dorl, James J Esq NEW85Stephen Shaw
1029Jeanfrancois U SergiFrance2026-09-15Rousseaux, Michael Esq NEGOTIATION33Asiya Javayant
1030Mujtaba L MacleadRussia2026-08-31Printing Dimensions QUALIFIED58Amy Elsner
1031Greenwood X VenereCanada2026-09-16Chanay, Jeffrey A Esq QUALIFIED9Onyama Limba
1032Alejandro K ChuiJapan2026-08-31Dorl, James J Esq NEGOTIATION55Stephen Shaw
1033Jennifer A SlusarskiJapan2026-08-23Commercial Press RENEWAL18Anna Fali
1034Jeanfrancois W OldroydFrance2026-09-15Buckley Miller Wright QUALIFIED60Stephen Shaw
1035Greenwood J WhobreyArgentina2026-09-04Rangoni Of Florence NEW73Ivan Magalhaes
1036Juan K MarrierBrazil2026-08-24Benton, John B Jr QUALIFIED20Amy Elsner
1037Aditya Q BriddickSpain2026-09-08Dorl, James J Esq PROPOSAL12Ivan Magalhaes
1038Jones X CampainRussia2026-09-15Morlong Associates UNQUALIFIED10Stephen Shaw
1039David U FlosiBrazil2026-09-15Rangoni Of Florence RENEWAL54Xuxue Feng
1040Smith Y WhobreyBrazil2026-09-17Feiner Bros RENEWAL83Onyama Limba
1041Johnson T PaprockiFrance2026-09-05King, Christopher A Esq NEGOTIATION27Amy Elsner
1042Ricardo V VenereSpain2026-08-27Feiner Bros NEW87Amy Elsner
1043Jones E WieserGermany2026-09-04Morlong Associates RENEWAL78Xuxue Feng
1044Mujtaba F RimAustralia2026-09-06Printing Dimensions UNQUALIFIED99Asiya Javayant
1045Isabel C VocelkaAustralia2026-08-23Chapman, Ross E Esq RENEWAL94Stephen Shaw
1046Jeanfrancois M StensethUnited Kingdom2026-08-28Rousseaux, Michael Esq PROPOSAL26Onyama Limba
1047David A GarufiArgentina2026-09-07Feltz Printing Service NEW6Stephen Shaw
1048Aika G MaletIndia2026-08-29Morlong Associates NEGOTIATION51Asiya Javayant
1049David P GlickJapan2026-08-20Chanay, Jeffrey A Esq QUALIFIED36Ioni Bowcher
Frozen Rows
NameCountryRepresentativeStatus
Jefferson Q ButtItalyIoni Bowcher NEGOTIATION
Aika U WaycottArgentinaElwin Sharvill NEW
Izzy D DoeSpainOnyama Limba NEW
Kadeem P FlosiItalyBernardo Dominic PROPOSAL
David L StockhamBrazilOnyama Limba UNQUALIFIED
Salvatore M BriddickItalyAmy Elsner NEGOTIATION
Smith E MaletIndiaXuxue Feng NEW
Emily S KolmetzJapanAsiya Javayant PROPOSAL
Isabel D SergiRussiaXuxue Feng QUALIFIED
Francesco C ShinkoSpainAnna Fali QUALIFIED
Salvatore B RulapaughFranceStephen Shaw QUALIFIED
Emily D IturbideCanadaAnna Fali NEW
Clifford E GillianFranceAnna Fali PROPOSAL
Costa F NickaAustraliaAsiya Javayant QUALIFIED
Aruna X ChuiBrazilIvan Magalhaes NEW
Jeanfrancois W CampainItalyAmy Elsner QUALIFIED
Deepesh T SchemmerJapanIvan Magalhaes UNQUALIFIED
Jennifer D RutaGermanyXuxue Feng NEGOTIATION
Aruna T TollnerRussiaElwin Sharvill UNQUALIFIED
Leon K ChuiJapanStephen Shaw QUALIFIED
Sinclair J GillianFranceOnyama Limba UNQUALIFIED
Aika Z NestleArgentinaBernardo Dominic QUALIFIED
Jeanfrancois M RutaItalyAsiya Javayant RENEWAL
Misaki L ButtCanadaAsiya Javayant NEGOTIATION
Rodrigues E SlusarskiIndiaAnna Fali NEW
Jones Y RimIndiaIvan Magalhaes RENEWAL
Ashley D PaprockiSpainIoni Bowcher PROPOSAL
Munro B FlosiIndiaBernardo Dominic QUALIFIED
Faith P WaycottFranceBernardo Dominic PROPOSAL
Cody A NestleItalyIvan Magalhaes QUALIFIED
Sinclair L PerinArgentinaStephen Shaw NEGOTIATION
Faith I KuskoGermanyOnyama Limba NEW
Mujtaba R PaprockiItalyStephen Shaw NEGOTIATION
Silvio C MaletBrazilAsiya Javayant PROPOSAL
Aruna F MacleadAustraliaAnna Fali RENEWAL
Cody W RoysterGermanyAsiya Javayant QUALIFIED
Ivar E RoysterUnited KingdomIoni Bowcher PROPOSAL
Misaki B DarakjyItalyBernardo Dominic NEGOTIATION
Jennifer F MaletJapanIoni Bowcher QUALIFIED
Morrow W WhobreyGermanyOnyama Limba PROPOSAL
David K CampainCanadaElwin Sharvill NEW
Leja P BriddickArgentinaAnna Fali PROPOSAL
Stacey W RoysterGermanyAsiya Javayant NEW
Julie F GauchoBrazilElwin Sharvill QUALIFIED
Ricardo D RoysterSpainAmy Elsner NEGOTIATION
Julie U CampainJapanIvan Magalhaes UNQUALIFIED
Costa T CaudyFranceAnna Fali PROPOSAL
Silvio M SaylorsSpainBernardo Dominic QUALIFIED
Sinclair J WhobreyAustraliaXuxue Feng NEW
Murillo O PaprockiSpainBernardo Dominic PROPOSAL
Frozen Columns
Name
Maisha P Glick
Costa U Poquette
Leon I Malet
Emily Q Whobrey
Mujtaba Z Wieser
Costa D Oldroyd
Leja S Perin
Jeanfrancois A Inouye
Jeanfrancois X Waycott
Emily O Garufi
Silvio M Malet
Kaitlin T Vocelka
Jones A Kolmetz
Tony B Gaucho
Silvio I Wieser
Julie H Amigon
Ricardo W Saylors
Stacey V Ferencz
David U Amigon
Juan F Wieser
Claire S Nestle
Isabel Z Caldarera
Murillo F Perin
Claire F Paprocki
Jennifer T Nicka
James U Ostrosky
Jeanfrancois A Gaucho
Jones Z Chui
Leja S Malet
Johnson F Slusarski
Clifford J Caudy
Sinclair U Morasca
Aruna C Dilliard
Ivar A Malet
Stacey X Amigon
Munro I Maclead
Costa R Amigon
Clifford Q Gaucho
Arvin O Briddick
Ivar B Stenseth
Arvin L Kusko
Antonio Q Stockham
Tony L Kolmetz
Arvin Z Stenseth
Faith E Nestle
Isabel U Briddick
Kaitlin K Campain
Ricardo W Kolmetz
Arvin P Schemmer
Johnson F Caudy
IdCountryDate
1000France2026-09-04
1001United Kingdom2026-08-24
1002Japan2026-08-20
1003Canada2026-09-16
1004France2026-09-01
1005Brazil2026-09-07
1006Brazil2026-09-16
1007Germany2026-08-31
1008Canada2026-08-25
1009Canada2026-09-12
1010France2026-09-18
1011Brazil2026-09-08
1012Australia2026-09-16
1013Argentina2026-09-11
1014India2026-09-07
1015Argentina2026-08-25
1016France2026-09-16
1017Japan2026-08-27
1018Argentina2026-09-01
1019United Kingdom2026-09-17
1020Japan2026-08-26
1021United Kingdom2026-08-26
1022Argentina2026-09-03
1023Brazil2026-09-15
1024Canada2026-09-14
1025United Kingdom2026-09-11
1026Japan2026-09-14
1027France2026-09-03
1028Canada2026-09-02
1029Japan2026-08-20
1030Germany2026-08-21
1031Argentina2026-08-23
1032Spain2026-09-16
1033Australia2026-09-17
1034United Kingdom2026-09-11
1035United Kingdom2026-08-21
1036Australia2026-09-05
1037France2026-09-08
1038Australia2026-08-21
1039India2026-08-21
1040Canada2026-09-07
1041Japan2026-09-01
1042Australia2026-08-31
1043Canada2026-09-04
1044Italy2026-09-10
1045Brazil2026-09-06
1046Italy2026-09-11
1047Japan2026-08-29
1048United Kingdom2026-09-03
1049France2026-08-29

On-Demand Data

NameIdCountryDate
Maria L Garufi1000Australia2026-08-22
Faith F Dilliard1001Canada2026-08-22
Adams S Maclead1002France2026-08-20
Isabel R Royster1003United Kingdom2026-08-23
Isabel R Stenseth1004Brazil2026-08-29
Munro J Butt1005Germany2026-09-18
Izzy V Inouye1006Canada2026-09-03
Wickens O Figeroa1007Argentina2026-08-26
Sinclair F Venere1008Argentina2026-08-20
Murillo L Slusarski1009United Kingdom2026-09-14
Misaki L Tollner1010United Kingdom2026-09-03
Isabel P Saylors1011Argentina2026-09-12
Sinclair G Dilliard1012Brazil2026-08-27
Leja G Tollner1013Australia2026-09-12
Clifford H Shinko1014Russia2026-09-14
Mujtaba O Albares1015Canada2026-09-11
Ashley A Garufi1016Argentina2026-09-08
Isabel O Chui1017Australia2026-09-04
Leon Z Flosi1018Canada2026-08-20
Johnson X Foller1019India2026-09-04
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Salvatore S FollerAustraliaBernardo Dominic NEGOTIATION
Munro A RutaBrazilOnyama Limba QUALIFIED
Izzy E WhobreyAustraliaAsiya Javayant QUALIFIED
Jones A WaycottGermanyStephen Shaw PROPOSAL
David I BowleyAustraliaXuxue Feng QUALIFIED
Smith F BriddickArgentinaBernardo Dominic NEGOTIATION
Nicolas S BowleyCanadaAsiya Javayant UNQUALIFIED
Maisha H StockhamFranceStephen Shaw NEGOTIATION
Julie V PerinBrazilAsiya Javayant PROPOSAL
Octavia Y PerinIndiaXuxue Feng NEW
Ivar B MorascaCanadaIoni Bowcher NEGOTIATION
Chavez E KuskoIndiaAnna Fali QUALIFIED
Adams A BologniaAustraliaElwin Sharvill NEGOTIATION
Stacey H DarakjyBrazilOnyama Limba UNQUALIFIED
Jeanfrancois N BriddickAustraliaElwin Sharvill UNQUALIFIED
Mayumi X CampainGermanyElwin Sharvill NEGOTIATION
Alejandro U MarrierIndiaStephen Shaw QUALIFIED
Claire E ButtArgentinaAmy Elsner UNQUALIFIED
Jefferson X MacleadCanadaXuxue Feng QUALIFIED
Smith I CaudyFranceIoni Bowcher QUALIFIED
Kaitlin V SchemmerAustraliaStephen Shaw UNQUALIFIED
Cody G MarrierAustraliaIvan Magalhaes NEGOTIATION
Deepesh N TollnerUnited KingdomAsiya Javayant QUALIFIED
Silvio R MorascaBrazilIoni Bowcher PROPOSAL
Aruna B SergiRussiaXuxue Feng PROPOSAL
Kadeem L GlickFranceBernardo Dominic PROPOSAL
Costa Y GarufiSpainIvan Magalhaes UNQUALIFIED
Jeanfrancois G GarufiBrazilOnyama Limba NEW
Cody I PaprockiRussiaOnyama Limba PROPOSAL
Chavez E FlosiItalyElwin Sharvill UNQUALIFIED
Kaitlin T DarakjyBrazilElwin Sharvill UNQUALIFIED
Juan I WhobreySpainXuxue Feng NEW
Adams J MorascaCanadaBernardo Dominic QUALIFIED
Nicolas O BowleyIndiaAsiya Javayant NEW
Chavez G NestleAustraliaAmy Elsner NEW
Ricardo S WaycottRussiaIvan Magalhaes UNQUALIFIED
Faith P CaldareraFranceIvan Magalhaes NEGOTIATION
James X InouyeItalyAsiya Javayant PROPOSAL
Izzy A MaletFranceXuxue Feng PROPOSAL
Mayumi S MaletRussiaIvan Magalhaes 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>