Krajee

Group Grid Demo #1

Thankful to Krajee! BUY A COFFEEor to get more out of us.

Example showing the grouping of grid data for a single column that is pre-sorted. Note that the extension can group columns, irrespective of the position of the column in the grid (second column in this example). This example also demonstrates grouping on a related field from another table. It also includes an advanced scenario of using \kartik\grid\FormulaColumn to calculate the Amount value.



Tip

Not seeing the updated content on this page! Hard refresh your browser to clean cache for this page (e.g. SHIFT-F5 on Windows Chrome)

Total 77 items.
Grid Grouping Example 1
#SupplierCategoryProduct NameUnit PriceUnits In StockAmount In Stock
 
 
1Exotic LiquidsBeveragesChai18.0039702.00
2Exotic LiquidsBeveragesChang19.0017323.00
3Exotic LiquidsCondimentsAniseed Syrup10.0013130.00
4New Orleans Cajun DelightsCondimentsLouisiana Hot Spiced Okra17.00468.00
5New Orleans Cajun DelightsCondimentsLouisiana Fiery Hot Pepper Sauce21.05761,599.80
6New Orleans Cajun DelightsCondimentsChef Anton's Gumbo Mix21.3500.00
7New Orleans Cajun DelightsCondimentsChef Anton's Cajun Seasoning22.00531,166.00
8Grandma Kelly's HomesteadCondimentsGrandma's Boysenberry Spread25.001203,000.00
9Grandma Kelly's HomesteadCondimentsNorthwoods Cranberry Sauce40.006240.00
10Grandma Kelly's HomesteadProduceUncle Bob's Organic Dried Pears30.0015450.00
11Tokyo TradersMeat/PoultryMishi Kobe Niku97.00292,813.00
12Tokyo TradersProduceLonglife Tofu10.00440.00
13Tokyo TradersSeafoodIkura31.0031961.00
14Cooperativa de Quesos 'Las Cabras'Dairy ProductsQueso Cabrales21.0022462.00
15Cooperativa de Quesos 'Las Cabras'Dairy ProductsQueso Manchego La Pastora38.00863,268.00
16Mayumi'sCondimentsGenen Shouyu15.5039604.50
17Mayumi'sProduceTofu23.2535813.75
18Mayumi'sSeafoodKonbu6.0024144.00
19Pavlova, Ltd.BeveragesOutback Lager15.0015225.00
20Pavlova, Ltd.CondimentsVegie-spread43.90241,053.60
21Pavlova, Ltd.ConfectionsPavlova17.4529506.05
22Pavlova, Ltd.Meat/PoultryAlice Mutton39.0000.00
23Pavlova, Ltd.SeafoodCarnarvon Tigers62.50422,625.00
24Specialty Biscuits, Ltd.ConfectionsTeatime Chocolate Biscuits9.2025230.00
25Specialty Biscuits, Ltd.ConfectionsSir Rodney's Scones10.00330.00
26Specialty Biscuits, Ltd.ConfectionsScottish Longbreads12.50675.00
27Specialty Biscuits, Ltd.ConfectionsSir Rodney's Marmalade81.00403,240.00
28PB Knckebrd ABGrains/CerealsTunnbrd9.0061549.00
29PB Knckebrd ABGrains/CerealsGustaf's Knckebrd21.001042,184.00
30Refrescos Americanas LTDABeveragesGuaran Fantstica4.502090.00
31Heli Swaren GmbH & Co. KGConfectionsNuNuCa Nu-Nougat-Creme14.00761,064.00
32Heli Swaren GmbH & Co. KGConfectionsGumbr Gummibrchen31.2315468.45
33Heli Swaren GmbH & Co. KGConfectionsSchoggi Schokolade43.90492,151.10
34Plutzer Lebensmittelgromrkte AGBeveragesRhnbru Klosterbier7.75125968.75
35Plutzer Lebensmittelgromrkte AGCondimentsOriginal Frankfurter grne Soe13.0032416.00
36Plutzer Lebensmittelgromrkte AGGrains/CerealsWimmers gute Semmelkndel33.2522731.50
37Plutzer Lebensmittelgromrkte AGMeat/PoultryThringer Rostbratwurst123.7900.00
38Plutzer Lebensmittelgromrkte AGProduceRssle Sauerkraut45.60261,185.60
39Nord-Ost-Fisch Handelsgesellschaft mbHSeafoodNord-Ost Matjeshering25.8910258.90
40Formaggi Fortini s.r.l.Dairy ProductsGorgonzola Telino12.5000.00
41Formaggi Fortini s.r.l.Dairy ProductsMascarpone Fabioli32.009288.00
42Formaggi Fortini s.r.l.Dairy ProductsMozzarella di Giovanni34.8014487.20
43Norske MeierierDairy ProductsGeitost2.50112280.00
44Norske MeierierDairy ProductsFlotemysost21.5026559.00
45Norske MeierierDairy ProductsGudbrandsdalsost36.0026936.00
46Bigfoot BreweriesBeveragesLaughing Lumberjack Lager14.0052728.00
47Bigfoot BreweriesBeveragesSasquatch Ale14.001111,554.00
48Bigfoot BreweriesBeveragesSteeleye Stout18.0020360.00
49Svensk Sjfda ABSeafoodRd Kaviar15.001011,515.00
50Svensk Sjfda ABSeafoodInlagd Sill19.001122,128.00
51Svensk Sjfda ABSeafoodGravad lax26.0011286.00
52Aux joyeux ecclsiastiquesBeveragesChartreuse verte18.00691,242.00
53Aux joyeux ecclsiastiquesBeveragesCte de Blaye263.50174,479.50
54New England Seafood CannerySeafoodJack's New England Clam Chowder9.6585820.25
55New England Seafood CannerySeafoodBoston Crab Meat18.401232,263.20
56Leka TradingBeveragesIpoh Coffee46.0017782.00
57Leka TradingCondimentsGula Malacca19.4527525.15
58Leka TradingGrains/CerealsSingaporean Hokkien Fried Mee14.0026364.00
59LyngbysildSeafoodRogede sild9.50547.50
60LyngbysildSeafoodSpegesild12.00951,140.00
61Zaanse SnoepfabriekConfectionsZaanse koeken9.5036342.00
62Zaanse SnoepfabriekConfectionsChocolade12.7515191.25
63Karkki OyBeveragesLakkalikri18.00571,026.00
64Karkki OyConfectionsValkoinen suklaa16.25651,056.25
65Karkki OyConfectionsMaxilaku20.0010200.00
66G'day, MateGrains/CerealsFilo Mix7.0038266.00
67G'day, MateMeat/PoultryPerth Pasties32.8000.00
68G'day, MateProduceManjimup Dried Apples53.00201,060.00
69Ma MaisonMeat/PoultryTourtire7.4521156.45
70Ma MaisonMeat/PoultryPt chinois24.001152,760.00
71Pasta Buttini s.r.l.Grains/CerealsRavioli Angelo19.5036702.00
72Pasta Buttini s.r.l.Grains/CerealsGnocchi di nonna Alice38.0021798.00
73Escargots NouveauxSeafoodEscargots de Bourgogne13.2562821.50
74Gai pturageDairy ProductsCamembert Pierrot34.0019646.00
75Gai pturageDairy ProductsRaclette Courdavault55.00794,345.00
76Forts d'rablesCondimentsSirop d'rable28.501133,220.50
77Forts d'rablesConfectionsTarte au sucre49.3017838.10
   Page Summary28.873,11974,050.85
