Completed
Last Updated: 08 Jul 2021 12:58 by ADMIN
Currently Kendo MVVM only supports a very simple binding syntax, one view attribute can be bound to one model attribute. I'd like to have real javascript expressions or function calls in bindings to support more complex scenarios, e.g. you only want to show the "submit" button in a form when all fields have been completed.

KnockOutJS supports this: http://knockoutjs.com/documentation/visible-binding.html#note_using_functions_and_expressions_to_control_element_visibility
Completed
Last Updated: 05 Jul 2021 13:15 by ADMIN
Created by: Franz
Comments: 2
Category: Data Source
Type: Feature Request
19
It should be possible to specify a validate() method on each viewmodel that gets triggered each time a new model value is .set(). In case of an unsuccessful validation an error event or binding could be triggered.
Unplanned
Last Updated: 01 Jul 2021 11:35 by ADMIN
See this forum post for details: http://www.kendoui.com/forums/framework/mvvm/getting-access-to-array-index-while-binding-an-array-source.aspx
Completed
Last Updated: 24 Jun 2021 10:47 by ADMIN
For easy using local arrays with kendo DataSource it would be good to have a functionallity to assign an array (kendo.obersvableHierarchy) without configure transport for CRUD operations.
When using Kendo MVVM it's easy then to define a grid the columns and field, and bind only the observable array as datasource.

And it would be great to have the possibility to assing depended arrays as field in an array that will be used as datasource for a grid or dropdown. Then we can assing the depended array of a selected dataitem to another control. So there is an need to have a special datatype like "dependedArray" and changes to this depended array has no effect to all ohter controls that where the viewmodel was bound.
Then we have more time to develope business logic. 
Declined
Last Updated: 23 Jun 2021 08:13 by ADMIN
Currently when the add() method is called on a DataSource, if the id, as defined in the Model, is included, then the sync method is called, the data is not persisted to the _pristineData object, and neither the Create nor Update transports are called.  This has the effect of not persisting the data and so if the cancel button is pushed on an edit screen, the added object is mysteriously dropped.  

Please see my post on the kendo forums for a more detailed explanation including demos of the issue.  http://www.telerik.com/forums/if-id-is-provided-in-add()-sync-does-not-update-_pristinedata-and-create-update-are-not-invoked

I would suggest that anytime the add() method is used, it should be considered a 'new' record, or at least when the id provided does not match with any other id currently in the data array. If it matches a record in the data array, run the Update transport, otherwise, run the Create transport.  Simply including a value for the id should not remove the record from ever being persisted. 
Declined
Last Updated: 22 Jun 2021 13:58 by ADMIN
Created by: Zachary
Comments: 2
Category: Data Source
Type: Feature Request
4

http://odata.github.io/WebApi/#04-26-InOperator

 

