Best practice to develop SSRS reports using remote server - ssrs-2008

We are having an SSRS server configured over a live IP. Before I can start building reports, I want to know
What are best practice for developing reports that are easy to deploy
How can I maintain SVN copies of my reports
I was suggested to create shared data sources, what are they and what are benifits?
What are security related best practices regarding the same.
thanks in advance

In my experience in working with SSRS reports, I develop reports using Report Builder 3.0 on the local machine. When it is time to deploy the report upload the RDL file directly (Through Report Builder 3.0) Yes, there is a lot of room for improvement here, but I am not currently aware of any really good SSRS deployment tools and are not custom made.
When working locally on SSRS files, all the files are linked up to source control to track changes across a team.
A Shared Data Source is a separate item stored on the report server that describes a data source connection. I can be reused across multiple reports and subscriptions. This is very useful to have on Development / Beta/ Production reporting servers because you don’t have to re-create connections for each report, and if you keep the data source connection names the same across each box you don’t have to make any changes after you upload your files even though the report may connect to a different database because the connection name is the same. http://msdn.microsoft.com/en-us/library/ms159728(SQL.100).aspx
Check out this article on security. http://technet.microsoft.com/en-us/library/ms152825.aspx
I hope this helps a little.

Related

SAP BO 4.1 Auditing without Universes

Morning all,
I have recently deployed Crystal Reports 2013 and Crystal Server 2013 in a test environment, as we are currently using the 2008 version of both products.
As this deployment is in a test environment; I am keen to implement and try out as much as possible to implement the best solution as possible.
One of the things I have enabled is Auditing. Once set-up I went looking for the best way to utilise this but everything seems to allude to needing a Universe creation tool (Information Design Tool) which I don't have and can't obtain, as our SAP products are provided via a third party and we don't have access to the BI Client Tools.
So I'm back to trying to figure this all out via custom Crystal Reports.... I've read plenty of articles, one which provided me with the links needed between the Database Tables, but there don't seem to be any articles on what tables etc to use.
Has anybody done this?
Thanks in advance for any help, I'm tearing my hair out at the minute!
Direct RBMS access
Have a look at the official SAP documentation (I'm using the BusinessObjects manuals, but information in them should apply to Crystal Server as well), more specifically the Business Intelligence platform Administrator Guide (SP doesn't really matter, auditing doesn't tend to change much within a major release).
There are two sections that are important for you:
The Auditing chapter, more specifically the section regarding Audit events.
The Auditing Data Store Schema Appendix, which contains all the detail regarding the audit schema you could need.
Using a universe
Have a look at the SCN blog post Unlock the Auditing database with a new Universe and Web Intelligence Documents for BI4.1. It contains a download link to an LCMBIAR file which you can import into your BI4 environment, without the need for a universe client tool. There's also a webinar and documentation available. The prebuilt WebI documents should save you a lot of time.
Requirements:
BI Platform BI 4.1 Support Pack 5 or greater for the Web Intelligence Documents
BI Platform BI 4.1.x for the Audit database to be queried
Instructions:
Download the content (take the highest build numbered zip file)
Import one of the five 'Universe' LCMBIAR files into your system using Promotion Management (it will go into BI Platform Auditing folder)
Import the Web Intelligence LCMBIAR file (it will go into BI Platform Auditing folder)
Edit the connection that is imported (in BI Platform Auditing folder) with the correct login credentials.
Open the Web Intelligence document STA1 - Start here - Events over time.wid as your starting point!
The only issue might be with step 4, where you need to edit your connection. I don't know if you'd be able to edit the imported connection through the Crystal Reports application?

Sitefinity development environment and source code control

There are some queries for which we need resolution before we purchase sitefinity 5.0 license. I would really appreciate if could get answers to these
What are the recommended guidelines to setup the sitefinity project in the source control? If there 4 to 5 developers working on the project, what should be the starting point in setting up the initial codebase? Do every developer has to create the sitefinity website and DB on their dev-boxes?
Is it recommend to setup a common DB for the sitefinity website where all the dev-machine would be connecting to do the development, if not what is the alternative approach?
Is there any online documentation available related to build and release of sitefinity web applications, other than publishing from within the visual studio?
Thanks
Gaurav
We've been developing with Sitefinity since version 2, with multiple developers.
To answer your questions specifically:
Have a single developer (ideally your lead dev) create a clean sitefinity visual studio solution on their local machine. Check it into your source control repository and have each additional developer pull down a copy from there. You're now all in sync.
In terms of database location, two approaches work - either have each person run a local database, and in the web.config setup the connection string location as . (i.e. local). That way no one needs to check out the web.config to run it. Otherwise use a common development/testing server for the database. We've found the easiest way is to each have a local DB, unless multiple devs are working on very specific tasks together at the same time.
I have not seen any online documentation related to building outside of visual studio. If you have TFS or a MS build server, it should work fine as well.
In general, there is nothing 'special' about Sitefinity's architecture that separates it from any other .NET / MSSQL solution. Best practice that falls under these technologies still applies.
My experience with source control has been one of two options. If you are using SQLExpress user instance databases (that is an mdf in the App_Data folder) I've found versioning everything except this database file and the dataconfig.config file in the configurations folder will allow every developer to run their own copy of the website.
from there you can either do some kind of manual merge of the database or just create a new one for deployment.
This option works best if your developers are simply working on features, and don't need to be working on an actual website, modifying content that has to keep in sync.
Alternatively, if they do need to work with live content and it all has to be the same, create the database in a shared server they all have access to, and version everything (since the connection string should be the same for both).
This works best if your developers are doing work to support existing content as opposed to say creating modules that manipulate the database (creating tables, columns, etc), because keep in mind with this method, everyone will be accessing and modifying the same database.
Personally, my preference is option 1, because it allows each developer full control over their environment. the source could then be merged and shadowed to a staging server, so that the main site content is only affected by this one instance.
I hope this is helpful!

Set server URL for an SSRS linked to report in CRM

I am working with CRM 2011 and a SSRS 2008 R2. Each are located on different servers and are set up so that each one can be deployed from Dev servers to Production servers without causing problems to the other.
In CRM I am linking all the SSRS reports by using a URL. (Report Type: Link to Web Page). My goal is to have the SSRS URL change in CRM depending on which server CRM is deployed to.
For example:
Dev Server
SSRS Server - http://DevSSRSserver
CRM Report URL - http://DevSSRSserver/ReportServer/Pages/ReportViewer.aspx?MyReport&rs:Command=Render
Production Server
SSRS Server - http://ProductionSSRSserver
CRM Report URL - http://ProductionSSRSserver/ReportServer/Pages/ReportViewer.aspx?MyReport&rs:Command=Render
Can anybody point me into the right direction so that I can change a Report URL to a different server name depending on the server CRM is being deployed to? I'm very new to CRM and any help at all will be greatly welcomed.
Thanks,
Shane
There's a couple ways you can address this:
1) If the CRM/SSRS servers are in different network environments; you can just use DNS aliases in each respective environment to control what report server you want to link to. Its not clear in your statement above if you have these server pairs in a different network or if they are on the same network and just different servers.
2) Use features of the SDK -- and write code to search for/iterate over report items in the report entity. Replace the server portion of the URL and save the entity back to the server.
3) One thing I haven't tried before but may be appealing is to use the Export/Import features native to CRM to Export the list of reports you want to alter to Excel, edit them, and Reimport. I'm the least sure of this approach. I've noticed that unlike other entities, Reports has the "Download Template for Entity" option greyed out. (Its seen under the "Import Data" button on the ribbon control) This means you may have to do a little more work to do the import, but it may still be a better fit than the two options above. Certainly -- its better than hand editing each individual one.
From
http://msdn.microsoft.com/en-us/library/gg309480.aspx
Create a hidden parameter of type string in the report that has the name CRM_URL. For more information about adding parameters, see Use Parameters in Reports. When the report is run, this parameter is automatically set to the Web address of Microsoft Dynamics CRM.
Hope that helps!
Ryan

