Telerik Forums
Kendo UI for jQuery Forum
0 answers
106 views

I am trying to figure out how to format some nodes in my diagram.  See attached dojo.  https://dojo.telerik.com/ASinArEh

 

I would like:

  1. The Circles to be centered under the titles.
  2. The Node Name to be centered in the circle, not the group.
  3. The Connections to hook to the Circle connectors, not the group connectors.

 

It seems like my visual template needs to create the circles, then possibly go back and add groups to the diagram then include the existing circles in the new groups, but I haven't figured out a way to do that yet

 

 

 

 

Jeffrey
Top achievements
Rank 1
 asked on 02 Aug 2021
1 answer
339 views

Hello,

We are using Kendo.MVC, version 2020.1.400. We use microsoft sql server 2017. Our database is case insensitive.

When kendo grid request comes in, we translate Kendo's sort, paging, etc into ISpecification in SharpRepository and we let SharpRepository to handle the sql communication.

We recently made the code change that we skip SharpRepository and use Kendo extension ToDataSourceResult() to deal with sql server.

For large data set, we find the new approach takes much longer time to show the Kendo grid. After investigation, I found that the sql generated by Kendo contains LOWER() for columns! Below is an example. However, in SQL Server, when you use LOWER for a column, the index for that column is not used! It has to do clustered index scan, which is very slow.

I saw an old post saying LOWER() is built in behavior and no way to change it. https://www.telerik.com/forums/grid-filtering-on-text-using-lower-in-sql

I wonder if the latest kendo can allow the user to disable LOWER() behavior. it is very straightforward for your company to fix it, basically providing an additional boolean parameter to ToDataSourceResult() to enable or disable LOWER(). A small thing for Kendo but a big thing for us. Currently if LOWER() can't be removed, we have to go back to the old approach by using SharpRepository. the sql generated by SharpRepository doesn't include LOWER. Our database is case insensitive, so LOWER() is really unnecessary and it is a performance bottleneck.

Please please please fix it.

SELECT
    [Extent1].[UserId] AS [UserId],
    [Extent1].[Id] AS [Id],
    [Extent1].Blah
    FROM [dbo].[UserFilteredWorkbenchItems] AS [Extent1]
WHERE (((LOWER([Extent1].[UserId])) = (LOWER(N'881d796c-9c88-ea11-99e7-0003ff77da57'))) OR ((LOWER([Extent1].[UserId]) IS NULL) AND (LOWER(N'881d796c-9c88-ea11-99e7-0003ff77da57') IS NULL))) AND (((LOWER([Extent1].[FilterByUnit])) = (LOWER(N''))) OR ((LOWER([Extent1].[FilterByUnit]) IS NULL) AND (LOWER(N'') IS NULL)))
    ORDER BY row_number() OVER (ORDER BY [Extent1].[Priority] ASC)
    OFFSET 160 ROWS FETCH NEXT 20 ROWS ONLY

Best regards

Frank

Ivan Danchev
Telerik team
 answered on 02 Aug 2021
1 answer
69 views

Per screenshot below: I have used events in Kendo Window this way many times before, and I don't understand why I'm getting the syntax error below. Can anyone help, please?

Anton Mironov
Telerik team
 answered on 02 Aug 2021
1 answer
197 views

Currently Kendo grids, like this one, behave like tables in MS Word when selected text is dragged/dropped.  I would like my Kendo grid to not have this behavior and instead act more like Excel, where clicking and moving the mouse while over selected text will change the selection. 

Is there an option for this in the Kendo jQuery Grid?

Georgi Denchev
Telerik team
 answered on 02 Aug 2021
0 answers
210 views

hello

i don't know why, but my code send a duplicate request to the web API

please help me with this.

 

jquery code:

<body>
 <div id="grid"></div> 
</body>

 <script>


           $(document).ready(function ()
           {

               var dataSource = new kendo.data.DataSource(
                   {
                       autoSync: false,
                       transport:
                       {
                           read:
                           {
                               url: '/api/test/GetAllRecords',
                               dataType: "json"
                           },
                           create:
                           {
                               url: '/api/test/AddNewRecord',
                               dataType: "json",
                               method: "GET"
                           }
                       },
                       schema:
                       {
                           data: "results",
                           model: {
                               id: "PolicyId",
                               fields: {
                                   PolicyId: { type: "number", validation: { required: true, min: 1 }},
                                   PolicyName: { validation: { required: true } },
                                   PolicyDeletionPeriod: { type: "number", validation: { required: true, min: 1 } }

                               }
                           }
                       },
                       pageSize: 100
                   });

               $("#grid").kendoGrid(
                   {
                       dataSource: dataSource,
                       toolbar: [{ name: "create", text: "Create new row" }],
                       editable: "popup",
                       columns: [
                           { field: "PolicyId", title: "PolicyId" },
                           { field: "PolicyName", title: "PolicyName" },
                           { field: "PolicyDeletionPeriod", title: "PolicyDeletionPeriod" }
                       ]

                   });

           });
       </script>
