solution of upgrading our old telerik report from using VS designer to Web Designer

3 Answers 67 Views
Converters DataSources Report Designer - Web Report Designer (standalone) Upgrade
Jx
Top achievements
Rank 1
Iron
Jx asked on 24 May 2021, 05:48 AM | edited on 26 May 2021, 07:00 AM

Hi, currently we are using version 12.2.18.1017 of telerik reporting.

we are thinking of upgrading to the latest version since you guys have release the web designer which is really awesome.

however, we are still using VS designer to modified all the template. as far as I know, if we want to use web designer, we need to convert all templates to standalone template.

our currently project is rely on the report REST Service to get the report. we may want to switch away from the REST service or may be stay on it depends what is it offered in web designer.

So here are my questions:

1. What would be best solution for us from your perspective / expertise?

2. If we want to convert our old VS template to standalone template, how do we do it. We are using store procedure as Data source which means our old template is not parameterless (I think). What is the best way to convert them?

an example of how we import the data right now is attached in the file.

 

 

Recent update, I have managed to convert the file from our class object to trdx format. I am thinking to store it inside our DB so that we can call this format from an RESP API endpoint and present it to the html designer.

However, this template has alot funtions. not sure how would I called those functions if I am trying to access the template from a standalone designer or a html designer.

new xml file is attached.

3 Answers, 1 is accepted

Sort by
0
Dimitar
Telerik team
answered on 26 May 2021, 01:52 PM

Hi Jx,

If I understand correctly, currently you are using the Visual Studio Designer and your reports are in the .CS format, is that correct? If that is the case, then indeed you will need to convert them to trdp/trdx files as the Web Report Designer does not work with .CS reports. For this task, you may use the Standalone Designer to convert the reports into the correct format - How to import reports created with the VS Report Designer. It should successfully convert it to the template format without needing to do extra work on the report, the stored procedures should also work as expected after the conversion, if they do not, please let us know about that.

Regarding REST services, the Web Report Designer uses a dedicated REST service as a backend. The service is responsible for the storage operations like creating, opening, or saving report definitions in a specified folder, as well as handling the various requests that concern server-side processing and rendering. The Web Report Designer can not work without a REST service doing the backend tasks.

Also, I noticed that you are using an ObjectDataSource in the report definition that you have sent me. At the current time, the ObjectDataSource is not greatly supported in the Web Designer, for more information, please see - Web Report Designer doesn't have design-time support for ObjectDataSource component

Regarding the functions, I am not sure exactly what you mean by that but if you mean user functions, they can be used in the Standalone designer but not in the Web Designer. For more information, you may check Extending Report Designer.

Regarding using DB storage, Out-of-the-box we provide a FileDefinitionStorage that is configured to use the file system. To open reports stored differently, you need to implement the IDefinitionStorage interface. This will enable the web designer to load reports from a custom location, such as a database, cloud, in-memory, etc. For more information, please see How to implement a report definition storage

Please note that while the current version of the Web Report Designer offers beyond-basics functionality, it is still under active development. Please give it a thorough review to make sure the designer fits your scenario before including it in a production project.

I hope you will find the provided information helpful, please let us know if you have any other questions.

Regards,
Dimitar
Progress Telerik

Virtual Classroom, the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products quickly just got a fresh new look + new and improved content including a brand new Blazor course! Check it out at https://learn.telerik.com/.

0
Jx
Top achievements
Rank 1
Iron
answered on 27 May 2021, 12:28 AM | edited on 27 May 2021, 05:20 AM

Hi Dimitar,

Thanks for getting back to me. Our company is using telerik since 2018 however the one who build the telerik report with REST Service has gone and I am the one who is now that picking up the project. So I am sorry if things that I mentioned in the question don't make sense because I am still learning it.

1. Yes we use store procedure however I forgot to mention we actually using dapper to call those SP. and our template is in .cs file.

2. For Telerik Web Designer, yes it looks promising and most of the functionalities are good enough. the primary goal for us to using the Web designer is to allow our customer / end-user to custom the template themselves regarding to fonts, colors, potions and decimals places etc..

However, I still have a few questions and concerns.

1. If we are trying to use web designer for our end-users. It's possible to hide the connection string or datasource to our user so they cannot change the datasource or add new datasource.

2. If we want to store the template in either cloud or DB. how do we programatically save the tempalte after end-user have changed the template. any article that can explain would be nice.

3. If we use RESTFUL API, instead of getting template from dll or local folders that contains the .cs file (im not sure which one it's actually getting from). Can we get the template from database or cloud to rendering the report? is it the same as that you mentioned FileDefinitionStorage?

4. in FileDefinitionStorage documentation,if i am correct, to get the template is using GetDefinition Function in the example. the byte[] is the actually template file whatever we store right?

 

0
Dimitar
Telerik team
answered on 31 May 2021, 05:00 PM

Hello Jx,

Regarding using custom templates, styles, etc. in the Web Designer, we currently have a feature request about such functionality that you may vote for if that is something you would like to see implemented in the future - Make Web Report Designer UI customizable.

I am not familiar with Dapper and I don't remember clients that have mentioned using it, but you may create a demo project or use one of our demos to test and see if you can make it work. As I mentioned in my last reply, you can follow the How to import reports created with the VS Report Designer article to import a CS file to a trdp/trdx that you can then use in the web designer.

Regarding the first question, I am not sure what exactly you mean by hiding the connection string, perhaps you mean to hide a certain option when creating a SqlDataSource component? I don't think that is possible, however, you could hide data source components from the users, so you can simply hide the SqlDataSource if you do not wish to have the users see it as an option. For example, you can hide the CsvDataSource with the following CSS:

 [aria-label = "CSV Data Source"] {
        display: none !important;
    }

Perhaps you may want such features as setting to set in the web report designer, if that functionality would important to you, you may make a feature request about it on our feedback portal.

Regarding the second and third questions, you can use a DB as storage for the reports if you can implement the IDefinitionStorage as explained in the article - How to implement a report definition storage. The saving of the report happens through the SaveDefinition method in which, in the case where you are using a DB, you can save the report definiton bytes to the database. Users can save the report through the UI of the web designer, from the menu in the bottom left. If you have checked the demos, we do not allow saving in them so the save option will not be visible in the menu but if you run the integration demos in the install directory of reporting, you will see the Save option available in the menu. And to answer the question regarding the templates, yes you can get them from a DB by implementing the GetDefinition method.

Regarding the last question, yes the byte[] being returned should be the report definition extracted either from a folder, a database, cloud, etc.

I hope this information will be helpful to you, please do not hesitate to ask if you have any other questions.

Regards,
Dimitar
Progress Telerik

Brand new Telerik Reporting course in Virtual Classroom - the free self-paced technical training that gets you up to speed with Telerik and Kendo UI products. Check it out at https://learn.telerik.com/.
Tags
Converters DataSources Report Designer - Web Report Designer (standalone) Upgrade
Asked by
Jx
Top achievements
Rank 1
Iron
Answers by
Dimitar
Telerik team
Jx
Top achievements
Rank 1
Iron
Share this question
or