Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Även om URL-åtkomst till en rapportserver är optimerad för en webbmiljö, kan du också använda URL-åtkomst för att bädda in Reporting Services rapporter i en Microsoft Windows applikation. Men URL-åtkomst som involverar Windows Forms kräver fortfarande att du använder webbläsarteknik. Du kan använda följande integrationsscenarier med URL-åtkomst och Windows Forms:
Visa en rapport från ett Windows Form-program genom att starta en webbläsare programmässigt.
Använd WebBrowser kontrollen på ett Windows-formulär för att visa en rapport.
Starta Internet Explorer från ett Windows-formulär
Du kan använda Process klassen för att komma åt en process som körs på en dator. Klassen Process är en användbar Microsoft .NET Framework-konstruktion för att starta, stoppa, styra och övervaka applikationer. För att se en specifik rapport i din rapportserverdatabas kan du starta IExplore-processen och skicka in URL:en till rapporten. Följande kodexempel kan användas för att starta Microsoft Internet Explorer och skicka en specifik rapport-URL när användaren väljer en knapp på ett Windows formulär.
Private Sub viewReportButton_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles viewReportButton.Click
' Build the URL access string based on values supplied by a user
Dim url As String = serverUrlTextBox.Text + "?" & reportPathTextBox.Text & _
"&rs:Command=Render" & "&rs:Format=HTML4.0"
' If the user does not select the toolbar check box,
' turn the toolbar off in the HTML Viewer
If toolbarCheckBox.Checked = False Then
url += "&rc:Toolbar=False"
End If
' load report in the Web browser
Try
System.Diagnostics.Process.Start("IExplore", url)
Catch
MessageBox.Show("The system could not start the specified report using Internet Explorer.", _
"An error has occurred", MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub 'viewReportButton_Click
// Sample click event for a Button control on a Windows Form
private void viewReportButton_Click(object sender, System.EventArgs e)
{
// Build the URL access string based on values supplied by a user
string url = serverUrlTextBox.Text + "?" + reportPathTextBox.Text +
"&rs:Command=Render" + "&rs:Format=HTML4.0";
// If the user does not check the toolbar check box,
// turn the toolbar off in the HTML Viewer
if (toolbarCheckBox.Checked == false)
url += "&rc:Toolbar=False";
// load report in the Web browser
try
{
System.Diagnostics.Process.Start("IExplore", url);
}
catch (Exception)
{
MessageBox.Show(
"The system could not open the specified report using Internet Explorer.",
"An error has occurred", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
Bädda in en webbläsarkontroll på ett Windows-formulär
Om du inte vill se din rapport i en extern webbläsare kan du sömlöst bädda in en webbläsare som en del av ditt Windows-formulär genom att använda kontrollenWebBrowser.
För att lägga till webbläsarkontrollen i ditt Windows-formulär
Skapa en ny Windows applikation i antingen Microsoft C# eller Microsoft Visual Basic.
Hitta WebBrowser kontrollen i Toolbox-dialogrutan.
Om Toolbox inte är synlig kan du komma åt den genom att välja Vy-menyn och välja Toolbox.
Dra WebBrowserkontrollen till designytan på din Windows Form.
Kontrollen WebBrowsermed namnet webBrowser1 läggs till i formuläret
Du styr WebBrowser kontrollen till en URL genom att anropa dess Navigate-metod . Du kan tilldela en specifik URL-åtkomststräng till din WebBrowser kontroll vid körning som visas i följande exempel.
Dim url As String = "https://localhost/reportserver?/" & _
"AdventureWorks Sample Reports/" & _
"Company Sales&rs:Command=Render"
WebBrowser1.Navigate(url)
string url = "https://localhost/reportserver?/" +
"AdventureWorks Sample Reports/" +
"Company Sales&rs:Command=Render";
webBrowser1.Navigate(url);