Anda di halaman 1dari 18

UNIVERSIDAD NACIONAL DE SAN CRISTOBAL DE

HUAMANGA

FACULTAD DE INGENIERIA
ESCUELA DE INGENIERIA DE SISTEMAS E INFORMATICA

TEMA: ACCESO A DATOS CON ASP.NET y AJAX

DOCENTE: HUBNER JANAMPA PATILLA

MAIL: hubnerjp@gmail.com

HERRAMIENTA: VS .NET 2010

Noviembre - 2009
PRACTICA DE ACCESO A DATOS ASP.NET
1. DISEÑO DE LA INTERFAZ
27 de mayo de 2009

Ing. Hubner Janampa Patilla


DISEÑO DE LA BASE DE DATOS PUBS
TABLA : authors
27 de mayo de 2009

Ing. Hubner Janampa Patilla


2. CODIGO ASP .NET
<%@ Page Language="C#" AutoEventWireup="true"
CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"


"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >


<head runat="server">
<title>Aplicación Web Creado por: Hubner Janampa Patilla - CURSO
: ADMINISTRACION BD - 2008 - ING SISTEMAS</title>
</head>
<body style="background-color: #669966">
<form id="form1" runat="server">
<div style="background-color: #339999">
<br />
<asp:Label ID="Label13" runat="server" Font-Bold="True"
Font-Italic="True" Font-Names="Arial Narrow"
Font-Size="32pt" ForeColor="Red" Text="ADO .NET
ASP.NET AJAX " Width="594px"
BackColor="LightSteelBlue"></asp:Label><br />
<br />
<table style="width: 597px; height: 109px" border="0">
<tr>
<td style="background-color: #3399cc; height:
33px;">
<asp:Label ID="Label7" runat="server"
Text="Seleccionar Author" Font-Bold="True"
Font-Italic="True" Font-
Underline="True"></asp:Label></td>
<td style="background-color: #3399cc; height:
33px;">
<asp:DropDownList ID="lstAuthor"
runat="server" Width="276px" BackColor="Black" Font-Bold="True" Font-
Names="Century" ForeColor="Yellow"
OnSelectedIndexChanged="lstAuthor_SelectedIndexChanged"
AutoPostBack="True">
</asp:DropDownList></td>
<td style="background-color: #3399cc; height:
33px;">
<asp:Button ID="btnUpdate" runat="server"
BackColor="Black" BorderColor="Lime" Font-Bold="True"
ForeColor="Yellow"
OnClick="btnUpdate_Click" Text="Update" />
&nbsp;<asp:Button ID="cmdDelete"
runat="server" Text="Delete" OnClick="cmdDelete_Click"
BackColor="Black" BorderColor="Yellow" Font-Bold="True"
27 de mayo de 2009

ForeColor="Lime" /></td>
</tr>
<tr>
<td style="background-color: #3399cc; height:
52px;">
<strong><em><span style="text-decoration:
underline">Or:</span></em></strong></td>
<td style="background-color: #3399cc; height:
52px;">

<asp:Button ID="cmdInsert" runat="server"


Text="Insert New" CausesValidation="False" OnClick="cmdInsert_Click"

Ing. Hubner Janampa Patilla


BackColor="Black" Font-Bold="True" ForeColor="#8080FF" />
<asp:Button ID="btnCreate" runat="server"
BackColor="Black" BorderColor="Lime" Font-Bold="True"
ForeColor="#80FFFF" Text="Create New"
/></td>
<td style="background-color: #3399cc; height:
52px;">
</td>
</tr>
</table>
<br />
</div>
<table style="width: 593px; height: 147px; background-color:
#cc9966" border="0">
<tr>
<td style="width: 3px; height: 26px;">
<asp:Label ID="Label1" runat="server" Text="Unique
ID" Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"
Width="107px"></asp:Label></td>
<td style="width: 3px; height: 26px;">
<asp:TextBox ID="txtID" runat="server"
Width="200px"></asp:TextBox></td>
<td style="width: 3px; height: 26px;">
<asp:Label ID="Label12" runat="server"
Text="(Required : ### - ## - #### form)" Width="218px" Font-
Bold="True" Font-Italic="True" Font-Names="Arial Narrow"
ForeColor="#404040"></asp:Label></td>
</tr>
<tr>
<td style="width: 3px; height: 21px">
<asp:Label ID="Label2" runat="server" Text="First
Name" Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"
Width="107px"></asp:Label></td>
<td style="width: 3px; height: 21px">
<asp:TextBox ID="txtFirstName" runat="server"
Width="200px"></asp:TextBox></td>
<td style="width: 3px; height: 21px">
</td>
</tr>
<tr>
<td style="width: 3px">
<asp:Label ID="Label3" runat="server" Text="Last
Name" Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"
Width="107px"></asp:Label></td>
<td style="width: 3px">
<asp:TextBox ID="txtLastName" runat="server"
27 de mayo de 2009