Tools to create a reporting website in .NET?

I want to create a reporting website and if coding is required, I am familiar with C#. I saw people talking about Crystal Reports but wasn't clear whether it can work well in .NET web application. Besides Crystal, what are the other options? Is there simply a "database browser" web app that only requires a DB connection and all other customization is optional? Sorry for the stupid questions, I have zero experience in reporting.
Thanks
No problem,
It is depend on the report type that do you want to display and data quality that you want to achieve.
You can use traditional spreadsheet like utilizing for MS Excel or other spreadsheet software for half baken report. This report style can be further use or data feed for another report.
This techniques is easy since most of report generated is csv files or xml files that can be imported in spreadsheet.
You can use like Crystal report or report viewer from Microsoft (SQL Server or report viewer). This is an easy way to create report since it intend as presentation or end user support. You can drill down to its detail using report viewer but I suggest you use spreadsheet to do some report operation like pivoting or something.
In this case you concern about data quality too. is it half baken solution;to be processed later; or need cleansing using ETL?
You can use various tools or software like business intelligent tool from Microsoft SQL Server, or IBM tools or oracle tools to do that. There are many of them taht suite to your needs and can be integrate to your software.
If you want a database browser, you can download VS 2010 with SP1 and EF 4.1. I forget the web project template that can use as insert update delete and it is already created for you.
You might want to check Report Viewer for SQL Server Reporting Services or ReportViewer.

Good ways to use Crystal Reports with Salesforce?

Does anyone know good ways/tools/approaches for using Crystal Reports with Salesforce.com?
I know that Crystal Reports for Salesforce exists but I'm wondering what other possibilities there are...
It looks like your data is tied up with salesforce.com if you can export data you could use crystal reports independent of salesforce.com.
Other links on exporting data:
http://sfdc.arrowpointe.com/2008/04/28/do-you-backup-your-salesforce-data/
http://ideas.salesforce.com/article/show/97976/Export_All_via_Data_Loader
http://ideas.salesforce.com/article/show/23579/Scheduled_Data_Export_to_backup_database
Our solution may not work for you, but we've decided to host our reports on an external reportserver which is written in c# and exposes a SOAP based web service because the Crystal Reports for Salesforce solution you mentioned didn't offer us the flexibility we needed.
The process is essentially:
Salesforce makes a soap based call to the report server
Report server collates data from Salesforce via the Salesforce Soap API
Report server renders the report and returns it to salesforce
To answer my own question, we eventually decided to set up a local read-only copy of the Salesforce database in MS Sql Server, and develop reports based on that. This allowed the report-writing people to use all the familiar SQL tools they know, without the restrictions on what-can-be-joined-to-what that the native Salesforce database has.
We're using a piece of software called DBAmp to do this - It makes Salesforce appear in SQL Server as a 'linked server', and provides stored procedures you can use to download entire Salesforce tables, or just download changes to a Salesforce table since the last time. This makes it very easy to set up a local copy of the data that gets updated every night.