ReportingService2006.CreateReport Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Agrega un informe nuevo a una biblioteca de SharePoint.
public:
ReportService2006::CatalogItem ^ CreateReport(System::String ^ Report, System::String ^ Parent, bool Overwrite, cli::array <System::Byte> ^ Definition, cli::array <ReportService2006::Property ^> ^ Properties, [Runtime::InteropServices::Out] cli::array <ReportService2006::Warning ^> ^ % Warnings);
public ReportService2006.CatalogItem CreateReport (string Report, string Parent, bool Overwrite, byte[] Definition, ReportService2006.Property[] Properties, out ReportService2006.Warning[] Warnings);
member this.CreateReport : string * string * bool * byte[] * ReportService2006.Property[] * Warning[] -> ReportService2006.CatalogItem
Public Function CreateReport (Report As String, Parent As String, Overwrite As Boolean, Definition As Byte(), Properties As Property(), ByRef Warnings As Warning()) As CatalogItem
Parámetros
- Report
- String
Nombre del nuevo informe, incluidos el nombre y la extensión del nombre de archivo .rd.
- Parent
- String
Dirección URL completa de la carpeta principal que contendrá el informe.
- Overwrite
- Boolean
Expresión de tipo Boolean
que indica si se debe sobrescribir un informe existente que tiene el mismo nombre en la ubicación especificada.
- Definition
- Byte[]
Definición de informe que se va a publicar en el servidor de informes, que es el contenido de un archivo .rdl. Los datos XML se definen mediante el http://schemas.microsoft.com/sqlserver/reporting/2008/01/reportdefinition/ lenguaje de definición de informe .
- Properties
- Property[]
Matriz de objetos Property que contiene los nombres y valores de propiedad que se van a establecer para el informe.
- Warnings
- Warning[]
[salida] Matriz de objetos Warning que describe las advertencias que se produjeron al validar la definición de informe.
Devoluciones
Objeto CatalogItem para el informe creado recientemente.
Ejemplos
using System;
using System.Collections.Generic;
using System.IO;
using System.Text;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;
class Sample
{
static void Main(string[] args)
{
ReportingService2006 rs = new ReportingService2006();
rs.Url = "http://<Server Name>" +
"/_vti_bin/ReportServer/ReportService2006.asmx";
rs.Credentials =
System.Net.CredentialCache.DefaultCredentials;
Byte[] definition = null;
Warning[] warnings = null;
string name = "MyReport.rdl";
try
{
FileStream stream = File.OpenRead("MyReport.rdl");
definition = new Byte[stream.Length];
stream.Read(definition, 0, (int)stream.Length);
stream.Close();
}
catch (IOException e)
{
Console.WriteLine(e.Message);
}
try
{
string parent = "http://<Server Name>/Docs/Documents/";
CatalogItem report = rs.CreateReport(name, parent,
false, definition, null, out warnings);
if (warnings != null)
{
foreach (Warning warning in warnings)
{
Console.WriteLine(warning.Message);
}
}
else
Console.WriteLine("Report: {0} created successfully " +
" with no warnings", name);
}
catch (SoapException e)
{
Console.WriteLine(e.Detail.InnerXml.ToString());
}
}
}
Imports System
Imports System.IO
Imports System.Text
Imports System.Web.Services
Imports System.Web.Services.Protocols
Class Sample
Public Shared Sub Main()
Dim rs As New ReportingService2006()
rs.Url = "http://<Server Name>" + _
"/_vti_bin/ReportServer/ReportService2006.asmx"
rs.Credentials = _
System.Net.CredentialCache.DefaultCredentials
Dim definition As [Byte]() = Nothing
Dim warnings As Warning() = Nothing
Dim name As String = "MyReport.rdl"
Try
Dim stream As FileStream = File.OpenRead("MyReport.rdl")
definition = New [Byte](stream.Length - 1) {}
stream.Read(definition, 0, CInt(stream.Length))
stream.Close()
Catch e As IOException
Console.WriteLine(e.Message)
End Try
Try
Dim parentPath As String = _
"http://<Server Name>/Docs/Documents/"
rs.CreateReport(name, parentPath, False, _
definition, Nothing, warnings)
If Not (warnings Is Nothing) Then
Dim warning As Warning
For Each warning In warnings
Console.WriteLine(warning.Message)
Next warning
Else
Console.WriteLine("Report: {0} created " + _
"successfully with no warnings", name)
End If
Catch e As SoapException
Console.WriteLine(e.Detail.InnerXml.ToString())
End Try
End Sub
End Class
Comentarios
En la siguiente tabla se muestra la información de encabezado y de permisos de esta operación.
Encabezados SOAP | (In) TrustedUserHeaderValue (Out) ServerInfoHeaderValue |
Permisos necesarios | Creación de un nuevo informe: <xref:Microsoft.SharePoint.SPBasePermissions.AddListItems> en Parent AND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> en orígenes de datos y conjuntos de datos definidos en Definition Actualización de un informe existente: <xref:Microsoft.SharePoint.SPBasePermissions.EditListItems> en Report AND <xref:Microsoft.SharePoint.SPBasePermissions.ViewListItems> en orígenes de datos y conjuntos de datos definidos en Definition |
La longitud del Parent
parámetro no puede superar los 260 caracteres; de lo contrario, se produce una excepción SOAP con el código de error rsItemLengthExceededed.
El Parent
parámetro no puede ser nulo ni estar vacío ni contener los siguientes caracteres reservados: : ? ; @ & = + $ , \ * > < | . "
. Puede usar el carácter de barra diagonal (/) para separar los elementos del nombre de ruta de acceso completo de la carpeta, pero no puede usarlo al final del nombre de la carpeta.
Si se producen errores, no se crea el informe.
Agregar un informe a una biblioteca de SharePoint modifica las ModifiedBy propiedades y ModifiedDate de la carpeta primaria.
Si la extensión de nombre de archivo .rdl se excluye del nombre del informe, se devolverá un rsFileExtensionRequired
error.