OData v4 now supports the IN operator as a short hand for multiple or queries (as of http://docs.oasis-open.org/odata/new-in-odata/v4.01/cn01/new-in-odata-v4.01-cn01.html#_Toc485385090 ). This could help to change code such as:


var selectedStations = $("#cmbStations").data("kendoMultiSelect").dataItems();
            var stationIds = [];
            for (var i = 0; i < selectedStations.length; i++) {
                stationIds.push({
                    field: "StationId",
                    operator: "eq",
                    value: stationId
                });
            }
            dataSource.filter({
                logic: "or",
                filters: stationIds
            });

into a much cleaner:


var selectedStations = $("#cmbStations").data("kendoMultiSelect").dataItems();
            var stationIds = [];
            for (var i = 0; i < selectedStations.length; i++) {
                stationIds.push(selectedStations[i].StationId);
            }
            dataSource.filter({
                field: "StationId",
                operator: "in",
                value: stationId
            });

Declined
Last Updated: 18 Jun 2021 08:14 by ADMIN
Created by: Barry Burton
Comments: 2
Category: Data Source
Type: Feature Request
1

This is more of a feature request...

If I want to refresh a datasource every 60 seconds, be it a grid, a dropdown, etc., I have to add a snippet of code something like this:

var interval = 60000;

         setInterval(function()

         {
             $("#my-grid").data("kendoGrid").dataSource.read();
         }, interval);

Yes, I realize this is trivial, but it would be nice if you could add an AutoRefresh function directly to the DataSource API that handled all of this under the covers.  Example:

           .DataSource(dataSource => dataSource
               .WebApi()
               .PageSize(20)
               .Model(model =>
               {
                   model.Id(m => m.StoreId);
               })
               .Read(read => read.Url(Url.HttpRouteUrl("GetData", null)).Data("additionalData"))
               .AutoRefresh(60) // seconds
               .Events(e => e.Error("onError"))
           )
Unplanned
Last Updated: 15 Jun 2021 20:53 by ADMIN
Created by: Mark
Comments: 0
Category: Data Source
Type: Feature Request
1

Hi Team,

I would like to request the functionality to include data flags within the Kendo UI DataSource similar to the JQuery Data Tables.  They allow you return multiple flags and messages so long as you always name the display list the same name in the JSON.  I would rather not use Form Data.

Thank you!

Completed
Last Updated: 11 Jun 2021 12:26 by ADMIN
Created by: David
Comments: 1
Category: Data Source
Type: Feature Request
26
It'd be terrific if there was built-in access to client-side data stores (e.g. IndexedDb).
Declined
Last Updated: 14 May 2021 08:10 by ADMIN
Created by: Imported User
Comments: 3
Category: Data Source
Type: Feature Request
3
I ran into this problem wherein I receive a 'Maximum stack size exceeded error' when I try to bind a collection with circular references  to kendo ui grids and data viz charts.  My Angular SPA is using breeze to fetch server-side entity models. As these are entity models, they do have circular references. I am also using the angular-kendo library for the directives.

Current fixes include manual removal of such entities from the collection. It would be great if the controls can handle such collections.
Completed
Last Updated: 29 Apr 2021 10:07 by ADMIN
Created by: Gregor
Comments: 3
Category: Data Source
Type: Feature Request
2
 It would go great batch syncing. And controls would redraw(refresh) just once when array of items is added. Not refreshing control and manipulating DOM(very slow) each time the item is added to datasource.
Example use case: scheduler month events copying...
Unplanned
Last Updated: 15 Feb 2021 13:40 by ADMIN
Created by: Doug
Comments: 1
Category: Data Source
Type: Feature Request
0

https://developer.mozilla.org/en-US/docs/Web/API/Broadcast_Channel_API

Hi
I was just wondering if there was a message bus /Broadcast Channel component that was part of kendoUI.

I am thinking you could use your Observables or or something like the MVVM tooling.

just that the mozilla example does not work, it may be way out of date

thanks in advance

Doug

 

Completed
Last Updated: 02 Feb 2021 16:53 by ADMIN
Created by: Joshua
Comments: 1
Category: Data Source
Type: Feature Request
0

It would be nice to be able to specify in a datasource filter two fields and an operator for the sake of data reporting. For example, where "completed date" is greater than "promised date" or "Actual cost" is greater than "estimated cost."

This sort of thing can be accomplished by calculated fields; a filter of where "cost overage" is greater than 0. The down side of the calculated field approach is all comparisons need to be pre-defined. 

 

Unplanned
Last Updated: 11 Jan 2021 07:42 by palhal
Trigger change only once for all items in an array passed to the DataSource.pushUpdate() method. That would result in improved performance of the operation.
Unplanned
Last Updated: 28 Apr 2020 07:30 by ADMIN
Created by: Jeff
Comments: 0
Category: Data Source
Type: Feature Request
1

Provide a data source setting and functionality that all the dates be created as UTC replacing the need to write the requestEnd code everywhere:

https://docs.telerik.com/aspnet-mvc/html-helpers/data-management/grid/how-to/editing/utc-time-on-both-server-and-client

It would be very helpful not to have to do this in every scenario that requires using UTC dates and have the data source create the dates in UTC as they reach the client.

Completed
Last Updated: 13 Mar 2020 09:55 by ADMIN
Created by: Imported User
Comments: 1
Category: Data Source
Type: Feature Request
3
Ignore language specific characters when filtering. Example: search phrase "Deja" should find word "Déjà".
Declined
Last Updated: 03 Mar 2020 13:42 by ADMIN
Created by: Dave
Comments: 0
Category: Data Source
Type: Feature Request
2
Trying to bind to the 'id' and 'for' properties gives an error that this is not supoprted. Both are basic bindings and should be suported.
Completed
Last Updated: 24 Jan 2020 11:04 by ADMIN
Created by: Imported User
Comments: 1
Category: Data Source
Type: Feature Request
12
We use the new version of SignalR which is 2.2.3 currently and it seems the Kendo DataSource cannot bind to it. It would be awesome if Kendo supported it. 
Here is a link: https://www.nuget.org/packages/Microsoft.AspNet.SignalR.Core/
Completed
Last Updated: 21 Jan 2020 12:48 by ADMIN
Created by: Euan
Comments: 1
Category: Data Source
Type: Feature Request
13
I would like to be able to dynamically update the text in my button by binding to a viewmodel.

Thanks
Completed
Last Updated: 21 Jan 2020 11:42 by ADMIN
We need an option to make the datasource immediately drop the current in-flight data fetch request if another one comes in.

Currently, if the user clicks around several times in a row changing grid datasource parameters too quickly, several requests get fired off, but the grid waits for the very first request to complete before issuing the next one. This makes the user's wait time twice as long and also makes the grid content appear to switch back and forth as requests complete one after another. Very unpleasant effect.