or
var grid = $("#grid").data("kendoGrid");
grid.addRow();
$(".k-grid-edit-row").appendTo("#grid tbody");
<
script
type
=
"text/javascript"
>
$(document).ready(
function () {
$("#ShowDeleted").click(function () {
var grid = $('#grid').data('kendoGrid');
grid.dataSource.read();
grid.refresh();
});
}
);
function getShowDeleted() {
var showDeleted = { "showDeleted": $("#ShowDeleted").is(':checked') };
return showDeleted;
}
/* when all data is loaded into the grid,
* we are able to select either a predefined entry or
* the first one
*/
function dataBound(e) {
var selectedId = '@(this.Model.SelectedId)';
var dataItem, row;
var el = $("#grid");
var grid = el.data("kendoGrid");
$(".deleted").parent('td').parent('tr').addClass("deleted-row");
if (selectedId > 0) {
dataItem = grid.dataSource.get(selectedId);
if (dataItem) {
row = el.find("tbody>tr[data-uid=" + dataItem.uid + "]");
grid.select(row);
}
} else {
row = el.find("tbody>tr:first");
grid.select(row);
}
@if (Model.Operation != OperationType.Read)
{
<
text
>
$("#grid table").removeClass("k-selectable");
</
text
>
}
}
/* we have to do this script on THIS page,
* as the snippet relies on this.select() method
*/
function gridChange(e) {
var data = this.dataItem(this.select());
if (!data) {
return;
}
var propId = data.Id;
var url = kendo.format('@(Server.UrlDecode(Url.Action("DetailsRead", "Address", new { id = "{0}", showDeleted = "{1}" })))',
propId, $("#ShowDeleted").is(':checked'));
$.ajax({
type: 'GET',
url: url,
success: function (response) {
// Update the content div
$('#details').html(response);
}
});
}
</
script
>
@(Html.Kendo().Grid<
AddressViewModel
>()
.Name("grid")
.Events(evt =>
{
// enable grid changing only when in read-mode
if (Model.Operation == OperationType.Read)
{
evt.Change("gridChange");
}
evt.DataBound("dataBound");
})
.DataSource(datasource =>
datasource.Ajax().Read(builder =>
{
builder.Action("Read", "Address", new { id = Model.PersonId });
builder.Data("getShowDeleted");
}).Model(m => m.Id(id => id.Id)))
.Columns(columns =>
{
columns.Bound(result => result.IsDeleted).Hidden().ClientTemplate(
"<
span
class=" +
"# if (IsDeleted) { #" +
"'deleted'" +
"# } else { #" +
"'not-deleted'" +
"# } #" +
"/>");
columns.Bound(result => result.NameEstablishment);
columns.Bound(result => result.Street);
columns.Bound(result => result.Zip);
columns.Bound(result => result.Place);
})
.Pageable(pager => pager.Messages(msg =>
{
msg.Display(@Shared.PagerDisplay);
msg.Empty(@Shared.PagerEmpty);
msg.Page(@Shared.PagerPage);
msg.Of(@Shared.PagerOf);
msg.ItemsPerPage(@Shared.PagerItemsPerPage);
msg.First(@Shared.PagerFirst);
msg.Previous(@Shared.PagerPrevious);
msg.Next(@Shared.PagerNext);
msg.Last(@Shared.PagerLast);
msg.Previous(@Shared.PagerPrevious);
msg.Refresh(@Shared.PagerRefresh);
}))
.Selectable(selectable => selectable.Enabled(true))
.Sortable(x => x.SortMode(GridSortMode.SingleColumn)))
@(Html.Kendo().Grid<
TrendModel
>()
.Name("TrendGrid")
.Columns(columns =>
{
columns.Bound(o => o.Number).Title("Number")
.Width(100)
.ClientTemplate("#= NumberTemplate(Number, Id)#");
columns.Bound(o => o.Currency).Width(100);
columns.Bound(o => o.Estimate).Title("Estimate").Width(105)
.Format("{0:n0}")
.HtmlAttributes(new { @class = "numeric" })
.ClientFooterTemplate("<strong>#= sum #</
strong
>")
.FooterHtmlAttributes(new {@class = "numeric", style = "white-space:nowrap;"});
})
.ColumnMenu()
.Sortable(sortable => sortable
.AllowUnsort(true)
.SortMode(GridSortMode.SingleColumn))
.Pageable(builder => builder
.Input(true)
.Numeric(false)
.PageSizes(new[] {10, 20, 50, 100 }))
.Pageable()
.Navigatable()
.Filterable(f => f
.Extra(false)
.Operators(o => o
.ForString(s => s
.Clear()
.Contains("Contains")
.DoesNotContain("Does not contain")
.StartsWith("Starts With")
.EndsWith("Ends with")
.IsEqualTo("Is Equal To")
.IsNotEqualTo("Is Not Equal To")
)))
.Resizable(col => col.Columns(true))
.Reorderable(x => x.Columns(true))
.Scrollable(scrollable => scrollable.Enabled(true))
.HtmlAttributes(new { style = "height:700px; width:calc(100% - 20px);", @class = "report-grid" })
.DataSource(dataSource => dataSource
.Ajax()
.Batch(true)
.ServerOperation(false)
.PageSize(20)
.Read(read => read.Action(@ViewBag.ActionName, "Trend", new { area = "Foo" }).Type(HttpVerbs.Post))
.Sort(sort => sort.Add("Number").Ascending())
.Aggregates(agg => {
agg.Add(est => est.Estimate).Sum();
})
.Model(model => model.Id(p => p.Id))
.Events(events => events.RequestEnd("highlightFiltered")))
)
$(document).ready(
function
() {
var
grid = $(
"#TrendGrid"
).data(
"kendoGrid"
);
var
data = {
"pageSize"
: 20,
"sort"
: [{
"field"
:
"Currency"
,
"dir"
:
"asc"
,
"compare"
:
null
}],
"group"
: [] };
grid.dataSource.query(data);
grid.dataSource.page(1);
//if you don't explicitly set to page one the paging is messed up
}
function
anonymous(data) {
var
o,e=kendo.htmlEncode;
with
(data.Estimate){o=
''
+( sum )+
'</strong>'
;}
return
o;
}
@model IEnumerable<
SIS_CSC.ViewMoldels.HorasTrabajadasTecnicosViewModel
>
<
div
>
<
h2
align
=
"centre"
> REPORTE DE SERVICIOS POR EMPRESA</
h2
>
@(Html.Kendo().Chart(Model)
.Name("Chart")
.Title("Gráfico de horas de servicio de los clientes por tipo de trabajo")
.DataSource(datasource => datasource
.Read(read => read.Action("LeerExt_GraficoServicio", "Consultas").Data("getParameter"))
.Group(group => group.Add(model => model.TIPO_SERVICIO))
)
.CategoryAxis(axis => axis
.Categories(model => model.EMPRESA)
.Title("Cliente")
.Labels(label => label.Rotation(-90))
.MajorGridLines(major => major.Visible(false))
)
.SeriesDefaults(
seriesDefaults => seriesDefaults.Column().Stack(true)
)
.Series(series => {
series.Column(model => model.TOTAL_HORAS)
.Name("");
})
.Legend(legend => legend
.Position(ChartLegendPosition.Right)
)
.ValueAxis(axis => axis.Numeric()
.Title("Horas de servicio")
.Labels(labels => labels
.Format("{0}")
.Skip(1)
.Step(1)
)
)
.Tooltip(tooltip => tooltip
.Visible(true)
.Format("{0,00}")
.Template("#= series.name #: #= value #")
)
)
</
div
>
<
script
type
=
"text/javascript"
>
function getParameter() {
return {
txtFechaInicio: $("#txtFechaInicio").val(),
txtFechaFin: $("#txtFechaFin").val(),
};
}
function BindChart() {
$("#Chart").data("kendoChart").dataSource.read();
$("#Chart").data("kendoChart").redraw();
//$("#Chart").data("kendoChart").refresh();
}
</
script
>
public ActionResult LeerExt_GraficoServicio(string txtFechaInicio, string txtFechaFin)
{
return Json(GetServiciosByFecha(txtFechaInicio, txtFechaFin));
}