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
Kaitlin P MaletCanadaIvan Magalhaes RENEWAL
Costa P FollerAustraliaBernardo Dominic QUALIFIED
David U SaylorsCanadaBernardo Dominic RENEWAL
Faith I TollnerGermanyAsiya Javayant RENEWAL
Aruna R KuskoFranceOnyama Limba QUALIFIED
Murillo L MaletGermanyIoni Bowcher QUALIFIED
Leon D MaletCanadaXuxue Feng NEGOTIATION
Ivar P OstroskyFranceStephen Shaw NEGOTIATION
Emily Q ShinkoArgentinaBernardo Dominic QUALIFIED
Faith J CampainAustraliaAsiya Javayant QUALIFIED
Alejandro F ButtArgentinaIoni Bowcher UNQUALIFIED
Jennifer L WhobreyAustraliaXuxue Feng QUALIFIED
Johnson J MaletJapanAmy Elsner PROPOSAL
Silvio B RulapaughUnited KingdomIvan Magalhaes NEGOTIATION
Greenwood M ButtIndiaOnyama Limba NEGOTIATION
Rodrigues Y ChuiItalyOnyama Limba NEGOTIATION
Julie W InouyeArgentinaIvan Magalhaes UNQUALIFIED
Aruna R SaylorsCanadaIoni Bowcher QUALIFIED
Jefferson Z InouyeArgentinaXuxue Feng NEGOTIATION
Smith M SaylorsBrazilElwin Sharvill QUALIFIED
Munro Q PerinIndiaIoni Bowcher NEW
Mujtaba Y StockhamIndiaOnyama Limba NEGOTIATION
Chavez T FigeroaGermanyBernardo Dominic PROPOSAL
Francesco P StensethCanadaIoni Bowcher UNQUALIFIED
Kaitlin R MarrierFranceIvan Magalhaes UNQUALIFIED
Nicolas O RoysterItalyXuxue Feng NEW
Alejandro E RutaIndiaOnyama Limba NEW
Julie U PerinCanadaStephen Shaw QUALIFIED
Jefferson T KuskoUnited KingdomXuxue Feng RENEWAL
Aditya O SaylorsItalyIoni Bowcher PROPOSAL
Johnson I SergiFranceStephen Shaw NEGOTIATION
Johnson D MacleadJapanElwin Sharvill RENEWAL
Smith P VocelkaRussiaStephen Shaw NEW
Wickens C MaletUnited KingdomAmy Elsner PROPOSAL
Maria K MacleadArgentinaAnna Fali NEW
Kadeem J InouyeCanadaStephen Shaw NEGOTIATION
Arvin V FlosiGermanyXuxue Feng UNQUALIFIED
Kadeem U AmigonAustraliaStephen Shaw UNQUALIFIED
Mayumi B FigeroaCanadaStephen Shaw UNQUALIFIED
Clifford S DilliardGermanyXuxue Feng QUALIFIED
Ricardo C StockhamIndiaXuxue Feng NEGOTIATION
Morrow L NickaCanadaAnna Fali QUALIFIED
Wickens E StensethIndiaIvan Magalhaes RENEWAL
Wickens I AlbaresItalyAmy Elsner NEGOTIATION
Nicolas X WhobreyRussiaAnna Fali UNQUALIFIED
Julie G SlusarskiIndiaIoni Bowcher RENEWAL
Leja H MaletRussiaStephen Shaw NEW
Nicolas A KolmetzCanadaIvan Magalhaes QUALIFIED
Julie B BologniaGermanyAsiya Javayant QUALIFIED
Aditya F RutaGermanyIvan Magalhaes RENEWAL
Horizontal
NameCountryRepresentativeStatus
Kaitlin T MaletItalyOnyama Limba PROPOSAL
Stacey M CaldareraSpainIvan Magalhaes UNQUALIFIED
Costa Q WaycottBrazilAmy Elsner UNQUALIFIED
Murillo F VocelkaUnited KingdomIvan Magalhaes NEW
Nicolas Q MorascaIndiaBernardo Dominic PROPOSAL
Chavez S OstroskyCanadaIoni Bowcher PROPOSAL
Ivar P StockhamUnited KingdomOnyama Limba RENEWAL
Jones Y FlosiUnited KingdomOnyama Limba RENEWAL
Mujtaba Y FigeroaFranceAnna Fali QUALIFIED
David H GauchoBrazilIoni Bowcher PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Jefferson S BowleyFrance2026-10-05Feltz Printing Service NEW69Anna Fali
1001Octavia H StockhamIndia2026-09-18Chapman, Ross E Esq RENEWAL67Elwin Sharvill
1002Ricardo U WaycottArgentina2026-09-19King, Christopher A Esq NEGOTIATION87Bernardo Dominic
1003Aika K BriddickRussia2026-09-14Chanay, Jeffrey A Esq NEGOTIATION71Onyama Limba
1004Munro L VocelkaUnited Kingdom2026-09-14Dorl, James J Esq UNQUALIFIED7Ioni Bowcher
1005Isabel L BologniaRussia2026-09-25Dorl, James J Esq QUALIFIED86Onyama Limba
1006Jennifer L VocelkaUnited Kingdom2026-09-26Chapman, Ross E Esq UNQUALIFIED5Onyama Limba
1007Arvin K BowleyArgentina2026-10-01Truhlar And Truhlar Attys QUALIFIED24Bernardo Dominic
1008Deepesh S RutaArgentina2026-09-26Chemel, James L Cpa RENEWAL33Stephen Shaw
1009Maisha I MorascaIndia2026-09-28Morlong Associates UNQUALIFIED86Asiya Javayant
1010Deepesh F GillianCanada2026-09-23Truhlar And Truhlar Attys RENEWAL40Ioni Bowcher
1011Faith F WaycottArgentina2026-09-23Chanay, Jeffrey A Esq RENEWAL70Xuxue Feng
1012Sinclair G CaudyFrance2026-09-11Rousseaux, Michael Esq UNQUALIFIED41Onyama Limba
1013Johnson G OldroydIndia2026-09-29Dorl, James J Esq NEGOTIATION11Anna Fali
1014Ashley Y CaudyFrance2026-09-27Dorl, James J Esq UNQUALIFIED95Anna Fali
1015Smith M RimFrance2026-10-02Chanay, Jeffrey A Esq NEGOTIATION78Ioni Bowcher
1016Johnson G MacleadBrazil2026-09-15Chemel, James L Cpa NEW21Anna Fali
1017Jennifer A IturbideUnited Kingdom2026-09-12Rousseaux, Michael Esq RENEWAL3Stephen Shaw
1018Faith O IturbideArgentina2026-10-07Morlong Associates PROPOSAL2Asiya Javayant
1019Chavez R FigeroaRussia2026-09-25Feiner Bros QUALIFIED22Anna Fali
1020Morrow T DarakjySpain2026-09-20Feltz Printing Service PROPOSAL89Onyama Limba
1021Aruna L StockhamCanada2026-10-03Benton, John B Jr NEW39Ioni Bowcher
1022Misaki A ButtBrazil2026-09-19Morlong Associates QUALIFIED2Ioni Bowcher
1023Ashley S WieserAustralia2026-09-18Morlong Associates QUALIFIED49Anna Fali
1024Antonio O KuskoSpain2026-09-27Chemel, James L Cpa PROPOSAL53Anna Fali
1025Cody G MorascaUnited Kingdom2026-09-19King, Christopher A Esq NEW71Anna Fali
1026Deepesh N IturbideGermany2026-10-07Feltz Printing Service NEW19Stephen Shaw
1027Claire A CampainBrazil2026-09-10Rousseaux, Michael Esq NEGOTIATION88Elwin Sharvill
1028Greenwood O DilliardAustralia2026-09-17Buckley Miller Wright NEGOTIATION69Anna Fali
1029Alejandro D DoeBrazil2026-09-18Rousseaux, Michael Esq UNQUALIFIED99Ioni Bowcher
1030Deepesh I WhobreyArgentina2026-09-17Printing Dimensions PROPOSAL70Ivan Magalhaes
1031Emily Z BowleyIndia2026-09-25Rousseaux, Michael Esq RENEWAL93Anna Fali
1032James G BriddickJapan2026-10-01Buckley Miller Wright PROPOSAL77Ivan Magalhaes
1033Costa T InouyeRussia2026-09-25Truhlar And Truhlar Attys RENEWAL10Asiya Javayant
1034Faith N DoeJapan2026-10-03Dorl, James J Esq NEW39Asiya Javayant
1035Johnson M PerinGermany2026-09-23Dorl, James J Esq QUALIFIED75Asiya Javayant
1036Deepesh D SaylorsArgentina2026-09-12Feltz Printing Service UNQUALIFIED91Anna Fali
1037David Y ChuiJapan2026-09-25Commercial Press QUALIFIED4Bernardo Dominic
1038Cody A KolmetzCanada2026-09-29King, Christopher A Esq NEW64Anna Fali
1039Misaki Z GarufiAustralia2026-09-26Feiner Bros QUALIFIED85Asiya Javayant
1040Cody R SchemmerArgentina2026-09-10Rousseaux, Michael Esq RENEWAL95Amy Elsner
1041Ashley R RulapaughUnited Kingdom2026-09-23Feltz Printing Service QUALIFIED18Xuxue Feng
1042Kadeem Y MaletSpain2026-09-10Feltz Printing Service NEGOTIATION56Stephen Shaw
1043Jeanfrancois C PerinJapan2026-09-28Chemel, James L Cpa PROPOSAL47Stephen Shaw
1044Clifford D RoysterRussia2026-09-15King, Christopher A Esq RENEWAL27Ivan Magalhaes
1045Jeanfrancois L KuskoFrance2026-09-30Chemel, James L Cpa NEW40Stephen Shaw
1046Juan E FollerUnited Kingdom2026-10-08Benton, John B Jr PROPOSAL99Stephen Shaw
1047Maria N PerinFrance2026-09-28Rousseaux, Michael Esq UNQUALIFIED86Ioni Bowcher
1048Mayumi P GauchoSpain2026-09-26Commercial Press PROPOSAL22Bernardo Dominic
1049Ricardo U ShinkoFrance2026-09-14Chapman, Ross E Esq NEW57Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Isabel F MacleadAustraliaIoni Bowcher UNQUALIFIED
Johnson L RulapaughBrazilAnna Fali QUALIFIED
Sinclair A InouyeRussiaXuxue Feng NEW
Chavez H AlbaresRussiaAmy Elsner RENEWAL
Cody C RoysterJapanIoni Bowcher PROPOSAL
James M GarufiIndiaElwin Sharvill NEW
Deepesh U NestleItalyAnna Fali UNQUALIFIED
Nicolas Z ButtRussiaStephen Shaw NEGOTIATION
Izzy G NestleIndiaBernardo Dominic UNQUALIFIED
Tony G ChuiIndiaAnna Fali RENEWAL
Jefferson W VenereCanadaBernardo Dominic PROPOSAL
Smith U RimAustraliaOnyama Limba NEGOTIATION
Sinclair E RoysterIndiaOnyama Limba NEW
Cody S FerenczAustraliaIvan Magalhaes QUALIFIED
Izzy Z OstroskyRussiaAsiya Javayant UNQUALIFIED
Misaki C AmigonAustraliaAnna Fali NEW
Rodrigues K CaldareraBrazilOnyama Limba QUALIFIED
Wickens S IturbideCanadaAmy Elsner UNQUALIFIED
Ivar B GillianGermanyIoni Bowcher PROPOSAL
Adams C CaldareraArgentinaStephen Shaw PROPOSAL
Izzy J NestleArgentinaIoni Bowcher PROPOSAL
Emily S PerinRussiaAnna Fali NEGOTIATION
Smith H BologniaBrazilXuxue Feng QUALIFIED
Aditya Z CaldareraIndiaStephen Shaw QUALIFIED
Sinclair C StensethRussiaBernardo Dominic UNQUALIFIED
Leja W FollerCanadaAnna Fali NEW
Deepesh N GarufiItalyElwin Sharvill NEW
Mayumi A PaprockiIndiaAmy Elsner NEW
Salvatore W MaletGermanyXuxue Feng PROPOSAL
Rodrigues C FollerCanadaAmy Elsner PROPOSAL
Wickens A SergiRussiaIvan Magalhaes QUALIFIED
Jones L MorascaFranceElwin Sharvill RENEWAL
Leja P AmigonSpainAnna Fali NEGOTIATION
Ricardo O GauchoItalyAnna Fali NEGOTIATION
Jennifer I FerenczIndiaAmy Elsner RENEWAL
Costa G InouyeIndiaAsiya Javayant NEGOTIATION
Munro V OldroydSpainIvan Magalhaes PROPOSAL
Chavez X SergiSpainStephen Shaw PROPOSAL
Johnson Z PerinBrazilIvan Magalhaes NEGOTIATION
Arvin P CampainGermanyStephen Shaw UNQUALIFIED
David Y InouyeIndiaOnyama Limba PROPOSAL
Emily H OldroydArgentinaIoni Bowcher NEW
Stacey K GlickArgentinaAmy Elsner RENEWAL
Maisha J PoquetteIndiaXuxue Feng PROPOSAL
Julie N RutaFranceAnna Fali RENEWAL
David X GauchoArgentinaAnna Fali PROPOSAL
Leja L PaprockiIndiaAnna Fali NEGOTIATION
David E AmigonGermanyAsiya Javayant NEW
Sinclair M AmigonCanadaIvan Magalhaes QUALIFIED
Julie P CaldareraFranceAnna Fali NEGOTIATION
Frozen Columns
Name
Smith T Wieser
Rodrigues M Briddick
James B Caldarera
Murillo R Stenseth
Ricardo I Whobrey
James P Briddick
Mujtaba F Amigon
Claire C Briddick
Rodrigues I Butt
Emily O Oldroyd
Julie U Marrier
Julie O Tollner
Mayumi L Briddick
Rodrigues W Whobrey
James S Malet
Wickens U Rulapaugh
James C Gaucho
Ivar O Rim
Emily J Flosi
David N Schemmer
Maisha T Malet
Greenwood J Rulapaugh
Silvio O Garufi
Leja Q Kolmetz
Morrow T Stockham
Alejandro O Marrier
Stacey L Albares
Wickens T Whobrey
Leon P Oldroyd
Emily L Ostrosky
Murillo E Kolmetz
Julie O Caudy
Greenwood O Briddick
Murillo J Stenseth
Murillo M Flosi
Aruna E Malet
Silvio A Bowley
Adams C Ferencz
Silvio H Butt
Maisha Q Perin
Cody N Venere
Maisha O Shinko
Aika A Marrier
Francesco U Tollner
Emily Q Gillian
Jefferson J Waycott
Maria Q Doe
Johnson J Wieser
Izzy L Slusarski
Julie T Flosi
IdCountryDate
1000Spain2026-10-08
1001Italy2026-09-12
1002Germany2026-09-30
1003Russia2026-09-21
1004Brazil2026-09-15
1005Russia2026-09-23
1006Italy2026-09-21
1007France2026-09-11
1008Canada2026-10-08
1009India2026-09-14
1010Spain2026-09-09
1011Germany2026-09-18
1012Italy2026-09-18
1013Russia2026-10-05
1014Germany2026-10-02
1015Germany2026-09-26
1016France2026-10-05
1017France2026-09-17
1018Argentina2026-09-22
1019Canada2026-09-13
1020India2026-09-15
1021Australia2026-09-13
1022Russia2026-09-14
1023Russia2026-09-23
1024United Kingdom2026-09-18
1025Australia2026-09-24
1026Brazil2026-09-16
1027Australia2026-10-05
1028Argentina2026-09-20
1029Italy2026-09-10
1030United Kingdom2026-10-06
1031Brazil2026-09-21
1032Spain2026-09-13
1033Italy2026-09-09
1034United Kingdom2026-10-01
1035United Kingdom2026-09-28
1036Italy2026-09-28
1037France2026-09-25
1038Brazil2026-09-26
1039Australia2026-10-04
1040India2026-10-08
1041Brazil2026-10-03
1042Argentina2026-09-17
1043Japan2026-09-22
1044France2026-09-27
1045Brazil2026-09-12
1046India2026-09-22
1047United Kingdom2026-09-14
1048United Kingdom2026-09-13
1049Russia2026-10-07