Width="200px"></asp:TextBox></td>
<td style="width: 3px">
</td>
</tr>
<tr>
<td style="width: 3px; height: 26px;">
<asp:Label ID="Label4" runat="server" Text="Phone"
Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"></asp:Label></td>
<td style="width: 3px; height: 26px;">
<asp:TextBox ID="txtPhone" runat="server"
Width="200px"></asp:TextBox></td>

Ing. Hubner Janampa Patilla


<td style="width: 3px; height: 26px">
</td>
</tr>
<tr>
<td style="width: 3px; height: 22px">
<asp:Label ID="Label5" runat="server"
Text="Address" Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"
Width="61px"></asp:Label></td>
<td style="width: 3px; height: 22px">
<asp:TextBox ID="txtAddress" runat="server"
Width="200px"></asp:TextBox></td>
<td style="width: 3px; height: 22px">
</td>
</tr>
<tr>
<td style="width: 3px; height: 26px;">
<asp:Label ID="Label8" runat="server" Text="City"
Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"
Width="41px"></asp:Label></td>
<td style="width: 3px; height: 26px;">
<asp:TextBox ID="txtCity" runat="server"
Width="200px"></asp:TextBox></td>
<td style="width: 3px; height: 26px;">
</td>
</tr>
<tr>
<td style="width: 3px">
<asp:Label ID="Label6" runat="server" Text="State"
Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"
Width="45px"></asp:Label></td>
<td style="width: 3px">
<asp:TextBox ID="txtState" runat="server"
Width="200px"></asp:TextBox></td>
<td style="width: 3px">
</td>
</tr>
<tr>
<td style="width: 3px">
<asp:Label ID="Label9" runat="server" Text="Zip
Code" Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"
Width="92px"></asp:Label></td>
<td style="width: 3px">
<asp:TextBox ID="txtZip" runat="server"
Width="200px"></asp:TextBox></td>
<td style="width: 3px">
27 de mayo de 2009

</td>
</tr>
</table>
<br />
<table style="width: 599px; height: 111px; background-color:
#9999cc" border="0">
<tr>
<td style="width: 3px; height: 76px;">
<asp:Label ID="Label10" runat="server"
Text="Contract :" Font-Bold="True" Font-Names="Monotype Corsiva"
ForeColor="Blue"></asp:Label></td>
<td style="width: 3px; height: 76px;">

Ing. Hubner Janampa Patilla


<asp:CheckBox ID="chkContract" runat="server"
/></td>
<td style="height: 76px">
&nbsp;<asp:Label ID="Label11" runat="server"
Text="(required: any five digits)" Width="183px" Font-Names="Arial
Narrow" ForeColor="Red"></asp:Label></td>
</tr>
</table>
<br />
<asp:Label ID="lblStatus" runat="server"
Text="lblStatus"></asp:Label>
</form>
</body>
</html>

3. CODIGO C# .NET
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page


