Internet access for SSRS reports - c#

I am trying to get my company to start using SSRS for reporting but I realized something today that I have never tried to use SSRS outside the local LAN before. Our application is external facing on the internet and if I implemented SSRS, I would need to be able to access the Report Manager via an external URL.
It is setup and configured currently, but I can only use it locally on the company domain. I tried searching the web for how to configure this and what best practice is but I didn't really get anywhere.
I imagine it would not be good to set it up on the same server that the database is hosted on? Has anyone done this before? I have setup one application that was inherently not meant to be external before to be external and it was a pain in the ass. :D Course, that application had to be proxied through Tomcat to IIS.
We have a developed an intranet web application build on ASP.Net MVC 4 and SSRS 2012, which is live for past 2 years.
Now we planning to host the same in internet. We are having a bottle neck now for SSRS. As SSRS web access is not ready to use externally (internet).
I also checked for SSRS custom authentication which again not much recommended by Microsoft!
We are looking for something like a proxy (web application) to the SSRS web access, which can be hosted as a web application in IIS along with other services.
Is there any ready to use references / tools available.
Update : For better understanding
We are rendering the ssrs reports inside the Asp.Net mvc razor views using iframe.
And also we are using ssrs for export to various formats.

Use the ReportViewer control to hide the SSRS from the internet.
The connection to the SSRS is from your web servers, not from the internet

Related

How to interact with SSRS programmatically

I working on a web project that needs to manage an SSRS server. Currently, I want to be able to upload a file to it but would like to do more in the future.
I've been doing research to find libraries or something that will allow me to do it but have only found https://technet.microsoft.com/en-us/library/ms162839.aspx
Thanks!
This is most commonly done using the web service exposed by SSRS:
https://msdn.microsoft.com/en-us/library/ms152787.aspx

Azure Web Forms and HTML to PDF converters

If you are using Windows Azure Web Sites for deployment (not Cloud Services) and developing an ASP.net Web Forms application, is it possible to use a 3rd party HTML to PDF converter? I'm starting to think I must convert to a Web Application instead of being a Web Form. I'm kind of new to all of this, so I'd appreciate anyone's input.
If by chance there are 3rd party HTML to PDF converters that are compatible with Web Forms and Azure Web sites, that would be useful. I'm rather happy with the site as-is, but I need to add in the ability to generate a PDF report and I don't fancy tearing up the code if I can avoid it.
Thanks.
Subsequent to my comment 27-dec I had to find a solution and 8 cents per document wasn't an option for thousands of documents. Eventually we build our own solution service http://www.html2pdfrocket.com and made it free.
We pretty much ended up doing exactly what you said - hosting it on Microsoft Azure Cloud Services - as you also discovered the Azure websites didn't have the flexibility or scalability to do what we needed but their cloud services is perfect for it.

ASP.NET website to be deployed on Windows Azure with databases

I know this is a very common question and I could find several answers, but I think my situation is a bit different.
So, I have an ASP.NET Website (NOT a web application), built using "Web forms". Its a very simple website which does bunch of REST calls and talks to the SQL Server 2008. Can you please help me finding a step by step guide to deploy the same on Windows Azure using VS 2010? As of now, the website runs fine on a traditional web hosting server.
So far what I am getting are approaches which use MVC (and using ASP.NET web application, not website). I don't think that I should be concerned about MVC at all? Does a website vs. web application aspect make a difference? If yes, do I need to convert the website to web application?
There's a lot of content on web, so I am a bit confused given my condition. Can someone please put me in right direction? Thanks a lot.
You'll need to convert your Website project to an ASP.NET Web Role project, whether you first convert it to a ASP.NET Web Application or not doesn't really matter. The rest of the tutorial you already linked to applies just fine.
There's no need to look at ASP.NET MVC, It's a different technology than web forms, and there's no need to move to it in order to get your site hosted on Azure.
As for your database, unless you host that yourself in a VM-Role or somewhere else (and connect it using Azure Connect), you'll need to convert it to Sql Azure or Azure Table Storage. SQL Azure is largely compatible with SQL Server, but there are a few features which are unsupported.

WPF application to communicate with Microsoft Project Server 2010

One of our future requirement at work is to be able to read and write from our WPF application into Microsoft Project Server 2010. We know the fact that Microsoft Project Server 2010 is built on top of Sharepoint(from http://msdn.microsoft.com/en-us/library/office/ms504195%28v=office.15%29) so we know that you could be able to do this using Sharepoint programming(please correct me if I am wrong).
Based from searching in StackOverFlow and online we could not able to find any resources on how to communicate with Project Server using our WPF application. Is this really the case for WPF app and Project Server? Or we could be missing something. We recently implemented Exchange Server communication with our WPF app and we thought it will be similar case in terms of Project Server 2010.
(More info: We are using TFS for team collaboration)
True: Project Server is built on top of Sharepoint
Partially Wrong: Data related to Project Server (except some configuration information) can be accessed using SharePoint API calls.
Project Server uses its' own API called PSI: Project Server Interface, (link).
The API includes web services (WCF or ASP.NET) to access different data related to project plans, resources, etc. Some information can be accessed through different services, but set of fields in the case could be different: Field A + Field B could be accessed through Web service A, but only Field B could be accessed through Web service B
PSI works according to Security setups on the Project Server and there are required permissions defined for every function of the API.
I said that it is partially wrong that Project Server data can be accessed using SharePoint API. The partial is because you can synchronize your projects with SharePoint lists and in this case the SharePoint lists can be accessed using SharePoint API.

Adding SharePoint screen to legacy c# application

We have an Enterprise application written in C# that we well to customers. The server runs in our data center and the customers connect via a windows application also written in C#. Pretty standard.
Management would like a dashboard added to our application. I was told to look into using sharepoint to somehow add a sharepoint dashboard to the main screen of our client application (winforms).
Is this possible? The client application would have to somehow show a web page from the sharepoint server which I guess is no problem using a html componenent. But I'm more worried about getting sharepoint to work with our existing data (sql server 2008).
I suggested just writing the dashboard ourselves and avoiding sharepoint. But management would like to add more 'Business Intelligence' to our application. I know that is the way of the future but I'm worried about the complexity of integration with sharepoint.
There are various options for integrating SharePoint into a windows forms application. The simplest is embedding a web browser control and point it to the page with the dashboard set up.
Alternatively you could use the SharePoint client object model (2)(make calls to the SharePoint server) and retrieve data (and potentially pages) from SharePoint to put into your dashboard.
I would recommend to management that we can display SharePoint through our current application, and we can demonstrate with a simple dashboard part (eg chart control) to demonstrate how we can make the dashboard integrate more naturally over time piece by piece. This would minimise risk by displaying from SharePoint, while being able to show the potential advantages of using the SharePoint data and creating a customised windows forms dashboard.
SharePoint does a good job of going either way with information via BCS, assuming you would want to show LOB data in a SharePoint deployment.
However, since you want to go the other way, the Client Object Model works well with this. Seeing as how it is a .NET application, I can site specific times where we have used the built in REST services to get information from lists in our enterprise SharePoint deployments.
Security will need to be addressed as well, so don't forget about that. If you have AD groups already set up for your enterprise application, you can most likely reuse some of those in SharePoint. If you don't, you will have to now manage how data will be secured. You may also end up getting prompted for a log in to SP which is never a good user experience.
Good luck!

Categories