combination of a pivot grid control and a chart control

11 posts, 0 answers
  1. Jens
    Jens avatar
    12 posts
    Member since:
    Aug 2014

    Posted 20 Aug 2014 Link to this post

    Dear Sir or Madam,

    we are right now in the trial period of the Telerik MVC suite.
    Especially we are searching for a combination of a pivot grid control and a chart control.
    You have on your demo website already such a demo for classic ASPX.
     
    Can you also provide such a demo for MVC? This would help us a lot in the evaluation process.
     
    Thanks a lot and best regards from Germany.

    PS:
    the documentation for the classic ASPX components (web form) seems to be much more elaborated than
    the one for MVC ..it would be great if this could be aligned. Thanks!
  2. Georgi Krustev
    Admin
    Georgi Krustev avatar
    3707 posts

    Posted 21 Aug 2014 Link to this post

    Hello Jens,

    I answered in the support thread opened on the same subject. I would like to ask to continue our discussion in only one thread to avoid any duplication.

    Here is a quote of the answer:

    Here is a Kendo Dojo demo, which shows how the PivotGrid widget can be integrated with Kendo Chart. Please note that the demo is a client-side based, but the concept is applicable to ASP.NET MVC too.
    Basically, the developer will need to convert the columns and rows tuples along with the data in understandable for Kendo Chart format.


    Regards,
    Georgi Krustev
    Telerik
     

    Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.

     
  3. UI for ASP.NET MVC is VS 2017 Ready
  4. Jens
    Jens avatar
    12 posts
    Member since:
    Aug 2014

    Posted 22 Aug 2014 in reply to Georgi Krustev Link to this post

    Dear Georgi,

    thanks a lot for your answer.

    To be more precisely we need not only a grid-chart combination on page load
    but a continous synchronisation on every dynamic pivot grid action (filter, change of axis assignments, etc.) ..similar to your ASP.NET Ajax demo.

    Therefore we need either on clientside or serverside an event to hook in for transforming the data again and again.
    For ASP.NET Ajax you use the CellDataBound event.
    Could you please suggest for the MVC components for both ways (clientside synch + serverside synch) how to start this?

    Thanks a lot
    Jens
  5. Georgi Krustev
    Admin
    Georgi Krustev avatar
    3707 posts

    Posted 26 Aug 2014 Link to this post

    Hello Jens,

    The demo I provided specifically disables member expand/collapse. If you enable the member expand (remove the expandMember event handler), you will notice that chart is re-bound on member expand. Filtering also is honored, because the chart is initialized/bound in the dataBound event handler of the PivotGrid, which will be raised on every data source changes.
    Here is the updated demo allowing to rebind the chart. Note that collapse member support is not implemented, because member collapsing is done by PivotGrid and not by PivotDataSource, hence the data source always has the last expanded data and the chart is built over the data source's data.

    To sum up, if you would like to update the chart on filter/expand action then you will need to wire the dataBound event, like the code in the demo does.

    Regards,
    Georgi Krustev
    Telerik
     

    Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.

     
  6. Jens
    Jens avatar
    12 posts
    Member since:
    Aug 2014

    Posted 28 Aug 2014 in reply to Georgi Krustev Link to this post

    Dear Georgi,

    thanks a lot for the update as well as the related explanations.

    Still this leaves 3 open questions:
    1. For things like collapsing, where the datasource is not changing, I would need to check/query the effectively visible data in the grid ..how do I do this?
    2. For local datasources (http://demos.telerik.com/aspnet-mvc/pivotgrid/local-flat-data-binding) I provide the data on the serverside. How do I then react to collapsing, filtering, expanding or moving members to another axis? (Especially for relational datasources - so SQL / no OLAP) Do I react only clientside (javascript event)? ..or is there any MVC controller action on serverside which is called on those changes?
    3. Why is it not possible in your demo to move a member (e.g. product category) to another axis?

    Thanks a lot for your support again!
    BR
    Jens
  7. Georgi Krustev
    Admin
    Georgi Krustev avatar
    3707 posts

    Posted 29 Aug 2014 Link to this post

    Hello Jens,

    Straight up to your questions:

    #1:
    Currently, the required information is not accessible outside of the widget and hence detecting which tuple member is expanded would be very hard. We will provide a feasible way to get this information via API. Thus you will be able to check whether the member is expanded or not.
    For the time being, lets consider this request as unsupported.

    I will write a follow-up to this thread once this functionality is available.

    #2:
    Yes, the widget provides a client-side cube engine. It requires the data locally in order to build the cube and bind the grid. You will need to provide the all data you want to categorize locally.

    #3:
    I could not reproduce this (screencast). Please note that the convertData function is designed to work with expanded column header and wit at least one row tuple. This can be changed by the developer in order to accomplish his business requirements.

    Regards,
    Georgi Krustev
    Telerik
     

    Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.

     
  8. Jens
    Jens avatar
    12 posts
    Member since:
    Aug 2014

    Posted 29 Aug 2014 in reply to Georgi Krustev Link to this post

    Hi Georgi,

    thanks for clarifying, but still I need some information regarding #2
    ..so sorry for stepping in again..

    #1
    thanks for pushing this

    #2
    So does this mean, that after providing the data via MVC controller + HTML helper there is no more client-server communication
    for filtering, aggregation, drag&drop and similar grid actions?
    So I always must initially send the full raw data of 10000 records to the client to later work & analyze independently on clientside?

    I can imagine this kind of approach for a pure clientside javascript component, but for an ASP.NET client server component I don't think this is the optimal and most efficient way. The server part of the component could already process all filters, aggregations etc. and send only the small result to the client on each action... and I think this is also the approach of the Telerik Pivot Grid for ASP.NET AJAX (web forms) component, right?

    Is the ASP.NET MVC component so different from its webforms counter part?

    #3 Ok thanks, might be a problem with my browser, although it is quite up to date (firefox 31) ..I will try it with another browser as well.

    Thanks a lot for your support and your patience ;-)
    Jens
  9. Georgi Krustev
    Admin
    Georgi Krustev avatar
    3707 posts

    Posted 29 Aug 2014 Link to this post

    Hello Jens,

    #2:
    The purpose of the PivotGrid widget is to show a categorized data. This means that there should an engine which groups the flat data in many levels (based on the defined dimensions) and create a cubical data. Kendo PivotGrid has such a client PivotCube engine which allows the slice and dice functionality to be possible on client. That is why it requires the whole data at once in order to be able to create a cube from it. Please note that modern browsers become more and more capable of such calculations. For instance 10 000 items are not a problem for any modern browser. With regards to the generated traffic, you can cache the data locally (in localStorage for instance) and use it in any subsequent page load.

    The Kendo UI PivotGrid (and its ASP.NET MVC wrapper) is different than ASP.NET Ajax controls, because it should function in fully RESTful way. The ASP.NET Ajax controls are generated on the server and output HTML. The Kendo PivotGrid on the other hand should function with different services. In order to work on server, we will need to create a server cube engine, which in the best should function as the SASS. In other words it should be able to categorize the data (build a cube) to slice and dice and most importantly to provide API for communication (something like XMLA standard). This in one way or another will mimic the work and behavior of SASS. For now we do not have any specific plans for such server cube engine.

    Regards,
    Georgi Krustev
    Telerik
     

    Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.

     
  10. Georgi Krustev
    Admin
    Georgi Krustev avatar
    3707 posts

    Posted 29 Aug 2014 Link to this post

    Hello Jens,

    This is the promised follow-up.

    #1:
    After further investigation, we found out that expandMember and collapseMember events can be used for collapse/expand filtration of the datasource data. Here is the updated demo showing how to accomplish this goal. Please note that this is a proof-of-concept demo that can have some scenarios that could not be implemented.

    Regards,
    Georgi Krustev
    Telerik
     

    Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.

     
  11. Jens
    Jens avatar
    12 posts
    Member since:
    Aug 2014

    Posted 08 Oct 2014 Link to this post

    Dear Georgi,

    sorry for the late reply I was sick for a while. Thanks for your suggestions!

    Does your proposal regarding chart synchronization also work for flat data?
    I have some problems to apply your proposal to my own scenario - to synchronize chart with my own pivotgrid.
    However there is no error message at the chart or grid.

    Can you suggest any solution?

    Thanks
    Jens
  12. Georgi Krustev
    Admin
    Georgi Krustev avatar
    3707 posts

    Posted 09 Oct 2014 Link to this post

    Hello Jens,

    The demo was intended to work with OLAP service. Nevertheless, the client cube builder should produce a similar data structure. Could you provide a demo what exactly does not work?

    Regards,
    Georgi Krustev
    Telerik
     

    Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.

     
Back to Top
UI for ASP.NET MVC is VS 2017 Ready