Hi Kendo Team,
While working with the spreadsheet's custom validation feature, my team stumbled on what seems to be a bug with the AND function when checking cell values. When checking the LEN() of a cell's value before an ISNUMBER() check, the validation will sometimes completely ignore the ISNUMBER. This bug does not seem to happen in every situation but when it does it can be nearly impossible to pinpoint in one's own code without accidentally fixing it by changing the order of logic. I've managed to consistently replicate what I'm experiencing in the dojo link below:
http://dojo.telerik.com/EMAKI
The dojo link contains your spreadsheet validation demo -- the only thing that has changed from the original demo is the validation in cells D3 and D4. Both are observing cells F3 and G3, checking that F3 is a number and that G3 is empty. The only thing different about the validation in cells D3 and D4 is the order in which we check the other two cells within the AND function. However, you can note inconsistent behavior here the moment you run it. You will see that while both D3/D4 cells become flagged if G3 is not empty, D3 does not seem to check whether or not F3 is a number. Putting a non-numeric string into F3 or leaving it empty will cause D4 to display the warning but not D3.
So -- bug or am I overlooking something obviously wrong?
Thanks,
Jeff

This is in relation to a DataSource in a Kendo UI Grid that does server side filtering to an OData v4 service.
I know the solution to my problem, I just don't know how to get the DataSource to implement it. How can I force the query that ends up going to the OData service to not include the time portion of a date? Is there a method I can implement that will allow me to modify the URL just before the http get is performed?
When I apply a filter with the type set to "is equals to" the get request for the service looks like this.
https://localhost/Application?$filter=(DOB eq 1997-01-27T00:00:00+00:00)
If I could just get the DataSource to request this instead...
https://localhost/Application?$filter=(DOB eq 1997-01-27)My problem would be solved. Anyone know how I can resolve this? Thanks!
Without grouping - right now, I have the aggregates configured in the footer (photo attached).
Is there a way to add the same aggregates row right below the headers (top of the grid above the data)?
Here is an example which demonstrates the issue I am having. http://dojo.telerik.com/EcEgo
To reproduce the issue, delete the value in the numeric text box and than click validate button. You should see the error message in the <span data-for="UnitPrice" class="k-invalid-msg"></span> which is defined by me in the DOM. After than click inside the numeric text box (focus) and then click outside the numeric text box to lose focus. You'll see 2nd validation message to appear.
My question is - why this happens? Am I doing something wrong or this is a defect in NumericTextBox?
Thanks.

Hi,
when you have a grid with a scrollbar, then the command Buttons are not shown example:
http://dojo.telerik.com/utoFA/2
when you change the "2000px" width to "200px" then you see the details and remove button.

