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
Jones O AmigonIndiaIoni Bowcher UNQUALIFIED
Aditya E MacleadGermanyXuxue Feng NEW
Leon R MaletFranceAsiya Javayant RENEWAL
Emily V RutaArgentinaAmy Elsner QUALIFIED
Aika V FlosiRussiaAnna Fali RENEWAL
Johnson J DilliardUnited KingdomXuxue Feng NEGOTIATION
Rodrigues M OstroskySpainOnyama Limba PROPOSAL
Mayumi M MaletRussiaElwin Sharvill NEW
Julie B RutaJapanStephen Shaw PROPOSAL
Ricardo V VocelkaSpainStephen Shaw UNQUALIFIED
Aika P FlosiCanadaOnyama Limba RENEWAL
Maisha B GauchoAustraliaBernardo Dominic PROPOSAL
Johnson H MarrierArgentinaBernardo Dominic NEW
Clifford T NestleJapanBernardo Dominic UNQUALIFIED
Arvin I RimArgentinaIoni Bowcher RENEWAL
Maisha E GlickBrazilAmy Elsner NEW
Leja W GauchoAustraliaIoni Bowcher QUALIFIED
Leja C MarrierJapanAsiya Javayant PROPOSAL
Aditya F AmigonUnited KingdomStephen Shaw QUALIFIED
Julie F OldroydAustraliaAsiya Javayant QUALIFIED
Octavia F FerenczFranceElwin Sharvill UNQUALIFIED
Greenwood N FerenczSpainAmy Elsner RENEWAL
David T VenereUnited KingdomIvan Magalhaes UNQUALIFIED
Julie D NickaCanadaAnna Fali RENEWAL
Chavez Z DoeJapanAnna Fali NEGOTIATION
Maria Q PerinArgentinaBernardo Dominic UNQUALIFIED
Antonio W ChuiUnited KingdomStephen Shaw NEW
Izzy P GarufiUnited KingdomElwin Sharvill NEW
Antonio Y DarakjyArgentinaStephen Shaw PROPOSAL
Faith Q RulapaughCanadaBernardo Dominic NEGOTIATION
Kadeem X BologniaBrazilIoni Bowcher NEW
Deepesh S ShinkoGermanyOnyama Limba NEW
Mujtaba I OldroydArgentinaStephen Shaw NEW
Ricardo M MaletBrazilAsiya Javayant PROPOSAL
Jefferson C BologniaUnited KingdomElwin Sharvill QUALIFIED
Maisha S PaprockiGermanyOnyama Limba QUALIFIED
Salvatore D StensethIndiaAsiya Javayant PROPOSAL
Juan O PaprockiIndiaElwin Sharvill NEGOTIATION
Leja F RulapaughItalyBernardo Dominic QUALIFIED
Silvio F PoquetteSpainElwin Sharvill RENEWAL
Alejandro D AlbaresRussiaAnna Fali NEGOTIATION
Octavia V BologniaItalyAsiya Javayant NEW
Wickens H IturbideBrazilAmy Elsner RENEWAL
Darci N AmigonAustraliaAsiya Javayant UNQUALIFIED
Izzy L CaldareraJapanIoni Bowcher UNQUALIFIED
Juan C PaprockiGermanyAmy Elsner UNQUALIFIED
Darci K KuskoUnited KingdomOnyama Limba UNQUALIFIED
Emily L AlbaresFranceAmy Elsner PROPOSAL
Smith S WaycottFranceAsiya Javayant NEGOTIATION
Arvin E KolmetzUnited KingdomAsiya Javayant RENEWAL
Horizontal
NameCountryRepresentativeStatus
Rodrigues H RutaRussiaOnyama Limba UNQUALIFIED
Alejandro Q FollerGermanyAsiya Javayant PROPOSAL
Ashley S InouyeFranceAsiya Javayant QUALIFIED
Maria P FlosiArgentinaIoni Bowcher PROPOSAL
Stacey E DoeBrazilAsiya Javayant UNQUALIFIED
Ashley Z InouyeRussiaBernardo Dominic PROPOSAL
Deepesh V DoeGermanyIoni Bowcher RENEWAL
Johnson U GarufiSpainStephen Shaw NEGOTIATION
Francesco Y PerinCanadaAmy Elsner RENEWAL
Deepesh F StensethAustraliaAnna Fali NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Deepesh U NickaBrazil2026-10-01Chemel, James L Cpa UNQUALIFIED74Stephen Shaw
1001Sinclair A FollerFrance2026-09-14King, Christopher A Esq UNQUALIFIED96Anna Fali
1002Ivar V IturbideFrance2026-10-06Commercial Press UNQUALIFIED4Amy Elsner
1003Ricardo M MarrierArgentina2026-09-29Feltz Printing Service QUALIFIED70Elwin Sharvill
1004Maria E TollnerItaly2026-10-04Benton, John B Jr PROPOSAL88Stephen Shaw
1005Mayumi P DarakjyBrazil2026-09-29Truhlar And Truhlar Attys NEW28Elwin Sharvill
1006Faith I InouyeBrazil2026-10-10Morlong Associates NEGOTIATION62Amy Elsner
1007Wickens R FollerSpain2026-10-03Commercial Press UNQUALIFIED97Xuxue Feng
1008Smith O WieserIndia2026-10-05Chapman, Ross E Esq PROPOSAL48Xuxue Feng
1009Mujtaba Q WieserFrance2026-09-21Feiner Bros UNQUALIFIED6Xuxue Feng
1010Clifford W RulapaughItaly2026-09-24Chapman, Ross E Esq NEW3Amy Elsner
1011Maisha C ShinkoRussia2026-09-18Morlong Associates NEGOTIATION59Anna Fali
1012Silvio I PaprockiJapan2026-10-09Feiner Bros QUALIFIED6Ivan Magalhaes
1013Tony O FollerRussia2026-09-20Commercial Press QUALIFIED55Bernardo Dominic
1014Jones N StockhamCanada2026-09-30Rangoni Of Florence QUALIFIED42Ioni Bowcher
1015Silvio O StockhamAustralia2026-09-24Commercial Press UNQUALIFIED78Bernardo Dominic
1016Darci S FigeroaBrazil2026-09-16Chemel, James L Cpa PROPOSAL90Elwin Sharvill
1017Jefferson P BowleyArgentina2026-09-14Benton, John B Jr UNQUALIFIED65Onyama Limba
1018Leja A AmigonUnited Kingdom2026-09-22Feltz Printing Service NEGOTIATION77Onyama Limba
1019Octavia U StockhamJapan2026-10-03Chemel, James L Cpa NEGOTIATION37Ivan Magalhaes
1020Johnson I OstroskyIndia2026-09-27Feiner Bros NEW69Stephen Shaw
1021Maisha J ButtItaly2026-09-30Chanay, Jeffrey A Esq NEGOTIATION17Asiya Javayant
1022Octavia M FollerRussia2026-09-13King, Christopher A Esq NEW92Stephen Shaw
1023Tony K MaletAustralia2026-10-08Buckley Miller Wright QUALIFIED47Stephen Shaw
1024Greenwood Y FollerJapan2026-09-16Dorl, James J Esq RENEWAL38Xuxue Feng
1025Greenwood U GauchoArgentina2026-10-10Feiner Bros UNQUALIFIED15Bernardo Dominic
1026Juan U OldroydCanada2026-09-22Chapman, Ross E Esq QUALIFIED75Xuxue Feng
1027Deepesh N DarakjyBrazil2026-09-23Benton, John B Jr PROPOSAL64Asiya Javayant
1028Julie F NickaIndia2026-09-24Chapman, Ross E Esq NEW9Ivan Magalhaes
1029Aruna S CampainArgentina2026-10-12Chapman, Ross E Esq UNQUALIFIED77Bernardo Dominic
1030Emily C DilliardRussia2026-10-10Benton, John B Jr QUALIFIED51Stephen Shaw
1031David C MaletCanada2026-10-04Commercial Press QUALIFIED9Asiya Javayant
1032Misaki S WaycottIndia2026-09-17Chapman, Ross E Esq NEGOTIATION44Amy Elsner
1033Ashley K PoquetteArgentina2026-10-04Benton, John B Jr NEW70Ivan Magalhaes
1034Deepesh P DilliardArgentina2026-09-28Benton, John B Jr NEGOTIATION3Elwin Sharvill
1035Kaitlin G BriddickBrazil2026-10-04Buckley Miller Wright UNQUALIFIED77Asiya Javayant
1036Jennifer M RimAustralia2026-09-27Truhlar And Truhlar Attys QUALIFIED42Amy Elsner
1037Darci N MacleadUnited Kingdom2026-10-08Printing Dimensions UNQUALIFIED75Anna Fali
1038Kaitlin N WhobreyArgentina2026-10-04Morlong Associates NEGOTIATION68Ivan Magalhaes
1039Ashley L VocelkaFrance2026-10-10Dorl, James J Esq PROPOSAL14Onyama Limba
1040Jennifer H SchemmerAustralia2026-09-27Rangoni Of Florence NEW57Asiya Javayant
1041Aditya H IturbideRussia2026-09-18Morlong Associates QUALIFIED96Xuxue Feng
1042David J CampainJapan2026-10-05King, Christopher A Esq NEW89Anna Fali
1043Costa B ButtCanada2026-09-30Rousseaux, Michael Esq UNQUALIFIED53Asiya Javayant
1044Kadeem Z FollerGermany2026-09-24Chemel, James L Cpa UNQUALIFIED74Elwin Sharvill
1045Jefferson O ShinkoBrazil2026-10-04Buckley Miller Wright UNQUALIFIED14Amy Elsner
1046Nicolas V FlosiFrance2026-10-03Chemel, James L Cpa UNQUALIFIED63Xuxue Feng
1047Darci A WhobreyJapan2026-09-16Chapman, Ross E Esq RENEWAL30Onyama Limba
1048Izzy T ShinkoBrazil2026-09-25King, Christopher A Esq PROPOSAL25Ivan Magalhaes
1049Nicolas E BowleyArgentina2026-10-06King, Christopher A Esq UNQUALIFIED82Anna Fali
Frozen Rows
NameCountryRepresentativeStatus
Cody Q KuskoUnited KingdomElwin Sharvill QUALIFIED
Murillo M SaylorsAustraliaElwin Sharvill NEW
Leja S StockhamFranceIoni Bowcher UNQUALIFIED
Murillo Y IturbideFranceIvan Magalhaes NEGOTIATION
Ashley L WieserFranceAnna Fali UNQUALIFIED
Smith X InouyeJapanIoni Bowcher UNQUALIFIED
Silvio Q AmigonSpainBernardo Dominic NEGOTIATION
Claire A RulapaughSpainElwin Sharvill PROPOSAL
Isabel S FlosiSpainElwin Sharvill NEW
Sinclair O BologniaGermanyBernardo Dominic RENEWAL
Jefferson V DilliardSpainBernardo Dominic UNQUALIFIED
Mujtaba V SergiBrazilXuxue Feng NEW
David I RimAustraliaOnyama Limba PROPOSAL
Mujtaba X BriddickBrazilAmy Elsner UNQUALIFIED
Juan L AlbaresSpainStephen Shaw NEW
Mujtaba F DilliardIndiaAnna Fali NEW
Aika M FigeroaUnited KingdomOnyama Limba PROPOSAL
Kaitlin I BowleyFranceIoni Bowcher NEGOTIATION
Francesco P VenereRussiaAmy Elsner UNQUALIFIED
Mujtaba E ButtSpainIvan Magalhaes NEGOTIATION
Costa J KolmetzUnited KingdomAmy Elsner QUALIFIED
Ricardo X BriddickGermanyAmy Elsner PROPOSAL
Mujtaba S FlosiCanadaXuxue Feng QUALIFIED
Maria Z CampainGermanyStephen Shaw RENEWAL
Stacey H ButtCanadaIvan Magalhaes PROPOSAL
Chavez P RulapaughSpainAsiya Javayant PROPOSAL
Munro V KolmetzArgentinaIoni Bowcher NEW
Izzy B RulapaughUnited KingdomElwin Sharvill RENEWAL
Kaitlin U VocelkaUnited KingdomBernardo Dominic RENEWAL
Sinclair Q RulapaughUnited KingdomAnna Fali UNQUALIFIED
Mayumi T BologniaRussiaOnyama Limba RENEWAL
Morrow E RutaGermanyOnyama Limba NEGOTIATION
Cody R BologniaFranceElwin Sharvill UNQUALIFIED
Jeanfrancois Z CaudyFranceAnna Fali QUALIFIED
Jones T DarakjySpainElwin Sharvill RENEWAL
Jefferson Z WieserAustraliaStephen Shaw NEW
Morrow W AlbaresCanadaAmy Elsner PROPOSAL
Clifford E CampainArgentinaIvan Magalhaes RENEWAL
Mujtaba F AmigonFranceXuxue Feng NEGOTIATION
Kadeem I DilliardIndiaAnna Fali UNQUALIFIED
Antonio T MacleadCanadaIoni Bowcher QUALIFIED
Smith N StockhamFranceBernardo Dominic NEGOTIATION
Costa G GarufiArgentinaAsiya Javayant NEGOTIATION
Arvin I MaletCanadaAsiya Javayant UNQUALIFIED
Aditya W CampainCanadaBernardo Dominic NEW
Leja P PerinGermanyAmy Elsner NEGOTIATION
Jones R FerenczFranceAmy Elsner RENEWAL
Murillo S KolmetzUnited KingdomStephen Shaw NEW
Alejandro E RulapaughArgentinaIoni Bowcher UNQUALIFIED
Misaki W FlosiArgentinaOnyama Limba NEW
Frozen Columns
Name
Emily G Poquette
Jennifer G Bowley
Darci J Iturbide
Munro F Waycott
Adams U Caldarera
Claire D Poquette
Jennifer C Figeroa
Jones J Bolognia
Alejandro T Maclead
Jefferson I Dilliard
Emily E Morasca
Smith M Stenseth
Mayumi A Albares
James S Poquette
Juan N Wieser
Mayumi Z Poquette
Emily G Wieser
Adams M Doe
Aditya D Ruta
James P Kolmetz
Tony X Chui
Izzy A Saylors
Mayumi R Gaucho
Clifford W Glick
Tony H Stenseth
Octavia P Flosi
Arvin S Stenseth
Smith Z Kolmetz
David G Garufi
Darci D Glick
Arvin X Malet
Juan Y Marrier
Isabel O Sergi
Juan C Chui
Izzy Z Butt
Maisha V Glick
Wickens X Sergi
Ashley B Bolognia
Sinclair C Whobrey
Kaitlin Z Amigon
Arvin Y Darakjy
Tony J Butt
Salvatore Y Malet
Aditya T Venere
Nicolas W Rulapaugh
Claire S Caldarera
Alejandro E Briddick
Darci P Marrier
Silvio S Caudy
Jefferson I Slusarski
IdCountryDate
1000Japan2026-09-28
1001Japan2026-09-24
1002United Kingdom2026-09-21
1003France2026-09-30
1004India2026-10-10
1005India2026-09-13
1006France2026-09-29
1007Italy2026-09-27
1008Argentina2026-09-22
1009India2026-10-09
1010India2026-10-11
1011Argentina2026-10-07
1012Germany2026-10-11
1013Germany2026-10-08
1014Russia2026-09-19
1015Argentina2026-10-09
1016Japan2026-09-13
1017Germany2026-10-09
1018United Kingdom2026-09-21
1019United Kingdom2026-09-15
1020France2026-09-26
1021Germany2026-09-24
1022United Kingdom2026-09-16
1023United Kingdom2026-09-14
1024Italy2026-10-02
1025Spain2026-09-20
1026United Kingdom2026-09-14
1027Argentina2026-10-03
1028Germany2026-09-21
1029France2026-09-17
1030France2026-09-15
1031Spain2026-09-20
1032Japan2026-10-03
1033United Kingdom2026-10-08
1034India2026-09-26
1035Germany2026-09-19
1036Spain2026-09-17
1037Australia2026-10-10
1038Russia2026-09-17
1039Japan2026-09-26
1040Brazil2026-09-14
1041Russia2026-10-06
1042Russia2026-09-17
1043United Kingdom2026-10-06
1044Germany2026-09-21
1045Russia2026-09-14
1046Australia2026-10-10
1047Canada2026-10-01
1048Germany2026-09-20
1049Brazil2026-10-03

