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
James F WhobreySpainIvan Magalhaes UNQUALIFIED
Costa W PoquetteSpainElwin Sharvill NEGOTIATION
Silvio U StensethItalyIvan Magalhaes UNQUALIFIED
Francesco W AmigonRussiaAnna Fali QUALIFIED
Claire T DarakjyIndiaElwin Sharvill RENEWAL
Salvatore D ShinkoAustraliaIoni Bowcher RENEWAL
Cody R PoquetteCanadaOnyama Limba NEGOTIATION
Nicolas P RulapaughUnited KingdomAmy Elsner NEGOTIATION
Octavia U MacleadAustraliaOnyama Limba UNQUALIFIED
Johnson A FigeroaAustraliaAmy Elsner UNQUALIFIED
Ivar M SaylorsRussiaIvan Magalhaes UNQUALIFIED
Alejandro F RoysterUnited KingdomAnna Fali PROPOSAL
Jennifer S RutaBrazilXuxue Feng QUALIFIED
Jeanfrancois V SergiSpainXuxue Feng NEGOTIATION
Clifford U RimGermanyAsiya Javayant RENEWAL
Aruna H RutaJapanIvan Magalhaes UNQUALIFIED
Arvin R MarrierJapanStephen Shaw UNQUALIFIED
Chavez C AmigonArgentinaBernardo Dominic NEGOTIATION
Emily P ChuiRussiaIoni Bowcher UNQUALIFIED
Jennifer K NickaArgentinaXuxue Feng RENEWAL
Maria B ChuiBrazilElwin Sharvill UNQUALIFIED
Wickens O WhobreyCanadaStephen Shaw NEW
David B GarufiFranceElwin Sharvill NEGOTIATION
Faith Z NestleCanadaAnna Fali RENEWAL
Stacey I BowleyUnited KingdomBernardo Dominic UNQUALIFIED
Mujtaba B DilliardJapanAnna Fali QUALIFIED
Ashley Y KolmetzJapanAsiya Javayant UNQUALIFIED
Antonio W GillianFranceBernardo Dominic NEW
Sinclair A RutaJapanIvan Magalhaes QUALIFIED
Izzy L GauchoUnited KingdomIvan Magalhaes QUALIFIED
Mayumi N BriddickSpainOnyama Limba PROPOSAL
Morrow U KuskoGermanyElwin Sharvill QUALIFIED
Jefferson F KolmetzBrazilAmy Elsner RENEWAL
Mayumi N FigeroaJapanAsiya Javayant NEW
Maisha U OldroydArgentinaStephen Shaw PROPOSAL
Wickens Z KolmetzSpainIoni Bowcher PROPOSAL
Izzy I ShinkoJapanIvan Magalhaes RENEWAL
David U DoeArgentinaStephen Shaw PROPOSAL
Leon N DoeBrazilIvan Magalhaes PROPOSAL
Jeanfrancois F CaldareraJapanXuxue Feng PROPOSAL
Maisha P OldroydArgentinaIoni Bowcher PROPOSAL
Ricardo Q FerenczArgentinaAnna Fali NEW
Rodrigues O PoquetteItalyAmy Elsner QUALIFIED
Deepesh X PaprockiItalyAmy Elsner UNQUALIFIED
Chavez I SlusarskiFranceElwin Sharvill QUALIFIED
Morrow J AmigonJapanAmy Elsner NEW
Sinclair F TollnerJapanAsiya Javayant NEGOTIATION
Ashley T SchemmerSpainXuxue Feng NEGOTIATION
Octavia U CaudyFranceAnna Fali QUALIFIED
Leja A OldroydSpainElwin Sharvill PROPOSAL
Horizontal
NameCountryRepresentativeStatus
Rodrigues E StensethAustraliaStephen Shaw PROPOSAL
Costa E FigeroaItalyXuxue Feng NEW
Octavia N MaletItalyIvan Magalhaes NEW
Wickens L MaletIndiaElwin Sharvill NEGOTIATION
Darci T IturbideCanadaStephen Shaw NEGOTIATION
Stacey W RimUnited KingdomAnna Fali NEGOTIATION
Deepesh P FerenczBrazilIoni Bowcher RENEWAL
Juan A GlickJapanStephen Shaw NEW
Kadeem D MaletSpainBernardo Dominic PROPOSAL
Leon R AmigonItalyAmy Elsner PROPOSAL
Horizontal and Vertical
IdNameCountryDateCompanyStatusActivityRepresentative
1000Mujtaba U MorascaItaly2026-08-29Commercial Press NEGOTIATION87Onyama Limba
1001Tony N SaylorsJapan2026-08-21King, Christopher A Esq NEGOTIATION67Ioni Bowcher
1002Ashley O FollerAustralia2026-09-06Commercial Press NEGOTIATION0Asiya Javayant
1003Jones Z BriddickRussia2026-09-18Benton, John B Jr RENEWAL89Asiya Javayant
1004James L NestleAustralia2026-08-31Morlong Associates RENEWAL98Elwin Sharvill
1005Leja A CaldareraCanada2026-09-01Benton, John B Jr NEW13Asiya Javayant
1006Clifford T GillianRussia2026-09-03Feiner Bros PROPOSAL88Ivan Magalhaes
1007Isabel E NickaSpain2026-08-26Chanay, Jeffrey A Esq RENEWAL61Onyama Limba
1008Leon J OldroydSpain2026-08-29Commercial Press RENEWAL59Amy Elsner
1009Kaitlin H BowleyGermany2026-09-07Printing Dimensions NEGOTIATION76Ioni Bowcher
1010Costa A RulapaughGermany2026-09-10Morlong Associates RENEWAL75Bernardo Dominic
1011Stacey C MacleadRussia2026-09-09Feiner Bros UNQUALIFIED33Stephen Shaw
1012Mayumi U OldroydRussia2026-09-18Rousseaux, Michael Esq NEGOTIATION18Amy Elsner
1013Isabel S RimFrance2026-09-14Rangoni Of Florence NEGOTIATION26Amy Elsner
1014Ivar L CampainItaly2026-09-05Rousseaux, Michael Esq PROPOSAL19Xuxue Feng
1015Deepesh S BologniaUnited Kingdom2026-09-15Rousseaux, Michael Esq NEGOTIATION83Ivan Magalhaes
1016Kadeem R SaylorsCanada2026-09-14Rangoni Of Florence PROPOSAL7Amy Elsner
1017Juan C InouyeJapan2026-09-18King, Christopher A Esq RENEWAL76Onyama Limba
1018Emily V SaylorsJapan2026-09-14Feltz Printing Service PROPOSAL52Ivan Magalhaes
1019Emily U GlickArgentina2026-08-25Morlong Associates PROPOSAL47Amy Elsner
1020Leon V OldroydRussia2026-09-07Rangoni Of Florence PROPOSAL15Asiya Javayant
1021Ivar N WhobreyItaly2026-09-02Rangoni Of Florence NEW20Stephen Shaw
1022Murillo R RulapaughItaly2026-08-26Chemel, James L Cpa UNQUALIFIED74Xuxue Feng
1023Arvin Y PoquetteRussia2026-09-05Benton, John B Jr RENEWAL61Ioni Bowcher
1024Johnson N KolmetzFrance2026-09-13Commercial Press NEW5Ivan Magalhaes
1025Mujtaba P AmigonIndia2026-08-28Rousseaux, Michael Esq UNQUALIFIED93Stephen Shaw
1026Aika G GauchoRussia2026-09-09King, Christopher A Esq PROPOSAL3Amy Elsner
1027Jennifer U ChuiItaly2026-09-12Rousseaux, Michael Esq PROPOSAL94Ioni Bowcher
1028Julie J IturbideIndia2026-08-27Truhlar And Truhlar Attys NEW38Onyama Limba
1029Wickens A InouyeUnited Kingdom2026-09-02Chanay, Jeffrey A Esq QUALIFIED92Stephen Shaw
1030Greenwood U BowleyArgentina2026-09-05Dorl, James J Esq PROPOSAL27Onyama Limba
1031Aika X StockhamJapan2026-09-08Truhlar And Truhlar Attys UNQUALIFIED71Asiya Javayant
1032Leon L DarakjyArgentina2026-09-14Feltz Printing Service NEW33Xuxue Feng
1033Octavia A CaudyJapan2026-09-08King, Christopher A Esq PROPOSAL78Ivan Magalhaes
1034Jeanfrancois Y FerenczArgentina2026-08-22Rousseaux, Michael Esq UNQUALIFIED68Ioni Bowcher
1035Nicolas R FerenczRussia2026-09-01Chanay, Jeffrey A Esq QUALIFIED27Onyama Limba
1036Greenwood M MorascaIndia2026-09-04Chapman, Ross E Esq UNQUALIFIED58Elwin Sharvill
1037Aditya Q SlusarskiGermany2026-09-16Feltz Printing Service PROPOSAL2Ivan Magalhaes
1038Izzy Y RimGermany2026-08-30King, Christopher A Esq NEGOTIATION45Asiya Javayant
1039Munro A CaudyAustralia2026-08-31Printing Dimensions UNQUALIFIED59Amy Elsner
1040Salvatore H MacleadAustralia2026-09-10Morlong Associates PROPOSAL27Ivan Magalhaes
1041Deepesh E WieserBrazil2026-09-05Feltz Printing Service UNQUALIFIED48Asiya Javayant
1042Juan Y ButtCanada2026-08-30Chapman, Ross E Esq PROPOSAL11Ivan Magalhaes
1043Izzy S OldroydGermany2026-09-10Chapman, Ross E Esq NEGOTIATION13Bernardo Dominic
1044Cody F FollerAustralia2026-09-13Printing Dimensions UNQUALIFIED28Asiya Javayant
1045Jefferson U TollnerFrance2026-09-02Chapman, Ross E Esq NEGOTIATION10Bernardo Dominic
1046Clifford V RimSpain2026-09-06Rangoni Of Florence UNQUALIFIED95Anna Fali
1047Maisha L BologniaBrazil2026-08-23Buckley Miller Wright UNQUALIFIED6Ivan Magalhaes
1048Maria V MaletJapan2026-08-29Chanay, Jeffrey A Esq PROPOSAL34Bernardo Dominic
1049Costa H RimArgentina2026-09-08Rangoni Of Florence NEGOTIATION28Bernardo Dominic
Frozen Rows
NameCountryRepresentativeStatus
Deepesh Q GauchoAustraliaAmy Elsner PROPOSAL
Nicolas R GlickRussiaXuxue Feng PROPOSAL
Maria Q GarufiArgentinaBernardo Dominic PROPOSAL
Jones S PerinFranceAsiya Javayant NEW
Aditya S ButtGermanyIvan Magalhaes NEW
Francesco H SaylorsBrazilIoni Bowcher UNQUALIFIED
Maisha F DoeCanadaIoni Bowcher PROPOSAL
Francesco W KuskoSpainIoni Bowcher PROPOSAL
Isabel E GauchoItalyIvan Magalhaes RENEWAL
Julie E SaylorsSpainAnna Fali RENEWAL
Chavez M ShinkoFranceAsiya Javayant UNQUALIFIED
Johnson I FlosiAustraliaAmy Elsner QUALIFIED
Jones D InouyeAustraliaAsiya Javayant PROPOSAL
Izzy H MaletUnited KingdomAmy Elsner NEGOTIATION
Maria L GlickIndiaStephen Shaw UNQUALIFIED
Rodrigues R WieserJapanOnyama Limba RENEWAL
Izzy S FigeroaArgentinaAmy Elsner NEGOTIATION
Francesco U ButtRussiaAsiya Javayant PROPOSAL
Sinclair M TollnerAustraliaIoni Bowcher QUALIFIED
Adams F MacleadBrazilIoni Bowcher PROPOSAL
Smith Q AlbaresGermanyAnna Fali QUALIFIED
Johnson U KuskoIndiaStephen Shaw NEGOTIATION
Ivar T ButtRussiaOnyama Limba NEGOTIATION
Ivar E MarrierArgentinaOnyama Limba RENEWAL
Ashley B WhobreyCanadaAnna Fali UNQUALIFIED
Darci F CaldareraIndiaOnyama Limba UNQUALIFIED
Octavia V SaylorsAustraliaIvan Magalhaes NEW
Izzy P CampainAustraliaAnna Fali PROPOSAL
Leon I RoysterArgentinaElwin Sharvill PROPOSAL
Munro D IturbideSpainElwin Sharvill NEW
Costa O MorascaArgentinaOnyama Limba NEW
Chavez U SergiIndiaAnna Fali PROPOSAL
Isabel Y PaprockiIndiaOnyama Limba RENEWAL
Ivar O TollnerFranceIoni Bowcher UNQUALIFIED
Deepesh J BriddickAustraliaAmy Elsner QUALIFIED
Silvio W CaudyUnited KingdomIvan Magalhaes NEGOTIATION
David M MaletCanadaAnna Fali QUALIFIED
Francesco O VocelkaBrazilAsiya Javayant NEW
Deepesh C PoquetteJapanIoni Bowcher RENEWAL
Wickens A NestleArgentinaBernardo Dominic QUALIFIED
Cody D TollnerGermanyAmy Elsner PROPOSAL
Kaitlin Y GlickFranceXuxue Feng NEW
Mayumi V AlbaresIndiaElwin Sharvill RENEWAL
Maria J FlosiJapanAsiya Javayant UNQUALIFIED
Leja D WaycottFranceIvan Magalhaes PROPOSAL
Johnson S FollerArgentinaStephen Shaw NEGOTIATION
Octavia D RoysterRussiaStephen Shaw RENEWAL
Adams K BologniaCanadaAmy Elsner NEGOTIATION
Isabel X FollerRussiaAmy Elsner NEGOTIATION
Maria O RulapaughIndiaAsiya Javayant NEGOTIATION
Frozen Columns
Name
Misaki I Saylors
Ricardo X Nestle
Emily Q Gaucho
Cody S Ostrosky
Julie S Gillian
Salvatore M Morasca
Greenwood U Chui
Francesco I Doe
Morrow E Stockham
Arvin G Rim
Aika E Stenseth
Kadeem Y Kolmetz
Isabel V Wieser
Jefferson Q Briddick
Julie Q Foller
Leja E Nestle
Arvin L Foller
Misaki T Foller
Wickens L Iturbide
Octavia C Paprocki
Mayumi N Oldroyd
Kadeem Q Gillian
Octavia U Briddick
Emily N Amigon
Adams N Figeroa
Morrow O Campain
Deepesh E Figeroa
Claire R Ostrosky
Faith T Dilliard
Murillo G Amigon
Leon O Chui
James M Campain
Smith O Waycott
Chavez O Stockham
Isabel U Kolmetz
Deepesh V Marrier
Costa M Vocelka
Morrow Q Saylors
Kadeem V Oldroyd
Jefferson C Glick
Julie L Figeroa
Aruna E Rulapaugh
Nicolas C Briddick
Jefferson H Rim
Julie W Dilliard
Nicolas D Doe
Adams Y Dilliard
Smith B Inouye
Kadeem J Caldarera
Morrow Q Garufi
IdCountryDate
1000Spain2026-08-27
1001Russia2026-09-07
1002Japan2026-09-11
1003Japan2026-09-05
1004Germany2026-09-09
1005Argentina2026-09-12
1006Russia2026-09-13
1007Argentina2026-09-09
1008Canada2026-09-18
1009Japan2026-09-10
1010United Kingdom2026-08-22
1011Russia2026-09-18
1012United Kingdom2026-09-14
1013Italy2026-09-05
1014United Kingdom2026-09-13
1015Spain2026-09-17
1016Brazil2026-09-02
1017Germany2026-09-02
1018United Kingdom2026-09-09
1019India2026-08-30
1020Canada2026-08-30
1021Canada2026-08-21
1022Australia2026-08-31
1023United Kingdom2026-09-06
1024Canada2026-08-31
1025Argentina2026-08-29
1026France2026-08-28
1027Spain2026-08-26
1028Australia2026-08-30
1029Italy2026-09-02
1030Germany2026-09-09
1031Australia2026-09-18
1032France2026-09-13
1033Canada2026-09-17
1034Spain2026-09-03
1035Russia2026-09-19
1036Germany2026-09-13
1037France2026-08-29
1038Germany2026-09-18
1039India2026-09-03
1040India2026-08-29
1041Germany2026-08-26
1042Canada2026-08-21
1043India2026-09-12
1044Australia2026-09-18
1045Japan2026-09-11
1046Russia2026-08-23
1047Canada2026-08-29
1048Spain2026-08-24
1049India2026-09-09

