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
Antonio V CaudyRussiaXuxue Feng PROPOSAL
Chavez G InouyeUnited KingdomAmy Elsner QUALIFIED
Aruna G GillianRussiaAsiya Javayant QUALIFIED
Ivar E PerinSpainIvan Magalhaes UNQUALIFIED
Octavia G KuskoJapanAsiya Javayant NEW
Smith C MarrierFranceOnyama Limba RENEWAL
Darci B PaprockiIndiaElwin Sharvill PROPOSAL
Isabel H PaprockiUnited KingdomXuxue Feng UNQUALIFIED
Smith C ButtGermanyAsiya Javayant PROPOSAL
Arvin K DoeUnited KingdomOnyama Limba NEW
Rodrigues W RulapaughUnited KingdomAmy Elsner RENEWAL
Leja E FlosiItalyStephen Shaw NEGOTIATION
Johnson P StensethGermanyIvan Magalhaes NEW
Jefferson U VocelkaUnited KingdomStephen Shaw UNQUALIFIED
Leon Q GillianFranceAnna Fali UNQUALIFIED
Morrow A RoysterUnited KingdomStephen Shaw RENEWAL
Munro I RutaSpainIvan Magalhaes RENEWAL
Julie O AmigonArgentinaElwin Sharvill RENEWAL
Maria B StensethSpainOnyama Limba NEGOTIATION
Faith N MaletUnited KingdomAmy Elsner RENEWAL
Leon R CampainBrazilElwin Sharvill NEGOTIATION
Kadeem F DarakjyUnited KingdomStephen Shaw QUALIFIED
Smith R DoeItalyBernardo Dominic PROPOSAL
Greenwood U FerenczIndiaXuxue Feng NEGOTIATION
Jeanfrancois N OstroskyGermanyXuxue Feng RENEWAL
Munro C ShinkoBrazilStephen Shaw QUALIFIED
Silvio Q CaudyJapanXuxue Feng QUALIFIED
Costa M RutaIndiaAnna Fali RENEWAL
Costa W BriddickBrazilIoni Bowcher UNQUALIFIED
Deepesh M SlusarskiGermanyStephen Shaw NEGOTIATION
Mayumi L WieserItalyElwin Sharvill PROPOSAL
Jones S TollnerIndiaElwin Sharvill NEW
Julie R TollnerAustraliaOnyama Limba PROPOSAL
Murillo F PerinIndiaAmy Elsner NEW
Aika G WhobreyRussiaIoni Bowcher NEW
Munro I MaletUnited KingdomAnna Fali NEW
Jefferson N IturbideBrazilOnyama Limba PROPOSAL
Maisha N VocelkaArgentinaAnna Fali RENEWAL
Munro J BowleyJapanElwin Sharvill QUALIFIED
Ivar P WhobreyArgentinaIvan Magalhaes RENEWAL
Juan R PaprockiSpainAnna Fali NEGOTIATION
Sinclair M StensethItalyAsiya Javayant NEGOTIATION
Kaitlin R RimRussiaIoni Bowcher NEGOTIATION
Deepesh F PoquetteArgentinaAsiya Javayant UNQUALIFIED
Emily P OldroydItalyIoni Bowcher PROPOSAL
Greenwood F AmigonSpainBernardo Dominic UNQUALIFIED
Sinclair B KolmetzRussiaAsiya Javayant PROPOSAL
Aditya E KolmetzRussiaStephen Shaw UNQUALIFIED
Mujtaba G KolmetzRussiaStephen Shaw UNQUALIFIED
Octavia Y RulapaughBrazilAmy Elsner RENEWAL
Horizontal
NameCountryRepresentativeStatus
Kaitlin X MaletArgentinaElwin Sharvill NEW
Sinclair E RulapaughBrazilElwin Sharvill QUALIFIED
Silvio C RimArgentinaAsiya Javayant RENEWAL
Salvatore D FerenczUnited KingdomElwin Sharvill PROPOSAL
Jones J KolmetzUnited KingdomIoni Bowcher UNQUALIFIED
Kadeem L OstroskyCanadaIoni Bowcher NEW
Salvatore A NestleJapanStephen Shaw UNQUALIFIED
Tony B ButtGermanyBernardo Dominic RENEWAL
James B DilliardCanadaAnna Fali UNQUALIFIED
Antonio Y InouyeFranceAnna Fali QUALIFIED
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Ivar J VenereSpain2026-10-05Feltz Printing Service PROPOSAL82Bernardo Dominic
1001Ivar N GlickBrazil2026-10-15Chapman, Ross E Esq UNQUALIFIED1Amy Elsner
1002Wickens L MaletItaly2026-10-01Dorl, James J Esq NEW69Ioni Bowcher
1003Salvatore R SchemmerSpain2026-10-18King, Christopher A Esq PROPOSAL90Elwin Sharvill
1004Silvio L MaletGermany2026-10-12Printing Dimensions RENEWAL18Stephen Shaw
1005Mayumi Q VenereSpain2026-10-21Buckley Miller Wright RENEWAL48Amy Elsner
1006Cody M DilliardArgentina2026-10-04Truhlar And Truhlar Attys UNQUALIFIED41Amy Elsner
1007Clifford K FigeroaFrance2026-10-14Truhlar And Truhlar Attys NEGOTIATION18Stephen Shaw
1008Izzy B GlickSpain2026-10-21Chapman, Ross E Esq NEGOTIATION65Stephen Shaw
1009Darci Z KuskoFrance2026-10-22Chapman, Ross E Esq UNQUALIFIED77Anna Fali
1010Octavia W BologniaArgentina2026-10-25Dorl, James J Esq UNQUALIFIED33Bernardo Dominic
1011Rodrigues U MaletJapan2026-10-26Feltz Printing Service UNQUALIFIED41Elwin Sharvill
1012Cody N MacleadJapan2026-10-28Commercial Press PROPOSAL89Ioni Bowcher
1013Nicolas Y KuskoRussia2026-10-14Printing Dimensions PROPOSAL73Anna Fali
1014Leja P SlusarskiFrance2026-10-09Chemel, James L Cpa RENEWAL47Ioni Bowcher
1015Emily O GauchoAustralia2026-10-14Feltz Printing Service RENEWAL96Amy Elsner
1016Jones V ShinkoJapan2026-10-26Chapman, Ross E Esq NEW38Ivan Magalhaes
1017Wickens K PoquetteRussia2026-10-10Benton, John B Jr RENEWAL36Anna Fali
1018Claire E WaycottBrazil2026-10-10King, Christopher A Esq UNQUALIFIED50Ivan Magalhaes
1019Morrow F FigeroaRussia2026-10-23King, Christopher A Esq NEGOTIATION95Bernardo Dominic
1020Aruna G GauchoAustralia2026-10-07Buckley Miller Wright RENEWAL99Ivan Magalhaes
1021Misaki X PerinArgentina2026-09-29Benton, John B Jr UNQUALIFIED59Bernardo Dominic
1022Claire T MaletAustralia2026-10-21Morlong Associates UNQUALIFIED69Stephen Shaw
1023Maisha Q NestleCanada2026-10-02Commercial Press RENEWAL90Asiya Javayant
1024Salvatore N FollerJapan2026-10-19Rousseaux, Michael Esq NEGOTIATION19Stephen Shaw
1025Mujtaba Z FollerUnited Kingdom2026-10-12Chapman, Ross E Esq PROPOSAL15Ioni Bowcher
1026Clifford R VenereItaly2026-10-25King, Christopher A Esq NEW82Ioni Bowcher
1027Stacey N ChuiCanada2026-10-27Truhlar And Truhlar Attys QUALIFIED12Bernardo Dominic
1028Kadeem L DarakjyJapan2026-10-05Rangoni Of Florence UNQUALIFIED33Ioni Bowcher
1029Tony J NickaItaly2026-10-15Benton, John B Jr NEGOTIATION90Ioni Bowcher
1030Wickens J ChuiJapan2026-10-20Truhlar And Truhlar Attys RENEWAL61Onyama Limba
1031Murillo R MaletUnited Kingdom2026-10-12Morlong Associates UNQUALIFIED93Stephen Shaw
1032Emily W GauchoIndia2026-10-10Feltz Printing Service QUALIFIED23Elwin Sharvill
1033Morrow O RutaCanada2026-10-14Dorl, James J Esq UNQUALIFIED8Stephen Shaw
1034Munro Z KuskoCanada2026-09-30Chapman, Ross E Esq UNQUALIFIED16Ioni Bowcher
1035Faith J VocelkaItaly2026-10-08Morlong Associates NEW46Bernardo Dominic
1036Aruna X ShinkoSpain2026-10-21Benton, John B Jr PROPOSAL19Elwin Sharvill
1037Stacey E BriddickJapan2026-10-13Feiner Bros QUALIFIED94Elwin Sharvill
1038Maria O RimGermany2026-10-17Chanay, Jeffrey A Esq QUALIFIED72Anna Fali
1039Salvatore W MacleadBrazil2026-10-23Feltz Printing Service UNQUALIFIED57Stephen Shaw
1040Aruna V FlosiIndia2026-10-08King, Christopher A Esq NEGOTIATION63Stephen Shaw
1041Costa I MarrierArgentina2026-10-03Chapman, Ross E Esq PROPOSAL8Bernardo Dominic
1042Leja B VocelkaBrazil2026-10-10Rangoni Of Florence RENEWAL70Anna Fali
1043Francesco M BologniaSpain2026-10-18Dorl, James J Esq NEGOTIATION62Asiya Javayant
1044Ashley R KolmetzBrazil2026-10-22Rangoni Of Florence UNQUALIFIED37Bernardo Dominic
1045Wickens B ChuiArgentina2026-10-14Feiner Bros NEGOTIATION91Elwin Sharvill
1046Stacey S FollerBrazil2026-10-24Commercial Press NEW18Ioni Bowcher
1047Isabel J KolmetzBrazil2026-10-16King, Christopher A Esq QUALIFIED36Elwin Sharvill
1048Morrow T ButtUnited Kingdom2026-09-30Truhlar And Truhlar Attys RENEWAL54Onyama Limba
1049Antonio U FerenczBrazil2026-10-22Rousseaux, Michael Esq UNQUALIFIED94Stephen Shaw
Frozen Rows
NameCountryRepresentativeStatus
Darci N PaprockiBrazilElwin Sharvill UNQUALIFIED
Julie B MorascaArgentinaIvan Magalhaes PROPOSAL
Kaitlin L BriddickSpainStephen Shaw NEW
Jones V RutaRussiaIoni Bowcher NEW
David M GarufiRussiaOnyama Limba NEGOTIATION
Cody V NickaSpainXuxue Feng NEGOTIATION
Nicolas G MaletUnited KingdomIoni Bowcher QUALIFIED
Chavez L DilliardIndiaOnyama Limba UNQUALIFIED
Costa Z TollnerGermanyBernardo Dominic QUALIFIED
Octavia B BowleySpainAsiya Javayant NEGOTIATION
Jones L RoysterAustraliaBernardo Dominic QUALIFIED
Aruna N SaylorsUnited KingdomAnna Fali RENEWAL
Isabel C BriddickArgentinaIoni Bowcher RENEWAL
Chavez P PaprockiArgentinaIoni Bowcher PROPOSAL
Wickens L MacleadIndiaXuxue Feng NEGOTIATION
Mayumi L WhobreySpainAsiya Javayant NEGOTIATION
Maria X FerenczGermanyIoni Bowcher QUALIFIED
Leon U CaldareraItalyOnyama Limba RENEWAL
Chavez F GarufiUnited KingdomIvan Magalhaes NEGOTIATION
Jennifer M MorascaArgentinaBernardo Dominic NEW
Sinclair B PaprockiBrazilStephen Shaw NEGOTIATION
Adams K RimIndiaAnna Fali PROPOSAL
Mayumi Z DilliardGermanyIoni Bowcher PROPOSAL
Darci Q SchemmerFranceBernardo Dominic RENEWAL
Isabel C NestleFranceStephen Shaw QUALIFIED
Aditya Z DoeJapanStephen Shaw PROPOSAL
Mujtaba K RulapaughCanadaOnyama Limba PROPOSAL
Morrow K MarrierFranceAsiya Javayant NEW
Clifford D RutaCanadaXuxue Feng RENEWAL
Johnson L FlosiItalyStephen Shaw PROPOSAL
Juan C FollerUnited KingdomAmy Elsner QUALIFIED
Costa W DoeJapanXuxue Feng QUALIFIED
Greenwood P AmigonGermanyIvan Magalhaes QUALIFIED
Rodrigues D ButtUnited KingdomIvan Magalhaes NEGOTIATION
Jeanfrancois G PerinJapanOnyama Limba PROPOSAL
Aditya N RutaArgentinaIvan Magalhaes NEGOTIATION
Aruna M ShinkoRussiaAsiya Javayant NEW
Octavia N RoysterCanadaAsiya Javayant UNQUALIFIED
Salvatore Z DilliardSpainXuxue Feng RENEWAL
Kaitlin U RutaRussiaBernardo Dominic UNQUALIFIED
Deepesh A SlusarskiCanadaAnna Fali RENEWAL
Greenwood T PerinArgentinaIvan Magalhaes QUALIFIED
Morrow T TollnerJapanElwin Sharvill UNQUALIFIED
Clifford U WaycottIndiaStephen Shaw RENEWAL
Silvio Q SchemmerSpainAnna Fali NEGOTIATION
Arvin H CaldareraIndiaAnna Fali UNQUALIFIED
Deepesh E WhobreySpainIoni Bowcher NEGOTIATION
Ivar L AlbaresCanadaOnyama Limba UNQUALIFIED
Cody S ButtArgentinaAsiya Javayant NEW
Chavez D BriddickGermanyAmy Elsner PROPOSAL
Frozen Columns
Name
Morrow T Campain
Ivar R Bowley
James L Rulapaugh
Faith Q Bowley
Kaitlin Z Perin
Octavia S Schemmer
Johnson L Paprocki
Silvio L Maclead
Tony J Caudy
Ashley O Rulapaugh
Arvin V Bowley
Greenwood W Briddick
Maria E Chui
Munro C Amigon
Wickens U Paprocki
Jeanfrancois I Rim
Darci H Chui
David U Dilliard
Adams F Wieser
Antonio C Waycott
Aditya H Campain
Nicolas B Amigon
Johnson G Caldarera
Munro S Dilliard
Kadeem Z Ruta
Darci A Venere
Aruna D Bowley
Salvatore R Foller
Arvin C Malet
Faith J Venere
David T Foller
Misaki Z Amigon
Munro K Royster
Misaki G Marrier
Misaki W Maclead
Johnson B Whobrey
Wickens W Wieser
Deepesh L Rim
Wickens U Malet
Nicolas D Iturbide
Maria Y Garufi
Mujtaba M Saylors
Johnson V Nestle
Munro C Venere
Ivar N Glick
Mayumi H Campain
Salvatore Q Morasca
Misaki B Campain
Johnson N Shinko
Wickens U Maclead
IdCountryDate
1000Japan2026-10-12
1001Germany2026-10-01
1002Italy2026-10-23
1003India2026-10-24
1004Spain2026-10-03
1005Argentina2026-10-13
1006Australia2026-10-15
1007Australia2026-10-11
1008Russia2026-09-29
1009Canada2026-10-21
1010Germany2026-10-27
1011Australia2026-10-24
1012Spain2026-10-11
1013Brazil2026-09-30
1014United Kingdom2026-10-27
1015Canada2026-10-18
1016Germany2026-10-07
1017France2026-10-24
1018India2026-10-07
1019United Kingdom2026-10-14
1020Brazil2026-10-02
1021United Kingdom2026-10-26
1022Japan2026-10-10
1023France2026-10-15
1024India2026-10-26
1025Japan2026-10-18
1026Australia2026-10-21
1027Germany2026-10-17
1028Germany2026-10-28
1029France2026-10-24
1030Italy2026-10-13
1031Brazil2026-10-25
1032Argentina2026-10-24
1033Australia2026-10-14
1034Brazil2026-10-04
1035Japan2026-10-27
1036France2026-10-08
1037France2026-10-20
1038India2026-10-01
1039Canada2026-10-25
1040Australia2026-09-29
1041India2026-10-19
1042Spain2026-10-01
1043Italy2026-10-27
1044France2026-10-03
1045Canada2026-10-27
1046Spain2026-10-27
1047France2026-10-04
1048Australia2026-10-11
1049Germany2026-10-20

