Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Kendo ui aggregate / 5 сообщений из 5, страница 1 из 1
16.09.2014, 17:01
    #38748216
kim-kong
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Kendo ui aggregate
Пытаюсь повторить вот этот пример
http://demos.telerik.com/aspnet-mvc/grid/aggregates
Но в моем случает footer остается пустым, что я делаю не так ?

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
    @(Html.Kendo().Grid<EnzoWayApplication1.Models.IngListViewModel>()
            .Name("grid_#=Id#")
            .Columns(columns =>
            {
                columns.Bound(o => o.amount).Title("Количество")
                    .FooterTemplate(@<text>@item.Sum</text>);
                columns.Bound(o => o.losses).Title("Потери1")
                    .FooterTemplate(@<text>Total: @item.Sum</text>);
                columns.Bound(o => o.reporting_losses).Title("Потери2")
                    .FooterTemplate(@<text>Total: @item.Sum</text>);
            })
            
            .DataSource(dataSource => dataSource
                .Ajax()
                .Aggregates(aggregates =>
                {
                            aggregates.Add(o => o.amount).Sum();
                            aggregates.Add(p => p.losses).Sum();
                            aggregates.Add(p => p.reporting_losses).Sum();
                        })
                .PageSize(10)
                .Read(read => read.Action("IngList_Read", "Products", new { Id = "#=Id#" }))
            )
            
            .Pageable()
            .Sortable()
            .ToClientTemplate()
    )
...
Рейтинг: 0 / 0
21.09.2014, 17:14
    #38752975
kim-kong
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Kendo ui aggregate
Попробовал еще вот так:

Код: c#
1.
2.
columns.Bound(o => o.amount).Title("Количество")
                    .ClientFooterTemplate("#=Sum#");



но теперь template не открыватся
...
Рейтинг: 0 / 0
21.09.2014, 18:27
    #38753008
kim-kong
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Kendo ui aggregate
Посмотрел как я описал свою проблему - не удивительно, что никто не помог.
Постараюсь описать свою проблему более внятно:

Хочу использовать функцию aggregate для kendo ui grid во вложенном гриде.

когда делаю вот так, все работает:

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
@(Html.Kendo().Grid<EnzoWayApplication1.Models.IngredientsViewModel>()
      .Name("grid")
      .Columns(columns =>
      {
          columns.ForeignKey(ing => ing.GoodId, (System.Collections.IEnumerable)ViewBag.Goods, "Id", "Name").Title("Наименование сырья").ClientFooterTemplate("Итого типов сырья на складе: #=count#"); ;
          columns.Bound(ing => ing.Amount).Title("Количество на складе").ClientFooterTemplate("Fabric Count: #=sum#");
          columns.Bound(ing => ing.Date).Title("Дата").Format("{0:dd.MM.yyyy}");
          columns.Command(commands =>
          {
              commands.Edit();
              commands.Destroy();
          }).Title("Действия").Width(215);         
      })
      .ToolBar(toolbar => toolbar.Create())
      .Editable(editable => editable.Mode(GridEditMode.InLine))
      .Pageable(pager => pager.PageSizes(new int[] {20, 50, 100}))
      .Scrollable()
      .Groupable()
      .Sortable()
      .DataSource(dataSource => dataSource
            .Ajax()
            .Model(model =>
                    {
                        model.Id(ingredient => ingredient.Id);
                        model.Field(ingredient => ingredient.Id).Editable(false);
                        
                    })
                    .Aggregates(aggregates =>
                    {
                            aggregates.Add(o => o.Amount).Sum();
                            aggregates.Add(o => o.GoodId).Count();
                    })
                    .Create(create => create.Action("Ingredients_Create", "Ingredients"))
                    .Read(read => read.Action("Ingredients_Read", "Ingredients"))
                    .Update(update => update.Action("Ingredients_Update", "Ingredients"))
                    .Destroy(destroy => destroy.Action("Ingredients_Destroy", "Ingredients"))
                  )
      .Filterable()
)