I found this article: http://docs.telerik.com/kendo-ui/controls/layout/window/how-to/display-loading-overlay
But that seems to work with just one button. My button is in a grid, so there are multiple buttons with the id of showOverlay. Here's how everything looks:
@(Html.Kendo().Grid<vNPISearch>() .Name("npi-grid") .DataSource(dataSource => dataSource .Ajax() .Model(model => model.Id(x=>x.NPI)) .PageSize(10) .ServerOperation(true) .Read(read => read.Action("NPI_Read", "Pecos"))) .Columns(columns => { columns.Template(x => { }).ClientTemplate("#=GetPecosStatus(PecosNPI) #").Width(50); columns.Bound(x => x.ProviderFirstName).Title("First Name"); columns.Bound(x => x.ProviderLastName).Title("Last Name"); columns.Bound(x => x.ProviderBusinessLocationAddressCity).Title("City"); columns.Bound(x => x.ProviderBusinessLocationAddressState).Title("State"); columns.Bound(x => x.NPI).Title("NPI"); columns.Command(command => command.Custom("View Details").HtmlAttributes(new { id = "showOverlay" }).Click("showDetails")).Width(180); }) //.ClientDetailTemplateId("template") .Scrollable(src => src.Height("auto")) .Sortable() .Pageable(pageable => pageable .Refresh(true) .PageSizes(true) .ButtonCount(5)) )@(Html.Kendo().Window().Name("Details") .Title("NPI Details") .Visible(false) .Modal(true) .Draggable(true) .Width(500) .Actions(builder => builder.Refresh().Close()))<script type="text/javascript"> function showDetails(e) { e.preventDefault(); var dataItem = this.dataItem($(e.currentTarget).closest("tr")); var wnd = $("#Details").data("kendoWindow"); wnd.refresh({ // Url to the action fetching the partial view url: "/Pecos/GetNPIData", // The id passed to the action so that model can be found data: { npi: dataItem.NPI } }); wnd.center().open(); } $(function () { var windowWidget = $("#Details").data("kendoWindow"); $("#showOverlay").click(function () { kendo.ui.progress(windowWidget.element, true); }); });</script>
Thank you for your help!
Using the Grid with inline batch editing, we noticed that when a script injection test was done, the server was throwing an error because the HTML tags are not encoded before posting.
If you try the Batch Editing demo http://demos.telerik.com/kendo-ui/grid/editing and enter something like "<script>" into the Product Name column, the server will report a 500 error.
A potentially dangerous Request.QueryString value was detected from the client (models="...uctName":"<script>","UnitPrice...").
Is kendo.stringify not properly encoding the values before posting? Suggestions to improve this scenario?
Using Kendo UI for ASP.NET MVC R3 2016
Thank you.

When using the right arrow key to move focus through Kendo menu items, the focus will not move past a disabled menu item. Please see this dojo example, modified from the public demo: http://dojo.telerik.com/@richm/AkabO
Using the left arrow key to move backwards through the menu seems to work. Please advise on how to enable the right/forward arrow key to move through the entire menu.
Thanks - Rich

This dojo pretty much says it all: http://dojo.telerik.com/uTEpo
Try filtering out 1897 date with a date before 1/1/1900 and after 1/1/1900.
Filtering by any date after 1900 works.
Filtering by any date before 1900 does not work.
Thanks!
Two general questions from a relative beginner at this client side SPA stuff. I've had to bridge from a variety of "demos" (for which I'm thankful) and I thank you for any assistance you can provide.
I'm attempting to generate a datasource using sql to a local database which will then be bound to a mvvm listview and rendered via user interaction
Here's the Listview segment I'm using. Note that I've created my own 'accordion like' display mechanism which toggles the "display" which is why it's set to "none" initially in the div.
<div class =
"no-arrow-listview" id = "hoursCategoryAttractionsListview"
style = "display:none;">
<ul
data-role="listview" data-source="
app.GeneralEstateHours_Attractions_DataFile.data"
data-template="hours-template" data-style = "inset"> </ul>
</div>
Here's the code I'm working on to generate the datasource for the listview
app.GeneralEstateHours_Attractions_DataFile = {
data: new
kendo.data.DataSource({
transport: {
read:
function(options) {
app.db.transaction(function(tx) {
tx.executeSql('SELECT * from masterDataTable where
appMapCategoryID = ? ', [ 'Attraction'],
function(tx, result){
var data = [];
for (var i = 0; i <
result.rows.length; i++){
data[i] =
result.rows.item(i);
}
options.success(data);
});
});
}
},
group: {
field:
"appMapCategoryID"
},
sort: {
field:
"appListOrder", dir: "asc"
}
})
};
The issue is that if I omit the "group" filter from the datasource (though I can verify that there is a valid result set returned via the fetch function and some console output listed below) the listview does not display anything. Whereas, if I include the group filter (as I did in the code above) it does indeed render the listview but adds a header to the listview and I don't want to include the "header" that is generated by using the 'group' filter.
If I can't work with the raw return is there away to remove the "listview header" from the generated listview .
app.GeneralEstateHours_Attractions_DataFile.data.fetch(function(){
var test = app.GeneralEstateHours_Attractions_DataFile.data.view();
//alert ("The length of attractions is " + test.length);
for (var i = 0; i<test.length; i++){
console.log("From the Fetch of the new
GeneralEstateHours_Attractions_DataFile Data source we have " +
test[i].title + "image" + test[i].image + " id = " +
test[i].id + "");
}
});
