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:
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
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
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?
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?
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
Hello,
Please guide me for change font-size , color or style of the invalid message (see at attahc image)
Thank you
Hello Support,
I want to custom color of hover in row of list in MultiColumnComboBox. How can I do it?
Thanks.
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)
}
}
}
Thank you in advance
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
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?