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
Emily L GillianSpainXuxue Feng UNQUALIFIED
Adams N OldroydItalyElwin Sharvill RENEWAL
Ricardo A CaldareraRussiaIoni Bowcher NEW
Leon T RoysterIndiaElwin Sharvill UNQUALIFIED
Isabel F InouyeCanadaElwin Sharvill UNQUALIFIED
Octavia V FlosiUnited KingdomBernardo Dominic QUALIFIED
Ricardo Z GarufiArgentinaAsiya Javayant NEGOTIATION
Kadeem A ButtFranceIvan Magalhaes PROPOSAL
Maria Y SergiJapanBernardo Dominic NEGOTIATION
Arvin Z InouyeUnited KingdomBernardo Dominic NEGOTIATION
Costa U ChuiItalyAsiya Javayant RENEWAL
Deepesh B DarakjyGermanyXuxue Feng NEGOTIATION
Octavia G StockhamSpainAmy Elsner NEGOTIATION
Jeanfrancois U StensethArgentinaOnyama Limba QUALIFIED
Antonio G FigeroaFranceAnna Fali QUALIFIED
Kaitlin Q GarufiFranceAsiya Javayant NEGOTIATION
Johnson C SchemmerFranceAnna Fali RENEWAL
Maisha W MacleadArgentinaIoni Bowcher QUALIFIED
Mayumi Z ButtIndiaBernardo Dominic NEGOTIATION
Faith M AmigonFranceStephen Shaw UNQUALIFIED
Antonio U DarakjyArgentinaIvan Magalhaes NEW
Murillo I FollerAustraliaAsiya Javayant RENEWAL
Nicolas A DoeFranceXuxue Feng RENEWAL
Izzy F ChuiUnited KingdomOnyama Limba RENEWAL
Juan D RulapaughRussiaStephen Shaw UNQUALIFIED
Emily J FigeroaGermanyElwin Sharvill QUALIFIED
Munro B AmigonRussiaXuxue Feng QUALIFIED
Aruna M FollerBrazilOnyama Limba UNQUALIFIED
Rodrigues E PerinAustraliaIvan Magalhaes QUALIFIED
Octavia T BriddickArgentinaAsiya Javayant QUALIFIED
Jeanfrancois C CaldareraUnited KingdomBernardo Dominic UNQUALIFIED
Chavez C BriddickJapanBernardo Dominic RENEWAL
Mujtaba T BriddickAustraliaIvan Magalhaes QUALIFIED
Jones C ChuiUnited KingdomAsiya Javayant RENEWAL
Cody U FlosiIndiaAnna Fali PROPOSAL
Faith Q ButtIndiaAsiya Javayant NEGOTIATION
Jones P VocelkaFranceAsiya Javayant QUALIFIED
Costa L PerinItalyElwin Sharvill QUALIFIED
Clifford Y WhobreyFranceIoni Bowcher QUALIFIED
David G KolmetzFranceIoni Bowcher RENEWAL
Arvin N GauchoAustraliaStephen Shaw PROPOSAL
Claire K BowleyItalyIoni Bowcher NEW
Aruna T BologniaBrazilBernardo Dominic QUALIFIED
Salvatore L SaylorsCanadaOnyama Limba QUALIFIED
Adams L GauchoJapanAmy Elsner PROPOSAL
Sinclair J DilliardIndiaIvan Magalhaes QUALIFIED
Aika N SchemmerItalyElwin Sharvill PROPOSAL
Octavia Z PaprockiItalyIoni Bowcher NEW
Jennifer X RulapaughSpainIoni Bowcher QUALIFIED
Mayumi H BriddickItalyAmy Elsner PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Stacey C VenereItalyAsiya Javayant RENEWAL
Octavia E TollnerRussiaBernardo Dominic RENEWAL
Deepesh U InouyeBrazilStephen Shaw QUALIFIED
Isabel U NestleAustraliaBernardo Dominic UNQUALIFIED
Ivar Y SlusarskiIndiaElwin Sharvill QUALIFIED
Aditya X SchemmerArgentinaIoni Bowcher UNQUALIFIED
Ashley D KuskoBrazilAmy Elsner QUALIFIED
Clifford V OstroskyUnited KingdomAsiya Javayant NEGOTIATION
Aditya A PaprockiGermanyAmy Elsner RENEWAL
Salvatore Q DoeArgentinaOnyama Limba NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Salvatore X MorascaIndia2026-09-22Rangoni Of Florence NEGOTIATION39Ioni Bowcher
1001Murillo M WaycottItaly2026-08-28Dorl, James J Esq RENEWAL4Ioni Bowcher
1002Morrow D MaletUnited Kingdom2026-09-20Morlong Associates NEGOTIATION81Bernardo Dominic
1003Silvio V ShinkoGermany2026-09-14Buckley Miller Wright NEGOTIATION7Xuxue Feng
1004Murillo J StockhamItaly2026-09-20King, Christopher A Esq PROPOSAL54Ivan Magalhaes
1005Ashley D GlickJapan2026-09-23Dorl, James J Esq PROPOSAL36Ivan Magalhaes
1006Ricardo S NestleItaly2026-08-28Truhlar And Truhlar Attys QUALIFIED13Stephen Shaw
1007Julie I CampainJapan2026-09-20Dorl, James J Esq RENEWAL33Xuxue Feng
1008Kadeem J PerinIndia2026-08-30Chanay, Jeffrey A Esq RENEWAL92Asiya Javayant
1009Julie H KolmetzJapan2026-09-10Morlong Associates NEGOTIATION13Asiya Javayant
1010Tony J GillianJapan2026-09-01Commercial Press UNQUALIFIED45Onyama Limba
1011Francesco U PoquetteBrazil2026-09-11Feiner Bros RENEWAL71Ivan Magalhaes
1012Antonio B DarakjyFrance2026-08-27Printing Dimensions QUALIFIED68Ioni Bowcher
1013Jefferson P IturbideUnited Kingdom2026-09-23Feiner Bros UNQUALIFIED75Asiya Javayant
1014Izzy U RutaCanada2026-09-09Rangoni Of Florence NEGOTIATION45Elwin Sharvill
1015Maisha P WieserRussia2026-09-09Morlong Associates UNQUALIFIED52Asiya Javayant
1016Misaki T CaldareraArgentina2026-09-11King, Christopher A Esq RENEWAL52Elwin Sharvill
1017Adams I NestleUnited Kingdom2026-08-29Morlong Associates PROPOSAL20Stephen Shaw
1018Smith I BologniaAustralia2026-09-03Commercial Press NEGOTIATION92Asiya Javayant
1019Adams V GarufiUnited Kingdom2026-09-19Feiner Bros UNQUALIFIED42Onyama Limba
1020Sinclair N AlbaresGermany2026-09-06Chemel, James L Cpa NEGOTIATION74Ivan Magalhaes
1021Maria D StensethRussia2026-09-14Chapman, Ross E Esq UNQUALIFIED78Anna Fali
1022Aruna F FerenczAustralia2026-09-16Dorl, James J Esq NEGOTIATION39Stephen Shaw
1023Smith O WhobreyRussia2026-09-14Feltz Printing Service NEW85Ioni Bowcher
1024Maisha V DoeCanada2026-09-12Rousseaux, Michael Esq UNQUALIFIED52Bernardo Dominic
1025Ashley E MorascaSpain2026-09-07Chapman, Ross E Esq PROPOSAL56Ioni Bowcher
1026James W MaletIndia2026-08-31Rangoni Of Florence NEW66Ioni Bowcher
1027Leon A DarakjyItaly2026-09-07Chemel, James L Cpa UNQUALIFIED26Xuxue Feng
1028Costa S NickaArgentina2026-09-20Buckley Miller Wright UNQUALIFIED25Anna Fali
1029Aruna Z VocelkaRussia2026-09-21Rangoni Of Florence QUALIFIED63Amy Elsner
1030Adams C IturbideCanada2026-09-02Dorl, James J Esq RENEWAL73Elwin Sharvill
1031Claire A KuskoUnited Kingdom2026-09-20Morlong Associates RENEWAL99Onyama Limba
1032Claire H WieserRussia2026-09-21Morlong Associates UNQUALIFIED74Amy Elsner
1033David R CaldareraItaly2026-09-08Chanay, Jeffrey A Esq NEW94Xuxue Feng
1034Chavez U FlosiJapan2026-08-29Chapman, Ross E Esq UNQUALIFIED51Ivan Magalhaes
1035Maria N TollnerRussia2026-09-05Chanay, Jeffrey A Esq QUALIFIED86Asiya Javayant
1036Octavia K WaycottArgentina2026-08-27Morlong Associates RENEWAL7Ioni Bowcher
1037Nicolas E BriddickRussia2026-09-12Benton, John B Jr PROPOSAL10Ioni Bowcher
1038Aditya Q NickaArgentina2026-09-24Commercial Press PROPOSAL88Asiya Javayant
1039Adams E BologniaArgentina2026-09-09Buckley Miller Wright NEGOTIATION47Xuxue Feng
1040Murillo G OldroydUnited Kingdom2026-09-17Rousseaux, Michael Esq QUALIFIED26Onyama Limba
1041Jones T FerenczSpain2026-08-29King, Christopher A Esq NEGOTIATION28Ioni Bowcher
1042Maisha H SchemmerCanada2026-09-07King, Christopher A Esq NEGOTIATION44Elwin Sharvill
1043Claire S AlbaresItaly2026-08-29Rangoni Of Florence RENEWAL56Onyama Limba
1044Octavia I OldroydItaly2026-09-22Chemel, James L Cpa PROPOSAL88Ioni Bowcher
1045Salvatore E GillianSpain2026-09-10King, Christopher A Esq NEW49Anna Fali
1046Octavia I CampainArgentina2026-09-01King, Christopher A Esq QUALIFIED78Ioni Bowcher
1047Emily Y MorascaBrazil2026-09-15Feltz Printing Service NEGOTIATION77Onyama Limba
1048Jones D RulapaughItaly2026-09-07Rousseaux, Michael Esq UNQUALIFIED76Amy Elsner
1049Johnson E InouyeAustralia2026-09-09Benton, John B Jr RENEWAL10Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Wickens S DarakjyIndiaAmy Elsner NEW
Emily Q FollerBrazilBernardo Dominic RENEWAL
Darci R MaletRussiaBernardo Dominic NEGOTIATION
Kadeem Q TollnerJapanOnyama Limba UNQUALIFIED
Juan L MorascaCanadaAnna Fali RENEWAL
Smith F OstroskyCanadaStephen Shaw PROPOSAL
Rodrigues K BowleyGermanyAsiya Javayant UNQUALIFIED
Maria L DoeIndiaOnyama Limba PROPOSAL
Antonio F NestleUnited KingdomIvan Magalhaes QUALIFIED
Kadeem G DoeAustraliaBernardo Dominic RENEWAL
Kadeem H BowleyUnited KingdomElwin Sharvill PROPOSAL
Munro B TollnerFranceOnyama Limba NEGOTIATION
Aruna C ButtSpainBernardo Dominic RENEWAL
Jennifer T InouyeRussiaIvan Magalhaes NEGOTIATION
Ivar E WieserRussiaBernardo Dominic NEGOTIATION
Jefferson D OldroydArgentinaElwin Sharvill PROPOSAL
Isabel E ChuiCanadaAnna Fali PROPOSAL
Arvin Q WieserRussiaIvan Magalhaes RENEWAL
Maisha R WaycottCanadaIoni Bowcher RENEWAL
Jefferson V MaletRussiaBernardo Dominic NEW
Sinclair S FollerJapanIoni Bowcher NEGOTIATION
Francesco C ButtCanadaElwin Sharvill PROPOSAL
Mujtaba I MaletCanadaIvan Magalhaes NEGOTIATION
Juan L MorascaSpainBernardo Dominic NEGOTIATION
Silvio W GauchoAustraliaAnna Fali PROPOSAL
Alejandro S SchemmerItalyAmy Elsner NEW
Cody H PerinBrazilOnyama Limba NEW
Salvatore T MorascaItalyIvan Magalhaes NEW
Claire J StockhamCanadaIvan Magalhaes UNQUALIFIED
Aruna C NestleFranceIoni Bowcher NEGOTIATION
Jefferson M RutaArgentinaOnyama Limba UNQUALIFIED
Mayumi D ChuiIndiaOnyama Limba RENEWAL
Aruna I FerenczUnited KingdomIvan Magalhaes NEW
David O WhobreyRussiaXuxue Feng NEGOTIATION
Adams X WieserGermanyStephen Shaw RENEWAL
Isabel R GarufiRussiaAsiya Javayant QUALIFIED
Stacey C RulapaughSpainStephen Shaw PROPOSAL
Aika E DarakjyItalyBernardo Dominic UNQUALIFIED
Johnson F FollerItalyBernardo Dominic QUALIFIED
Julie E VenereUnited KingdomAmy Elsner UNQUALIFIED
Claire A NickaGermanyIvan Magalhaes PROPOSAL
Emily X BowleyRussiaBernardo Dominic NEW
Mujtaba O VenereUnited KingdomStephen Shaw QUALIFIED
Isabel Z RulapaughUnited KingdomIoni Bowcher NEGOTIATION
Ivar K PoquetteUnited KingdomXuxue Feng PROPOSAL
Deepesh Z PoquetteItalyAnna Fali NEW
Salvatore O MaletCanadaXuxue Feng NEGOTIATION
Aika Q OldroydAustraliaAmy Elsner RENEWAL
Aika J NestleUnited KingdomStephen Shaw QUALIFIED
Maisha H WhobreyFranceElwin Sharvill QUALIFIED
Frozen Columns
Name
James S Briddick
Ivar Z Iturbide
Johnson H Ostrosky
Izzy U Flosi
Nicolas U Briddick
Mayumi O Briddick
Ivar N Slusarski
Maria L Ostrosky
Darci B Rulapaugh
Greenwood T Caudy
Faith U Bowley
Alejandro J Caldarera
Izzy G Bolognia
Morrow R Doe
Julie D Shinko
Sinclair E Rulapaugh
Claire R Gillian
Mayumi L Whobrey
Costa X Glick
Maria E Nicka
Deepesh O Gaucho
Rodrigues A Tollner
Francesco B Poquette
Sinclair G Rulapaugh
Aditya S Rulapaugh
Cody J Maclead
Clifford J Kolmetz
Munro P Royster
Silvio L Schemmer
Aditya J Darakjy
Mujtaba O Whobrey
Octavia T Gaucho
Aruna J Albares
Francesco B Waycott
Juan N Albares
Deepesh E Campain
Jennifer N Waycott
Murillo X Saylors
Ricardo O Perin
Costa Q Vocelka
Kadeem W Marrier
Claire G Malet
Mayumi D Perin
Claire S Kolmetz
Juan R Ostrosky
Maria U Waycott
Greenwood K Campain
Silvio X Marrier
Jones C Shinko
Kaitlin V Inouye
IdCountryDate
1000Germany2026-09-18
1001United Kingdom2026-09-11
1002Japan2026-09-17
1003Spain2026-09-11
1004Argentina2026-09-22
1005Russia2026-09-19
1006Argentina2026-08-31
1007Canada2026-08-28
1008Russia2026-09-12
1009Italy2026-09-01
1010France2026-09-21
1011Australia2026-09-11
1012Canada2026-09-14
1013Australia2026-08-28
1014Brazil2026-09-16
1015Italy2026-09-19
1016Argentina2026-09-21
1017Argentina2026-09-10
1018Australia2026-09-24
1019India2026-08-27
1020Brazil2026-09-10
1021France2026-09-23
1022Canada2026-08-29
1023Italy2026-09-17
1024Brazil2026-09-12
1025France2026-09-16
1026Australia2026-09-24
1027Germany2026-09-05
1028Spain2026-09-02
1029Germany2026-09-05
1030Brazil2026-08-27
1031Italy2026-09-20
1032Argentina2026-08-31
1033France2026-09-19
1034Argentina2026-09-18
1035Spain2026-08-31
1036Argentina2026-09-01
1037United Kingdom2026-09-18
1038Italy2026-09-12
1039Brazil2026-09-11
1040Germany2026-09-06
1041France2026-09-05
1042Japan2026-09-23
1043Japan2026-09-17
1044Canada2026-09-23
1045United Kingdom2026-09-11
1046Spain2026-09-14
1047Canada2026-09-17
1048Australia2026-09-08
1049Argentina2026-09-05