On-Demand Data

NameIdCountryDate
Jennifer Q Chui1000Italy2026-09-23
Ivar L Bowley1001Japan2026-10-08
Chavez P Saylors1002India2026-10-08
Stacey J Gaucho1003Canada2026-10-03
Morrow V Inouye1004Brazil2026-09-12
Octavia J Bowley1005United Kingdom2026-09-22
Misaki S Slusarski1006Canada2026-09-18
Costa Q Shinko1007Argentina2026-09-29
Kadeem L Caudy1008India2026-09-18
Adams V Maclead1009Russia2026-09-15
Clifford Y Darakjy1010Canada2026-09-17
Ricardo X Stockham1011Russia2026-09-12
Ricardo F Poquette1012Italy2026-09-10
Rodrigues Q Vocelka1013Australia2026-09-12
Wickens S Poquette1014France2026-09-12
Misaki F Sergi1015Brazil2026-09-24
Aruna K Ferencz1016Russia2026-10-02
Isabel P Venere1017Japan2026-09-14
Mujtaba U Kolmetz1018France2026-09-26
Deepesh L Amigon1019India2026-09-28
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Nicolas K TollnerUnited KingdomAsiya Javayant UNQUALIFIED
Jefferson W StockhamRussiaXuxue Feng QUALIFIED
Nicolas E MacleadBrazilStephen Shaw UNQUALIFIED
Silvio S NickaUnited KingdomXuxue Feng PROPOSAL
Tony C ChuiBrazilAsiya Javayant NEW
Darci P RimIndiaIvan Magalhaes UNQUALIFIED
Kaitlin I SergiItalyBernardo Dominic NEGOTIATION
Smith R CaudyAustraliaAmy Elsner NEW
Johnson G InouyeRussiaOnyama Limba RENEWAL
Ricardo S SchemmerJapanAsiya Javayant NEW
Leja N ButtUnited KingdomStephen Shaw NEW
Smith B IturbideBrazilAnna Fali NEGOTIATION
Johnson G SergiRussiaAnna Fali NEGOTIATION
Emily I RutaSpainElwin Sharvill NEW
Jones I AmigonFranceIoni Bowcher RENEWAL
Jeanfrancois T CampainGermanyIoni Bowcher NEGOTIATION
Morrow F RoysterFranceXuxue Feng NEW
Silvio N NestleJapanIvan Magalhaes RENEWAL
Alejandro I KolmetzCanadaIoni Bowcher RENEWAL
Jefferson P KuskoArgentinaIvan Magalhaes UNQUALIFIED
Jones Y WieserItalyElwin Sharvill NEW
Isabel U InouyeIndiaXuxue Feng NEW
Mujtaba G CaldareraBrazilElwin Sharvill RENEWAL
Greenwood U AlbaresJapanAnna Fali NEGOTIATION
Mayumi K CampainFranceOnyama Limba PROPOSAL
Izzy H FerenczUnited KingdomOnyama Limba RENEWAL
Francesco C KolmetzJapanBernardo Dominic UNQUALIFIED
Salvatore L RulapaughItalyOnyama Limba UNQUALIFIED
Aditya C StensethRussiaIvan Magalhaes NEGOTIATION
Salvatore G InouyeItalyXuxue Feng QUALIFIED
Greenwood Z StockhamUnited KingdomAsiya Javayant NEW
Salvatore S IturbideFranceStephen Shaw PROPOSAL
Deepesh G DarakjyAustraliaBernardo Dominic NEGOTIATION
Chavez H WieserAustraliaElwin Sharvill UNQUALIFIED
Tony S RoysterCanadaAnna Fali PROPOSAL
Mayumi U SchemmerCanadaAmy Elsner UNQUALIFIED
Isabel H ChuiJapanAsiya Javayant UNQUALIFIED
Maisha A RulapaughUnited KingdomElwin Sharvill NEW
Leja H NickaRussiaStephen Shaw PROPOSAL
Jefferson R CaldareraFranceElwin Sharvill 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>