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
Kadeem B KuskoIndiaElwin Sharvill NEW
Jeanfrancois C StensethFranceBernardo Dominic QUALIFIED
Francesco I CaldareraSpainIoni Bowcher UNQUALIFIED
Leja E ButtJapanStephen Shaw NEGOTIATION
Jefferson K SaylorsCanadaBernardo Dominic NEGOTIATION
Jones O ChuiFranceXuxue Feng PROPOSAL
Aruna L GlickSpainElwin Sharvill NEGOTIATION
Julie W ShinkoRussiaXuxue Feng NEGOTIATION
Julie Y WaycottRussiaBernardo Dominic RENEWAL
Nicolas D FigeroaIndiaXuxue Feng UNQUALIFIED
Claire Q StensethCanadaAmy Elsner NEW
Leon O RutaIndiaAsiya Javayant NEW
Jefferson Y ChuiArgentinaIoni Bowcher NEGOTIATION
Izzy B GarufiArgentinaBernardo Dominic RENEWAL
Juan B KuskoItalyIoni Bowcher NEW
Ivar O MaletArgentinaAnna Fali QUALIFIED
Salvatore E MaletFranceBernardo Dominic QUALIFIED
Costa Z DarakjyUnited KingdomStephen Shaw NEW
Munro I IturbideBrazilXuxue Feng PROPOSAL
Jeanfrancois M SaylorsRussiaIoni Bowcher UNQUALIFIED
Jennifer G ChuiCanadaElwin Sharvill QUALIFIED
Leja O IturbideAustraliaIvan Magalhaes NEW
Misaki T AlbaresJapanElwin Sharvill QUALIFIED
Aika A NestleRussiaIoni Bowcher PROPOSAL
Jefferson I DarakjyCanadaAsiya Javayant NEGOTIATION
Tony B NickaItalyStephen Shaw RENEWAL
Aditya D DarakjyRussiaAnna Fali QUALIFIED
Darci I RoysterCanadaStephen Shaw RENEWAL
Faith D AmigonAustraliaAnna Fali UNQUALIFIED
Johnson I NestleFranceOnyama Limba NEGOTIATION
Murillo U VocelkaUnited KingdomAnna Fali QUALIFIED
Mayumi I WaycottJapanAnna Fali UNQUALIFIED
David P KolmetzBrazilStephen Shaw QUALIFIED
Murillo I SchemmerIndiaAsiya Javayant RENEWAL
Mujtaba V MorascaFranceAsiya Javayant QUALIFIED
Izzy Y SchemmerCanadaOnyama Limba QUALIFIED
Nicolas M FerenczItalyAnna Fali QUALIFIED
Mayumi G BriddickArgentinaIvan Magalhaes NEGOTIATION
Misaki B OldroydItalyAmy Elsner QUALIFIED
David K SergiRussiaAsiya Javayant NEW
Kadeem J PerinRussiaOnyama Limba NEGOTIATION
Clifford G CampainIndiaElwin Sharvill UNQUALIFIED
Kaitlin A PaprockiBrazilOnyama Limba NEGOTIATION
Costa K PaprockiSpainIoni Bowcher PROPOSAL
Leja A FigeroaAustraliaElwin Sharvill RENEWAL
Faith D PoquetteBrazilElwin Sharvill QUALIFIED
Kaitlin S GarufiAustraliaIvan Magalhaes PROPOSAL
Cody I RulapaughUnited KingdomIvan Magalhaes QUALIFIED
Isabel X GauchoFranceAmy Elsner NEW
Mayumi F KuskoSpainOnyama Limba PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Juan S CaldareraBrazilXuxue Feng NEGOTIATION
Stacey N MarrierItalyOnyama Limba UNQUALIFIED
Jeanfrancois Y AmigonUnited KingdomIvan Magalhaes UNQUALIFIED
Salvatore O OldroydSpainXuxue Feng PROPOSAL
Arvin M StockhamSpainStephen Shaw UNQUALIFIED
Arvin T CampainArgentinaOnyama Limba NEW
Arvin Q SlusarskiJapanAsiya Javayant RENEWAL
Isabel Y MorascaJapanIoni Bowcher PROPOSAL
Morrow E PaprockiAustraliaIvan Magalhaes PROPOSAL
Jones X InouyeCanadaAsiya Javayant NEGOTIATION
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mayumi T StockhamFrance2026-09-13Chemel, James L Cpa NEGOTIATION42Bernardo Dominic
1001Misaki P RoysterIndia2026-09-03Dorl, James J Esq NEW55Amy Elsner
1002Murillo U RulapaughIndia2026-09-24Dorl, James J Esq RENEWAL34Bernardo Dominic
1003Nicolas A NestleRussia2026-09-06King, Christopher A Esq PROPOSAL92Amy Elsner
1004Kadeem U SchemmerAustralia2026-09-03Feltz Printing Service QUALIFIED89Asiya Javayant
1005Maria W GarufiArgentina2026-09-10Benton, John B Jr UNQUALIFIED67Bernardo Dominic
1006Jones K WieserJapan2026-09-24Commercial Press PROPOSAL70Anna Fali
1007Stacey I DarakjyFrance2026-09-21Dorl, James J Esq QUALIFIED86Ioni Bowcher
1008Johnson S ButtBrazil2026-09-03Morlong Associates NEGOTIATION51Xuxue Feng
1009Mujtaba J WhobreySpain2026-09-29Dorl, James J Esq NEW48Elwin Sharvill
1010Alejandro B InouyeArgentina2026-09-12Feltz Printing Service QUALIFIED51Onyama Limba
1011Maisha Y VenereIndia2026-09-23Chanay, Jeffrey A Esq UNQUALIFIED47Elwin Sharvill
1012Mujtaba D ShinkoGermany2026-09-18Dorl, James J Esq PROPOSAL14Stephen Shaw
1013Mujtaba A DilliardGermany2026-09-26Truhlar And Truhlar Attys RENEWAL97Stephen Shaw
1014Leja A FerenczIndia2026-09-05Morlong Associates UNQUALIFIED32Bernardo Dominic
1015Darci W RulapaughGermany2026-09-13Feltz Printing Service NEW21Asiya Javayant
1016Leon M VocelkaSpain2026-09-16Chapman, Ross E Esq PROPOSAL30Anna Fali
1017Kadeem N InouyeGermany2026-09-01Benton, John B Jr NEGOTIATION92Bernardo Dominic
1018Salvatore Q DoeSpain2026-09-09Chapman, Ross E Esq NEW98Ioni Bowcher
1019David A KolmetzArgentina2026-09-07Commercial Press NEW11Stephen Shaw
1020Claire R TollnerIndia2026-09-05Chapman, Ross E Esq UNQUALIFIED16Anna Fali
1021Aruna V StockhamFrance2026-09-22Feltz Printing Service PROPOSAL12Anna Fali
1022Mujtaba I OldroydJapan2026-09-29Benton, John B Jr UNQUALIFIED91Onyama Limba
1023Antonio O BowleyItaly2026-09-21Chemel, James L Cpa UNQUALIFIED86Ioni Bowcher
1024Isabel P FlosiRussia2026-09-08Morlong Associates RENEWAL95Asiya Javayant
1025Jones S ChuiGermany2026-09-20Rangoni Of Florence NEW96Amy Elsner
1026Leon S CampainFrance2026-09-06Feiner Bros QUALIFIED79Amy Elsner
1027Clifford J BologniaItaly2026-09-01Feltz Printing Service UNQUALIFIED3Onyama Limba
1028Octavia C BowleyRussia2026-09-24Rangoni Of Florence UNQUALIFIED89Stephen Shaw
1029Kadeem U DarakjyAustralia2026-09-04Benton, John B Jr QUALIFIED81Anna Fali
1030Mayumi S IturbideRussia2026-09-01Buckley Miller Wright QUALIFIED31Amy Elsner
1031Nicolas E RoysterRussia2026-09-03Feltz Printing Service PROPOSAL32Elwin Sharvill
1032Kadeem E FigeroaAustralia2026-09-26Rangoni Of Florence UNQUALIFIED46Elwin Sharvill
1033Aditya O FollerFrance2026-09-12Chanay, Jeffrey A Esq PROPOSAL23Amy Elsner
1034Aika W MacleadItaly2026-09-06Feiner Bros RENEWAL73Anna Fali
1035Jennifer B GillianGermany2026-09-13Buckley Miller Wright NEGOTIATION78Ivan Magalhaes
1036Kadeem L RutaIndia2026-09-18Rousseaux, Michael Esq PROPOSAL94Elwin Sharvill
1037Deepesh O BologniaBrazil2026-09-23Chapman, Ross E Esq NEGOTIATION74Xuxue Feng
1038Salvatore K FerenczAustralia2026-09-02Morlong Associates QUALIFIED36Onyama Limba
1039Maria X TollnerItaly2026-09-06Benton, John B Jr RENEWAL3Amy Elsner
1040David U OstroskyArgentina2026-09-15Feltz Printing Service UNQUALIFIED6Ioni Bowcher
1041Faith B FollerFrance2026-09-21Feltz Printing Service QUALIFIED72Ioni Bowcher
1042Aruna M InouyeArgentina2026-09-22Chemel, James L Cpa NEGOTIATION68Ivan Magalhaes
1043Silvio V SergiJapan2026-09-01Morlong Associates NEGOTIATION45Ivan Magalhaes
1044Izzy U PoquetteCanada2026-09-08Feiner Bros NEGOTIATION29Asiya Javayant
1045Julie L FigeroaFrance2026-09-15Chapman, Ross E Esq QUALIFIED25Anna Fali
1046James V RimUnited Kingdom2026-09-02King, Christopher A Esq PROPOSAL90Anna Fali
1047Ricardo L MacleadAustralia2026-09-26Morlong Associates PROPOSAL77Onyama Limba
1048Jones V DoeIndia2026-09-23Buckley Miller Wright QUALIFIED36Asiya Javayant
1049Claire C SlusarskiBrazil2026-09-11Rangoni Of Florence UNQUALIFIED93Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Aditya U WaycottJapanBernardo Dominic UNQUALIFIED
Wickens N WhobreyJapanAmy Elsner PROPOSAL
Aruna R KuskoAustraliaAmy Elsner PROPOSAL
Alejandro S BowleyAustraliaIoni Bowcher QUALIFIED
David P AmigonUnited KingdomElwin Sharvill RENEWAL
Emily I PaprockiArgentinaAnna Fali NEW
Aditya A KolmetzItalyStephen Shaw PROPOSAL
Kadeem P RulapaughRussiaBernardo Dominic PROPOSAL
Murillo M ShinkoAustraliaAsiya Javayant NEGOTIATION
Stacey Z NestleIndiaBernardo Dominic NEGOTIATION
Ricardo T CaldareraUnited KingdomStephen Shaw NEGOTIATION
Aruna N RutaArgentinaOnyama Limba QUALIFIED
Nicolas Q OstroskyBrazilIvan Magalhaes NEGOTIATION
Emily Z CampainFranceElwin Sharvill NEW
Arvin V FollerCanadaIoni Bowcher PROPOSAL
Mayumi Y GlickArgentinaXuxue Feng NEGOTIATION
Mayumi G DoeRussiaIoni Bowcher NEGOTIATION
Stacey M VenereArgentinaIoni Bowcher UNQUALIFIED
Maisha F MaletGermanyElwin Sharvill NEW
Leja J KuskoFranceAmy Elsner QUALIFIED
Ashley Y KolmetzItalyIoni Bowcher RENEWAL
Claire M SaylorsItalyBernardo Dominic PROPOSAL
Kadeem Q CaudyBrazilIoni Bowcher NEGOTIATION
Mayumi W SchemmerBrazilAmy Elsner NEGOTIATION
Chavez X CampainJapanIoni Bowcher PROPOSAL
Jones K OstroskyFranceIvan Magalhaes NEW
Ricardo K DilliardAustraliaElwin Sharvill UNQUALIFIED
Aditya H GauchoGermanyAmy Elsner NEW
Julie H NestleArgentinaXuxue Feng NEW
Isabel C PaprockiItalyAsiya Javayant UNQUALIFIED
Aika Y SergiAustraliaOnyama Limba NEW
Leon N KuskoIndiaAsiya Javayant QUALIFIED
James P PoquetteBrazilAnna Fali NEW
Aika I CampainCanadaAsiya Javayant QUALIFIED
Deepesh E RulapaughGermanyIvan Magalhaes NEGOTIATION
Darci X RoysterFranceOnyama Limba PROPOSAL
Rodrigues K ButtItalyStephen Shaw NEW
Morrow C StensethItalyOnyama Limba PROPOSAL
Ashley R WaycottArgentinaAsiya Javayant NEW
Johnson C GillianSpainBernardo Dominic UNQUALIFIED
Emily C GlickCanadaBernardo Dominic PROPOSAL
Faith S CampainFranceBernardo Dominic QUALIFIED
Munro K ShinkoSpainAsiya Javayant NEW
Johnson Y VenereCanadaAmy Elsner PROPOSAL
Jefferson K RulapaughAustraliaXuxue Feng PROPOSAL
Jennifer Z KuskoIndiaOnyama Limba RENEWAL
Jeanfrancois J CaldareraAustraliaAmy Elsner NEW
Kadeem G SlusarskiArgentinaStephen Shaw RENEWAL
Maria T DoeFranceXuxue Feng NEGOTIATION
Antonio W NestleFranceXuxue Feng NEGOTIATION
Frozen Columns
Name
Juan I Maclead
Aruna H Venere
Jefferson T Gaucho
Greenwood K Kolmetz
Mujtaba Y Garufi
Mayumi S Flosi
Nicolas R Waycott
Misaki G Figeroa
Isabel J Vocelka
Ivar U Darakjy
Tony Y Nestle
Nicolas V Amigon
Francesco Y Bolognia
Aruna J Sergi
Arvin R Figeroa
Morrow R Rulapaugh
Aika I Shinko
Arvin Q Figeroa
Octavia M Paprocki
Johnson C Marrier
Kaitlin U Caldarera
Alejandro B Albares
Jones J Tollner
Alejandro S Caldarera
Salvatore G Paprocki
Leja G Figeroa
Aditya X Figeroa
Greenwood E Schemmer
Tony Q Morasca
Ricardo K Saylors
Claire B Stenseth
Nicolas N Ruta
Aditya D Albares
Francesco B Flosi
Octavia Z Shinko
Sinclair T Malet
Leja W Dilliard
Morrow Z Kusko
Jones K Paprocki
Claire S Tollner
Stacey A Nicka
Munro Q Ferencz
Izzy L Bowley
Murillo H Albares
Antonio J Rulapaugh
Jennifer M Perin
Stacey P Stenseth
Jeanfrancois U Inouye
Deepesh U Iturbide
Emily C Albares
IdCountryDate
1000Canada2026-09-18
1001United Kingdom2026-09-25
1002Australia2026-09-29
1003Argentina2026-09-29
1004Germany2026-09-11
1005United Kingdom2026-09-18
1006United Kingdom2026-09-17
1007Australia2026-09-21
1008Canada2026-09-01
1009Brazil2026-09-24
1010Russia2026-09-08
1011Argentina2026-08-31
1012Italy2026-09-21
1013Canada2026-09-04
1014Brazil2026-09-29
1015Brazil2026-08-31
1016India2026-09-18
1017India2026-09-24
1018Italy2026-09-21
1019France2026-09-05
1020Japan2026-09-04
1021Italy2026-09-16
1022Italy2026-09-06
1023Japan2026-09-15
1024Japan2026-09-16
1025Argentina2026-09-17
1026Spain2026-09-23
1027Spain2026-09-06
1028Brazil2026-09-15
1029Australia2026-09-17
1030Japan2026-09-09
1031Brazil2026-09-01
1032Russia2026-09-21
1033Australia2026-09-28
1034Germany2026-09-07
1035France2026-09-05
1036Russia2026-09-14
1037Italy2026-09-07
1038Germany2026-09-08
1039Italy2026-09-26
1040Canada2026-09-29
1041Germany2026-09-10
1042Japan2026-09-12
1043Germany2026-09-12
1044Spain2026-09-04
1045Italy2026-09-24
1046India2026-09-27
1047Canada2026-09-22
1048Australia2026-09-14
1049India2026-09-09

