Reporting Services Client side - reporting

I need to compose a report using multiple subreports, "chained" together at runtime in a C# Forms project.
The subreports each represent a subtest of a product, and the data needs special formatting to make sense to the report users ( Special graphs, sensible column names with/without engineering details etc )
I Imagine that every Subreport has a subreport field so that I at runtime can insert the next subreport into. Obviously the first (main) report has a subreport as well, and a finalizing subreport does not (summary subreport)
Is it possible to build chain subreports together at runtime ?
Does anyone out there have a sample?
Kind Regards
Jes

I imagine this is possible with the Reporting Services product, but I don't know how to do it. In our experience as part of the ActiveReports team, we've found that subreports are also not always the most performant and memory efficient way to accomplish this.
For information about how we suggest to do this with our ActiveReports product see the following explanation:
http://www.datadynamics.com/Help/ActiveReports6/arHOWInsertOrAddPages.html
Scott Willeke
GrapeCity - Data Dynamics

Related

Can't query multiple subject areas in OBIEE

everyone. I am using OBIEE 12c and I faced a problem when trying to use two different subject areas in generating an analysis.
I started with creating the analysis based on one subject area. Then in Criteria tab, there is '>>' icon which contains 'Add/remove subject ares' link. Howerver, in my case it is not selectable. What can I do?
If there should be done any joins in repository level, how to do that? Thanks for help
Add/remove SA only works for SAs built on the same Business Model.
Heterogeneous source queries from totally unrelated SAs can only be accessed via UNIONs within the same analysis.

Getting into designing dashboards and need some help identifying each technical layer along the way

So I will be embarking on designing a dashboard that will display KPI's and other relevant information for my team. Since I am in the early stages of this project and am not very familiar on the technical process behind designing a dashboard, I need some questions vetted out first before I go and shop for some solutions to avoid reinventing the wheel.
Here are some of my questions:
We want a dashboard that can provide live-time information via our data sources (or as close to live-time as possible). What function allows a dashboard to update itself with concurrent datasources? From a conceptual standpoint, I can understand creating a dashboard out of Microsoft Excel, and having the dashboard dependent on the values you may have set within your pivot table.
How do you make a dashboard request information from multiple datasources on its own? Just like the excel example, a user may have to go into the pivot tables to update values, but I want to know how would a dashboard request this by itself and what is the exact method from a programming standpoint? Does the code execute itself every time you refresh the webpage?
How do you create datasources organically? I know for some solutions such as SharePoint BI Center, there are pre-supported datasources like an excel sheet or SharePoint and it's as easy as uploading your document and letting the design handle the rest. However, there are going to be some datasources that I know that will need to be fetched. Do I need to understand something else like an event recorder in order to navigate this issue?
Introduction
The dashboard (or a report, respectively) is usually the result of a long chain of steps. Very much simplified it could look like this:
src1
|------\
src2 | /---- Dashboards
|------+---[DWH]-[BR]-+
src n | | \---- Reports etc.
|------/ [Big Data]
Keep in mind, this is only a very, very simple structure of a data backend / frontend.
DWH means Data Warehouse, where data might be stored temporarily (you referred to this as fetching). This could be a database, could be a Big Data engine, could be a combination of both...
Afterwards, there are Business Rules (BR). Those might be specific rules in how different departments calculate and relate to data, but also simple things like algebra.
Questions
So, the main question should not be about the technology:
What software should we choose?
How can we create a dashboard?
but on the contrary focused on your business processes (see it like a top-down view):
How does our core process look like? Where would I like to measure data?
How would department a calculate sales in difference to department b? Should all use the same rule?
Where does everyone store the data? Can we access it? Do we need structural data?
And, very easy to forget but also easily sometimes one of the biggest parts: Is the identifier of a business object (say, sales id) everywhere build and formatted in the same way?
Conclusion
When those questions are at least in the back of your head and you keep working in this direction, more or less automatically data will spill out at certain points of that process.
Then it won't matter if you use Excel, a small-to medium app like Tableau, Tibco Spotfire, QlikView, Power BI or you want to go full scale with a big Hadoop backend, databases and JasperReports, Apache Drill, Pentaho, SSIS on top of it... it will come out eventually.
TL;DR
Focus on the processes first. Make sure to understand them. Draft in Excel. Then proceed in getting the data and the tools you need to help your use cases. It will work out much better from a "top-down" approach than trying to solve your requirements with tools only.

ActiveReports multi table dataset

Is there opportunity to use dataset with multiple tables as datasource in ActiveReports ? What advantages has ActiveReport over SSRS?
Datasets can only reference a single sql query results, they cannot be joined, you would have to join the tables in the SQL query itself. The results would appear as a single dataset that you can bind your data regions to.
ActiveReports has multiple designers and layout engines for various reporting scenarios. It has a section based layout (similar to Microsoft Access) and RDL continuous data regions layout and a Page Layout engine that is used for creating pre-designed form styles reports such as a tax form or complex insurance form. Each one of them has its own optimized engine.
In addition, AR provides you with the designers as royalty free controls to include with your applications. There are quite a few other unique features that might depend on your needs, such as an excel transformation device where the report data is rendered into an Excel template.
However, I would recommend that you download both and try them to see which one would fit your usage scenarios better.
Hope this helps.
http://activereports.grapecity.com

Can I (ab)use SQL-Server Analysis Services to create user generated reports?