echo GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'showPageSummary' => true,
    'pjax' => true,
    'striped' => true,
    'hover' => true,
    'panel' => ['type' => 'primary', 'heading' => 'Grid Grouping Example'],
    'toggleDataContainer' => ['class' => 'btn-group mr-2 me-2'],
    'columns' => [
        ['class' => 'kartik\grid\SerialColumn'],
        [
            'attribute' => 'supplier_id', 
            'width' => '310px',
            'value' => function ($model, $key, $index, $widget) { 
                return $model->supplier->company_name;
            },
            'filterType' => GridView::FILTER_SELECT2,
            'filter' => ArrayHelper::map(Suppliers::find()->orderBy('company_name')->asArray()->all(), 'id', 'company_name'), 
            'filterWidgetOptions' => [
                'pluginOptions' => ['allowClear' => true],
            ],
            'filterInputOptions' => ['placeholder' => 'Any supplier'],
            'group' => true,  // enable grouping
        ],
        [
            'attribute' => 'category_id', 
            'width' => '250px',
            'value' => function ($model, $key, $index, $widget) { 
                return $model->category->category_name;
            },
            'filterType' => GridView::FILTER_SELECT2,
            'filter' => ArrayHelper::map(Categories::find()->orderBy('category_name')->asArray()->all(), 'id', 'category_name'), 
            'filterWidgetOptions' => [
                'pluginOptions' => ['allowClear' => true],
            ],
            'filterInputOptions' => ['placeholder' => 'Any category']
        ],
        [
            'attribute' => 'product_name',
            'pageSummary' => 'Page Summary',
            'pageSummaryOptions' => ['class' => 'text-right text-end'],
        ],
        [
            'attribute' => 'unit_price',
            'width' => '150px',
            'hAlign' => 'right',
            'format' => ['decimal', 2],
            'pageSummary' => true,
            'pageSummaryFunc' => GridView::F_AVG
        ],
        [
            'attribute' => 'units_in_stock',
            'width' => '150px',
            'hAlign' => 'right',
            'format' => ['decimal', 0],
            'pageSummary' => true
        ],
        [
            'class' => 'kartik\grid\FormulaColumn',
            'header' => 'Amount In Stock',
            'value' => function ($model, $key, $index, $widget) { 
                $p = compact('model', 'key', 'index');
                return $widget->col(4, $p) * $widget->col(5, $p);
            },
            'mergeHeader' => true,
            'width' => '150px',
            'hAlign' => 'right',
            'format' => ['decimal', 2],
            'pageSummary' => true
        ],
    ],
]);

Note

You can now visit the Krajee Webtips Q & A forum for searching OR asking questions OR helping programmers with answers on these extensions and plugins. For asking a question click here. Select the appropriate question category (i.e. Krajee Plugins) and choose this current page plugin in the question related to field.

The comments and discussion section below are intended for generic discussions or feedback for this plugin. Developers may not be able to search or lookup here specific questions or tips on usage for this plugin.

 
visitors to Krajee Yii2 Demos since 22-May-2017