On-Demand Data

NameIdCountryDate
Antonio T Amigon1000Spain2026-10-05
Stacey N Albares1001Brazil2026-10-16
Smith I Briddick1002France2026-10-15
Smith N Nestle1003Russia2026-10-24
Adams J Garufi1004Russia2026-10-20
Arvin S Saylors1005Russia2026-10-26
Misaki I Amigon1006Spain2026-10-10
Jeanfrancois J Caudy1007Canada2026-09-29
Arvin K Malet1008Canada2026-10-08
Aruna J Perin1009Brazil2026-10-22
Antonio E Ruta1010France2026-10-21
Aruna J Darakjy1011United Kingdom2026-10-27
Mujtaba W Tollner1012Spain2026-10-04
Aika F Dilliard1013France2026-10-11
Leja I Foller1014Argentina2026-10-05
Antonio A Foller1015Russia2026-10-01
Munro X Darakjy1016France2026-10-18
Mujtaba X Iturbide1017Canada2026-10-17
Jones X Whobrey1018Germany2026-10-20
Mayumi T Glick1019India2026-10-15
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Kaitlin W FerenczArgentinaOnyama Limba RENEWAL
Wickens I SergiGermanyBernardo Dominic NEW
Jefferson P FerenczIndiaElwin Sharvill RENEWAL
Sinclair F RulapaughItalyAsiya Javayant QUALIFIED
Rodrigues S OstroskyFranceBernardo Dominic PROPOSAL
Arvin Y CaudyGermanyElwin Sharvill UNQUALIFIED
Ivar O DoeIndiaAnna Fali NEW
Ricardo W MaletBrazilAmy Elsner NEW
Juan E ShinkoBrazilAsiya Javayant PROPOSAL
Aditya R NestleSpainAsiya Javayant PROPOSAL
Silvio B BowleyBrazilAnna Fali NEGOTIATION
Jefferson N MaletIndiaOnyama Limba NEW
Rodrigues M StockhamSpainXuxue Feng PROPOSAL
Sinclair L WaycottJapanStephen Shaw NEGOTIATION
Rodrigues D BriddickItalyStephen Shaw PROPOSAL
Misaki G FlosiItalyIoni Bowcher RENEWAL
Salvatore P SlusarskiJapanBernardo Dominic RENEWAL
Wickens S BowleyArgentinaAmy Elsner NEGOTIATION
Greenwood N CaudyRussiaAsiya Javayant QUALIFIED
Faith S TollnerArgentinaStephen Shaw NEGOTIATION
David E RoysterArgentinaIvan Magalhaes UNQUALIFIED
Kaitlin Q KolmetzRussiaIoni Bowcher UNQUALIFIED
Leon D BologniaIndiaBernardo Dominic UNQUALIFIED
James C TollnerGermanyXuxue Feng QUALIFIED
Octavia Y RulapaughSpainAmy Elsner QUALIFIED
Julie D RimSpainAsiya Javayant NEGOTIATION
Ricardo W PerinAustraliaAmy Elsner QUALIFIED
Izzy F BowleyItalyBernardo Dominic NEW
Murillo C ButtItalyBernardo Dominic RENEWAL
Wickens A NickaFranceXuxue Feng NEGOTIATION
Wickens C DoeIndiaAmy Elsner NEGOTIATION
Johnson F SaylorsRussiaStephen Shaw PROPOSAL
Jeanfrancois D RimItalyOnyama Limba NEW
Kadeem X WaycottAustraliaIvan Magalhaes UNQUALIFIED
Murillo J BowleySpainAnna Fali QUALIFIED
Greenwood T SlusarskiAustraliaIoni Bowcher UNQUALIFIED
Morrow K SlusarskiIndiaElwin Sharvill QUALIFIED
Rodrigues P CampainIndiaAmy Elsner NEGOTIATION
Nicolas U BologniaGermanyXuxue Feng NEW
Juan Q CaudyCanadaBernardo Dominic RENEWAL

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