Но если отобразить Sum или Count во вложенном гриде, то он перестает открываться.

Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
@(Html.Kendo().Grid<EnzoWayApplication1.Models.OrderViewModel>()
      .Name("grid")
      .Columns(columns =>
      {
          columns.Bound(order => order.OrderNum).Title("Номер отгрузки");
          columns.Bound(order => order.ShipDate).Title("Дата отгрузки").Format("{0:dd.MM.yyyy}");
          columns.ForeignKey(order => order.ClientId, (System.Collections.IEnumerable)ViewBag.Client, "Id", "Name").Title("Клиент");
          columns.Command(commands =>
          {
              commands.Edit();
              commands.Destroy();
          }).Title("Действия").Width(215);         
      })
      .ToolBar(toolbar => toolbar.Create())
      .Editable(editable => editable.Mode(GridEditMode.InLine))
      .Pageable(pager => pager.PageSizes(new int[] {20, 50, 100}))
      .Scrollable(scrollable => scrollable.Height(430))
      .Selectable(selectable => selectable
            .Mode(GridSelectionMode.Multiple))
      .Groupable()
      .Sortable()
      .ColumnMenu()
      .ClientDetailTemplateId("orderdetails")
      .Resizable(resize => resize.Columns(true))    
      .DataSource(dataSource => dataSource
            .Ajax()
            .Model(model =>
                    {
                        model.Id(order => order.Id);
                        model.Field(order => order.Id).Editable(false);
                    })
                    .Create(create => create.Action("Orders_Create", "Orders"))
                    .Read(read => read.Action("Orders_Read", "Orders"))
                    .Update(update => update.Action("Orders_Update", "Orders"))
                    .Destroy(destroy => destroy.Action("Orders_Destroy", "Orders"))
                  )
      .Filterable()
)

<script id="orderdetails" type="text/kendo-tmpl">
    @(Html.Kendo().Grid<EnzoWayApplication1.Models.OrderDetailsViewModel>()
            .Name("grid_#=Id#")
            .Columns(columns =>
            {
                columns.Bound(o => o.ProdId).Title("Продукт");
                columns.Bound(o => o.Amount).Title("Кг");
                columns.Command(commands =>
                {
                    commands.Edit();
                    commands.Destroy();
                }).Title("Действия").Width(215);    
            })
            .ToolBar(toolbar => toolbar.Create())
            .Editable(editable => editable.Mode(GridEditMode.InLine))
            .DataSource(dataSource => dataSource
                .Ajax()
                .Model(model =>
                    {
                        model.Id(orderdetail => orderdetail.Id);
                        model.Field(orderdetail => orderdetail.Id).Editable(false);
                    })
                .PageSize(10)
                .Create(create => create.Action("OrderDetails_Create", "Orders"))
                .Read(read => read.Action("OrderDetails_Read", "Orders", new { Id = "#=Id#" }))
                .Update(update => update.Action("OrderDetails_Update", "Orders"))
                .Destroy(destroy => destroy.Action("OrderDetails_Destroy", "Orders"))
            )
            .Pageable()
            .Sortable()
            .ToClientTemplate()
    )
</script>



Что я делаю не так ?
...
Рейтинг: 0 / 0
23.09.2014, 15:58
    #38754884
T_STV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Kendo ui aggregate
kim-kongЧто я делаю не так ?
Задаёте вопрос не на том форуме. У телерика же есть отличный форум. Там быстро помогают по их компонентам.
...
Рейтинг: 0 / 0
26.09.2014, 00:46
    #38758270
kim-kong
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Kendo ui aggregate
Решил проблему, вложенные aggregate нужно выделять \\

Код: html
1.
2.
columns.Bound(o => o.amount).Title("Количество")
                    .ClientFooterTemplate("\\#=Sum\\#");
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Kendo ui aggregate / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]