On-Demand Data

NameIdCountryDate
Alejandro H Flosi1000Japan2026-09-01
Deepesh Y Iturbide1001Italy2026-09-23
Juan V Slusarski1002Australia2026-08-31
Leon K Stenseth1003France2026-09-19
Johnson X Wieser1004Japan2026-09-09
Wickens A Schemmer1005Russia2026-09-18
Darci J Inouye1006France2026-09-16
Costa O Poquette1007Germany2026-09-27
Juan T Malet1008Germany2026-09-29
Mujtaba J Rim1009United Kingdom2026-09-01
Misaki T Gillian1010France2026-09-10
Tony P Inouye1011India2026-09-16
Deepesh I Bowley1012Argentina2026-08-31
Maria H Figeroa1013France2026-09-16
Salvatore R Caudy1014India2026-09-12
Aruna M Saylors1015Germany2026-09-01
Cody V Inouye1016United Kingdom2026-09-03
Jennifer A Albares1017Spain2026-09-12
Francesco B Nicka1018Argentina2026-09-23
Chavez J Nestle1019Italy2026-09-26
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Tony A GlickIndiaIoni Bowcher UNQUALIFIED
Jefferson O MaletFranceIoni Bowcher NEGOTIATION
Tony H MarrierCanadaAnna Fali RENEWAL
Deepesh Q OldroydAustraliaIoni Bowcher QUALIFIED
Mayumi M WaycottAustraliaOnyama Limba NEGOTIATION
Antonio R SaylorsUnited KingdomIoni Bowcher QUALIFIED
Mujtaba X RulapaughSpainIoni Bowcher QUALIFIED
Wickens N MarrierCanadaAsiya Javayant RENEWAL
Nicolas V TollnerCanadaAnna Fali NEW
Faith J KolmetzCanadaAmy Elsner NEGOTIATION
Claire G WhobreyRussiaIoni Bowcher NEGOTIATION
Deepesh G KuskoCanadaElwin Sharvill RENEWAL
Kaitlin Q RutaFranceStephen Shaw UNQUALIFIED
Maisha X FlosiBrazilXuxue Feng QUALIFIED
Julie N FigeroaGermanyAsiya Javayant PROPOSAL
Julie D MarrierUnited KingdomAmy Elsner NEW
Jones E RulapaughRussiaAmy Elsner NEGOTIATION
Johnson K KuskoRussiaOnyama Limba PROPOSAL
Kaitlin E RutaJapanOnyama Limba PROPOSAL
Jennifer F InouyeCanadaBernardo Dominic NEGOTIATION
Mayumi T GarufiRussiaIoni Bowcher RENEWAL
Adams G GarufiRussiaBernardo Dominic QUALIFIED
Maisha C SergiIndiaOnyama Limba NEW
Misaki K DarakjyFranceBernardo Dominic PROPOSAL
Faith X GlickBrazilXuxue Feng PROPOSAL
Emily S FollerSpainElwin Sharvill RENEWAL
Aika I GauchoItalyAnna Fali RENEWAL
Julie A SchemmerAustraliaIoni Bowcher UNQUALIFIED
Stacey B RutaArgentinaOnyama Limba PROPOSAL
Arvin J PaprockiBrazilAmy Elsner PROPOSAL
Aruna B GillianSpainAmy Elsner QUALIFIED
Leon H BowleyItalyAmy Elsner RENEWAL
Stacey U BriddickAustraliaOnyama Limba RENEWAL
Jones X KuskoCanadaAnna Fali QUALIFIED
Greenwood E CaldareraSpainAnna Fali NEGOTIATION
Leon N MacleadGermanyAmy Elsner RENEWAL
Misaki K SlusarskiIndiaIvan Magalhaes QUALIFIED
David C MacleadRussiaStephen Shaw NEGOTIATION
Mujtaba V RulapaughIndiaElwin Sharvill NEGOTIATION
Johnson O StensethCanadaElwin 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>