On-Demand Data

NameIdCountryDate
Faith D Bolognia1000Brazil2026-10-11
Morrow W Waycott1001Italy2026-09-15
Izzy O Ostrosky1002France2026-09-30
Izzy B Ferencz1003Canada2026-09-21
Tony F Bolognia1004Canada2026-10-08
Aruna D Shinko1005India2026-10-08
Kadeem N Figeroa1006Spain2026-10-11
Kadeem H Foller1007Italy2026-09-29
Sinclair V Chui1008Canada2026-09-25
Wickens S Wieser1009Brazil2026-09-27
Wickens E Inouye1010Germany2026-09-25
Deepesh N Briddick1011Australia2026-09-29
Aika A Stockham1012Spain2026-09-14
Greenwood B Doe1013Germany2026-09-27
Sinclair O Bolognia1014Germany2026-09-17
Julie A Dilliard1015Russia2026-10-10
Tony M Bolognia1016United Kingdom2026-10-07
Sinclair J Rulapaugh1017Australia2026-09-25
Kadeem Y Malet1018Australia2026-09-19
Ivar A Stockham1019United Kingdom2026-10-05
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Claire S DarakjyAustraliaBernardo Dominic QUALIFIED
Ashley A DilliardArgentinaAmy Elsner RENEWAL
Alejandro E NickaUnited KingdomOnyama Limba NEGOTIATION
Wickens I KolmetzGermanyIoni Bowcher QUALIFIED
Juan M SergiJapanElwin Sharvill NEW
Johnson I BowleyItalyElwin Sharvill UNQUALIFIED
Emily Q MacleadBrazilOnyama Limba NEGOTIATION
Aditya D PoquetteBrazilAmy Elsner NEW
Ricardo I BowleyArgentinaIoni Bowcher NEW
David O RoysterIndiaOnyama Limba NEGOTIATION
Mayumi C SchemmerRussiaAnna Fali UNQUALIFIED
Costa J NickaJapanBernardo Dominic UNQUALIFIED
Julie S VocelkaFranceStephen Shaw NEGOTIATION
Rodrigues M MorascaBrazilOnyama Limba NEW
Octavia H SlusarskiJapanAnna Fali NEW
Sinclair F CaldareraUnited KingdomIvan Magalhaes UNQUALIFIED
Wickens S GillianFranceAsiya Javayant UNQUALIFIED
Mujtaba B ButtIndiaOnyama Limba RENEWAL
Wickens I NickaSpainIvan Magalhaes NEW
Chavez J BriddickGermanyAnna Fali QUALIFIED
Morrow J FigeroaFranceOnyama Limba NEW
Stacey D RutaGermanyStephen Shaw PROPOSAL
Jeanfrancois X NestleBrazilAsiya Javayant UNQUALIFIED
Isabel W RulapaughJapanOnyama Limba NEW
Antonio T OstroskyJapanXuxue Feng UNQUALIFIED
Morrow S GauchoItalyBernardo Dominic PROPOSAL
Izzy W WieserGermanyXuxue Feng PROPOSAL
Deepesh M GarufiAustraliaXuxue Feng UNQUALIFIED
Arvin T VenereFranceStephen Shaw UNQUALIFIED
Morrow Q BowleyUnited KingdomAsiya Javayant RENEWAL
Darci T DilliardSpainXuxue Feng PROPOSAL
Munro D FerenczBrazilStephen Shaw NEGOTIATION
Julie C CampainJapanElwin Sharvill PROPOSAL
Arvin K SchemmerArgentinaAmy Elsner RENEWAL
Alejandro K CaudyAustraliaAsiya Javayant QUALIFIED
Aruna G WhobreyBrazilIoni Bowcher NEGOTIATION
Kadeem F BriddickIndiaStephen Shaw UNQUALIFIED
Stacey H WhobreyFranceBernardo Dominic PROPOSAL
Adams J MorascaGermanyStephen Shaw NEW
Munro C MaletRussiaElwin 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>