</body>

 

blue is my request the second I don't know why happened

                                
valery
Top achievements
Rank 1
 asked on 31 Jul 2021
1 answer
1.0K+ views

Hello,

Please guide me for change font-size , color or style of the invalid message (see at attahc image)

 

Thank you

Hetali
Telerik team
 answered on 30 Jul 2021
4 answers
182 views

Hello Support,

I want to custom color of hover in row of list in MultiColumnComboBox. How can I do it?

 

Thanks.

Baxing
Top achievements
Rank 1
Iron
Iron
Iron
 answered on 30 Jul 2021
1 answer
746 views

Hi all,

We are trying grouping by column type object , for this, we use this code:

group: function(e) {
    if (e.groups.length) {
        var isNestedGrouped;
        
        e.groups.map(function(x){
            if(x.field == "type"){
                isNestedGrouped = true;
            }
        })
        
        if(isNestedGrouped){
            e.preventDefault()
            var newGroups = [];
            this.dataSource.group().forEach(function(x){
                if(x.field != "type"){
                    newGroups.push(x)
                }
            })
            newGroups.push({field:"type.name"})
            this.dataSource.group(newGroups)
        }   
    }
}
With this code, the grouping work correctly, but the text appears in header group template it's not we need.
In the grid we can see the name of field and his value, but we want see the title of the column.

How we can do it?


Thank you in advance

Patrick | Technical Support Engineer, Senior
Telerik team
 answered on 30 Jul 2021
1 answer
164 views

Hi, 

I started implementing planned vs actual feature and I have found a possible bug in the feature. It seems that delay part gets calculated in some cases and even if planned and actual start and end dates are exactly the same, delay is calculated and displayed. (1 day delay)

See the screenshot from the dojo:
Steps to reproduce:
- I used dojo out of feature demo and modified it so planned start and end are editable.
- I added new task with duration of one day. Set planned dates to match actual.
- Extended task duration by 2 days by dragging end.
- Changed planned end to match new actual

After this delay remains one day..

I can reproduce this on my local as well, where I have dates set by server.

If there is anything else I can do to assist, please let me know.

Thank you and best regards,

Vedad

Dimitar
Telerik team
 answered on 30 Jul 2021
1 answer
1.0K+ views

I'm trying to fetch a lot of data, which is reaching 100k+ results. The main problem is that the API doesn't work with this many records at once due to simply being more data than allowed in memory by the webserver (for good reasons). What's the proper solution to continue here? I can easily page the data, but I want the filter/sorting client side over the complete result. It basically comes down to having to execute multiple requests to fetch all data and then use the grid with this data. 

I noticed several issues if I use a DataSource directly, such as paging will request a new page if the page size changes for example. If I have already fetched the first 20 records, and I change the page size from 10 to 15, it will fetch the 15 records again while it already has those records. On top of that it seems that I can't exactly pre-load the data easily either without manually writing some code to call the API endpoint X times.

I'm suspecting that the solution would be to create an observable array and fill this based on a data source that I query page by page? This way I could for example load the first 100 results and then batch the rest in sets of 10k or 20k?

Are there any examples available? I'm using the jQuery variant.

Edit: I'm still in need of at least a "destroy" call for this grid, could that even work together?

 

Georgi Denchev
Telerik team
 answered on 30 Jul 2021
Narrow your results
Selected tags
Tags
+? more
Top users last month
Will
Top achievements
Rank 2
Iron
Motti
Top achievements
Rank 1
Iron
Hester
Top achievements
Rank 1
Iron
Bob
Top achievements
Rank 3
Iron
Iron
Veteran
Thomas
Top achievements
Rank 2
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Will
Top achievements
Rank 2
Iron
Motti
Top achievements
Rank 1
Iron
Hester
Top achievements
Rank 1
Iron
Bob
Top achievements
Rank 3
Iron
Iron
Veteran
Thomas
Top achievements
Rank 2
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?