Question:
We (that is to say I, single person) should implement "user generated reports" (in 1 month at most, presentation at the end of the month/start of the new month).
Problem 1:
By user, I mean users that do not have any technical skills, like SQL or VBA.
Problem 2:
Technology is .NET ONLY, so I cannot use Java (and things based on Java like Jasper)
Problem 3:
Exports to Excel should be possible (and I mean XLS or XLSX, not XML or CSV)
Problem 4:
Grouping of data should be possible (multiple groups)
Problem 5:
Database is Microsoft SQL-Server (presumable 2008 R2, but could end-up being 2008 R1 or 2005)
Bonus "Problem":
Web based, with ASP.NET WebForms, but can also be desktop based, if web is not possible
Now apart from the sheer ridiculousness of those requirements and time constraints...
One solution would be the report builder supplied by SSRS (SQL-Server Reporting Service).
However, there are some disadvantages, which I think are pretty severe:
The user creating the report basically still needs to know SQL (left, right, inner, outer join and their consequences). Since the user probably doesn't understand the difference, they will just blame me if they get no or wrong results (inner join on a null column for example).
The user creating the report knows nothing about the database/data-structure (e.g. soft deletes, duration dates). Also garbage-in garbage-out is probably going to be a problem, complete with wrong data etc. ...
If they are going to make a matrix, and are going to sum subtotals from unrounded values, the sum of the total is not going to match the sum of the subtotals, because the report is going to display something like only 2 digits after the comma (and therefore round the value to 2 digits) for subtotals, but it's going to calculate the total from the sum of all values (which are NOT rounded), not from the sum of the subtotals (which are rounded). Again, they will blame me or the data, or the report builder for it.
Since the report-builder is not going to display the number of results after adding an additional table with a join, a user will have no way of telling whether they have the right number of records, which will inevitably result in wrong results. Again, they will blame me.
Filters on dates: One needs to apply them, but not necessarily in the where, but in the join. Report builder doesn't support that. It's not possible to create a serious report like that.
Status: As said, we use soft-deletes, and a status field with status 99 for deleted records. Filtering status in the where is dangerous, and must sometimes occur in the join. Again, Report Builder doesn't support that, unless you use raw SQL, which is pointless since the users are not going to know SQL.
Installing report builder requires admin rights, or the IT department of the customer company to install it. And the appropriate .NET framework for the appropriate ReportBuilder , and the appropriate ReportBuilder for the appropriate Report-Server, since SQL-Server 2005 Reporting Service is NOT going to work with reports for SQL-Server 2008 Reporting Services, and SQL 2008 R1 not with R2. And also this requires all users capable of that to be in a certain SQL-Server reporting service report generator user role, which requires the IT department to put users into the appropriate active-directory group, which so far has never worked with any of the customers we had. Plus I don't trust the IT department to know that they install the appropriate ReportBuilder, if they agree to install it at all.
Now I once (a longer time ago) happened to view a presentation of SSAS (SQL-Server Analysis Services) on youtube.
But I don't find the link anymore.
But anyway, I don't have any experience in SSAS, only SSRS.
I think it would be possible to abuse SSAS in such a way, that the users could connect to it via Excel, and get the data and sum them more or less like they want to. Also, they would be able to see the raw data.
And I could pre-prepare a few queries for raw-data from tables (that, I could do with reportbuilder as well, via datasets).
Does anybody know SSAS well enough to tell me whether this is feasible in that amount of time ?
And if the add-in required for analysis server and Excel-versions (2007/2010) is compatible with all analysis-server versions, or if there are problems accessing 2008 R2 from Excel 2007 or SSAS-2005 from Excel 2010.
Or whether I am bound to run into more problems with SSAS than with ReportBuilder ?
If your question is whether SSAS is a reasonable approach to your problem, my answer is yes. The benefit of SSAS is that generally speaking the data is modeled in a way that is readily understood by business users and easily manipulated in Excel to produce a variety of reports with no knowledge of a query language. With any version of SSAS, you can use Excel versions 2007 or 2010. There is no add-in required for this - the provider is built into both Excel versions already. Furthermore, by putting the model into SSAS, you are actually making your data more readily accessible by a variety of tools - you can use Excel or SSRS or a variety of 3rd party tools if you so desire. In other words, you're not limiting your options with this approach, but expanding your options as compared to Report Builder.
That said, working with SSAS can be simple or hard. It depends on the type of data you're working with and the complexity of any calculations that must be added to the model. Whether you can achieve your goals in the amount of time you have available is not a question I can answer. It really depends on the type of data that you have and the type of reports that your users need.
I can point you to a couple of resources. I wrote an article for TechNet as a gentle introduction: http://technet.microsoft.com/en-us/magazine/ee677579.aspx. It was written for SSAS 2008 but the principles apply to SSAS 2005, SSAS 2008, SSAS 2008 R2, and SSAS 2012.
If you prefer a video introduction, see http://channel9.msdn.com/Blogs/rdoherty/Demo-Developing-a-SQL-Server-2008-R2-Analysis-Services-Database to start. You can find a lot of free video material on SSAS at channel9. Just do a search for SSAS.

Improving performance with a Crystal Report containing a subreport?

Does anybody know how to improve the performance of a Crystal Report that has a subreport? The subreport uses ADO.NET objects...and takes FOREVER to generate.
Is the subreport being called for every record of your report, ie does it live in the details section? If so, there's not much you can do other than reduce what the report displays or calculates. Subreports in details sections are a blight on performance.
However, if it's elsewhere then optimizations would necessarily depend on the design of the subreport itself. For example, running totals or the use of distinct counts can hit performance depending on design or report size.

Resources