viernes, 28 de septiembre de 2007

Conexión a un cubo OLAP desde Excel

Excel permite conectarse directamente a cubos OLAP mediante el motor de Analysis Services de SQL Server 2005.

En la pestaña de datos, tenemos la opción para obeterner datos de una fuente externa. Seleccionamos la opción Analysis Services.













Especificamos la dirección ip o nombre de la máquina:















En caso de utilizar autentificación con nombre de usuario y contraseña, en un paso futuro deberemos marcar la opción de Guardar contraseña en fichero.

De las diferentes bases de datos implemendas en el servidor, elegimos con la que queremos trabajar:
















En el último paso, si hemos elegido autentificación con nombre de usuario y contraseña, deberemos marcar el chack de Guardar en fichero.

















Una vez conectados al cubo, aparecerá una tabla dinámica con la que podremos jugar, arrastrando las dimensiones y hechos que queramos.

martes, 25 de septiembre de 2007

Como eliminar el log transaccional de una base de datos

Muchas veces encontramos que una base de datos ocupa mucho espacio en disco sin tener un gran volumen de datos en ella. En estos casos, es habitual encontrar un fichero de log grande debido a las transacciones que se han llevado a cabo.

Para vaciar el fichero de log podemos ejecutar el siguiente código SQL:

BACKUP LOG
MyDatabase WITH TRUNCATE_ONLY
DBCC SHRINKDATABASE (MyDatabase, TRUNCATEONLY )

domingo, 23 de septiembre de 2007

Comandos FTP en MS-DOS

Podemos realizar un conjunto de comandos FTP en MS-DOS mediante un fichero adicional. Dicho fichero contendrá el acceso al servidor y los comandos que queramos realizar.
Como ejemplo:


OPEN xxx.xxx.xxx.xxx
username
password

LCD C:\temp
GET myfile
QUIT


En este ejemplo, nos conectamos al servidor, accedemos a la carpeta local c:\temp y descargamos el fichero myfile.
Para ejecutar la aplicación ftp con el fichero de comando, entramos la siguiente línea ftp -v -i -s:commands.txt.

Report Builder con autentificación básica

Bajo la configuración de autentificación básica en Reporting Services, podemos comprobar que el usuario debe verificar sus credenciales cuando intenta acceder a alguno de los dos directorios virtuales del IIS. En cambio, si accedemos a la herramienta Report Builder, podremos comprobar que el sistema nos devuelve el siguiente error:

Cannot Retrieve Application. Authentication Error.

Para permitir el acceso a la herramienta, deberemos dar acceso anónimo a la carpeta

/reportserver/reportbuilder

de los directorios virtuales del IIS.

Es muy importante remarcar que esta opción solo debe realizarse si Reporting Services están configurado bajo SSL.

miércoles, 19 de septiembre de 2007

Configuración de Report Server para la entrega de informes vía email

Es normal encontrarse empresas con servidores de correo externos a la misma sede. Para poder configurar el envío de informes desde Report Server tendremos que configurar el servidor SMTP virtual del IIS.

El primer paso es verificar que el servidor virtual de SMTP está instalado. Para ello, entramos en la administración de Mi Pc, Servicios y aplicaciones, Servicios de Internet Information Server. Si el servidor SMTP no está dentro de los servicios de IIS deberos instalarlo accediendo al Panel de Control, Agregar o quitar programas, Componentes de Windows, Servicios de Internet Information Server y seleccionamos Servicio SMTP.

Una vez tenemos instalado el servidor de SMTP, procederemos a la configuración de Report Server. Tenemos que configurar la sección Report Server Email del fichero rsreportserver.config. Los parámetros modificados aparecen en negrita:


<RSEmailDPConfiguration>
<SMTPServer></SMTPServer>
<SMTPServerPort></SMTPServerPort>
<SMTPAccountName></SMTPAccountName>
<SMTPConnectionTimeout></SMTPConnectionTimeout>
<SMTPServerPickupDirectory>C:\Inetpub\mailroot\Pickup\</SMTPServerPickupDirectory>
<SMTPUseSSL></SMTPUseSSL>
<SendUsing>1</SendUsing>
<SMTPAuthenticate></SMTPAuthenticate>
<From>company@mycompany.com</From>
<EmbeddedRenderFormats>
<RenderingExtension>MHTML</RenderingExtension>
</EmbeddedRenderFormats>
<PrivilegedUserRenderFormats></PrivilegedUserRenderFormats>
<ExcludedRenderFormats>
<RenderingExtension>HTMLOWC</RenderingExtension>
<RenderingExtension>NULL</RenderingExtension>
<RenderingExtension>RGDI</RenderingExtension>
</ExcludedRenderFormats>
<SendEmailToUserAlias>True</SendEmailToUserAlias>
<DefaultHostName></DefaultHostName>
<PermittedHosts></PermittedHosts>
</RSEmailDPConfiguration>



Normalmente el servidor SMTP virtual del IIS trabaja con la carpeta C:\Inetpub\mailroot. La carpeta pickup se utiliza para dejar los correos que nuestro servidor SMTP tiene que reenviar al SMTP externo a la empresa. El tag From se utiliza para marcar el origen del envío.

En este punto, podemos probar de crear una nueva subscripción en un informe y verificar que Report Server no informa de ningún error. Si verificamos la carpeta pickup, podremos ver un archivo con extensión eml. Este archivo es el correo que nuestro servidor de STMP debería reenviar al SMTP externo.

Es hora de configurar el servidor SMTP para que realice relay sobre el dominio mycompany.com. Entramos en la administración de Mi Pc, Servicios y aplicaciones, Servicios de Internet Information Server, Servidor Virtual SMTP, Dominios. Creamos un nuevo dominio remoto con el nombre mycompany.com. Editamos las propiedades del dominio según la imagen:



En la entrada “Reenviar todo el correo al host inteligente” debemos especificar el nombre de la máquina SMTP externa, responsable del envío final de los informes. Si pulsamos el botón de Seguridad saliente podremos configurar la autenticación requerida por el host remoto.

Ahora solo hace falta volver a probar la subscripción y esperar que todo funcione correctamente. Si el relay está bien configurado, los correos recibidos en la carpeta pickup deberían desaparecer una vez el SMTP local los reenvíe al SMTP remoto.