miércoles, 16 de febrero de 2011

Procedimiento almacenado con parámetros opcionales en búsquedas SQL SERVER

Existen situaciones en la que deseamos realizar búsquedas sobre un conjunto de datos con una gran variedad de filtros de tal manera que estos sean excluyentes o no.

Para dejar mas claro plantearemos un modelo de datos en el que tenemos almacenado en tres tablas la siguiente información: Departamento con un listado de departamentos, Municipio contiene un listado de municipios que están relacionados la tabla Departamentos y finalmente una tabla llamada Estudiante que contiene un listado de estudiantes los cuales residen en un municipio. El diagrama del modelo de datos seria mas o menos el siguiente.


Ahora si realizamos un procedimiento almacenado que al ejecutarlo nos retorne el resultado de todos los estudiante con su respectivo nombre, municipio y departamento donde reside. El resultado de datos seria mas o menos el siguiente .


La consulta SQL  requerida para generar la información anteriormente presentada seria la siguiente.


Ahora bien, imaginemos que queremos aplicar al mismo conjunto de datos varios filtros y que estos a su vez sean opcionales,  para ello crearemos un procedimiento almacenado y la estructura seria la siguiente.



Ahora si lo queremos podemos ejecutar nuestro procedimiento ya sea teniendo como filtro en las búsquedas el DepartamentoID, MunicipoID o DepartamentoID y MunipioID. La instrucción para ejecutar nuestro procedimiento ConsultarEstudiantes es el siguiente

viernes, 11 de febrero de 2011

Realizando copias de seguridad en SharePoint 2010

Para realizar copias de seguridad y restauraciones en SharePoint empleando la Consola de Administración de SharePoint 2010 se ejecutan los siguientes comandos:

Se ejecuta la siguiente instrucción en el servidor (consola de sharepoint en modo administrador) donde se realizara la copia, en este caso se moverá un sitio desde un ambiente de desarrollo a uno de producción.

stsadm -o backup -url http://tu_servidor_desarrollo/sitio_a_copiar -filename c:\backup\SitioCopia.bak -overwrite

Luego, para restaurar la copia de seguridad en el  nuevo servidor se requiere crear (si no existe) desde la administración central una nueva aplicación web y ejecutamos el siguiente comando.

stsadm.exe -o restore -url http://tu_servidor_produccion/sitio_a_restaurar -filename C:\backup\SitioCopia.bak

Nota: Esta copia de seguridad no incluye los webparts desarrollados en el sitio, razón por la cual deberán ser extraídos y posteriormente implementados en el sitio restaurado.

Retirando WebParts Sharepoint 2010

Para retirar webparts desde la consola de administración del SharePoint  2010 empleamos los siguientes comandos:

stsadm -o deletesolution -name tu_webpart.wsp -override
stsadm -o execadmscvjobs
stsadm -o retractsolution -name tu_webpart.wsp -immediate
stsadm -o execadmscvjobs


En caso de ser mas de un webpart a retirar podemos emplear la consola windows. Para ello creamos un archivo .bat y agregamos el siguiente código.

SET STSADM="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN\STSADM.EXE"
%STSADM% -o retractsolution -name tu_webpart.wsp -immediate
%STSADM% -o execadmscvjobs
%STSADM% -o deletesolution -name tu_webpart.wsp -override
%STSADM% -o execadmscvjobs

Implementando WebParts Sharepoint 2010

Para implementar webparts desde la consola de administración del SharePoint  2010 empleamos los siguientes comandos:

Desde la Consola de administración de SharePoint 2010

stsadm -o addsolution -filename C:\directorios_webparts\tu_webpart.wsp
stsadm -o execadmscvjobs
stsadm -o deploysolution -name tu_webpart.wsp -immediate -allowGacDeployment -force
stsadm -o execadmscvjobs

En caso de ser mas de un webpart a implementar podemos emplear la consola windows. Para ello creamos un archivo .bat y agregamos el siguiente código.

SET STSADM="C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\BIN\STSADM.EXE"
%STSADM% -o addsolution -filename  C:\directorios_webparts\tu_webpart.wsp
%STSADM% -o execadmscvjobs
%STSADM% -o deploysolution -name tu_webpart.wsp -immediate -allowGacDeployment -force
%STSADM% -o execadmscvjobs

lunes, 22 de noviembre de 2010

Que es un CMS ?

Hoy en día es común escuchar de "herramientas" como Joomla para la creación rapida de un sitios web enfocados a presentar información como misión, visión de empresas y que ademas se le pueden incorporar una gran de varidad de extenciones para potencializar las funciones prestadas. Pero que es Joomla, pues es un CMS, y este sera el tema a tratar en esta entrada.

Un Sistema Gestor de Contenido o  Content Managment System, CMS por sus siglas en ingles es un sistema que administra contenido. Pero,  que es el contenido? es una definición que depende de lo que se necesite. Por citar un ejemplo imagine un centro medico en la cual se cuenta con un gran cantidad de contenido que va desde los registros médicos, información de pagos, registro de medicamentos entre otros. Vale la pena administrar todo esta con un CMS?

La respuesta es sencilla, NO. Por ejemplo en una cuenta de correo como yahoo, gmail o hotmail encontramos la mejor manera para archivar todos los mensajes que nos llegan, en ese orden de ideas un correo es un Sistema Gestor de Contenido especializado en unos tipos de archivos, antiguamente se puede decir que un CMS era un Sistema de archivos de documentos que se administraba de manera manual, a diferencia de la manera tradicional el correo electronico sencillamente se usa sin importar las funcionalidad y plataforma en la que se encuentra desarrollado. Para no complicar de pronto la definición de lo que es un CMS delimitemoslo al entorno web, entonces digamso que un CMS Web es un todo aquello contenidos, generalmente texto e imágenes, que se quiere colocar en un sitio web.

Siguiendo con la definición de un CMS Web son herramientas que permiten a los usuarios, con poca o ninguna experiencia en el diseño o programación, mantener y actualizar contenido en un sitio web. Estos sistemas cuentan con editores de texto enriquecido para la manipulación del contenido junto con configuraciones de seguridad para la concesión de permisos para el acceso de actualización o eliminación de contenido.

En algunos de CMS Web es posible encontrar administración de los flujos de trabajo (Workflow) en los cuales se proporciona otros niveles de seguridad requeridos para aprobar y publicar contenido..

Continuará..