{
string connectionString = "Data
Source=INFORMATICA\\INFORMATICA;Initial Catalog=pubs;User ID=sa;
Password=123456";

protected void Page_Load(object sender, EventArgs e)


{
if (!IsPostBack == true)
{
if (!this.IsPostBack) {
FillAuthorList();
}
}

protected void cmdInsert_Click(object sender, EventArgs e)


{
if (txtID.Text == "" || txtFirstName.Text == "" ||
txtLastName.Text == "") {
27 de mayo de 2009

lblStatus.Text = "Registro ID, FIRST NAME AND LAST NAME is


required";
}

//DEFINIENDO OBJETOS ADO .NET

string insertSQL;
insertSQL = "INSERT INTO Authors (";
insertSQL += "au_id, au_fname,au_lname,";
insertSQL += "phone, address, city,state,zip,contract)";
insertSQL += "VALUES(";

Ing. Hubner Janampa Patilla


insertSQL += "@au_id,@au_fname,@au_lname,";
insertSQL += "@phone,@address,@city,@state,@zip,@contract)";

SqlConnection con = new SqlConnection(connectionString);


SqlCommand cmd = new SqlCommand(insertSQL, con);
//ADD PARAMETROS

cmd.Parameters.AddWithValue("@au_id",txtID.Text);
cmd.Parameters.AddWithValue("@au_fname", txtFirstName.Text);
cmd.Parameters.AddWithValue("@au_lname",txtLastName.Text);
cmd.Parameters.AddWithValue("@phone",txtPhone.Text);
cmd.Parameters.AddWithValue("@address",txtAddress.Text);
cmd.Parameters.AddWithValue("@city",txtCity.Text);
cmd.Parameters.AddWithValue("@state",txtState.Text);
cmd.Parameters.AddWithValue("@zip",txtZip.Text);
cmd.Parameters.AddWithValue("@contract",
Convert.ToInt16(chkContract.Checked));

int added = 0;

try
{
con.Open();
added = cmd.ExecuteNonQuery();
lblStatus.Text = added.ToString() + "registros
insertados";
}
catch (Exception err)
{
lblStatus.Text = "Error al insertar el registro";
lblStatus.Text += err.Message;
}
finally {
con.Close();
}

if (added > 0) {
FillAuthorList();
}

public void FillAuthorList(){


lstAuthor.Items.Clear();

string selectSQL = "SELECT au_lname,au_fname,au_id FROM


Authors";
SqlConnection con = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(selectSQL, con);
27 de mayo de 2009

SqlDataReader reader;

try
{
con.Open();
reader = cmd.ExecuteReader();
while (reader.Read())
{
ListItem newItem = new ListItem();
newItem.Text = reader["au_id"] + ", " +
reader["au_fname"];

Ing. Hubner Janampa Patilla


newItem.Value = reader["au_id"].ToString();
lstAuthor.Items.Add(newItem);

reader.Close();
}
catch (Exception err)
{
lblStatus.Text = "Error en la lectura de datos...";
lblStatus.Text += err.Message;

finally{
con.Close();
}

protected void cmdDelete_Click(object sender, EventArgs e)


{
string deleteSQL;
deleteSQL = "DELETE * FROM Authors";
deleteSQL += "WHERE au_id=@au_id";
SqlConnection con = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(deleteSQL, con);
cmd.Parameters.AddWithValue("@au_id",
lstAuthor.SelectedItem.Value);
int delete = 0;
try
{
con.Open();
delete = cmd.ExecuteNonQuery();
}

catch (Exception err)


{
lblStatus.Text = "Error deleting author";
lblStatus.Text += err.Message;

}
finally {
con.Close();
}
27 de mayo de 2009

if (delete > 0) {
FillAuthorList();
}
}
protected void btnUpdate_Click(object sender, EventArgs e)
{

//DEFINIENDO OBJETOS ADO .NET

string updateSQL;
updateSQL = "UPDATE Authors SET ";
updateSQL += "au_id=@au_id,

Ing. Hubner Janampa Patilla


au_fname=@au_fname,au_lname=@au_lname,";
updateSQL += "phone=@phone, address=@address,
city=@city,state=@state,zip=@zip,contract=@contract)";
updateSQL += "WHERE au_id=@au_id_original";

SqlConnection con = new SqlConnection(connectionString);


SqlCommand cmd = new SqlCommand(updateSQL, con);
//ADD PARAMETROS

cmd.Parameters.AddWithValue("@au_id", txtID.Text);
cmd.Parameters.AddWithValue("@au_fname", txtFirstName.Text);
cmd.Parameters.AddWithValue("@au_lname", txtLastName.Text);
cmd.Parameters.AddWithValue("@phone", txtPhone.Text);
cmd.Parameters.AddWithValue("@address", txtAddress.Text);
cmd.Parameters.AddWithValue("@city", txtCity.Text);
cmd.Parameters.AddWithValue("@state", txtState.Text);
cmd.Parameters.AddWithValue("@zip", txtZip.Text);
cmd.Parameters.AddWithValue("@contract",
Convert.ToInt16(chkContract.Checked));

cmd.Parameters.AddWithValue("@au_id_original",lstAuthor.SelectedItem.V
alue);

try
{
con.Open();
int update = cmd.ExecuteNonQuery();
lblStatus.Text = update.ToString() + "registros
actualizados";
}
catch (Exception err)
{
lblStatus.Text = "Error al actualizar author";
lblStatus.Text += err.Message;
}
finally
{
con.Close();
}

}
protected void lstAuthor_SelectedIndexChanged(object sender,
EventArgs e)
{
//DEFINIENDO ADO .NET OBJECT
27 de mayo de 2009

string selectSQL;
selectSQL = "SELECT * FROM Authors";
selectSQL += "WHERE au_id='" +
lstAuthor.SelectedItem.Value + "'";
SqlConnection con = new SqlConnection(connectionString);
SqlCommand cmd = new SqlCommand(selectSQL, con);
SqlDataReader reader;

//abrimos la base de datos....


try
{

Ing. Hubner Janampa Patilla


con.Open();
reader=cmd.ExecuteReader();
reader.Read();

//fill control...

txtID.Text = reader["au_id"].ToString();
txtFirstName.Text = reader["au_fname"].ToString();
txtLastName.Text = reader["au_lname"].ToString();
txtPhone.Text = reader["phone"].ToString();
txtAddress.Text = reader["address"].ToString();
txtCity.Text = reader["city"].ToString();
txtState.Text = reader["state"].ToString();
txtZip.Text = reader["zip"].ToString();
chkContract.Checked = (bool)reader["contract"];
reader.Close();
lblStatus.Text = "";
}
catch (Exception err)
{
lblStatus.Text = "Error getting author.";
lblStatus.Text += err.Message;
}

finally
{
con.Close();
}
}
}
27 de mayo de 2009

Ing. Hubner Janampa Patilla


4. SALIDA EN EL NAVEGADOR WEB
27 de mayo de 2009

Nota:

Para el 2do Examen Práctico Estudiar el capítulo 13 y 14 del


libro: Beginning ASP.NET 2.0 in C# 2008, From Novice to
Professional, Matthew MacDonald

UNIVERSIDAD NACIONAL DE SAN CRISTOBAL DE HUAMANGA

Ing. Hubner Janampa Patilla


FACULTAD DE INGENIERÍA

ESCUELA DE ING. SISTEMAS

ADMINISTRACION DE BASES DE DATOS

TRABAJO PRÁCTICO
Realizar una aplicación en ASP.NET (VISUAL STUDIO .NET 2005), para grabar, actualizar,
eliminar la tabla oportunidades, la cual permite seleccionar el cliente y el empleado, validar los
campos y utilizar el Mater Page.

Diseño físico de la BD.

Puntaje:

 Diseño de base de datos: 1pt


 Interfaz: 2 pt
 Grabar: 4 pt
 Actualizar: 4 pt
 Eliminar: 4 pt
 Recorrido 5 pt:

Nota: Utilice POO , Procedimientos Almacenados y ADO .NET desconectado.


27 de mayo de 2009

Ing. Hubner Janampa Patilla


Apedice : Configurar directorios virtuales del servidor de
informes.
En Reporting Services, las direcciones URL se utilizan para obtener acceso al servidor de informes, al
Administrador de informes, al Generador de informes y a informes individuales. En este tema se
describen las direcciones URL que se utilizan para obtener acceso al servidor de informes y al
Administrador de informes, se proporcionan directrices acerca de la creación de los directorios virtuales
de cada aplicación y se incluye un resumen de la configuración almacenada en los archivos de
configuración.

Nota:

Sin embargo, no se describe el acceso URL al Generador de informes ni a informes específicos


almacenados en el servidor de informes. Para obtener más información acerca del acceso URL
a estos elementos, vea Iniciar la herramienta Generador de informes y Using a URL to Access
Report Server Items en los Libros en pantalla de SQL Server.
Acerca de las direcciones URL y los directorios virtuales para un servidor de informes en el modo
integrado de SharePoint

Si se configura un servidor de informes para ejecutarse en una implementación más amplia de una
tecnología o producto de SharePoint, la construcción de las direcciones URL y los directorios virtuales se
verá afectada de las siguientes formas:

 Para el acceso URL a elementos específicos, use siempre una dirección URL completa que
incluya la extensión de nombre de archivo (como .rdl para un informe). Se hace referencia a
todos los elementos de un sitio de SharePoint mediante direcciones URL completas, que
incluirán una extensión de nombre de archivo utilizada para distinguir entre los distintos tipos
de elementos del servidor de informes. Debe especificar direcciones URL completas al hacer
referencia a modelos y orígenes de datos compartidos en los informes y al especificar un
servidor de destino y carpetas para operaciones de publicación en un servidor de informes.

 Para implementaciones simultáneas en las que el servidor de informes y la instancia de la


tecnología de SharePoint estén instalados en el mismo equipo, no puede utilizar
http://localhost/reportserver. Si se utiliza http://localhost para obtener acceso a la aplicación
Web de SharePoint, se debe usar un sitio Web no predeterminado o una asignación de puerto
única para obtener acceso a un servidor de informes. Además, si el servidor de informes está
integrado en un conjunto de servidores de SharePoint, el acceso localhost a un servidor de
informes no se resolverá para los nodos de la implementación que estén instalados en equipos
remotos.

 La dirección URL y el directorio virtual del Administrador de informes no se pueden configurar.


Si los configura, ya no funcionarán después de implementar un servidor de informes en el modo
integrado de SharePoint. El Administrador de informes no se admite en este modo.
27 de mayo de 2009

Para obtener más información acerca de los modos de implementación y los requisitos de las direcciones
URL para publicar elementos, vea Modos de implementación para Reporting Services y Implementar
informes, modelos y orígenes de datos compartidos en un sitio de SharePoint.

Acerca de las direcciones URL y los directorios virtuales para un servidor de informes en modo nativo

En SQL Server 2005 Reporting Services, se obtiene acceso al servidor de informes y al Administrador de
informes a través de direcciones URL que incluyen directorios virtuales dedicados configurados
específicamente para cada componente.

Ing. Hubner Janampa Patilla


 El directorio virtual del Administrador de informes se utiliza para obtener acceso al
Administrador de informes. El nombre del directorio virtual predeterminado del Administrador
de informes es reports.

 El directorio virtual del servidor de informes proporciona acceso mediante programación a


extremos SOAP del servicio Web del servidor de informes. Es también el nodo raíz del espacio
de nombres de carpetas del servidor de informes que proporciona direcciones URL para
informes, recursos, modelos, orígenes de datos compartidos y carpetas almacenadas en el
servidor de informes. El nombre del directorio virtual predeterminado del servidor de informes
es reportserver.
Los directorios virtuales constituyen una parte de la dirección URL completa que se utiliza para tener
acceso al Administrador de informes y al servidor de informes. Una dirección URL completa incluye las
siguientes partes.

http:// o https://

La dirección URL comienza con un prefijo. El prefijo https se utiliza cuando el servidor está
configurado para Capa de sockets seguros (SSL).

Http:// y https:// son los prefijos más comunes, pero también se admiten otros. Para obtener
más información acerca de la creación de direcciones URL, vea URL Access Syntax en los Libros
en pantalla de SQL Server.

Un nombre de servidor

Puede ser el nombre del equipo en la red. Puede ser localhost si se tiene acceso a él
localmente. Si se tiene acceso al equipo mediante una conexión de Internet, debe ser un
nombre de dominio completo.

Un sitio Web

El sitio Web es una construcción IIS que identifica qué aplicación recibe la solicitud.

Puede ser el sitio Web predeterminado. Si está utilizando un sitio Web personalizado, puede ser
una dirección IP, un encabezado de host o un número de puerto. Para obtener más información
acerca de las diversas formas de identificar un sitio Web, vea el tema sobre el alojamiento de
varios sitios Web en un único servidor en la documentación de los Servicios de Internet
Information Server (IIS).

Un directorio virtual

El directorio virtual es la única parte de la dirección URL que se configura mediante Reporting
Services.

Para crear el directorio virtual, utilice la herramienta de configuración de Reporting Services. Si


está instalando una configuración predeterminada, el programa de instalación creará el
directorio virtual automáticamente.
27 de mayo de 2009

Cuando el programa de instalación crea el directorio virtual, utiliza el nombre de la instancia, si


la hubiera. Por ejemplo, si instala SQL Server 2005 Express Edition with Advanced Services con
la configuración predeterminada, el programa de instalación utilizará reportserver$SQLEXPRESS
para el nombre del directorio virtual.

Nota:

Las direcciones URL proporcionan acceso de usuario final o mediante programación al servidor
de informes. Para obtener más información acerca de las conexiones con el servidor de
informes, vea Conexiones y cuentas de una implementación de Reporting Services en los

Ing. Hubner Janampa Patilla


Libros en pantalla de SQL Server.
Ejemplos de direcciones URL de Reporting Services

En la lista siguiente se muestran algunos ejemplos del aspecto que puede tener una dirección URL del
servidor de informes:

 http://localhost/reportserver

 http://localhost/reportserver$SQLEXPRESS

 http://sales01/reportserver

 http://sales01:8080/reportserver

 https://sales.adventure-works.com/reportserver

 https://www.adventure-works.com:8080/reportserver01
Las direcciones URL que se utilizan para obtener acceso al Administrador de informes comparten un
formato similar y suelen crearse en el mismo sitio Web que aloja al servidor de informes. La única
diferencia es el nombre del directorio virtual (en este caso es reports, pero se puede configurar para
que se utilice el nombre que se prefiera):

 http://localhost/reports

 http://localhost/reports$SQLEXPRESS

 http://sales01/reports

 http://sales01:8080/reports

 https://sales.adventure-works.com/reports

 https://www.adventure-works.com:8080/reports
Directrices para la configuración de directorios virtuales
Los directorios virtuales del servidor de informes y del Administrador de informes se deben crear en un
sitio Web existente. Puede utilizar el sitio Web predeterminado o un sitio Web personalizado. Puede
utilizar el mismo sitio Web para ambos directorios virtuales. No hay requisitos especiales para el sitio
Web. Toda la configuración de seguridad, ASP.NET, rutas de acceso, permisos, etc. se lleva a cabo en los
directorios virtuales.

Al crear el directorio virtual, la identidad del servicio Web del servidor de informes se configura
automáticamente. La versión de los Servicios de Internet Information Server (IIS) que utiliza determina
la identidad del servicio Web:

 En IIS 6.0, el grupo de aplicaciones que contiene el sitio Web determina la identidad del
servicio Web. De forma predeterminada es NetworkService.

 En IIS 5.0, la identidad del servicio Web es siempre la identidad del proceso ASP.NET. De forma
predeterminada es nombreDeEquipo\ASPNET.
Los directorios virtuales de Reporting Services están configurados para utilizar ASP.NET 2.0 (versión que
se instala con SQL Server). Si ejecuta versiones anteriores de ASP.NET en el servidor Web, asegúrese de
27 de mayo de 2009

que no haya conflictos entre las diferentes versiones de ASP.NET. Las dos versiones principales de
ASP.NET no se pueden ejecutar en el mismo proceso. En IIS 6.0, puede ejecutar diferentes versiones de
ASP.NET simultáneamente si utiliza grupos de aplicaciones diferentes para cada versión. En IIS 5.0,
cada versión de ASP.NET se ejecuta automáticamente como un proceso separado.

Los directorios virtuales del servidor de informes están configurados para el acceso a la intranet. El
acceso anónimo está deshabilitado de manera predeterminada. En la mayoría de los casos, las
direcciones URL del servidor de informes utilizan nombres de red de equipo. Si desea configurar
Reporting Services para conexiones a Internet, puede ser necesario modificar los archivos de
configuración del servidor de informes. Para obtener más información, vea la sección "Configuración

Ing. Hubner Janampa Patilla


para especificar las direcciones URL utilizadas en Reporting Services" de este tema y Configurar un
servidor de informes para acceso a Internet.

No se puede configurar un directorio virtual del servidor de informes para usar archivos de programa o
de datos en un equipo remoto. El directorio virtual del servidor de informes debe definirse en el equipo
donde se encuentren los archivos de programa de Reporting Services. No se admite la asignación de un
directorio virtual del servidor de informes a una carpeta compartida mediante una ruta UNC o una
unidad asignada.

Para crear y configurar directorios virtuales, utilice la herramienta de configuración de Reporting


Services.

Para ejecutar el servidor de informes y el Administrador de informes en un sitio Web personalizado, vea
Cómo configurar Reporting Services para que use un sitio Web no predeterminado (configuración de
Reporting Services).

Para especificar un grupo de aplicaciones para el servicio Web del servidor de informes, utilice la página
Identidad de servicio Web de la herramienta de configuración de Reporting Services.

Configuración personalizada en IIS

Al igual que con los demás directorios virtuales, puede personalizar más aún los directorios virtuales del
servidor de informes y del Administrador de informes a través de los Servicios de Microsoft Internet
Information Server (IIS). Esto sólo debería ser necesario en caso de que se implementara una extensión
de seguridad personalizada o de que se utilizara un sitio Web no predeterminado. Si personaliza la
configuración e interrumpe la implementación como resultado, puede utilizar la herramienta de
configuración de Reporting Services para restablecer los directorios virtuales con el fin de utilizar la
configuración predeterminada.

Usar un número de puerto personalizado


Para configurar el servidor de informes o el Administrador de informes de modo que utilicen un puerto
distinto al 80, es necesario editar los archivos de configuración.

1. Abra RSReportServer.config en un editor de texto.


2. Anexe el número de puerto al valor UrlRoot en el archivo rsreportserver.config. Por ejemplo, si
Urlroot está establecido en http://sales01/report server, establézcalo en
http://sales01:8080/reportserver.
3. Abra RSWebApplication.config en un editor de texto.
4. Establezca ReportServerUrl en la misma dirección URL especificada en UrlRoot.
5. Elimine el valor (pero no las etiquetas) de ReportServerVirtualDirectory.
6. Guarde ambos archivos.
Si está utilizando un puerto personalizado para un sitio configurado para SSL, es necesario realizar
pasos adicionales. Para obtener más información acerca del uso de SSL en un puerto distinto al 443, vea
Configurar un servidor de informes para conexiones SSL.
27 de mayo de 2009

Redirección al directorio virtual del Administrador de informes


A través de IIS, puede utilizar el Administrador de informes como página principal predeterminada para
el servidor Web. Para configurar la redirección, utilice los siguientes valores:

1. Abra el Administrador de IIS.


2. Haga clic con el botón secundario en el sitio Web que aloja el Administrador de informes y
seleccione Propiedades.
3. Haga clic en la ficha Directorio principal.
4. Haga clic en Una redirección a una dirección URL.
5. En Redirigir a, escriba /reports. Elimine "http://" si está en el cuadro de texto.

Ing. Hubner Janampa Patilla


6. Seleccione Un directorio por debajo de la URL escrita si utiliza IIS 6.0. Si utiliza IIS 5.0, la
opción que debe seleccionar es Un directorio por debajo de éste.
7. Haga clic en Aceptar.
Configuración para especificar las direcciones URL utilizadas en Reporting Services
Los archivos de configuración de Reporting Services incluyen parámetros cuyo valor es una dirección
URL. En la tabla siguiente se proporciona un resumen de todas las direcciones URL que se pueden
especificar en un archivo de configuración de Reporting Services. Puede utilizar las descripciones para
comparar las direcciones URL. Para ver un ejemplo del uso conjunto de algunas de estas
configuraciones, vea Archivo de configuración RSWebApplication.

Configuración Descripción

ReportServerVirtualDirectory Especifica el extremo SOAP del servidor de informes que


utiliza el Administrador de informes. Los valores válidos
incluyen el nombre del directorio virtual del servidor de
informes. Por ejemplo, si la dirección URL del servidor de
informes es http://adventure-
works.com/servidorDeInformes, el valor de
ReportServerVirtualDirectory es servidorDeInformes.
El Administrador de informes utiliza localhost para
conectarse al servidor de informes. Si localhost no está
habilitado, en su lugar utilice ReportServerUrl.
Esta configuración se define en el archivo
RSWebApplication.config. Este valor se crea durante la
instalación o con la herramienta de configuración de
Reporting Services cuando se configura el directorio virtual
del Administrador de informes. También puede editar el
archivo de configuración para modificar el valor.

Esta configuración requiere que el Administrador de


informes y el servidor de informes se configuren para utilizar
el mismo sitio Web. Si utilizan diferentes sitios Web, elimine
el valor de ReportServerVirtualDirectory y utilice
ReportServerUrl en su lugar.

ReportServerUrl Proporciona un modo alternativo de especificar el extremo


SOAP del servidor de informes que utiliza el Administrador
de informes. Puede utilizar esta configuración en lugar de
ReportServerVirtualDirectory cuando los directorios
virtuales del Administrador de informes y del servidor de
informes estén alojados en servidores o sitios Web
diferentes.
Para especificar esta configuración, debe editar el archivo
RSWebApplication.config manualmente. Los valores válidos
incluyen http://<servidor>/<servidorDeInformes> o
27 de mayo de 2009

https://<servidor>/<servidorDeInformes> si utiliza
certificados SSL. Si el Administrador de informes está
instalado por separado en un servidor Web para Internet,
este valor debe ser un nombre de dominio completo que se
pueda utilizar para obtener acceso a una instancia del
servidor de informes detrás del firewall. Este valor no se
puede establecer nunca en localhost.

Si un certificado SSL (Capa de sockets seguros) está


instalado, este valor debe ser el nombre del servidor
registrado para ese certificado. Si se produce el error "Se ha

Ing. Hubner Janampa Patilla


terminado la conexión: no se puede establecer una relación
de confianza para el canal seguro SSL/TLS", establezca
ReportServerUrl en el nombre de dominio completo del
servidor para el que se ha emitido el certificado SSL. Por
ejemplo, si se ha registrado el certificado para
https://adventure-works.com.onlinesales, la dirección
URL del servidor de informes será https://adventure-
works.com.onlinesales/reportserver.

UrlRoot Las extensiones de entrega utilizan este parámetro para


componer la dirección URL que se utiliza para obtener
acceso a los elementos almacenados en el servidor de
informes. Por ejemplo, si se emplea la extensión de entrega
Correo electrónico del Servidor de informes, se utilizará el
valor de UrlRoot para crear un hipervínculo al informe que
se va a distribuir.
Este valor también se utiliza para resolver vínculos en
informes representados generados mediante procesamiento
desatendido de informes.

Esta configuración se especifica en el archivo


RSReportServer.config.

Este valor se especifica durante la instalación o mediante la


herramienta de configuración de Reporting Services si el
servidor de informes se instaló sólo para archivos. El valor
debe ser una dirección URL válida para el servidor de
informes. Si se va a obtener acceso al servidor de informes
a través de Internet, establézcalo en un valor accesible a
través de una conexión a Internet.

Vea también

Tareas
Cómo configurar Reporting Services para que use un sitio Web no predeterminado (configuración de
Reporting Services)

Conceptos
Configurar componentes de Reporting Services

Otros recursos
Directorio virtual del servidor de informes (Configuración de Reporting Services)
27 de mayo de 2009

Ing. Hubner Janampa Patilla

Anda mungkin juga menyukai