On-Demand Data

NameIdCountryDate
Arvin P Kusko1000Germany2026-09-10
Greenwood J Bolognia1001United Kingdom2026-09-15
Kaitlin N Wieser1002Russia2026-09-01
Morrow W Sergi1003Argentina2026-09-16
David R Paprocki1004France2026-09-19
Murillo G Malet1005France2026-09-13
Faith D Stockham1006United Kingdom2026-09-09
Arvin A Shinko1007Australia2026-09-15
Aditya J Ostrosky1008Argentina2026-09-11
Maisha X Perin1009India2026-09-04
Jones F Saylors1010United Kingdom2026-09-12
James P Slusarski1011Brazil2026-08-28
Julie O Slusarski1012Italy2026-09-10
Maisha K Bowley1013Canada2026-09-25
Smith S Chui1014Japan2026-09-10
Wickens J Darakjy1015Germany2026-08-30
Aruna M Nicka1016Russia2026-09-07
Nicolas A Oldroyd1017Canada2026-09-02
Sinclair S Albares1018Canada2026-09-08
Maria Y Doe1019Italy2026-08-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar F IturbideAustraliaOnyama Limba UNQUALIFIED
Cody X CaldareraAustraliaAmy Elsner RENEWAL
Ashley H KuskoJapanAsiya Javayant NEGOTIATION
Mayumi A GauchoJapanStephen Shaw NEW
Alejandro V StensethArgentinaAsiya Javayant RENEWAL
Aruna C ShinkoRussiaOnyama Limba NEW
Kadeem G MarrierFranceIoni Bowcher UNQUALIFIED
Maisha O PaprockiBrazilElwin Sharvill PROPOSAL
Jeanfrancois P AlbaresIndiaElwin Sharvill UNQUALIFIED
Alejandro F SergiArgentinaAmy Elsner UNQUALIFIED
Munro K PaprockiUnited KingdomAnna Fali QUALIFIED
Jeanfrancois K PerinJapanAnna Fali PROPOSAL
Faith G StockhamArgentinaBernardo Dominic PROPOSAL
Ricardo Z PerinSpainAnna Fali PROPOSAL
Johnson Z OldroydUnited KingdomStephen Shaw UNQUALIFIED
Clifford W OstroskyGermanyAsiya Javayant UNQUALIFIED
Wickens K SchemmerGermanyAsiya Javayant UNQUALIFIED
Murillo W FlosiCanadaIoni Bowcher UNQUALIFIED
Kadeem H DilliardSpainElwin Sharvill NEGOTIATION
Misaki T MaletIndiaXuxue Feng QUALIFIED
Kaitlin M BriddickAustraliaIoni Bowcher PROPOSAL
David A SlusarskiArgentinaAmy Elsner NEW
Darci S KolmetzRussiaIvan Magalhaes NEW
Cody R GlickCanadaXuxue Feng QUALIFIED
Jefferson X MaletJapanAmy Elsner PROPOSAL
Misaki A WhobreyRussiaStephen Shaw PROPOSAL
Jeanfrancois C GauchoCanadaAnna Fali RENEWAL
Smith R PaprockiArgentinaAnna Fali PROPOSAL
Alejandro O SergiUnited KingdomAnna Fali PROPOSAL
Emily R SergiFranceElwin Sharvill QUALIFIED
Izzy F KuskoAustraliaOnyama Limba QUALIFIED
Tony T NestleFranceAsiya Javayant PROPOSAL
Kaitlin K BologniaArgentinaIoni Bowcher QUALIFIED
Ricardo J KuskoRussiaIoni Bowcher RENEWAL
Greenwood C MacleadUnited KingdomXuxue Feng RENEWAL
Adams W FollerAustraliaElwin Sharvill NEGOTIATION
Maisha S MaletBrazilAsiya Javayant QUALIFIED
Adams K GauchoFranceIvan Magalhaes QUALIFIED
Faith I KuskoRussiaOnyama Limba PROPOSAL
Leja T GauchoIndiaElwin 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>