On-Demand Data

NameIdCountryDate
Morrow O Caldarera1000India2026-09-19
Misaki I Amigon1001Germany2026-09-09
Wickens O Nicka1002United Kingdom2026-09-08
Faith G Nestle1003Germany2026-09-11
Claire U Vocelka1004India2026-09-09
Cody C Venere1005Argentina2026-09-19
Aruna F Paprocki1006India2026-09-04
Greenwood R Wieser1007Italy2026-09-01
Jeanfrancois Z Royster1008France2026-09-15
Ashley C Slusarski1009Germany2026-08-28
Jeanfrancois F Bowley1010Brazil2026-08-29
Nicolas H Ferencz1011United Kingdom2026-09-15
Leja O Schemmer1012India2026-09-09
Mujtaba J Bolognia1013Russia2026-09-06
Maria F Morasca1014Canada2026-08-29
Kadeem D Stockham1015Spain2026-09-07
Leja X Nicka1016Spain2026-09-08
Munro A Inouye1017Australia2026-08-31
Salvatore M Doe1018Argentina2026-09-12
Antonio I Darakjy1019United Kingdom2026-08-25
Virtual Scrolling - 20000 Rows
NameCountryRepresentativeStatus
Ivar U WaycottBrazilAnna Fali UNQUALIFIED
Darci O PerinArgentinaIoni Bowcher QUALIFIED
Maria M FigeroaJapanElwin Sharvill NEGOTIATION
Aditya M IturbideItalyOnyama Limba PROPOSAL
Maisha G AmigonIndiaOnyama Limba NEW
Nicolas Q RimFranceElwin Sharvill QUALIFIED
Stacey T StensethIndiaBernardo Dominic PROPOSAL
Jones A FollerGermanyAmy Elsner PROPOSAL
Arvin E FollerSpainOnyama Limba NEGOTIATION
Jefferson N KolmetzFranceStephen Shaw PROPOSAL
Octavia I DilliardBrazilAnna Fali QUALIFIED
Isabel E GillianUnited KingdomElwin Sharvill NEW
Ricardo K GillianItalyIoni Bowcher QUALIFIED
Aditya F IturbideSpainIvan Magalhaes PROPOSAL
Wickens K WaycottArgentinaIvan Magalhaes NEW
Francesco U RoysterArgentinaIvan Magalhaes RENEWAL
Darci Y KolmetzArgentinaBernardo Dominic QUALIFIED
Leon O CaldareraBrazilStephen Shaw PROPOSAL
Smith R WaycottItalyAsiya Javayant RENEWAL
Juan J FigeroaSpainAmy Elsner NEGOTIATION
Claire G OldroydRussiaIvan Magalhaes UNQUALIFIED
Maisha M NickaSpainXuxue Feng NEW
Wickens N GillianSpainAnna Fali NEGOTIATION
Ricardo V GlickRussiaXuxue Feng NEGOTIATION
David P BriddickSpainIoni Bowcher UNQUALIFIED
Tony R ChuiUnited KingdomStephen Shaw NEW
Jones S VocelkaArgentinaBernardo Dominic NEW
Ivar F NickaRussiaIoni Bowcher PROPOSAL
Mujtaba N AlbaresGermanyAnna Fali UNQUALIFIED
Murillo E IturbideIndiaBernardo Dominic PROPOSAL
Maria Y RutaGermanyAsiya Javayant NEW
Leja H SaylorsGermanyAnna Fali NEW
Antonio M CampainJapanAnna Fali QUALIFIED
Salvatore R AmigonArgentinaBernardo Dominic UNQUALIFIED
Smith X DarakjyAustraliaStephen Shaw PROPOSAL
Maria J BriddickGermanyOnyama Limba QUALIFIED
Jennifer C MaletCanadaIoni Bowcher PROPOSAL
Cody C NickaCanadaIoni Bowcher RENEWAL
Aditya Z SlusarskiArgentinaStephen Shaw UNQUALIFIED
Smith V PerinFranceStephen Shaw NEW

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