We have an ASP.NET 2 application and at the moment for the reporting, we are utilising DataSet/DataTable taking some storedprocedure/query and display on the screen (grids). For the graphics, we are using Dundas Chart component and again we are utilising DataSet/DataTable to display it. These thing has been running well ... no issue.
Now, we are having a challenge that every single report that we produce above (grid or graph), the user wants to consolidate into 1 single click solution which means if they click the "Consolidated Report" it will produce the page as well (grid/graph) into 1 page. But the issue is that the user wants use the display (grid/graph) and download into 1 file. It could Ms Words/Ms Excell.
How we are going to achieve this?
I am thinking to do as follow:
1. Convert everything to use the Reporting Services (client) .. or
2. Is it possible to do like convert the page/grapf into Word/Excel into a single page? Is there any other solution?
The issue is that the we have simple stored procedures to get the data source out and then we are using that data and do the massive data manipulation in DataSet/DataTable (loop through the records, create a new dataset and manipulate etc etc) and then to construct the final report and display on the screen.
I am appreciated your comment.
Thank you
In my opinion the best solution will be integrating the HTML into a PDF.
You can convert the HTML generated into PDF easily with ABCPdf from WebSuperGoo (I suspect that other solutions can work, but I have only used this product)
See this live demo, and select "Add URL" and point to your URL or check out this example
Related
I have a situation where I need to extract tables from 13 different links, which have the same structure, and then append them into only one table with all the data. This way, at first I extracted the links from a home page by copying the link from the respective hyperlink, and then import the data through the Web connector on Power BI. However, 3 months later, I realized that those links changed every quarter but the link from the homepage where they are listed remain the same.
This way, I did some research and I found out this video on YouTube (https://www.youtube.com/watch?v=oxglJL0VWOI), which explained how I can scrape the links from a website, by building a table with the header of the link as a column and the respective link as another column. This way, I can have the links automatically updated, whenever I refresh the data.
The thing is that I am having issues to figure out how can I use this links to extract the data automatically without having to copy them one by one and then import the data using the Power BI Web connector (Web.BrowserContents). Does anyone can give me a hint of how can I implement this?
Thanks in advance!
I’m having some trouble coming up with a future-proof-ish design for reports for a company. Essentially the requirements are:
Be able to pull whatever data from the database
Generate formatted report from that data by populating a template (HTML, docx)
Export to Word and/or PDF
So initially I made an API endpoint per report (this is a web app), and had PDFs generated and formatted correctly.
But now I need to get the data into .docx/Word format, and I’m trying to figure out how I can design something as D.R.Y. as possible so that I don’t have to put in a TON of work every time the company decides they need another report (they’ve done this two, three times which is how I became aware that I had coded myself into a corner).
Every report I’ve done thus far has been done via a “brute-force” method: code the queries needed for the report, format the data, and then render to PDF (using HTML to PDF via phantomjs).
The complexity occurred when the company came back and said “Hey, we need all of those reports in Word format, also we have 3 other new reports that we need and a report that is a slight variation on the old one but +/- 2 fields”.
I am just having trouble coming up with a solid design/abstraction here, one that doesn’t send me down a week long hacking spree every time a requirement changes.
I have created a small "Dynamic Data Web Site" using the Entity Framework. I've no experience with this really, but it looks very interesting. Anyway, I have a single table being displayed on a single web page. The table contains over 21000 rows and the page limits me to 10 records per page, which is all fine.
My problem is that the page is incredibly slow. I'm guessing that maybe every row in the table is being loaded whenever I try to navigate, but I can't be sure this is the cause.
How can I increase the performance of the page? I want to be able to click through pages of results quickly and easily. It currently takes more than 60 seconds to click to the next set of results.
this is usually caused by filters on a table where the filter has MANY rows you could fix this using the Autocomplete filter which prefilters the data base what the user types in.
You can get this filter and other from ny NuGet package Dynamic Data Custom Filters
Also try having a look in it using Ayende's EFProf. It is a commercial product but it has a free 30 day trial. I can sometimes point out silly things you are doing and suggest some ways to optimise your data access
I've got a situation where I want the user to enter a start date and end date for report data. In addition there should be a drop down which allows the user to choose one of the following:
last 7 days
last 14 days
last 30 days
If the user selects one of these values, the datepickers should adjust there values? I can't quite figure out how to approach this. Anyone have any ideas.
This isn't possible solely from within SSRS. However, you can still achieve your goal with a bit of extra work. Here's a bit of pseudocode to get you going. This technique works and we use it in our organization often.
In SSRS, hide the report parameters
Create a new blank HTML/ASPX page
Using only HTML, create create your own datapickers and custom "last 7 days" dropdown.
Use Javascript/jQuery on the client to handle your custom logic.
Place a "Generate Report" button on the page.
Insert a hidden iFrame on the page
When the user clicks "Generate Report", perform an HTTP POST passing the report parameters in the URL (something like http://server/reportserver?/dir/Report&rs:Command=Render&Parm1=VALUE1&Parm1=VALUE2&Parm1=VALUE3)
Display the report in the iFrame
Your users won't know the difference and this will give you total control over the layout and presentation of your report parameters.
You can do this within in SSRS. Not great but acceptable.
Have the first parameter be a pick list with two choices.
Pick Dates or Last X Days.
Have the next parameter be the start date.
The third parameter is another pick list. It is either a list of dates or a list of numbers depending on the choice they made in the beginning.
Another way would be to have two reports displayed to the user. one with an open date range and one with a predefined pick list of dates. These would be linked reports that call the same underlying report but display different parameters. This is the approach I would take for such a user request.
is it possiable we can bulid the reports using flex bulider ? or can we and any
frameworks for build the reports ? .
i don't know what way to bulid the reports
flex bulider have any build reports compoents there?
i want sorting reports order like
By Product Company Name Expected Close Month
Consultant Expected Revenue
this is are fields
Product 1 A May’10 X £1,000.00
B Jun’10 Y £2,000.00 C Jul’10
X £3,000.00 Sub Total
£6,000.00
Product 2 etc
Grand Total £24,000.00
This is are data . How is it possiable ?
Could u give any gudiends me ?
Answer based on first revision.
Typically applications would give this responsibility to the server. Your Flex application passes parameters to the server with a request for a PDF document and the server puts together the appropriate one and seconds it back.
If you're using AIR to run your Flex application you could probably write a library to create a PDF file and then same it to the user's computer but I would stress that the kind of libraries you would need for your server already exist. For example: http://php.net/pdf
Report tends to be a rather generic term and as the other responder indicated that it meant PDF to him/her. The application I am working on is very report heavy. We have a requirement for a client side report ("Think Report in Flex") and PDF version of the same report.
When we originally looked 1yr back, there is no Report library that provides the equivalent of what lifecycle does on the server. Therefore we have had to build our own and it is based on a generic template mechanism.
So can it be done. Yes. But I would recommend developing a generic means to render your reports and it is not a easy task if you want to keep it generic so you can create multiple type of reports.
Also, avoid the trap of nesting your reports through VBOX, HBOX and containers to provide a flexible layout system as it will not perform well.