SSD: el síndrome de la Sharepoint dependencia

Sharepoint me proporciona seguridad y me hace sentir más fuerte. Las 10 cosas que más me gustan de Sharepoint.

10 puntos para entender a Project Server 2010

Microsoft Project es quizá la herramienta de gestión de proyectos más conocida y utilizada por los líderes de proyectos...

Diseño Gráfico en SharePoint

Serie de artìculos que nos ayudan a incorporar diseño gráfico en las implementaciones de SharePoint...

Revista CompartiMOSS

Artículos publicados en la revista especializada en SharePoint: CompartiMOSS.

Contacto

Enviame un correo :-)

jueves, 29 de marzo de 2012

Documentación de la BD de #ProjectServer 2010

La única base de datos que tenemos documentada oficialmente por parte de Microsoft es la Reporting Database (en rigor la única que podemos acceder). Para utilizar esta documentación necesitamos instalar el SDK y luego ir a la carpeta C:\Program Files\Microsoft SDKs\Project 2010\Documentation\Schemas\Reporting and Cube. Ahí encontraremos tres archivos:

  • OLAPCubeSchemas2010
  • Project2010_ReportingDB
  • RDB_Field_Selector

Estos archivos nos proveen un poco más de información que puede ser útil a la hora de crear nuestros reportes. Espero les sirva. Saludos!

image

image

#ProjectServer 2010 #SDK

Les dejo este enlace para bajar el SDK de Project Server 2010:

http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=15511

Transcribo:

The Microsoft Project 2010 SDK contains documentation, code samples, "How to" articles, and programming references to help customize and integrate the Project 2010 clients and Project Server 2010 with other applications for enterprise project management.

martes, 27 de marzo de 2012

Configuración de #OLAP en #ProjectServer 2010

 

En este breve artículo explicaremos cómo configurar los servicios de OLAP en Project Server 2010.

1. Crear una BD OLAP

Ir a Server Settings / Database Administration / OLAP Database Management. Presionar New para crear una nueva BD OLAP. Recordemos que en este punto podemos filtrar la información por departamento, tanto para Proyectos, como para Recursos. Más información sobre los campos a completar en este paso en: http://technet.microsoft.com/en-us/library/ff465341.aspx.

Si tenemos los permisos suficientes, nuestra BD quedará creada y obtendremos un mensaje como el siguiente:

image

 

Configurar la BD OLAP

El segundo paso es configurar la BD, agregando las dimensiones y medidas que necesitemos para cada uno de los cubos. Ir a Server Settings / Database Administration / OLAP Database Management. Seleccionar nuestra BD y presionar Configuration.

Seleccionamos los campos personalizados que queremos agregar como dimensiones o medidas según corresponda. Luego reconstruimos la BD. Más información sobre las opciones de configuración en: http://technet.microsoft.com/en-us/library/ff465342.aspx.

 

Probar un cubo

Desde Excel, insertamos una PivotTable y creamos una conexión externa a nuestro servidor OLAP. Aparecerán los siguientes cubos:

image

image

A partir de allí ya podemos “jugar” con el cubo que hayamos seleccionado y armar nuestras consultas de acuerdo a los requerimientos del usuario.

También podemos utilizar otras herramientas de Reporting para consultar los cubos.

Pueden encontrar más información en el artículo Project 2010: Business Intelligence Overview.

Espero les haya sido útil.

Hasta la próxima!

lunes, 26 de marzo de 2012

La grabación en #ProjectServer 2010 desde Project Pro no funciona

Últimamente me he estado encontrando con un problema que se produce al intentar grabar un proyecto desde Project Pro en Project Server 2010. Los síntomas son los siguientes:

  • Al presionar el botón grabar, Project no hace nada.
  • Al querer salir, nos pregunta si queremos grabar. Si le decimos que sí, no hace nada.

Al momento no tengo mucha información de la causa del problema, pero si dos soluciones:

1. Recursos locales

Si el proyecto presenta recursos locales, el problema se soluciona si los eliminamos. Para identificarlos, podemos ir a View / Resource Sheet y buscar aquellos recursos con el indicador de recurso local, tal como muestro en la siguiente imagen:

image

Luego, botón derecho y “Delete Resource”.

 

2. Sincronización con Active Directory

Otro escenario que identifiqué es el de una instalación en dónde los grupos de Project Server están sincronizados con grupos de Active Directory. Si el proyecto tiene asignado recursos corporativos que no existen en los grupos de Active Directory, se produce también esta anomalía. Este caso se observó luego de una migración desde Project Server 2007 a 2010. Se utilizaron nuevos grupos de AD que por error no contenían todos los usuarios que existían en 2007.

Si alguien conoce alguna otra forma de resolver este problema, será bienvenida. La principal molestia es que Project Pro no genera un mensaje de error que nos guié en la búsqueda del problema.

Hasta la próxima!

Enlaces relacionados:

¿Cómo manejar costos de proveedores en #ProjectServer 2010? [Parte 1]

 

Requerimiento

Se realizan proyectos en los que se contratan a proveedores para determinadas tareas. Esos proyectos disponen de un presupuesto asignado y de un plan de facturación a medida que transcurre el tiempo o que el proveedor cumple algún hito en particular.

Se requiere:

  • Manejar un presupuesto global del proyecto..
  • Identificar los hitos de facturación.
  • Establecer un plan de facturación.
  • Registrar el avance de la facturación.
  • Desglosar costos por proveedor.
  • Analizar los costos trimestralmente.
  • Analizar los costos de la cartera de proyectos.

 

Parte I

En esta primera parte proponemos cómo manejar los costos dentro de Project Professional. En una segunda parte veremos cómo se puede explotar la información desde PWA 2010 para un análisis por proveedor o de cartera.

 

Enfoque de la solución

Las herramientas de Project que proponemos para resolver esta problemática son:

  • Recursos corporativos de tipo costo: estos recursos nos permitirán asignar costos por cada proveedor, que no dependan del trabajo. Podrían utilizarse también costos fijos, pero estos no permiten desglose por proveedor..
  • Línea base: el concepto de línea base, al igual que con las fechas, nos permitirá congelar una planificación y luego poder compararla con el avance diario. Podemos manejar más de una línea base si lo necesitamos.
  • Recursos de tipo “budget”: esto nos permitirá asignar costos globales en la tarea resumen del proyecto. Nos servirá para comparar el detalle con un presupuesto global que tengamos asignado (seguimiento del estado fiscal del proyecto).

En resumen:

Recursos de tipo costo +

Línea base +

Recursos de tipo presupuesto .

 

Creación de los recursos de tipo costo

El primer paso es crear recursos que representen a los proveedores. Se puede crear un único recurso para todos los proveedores o varios, para identificar a cada proveedor en particular. La segunda opción nos permitirá más adelante hacer un análisis de costos por proveedor. Adicionalmente podríamos crear un campo que tipifique a los proveedores, de manera de poder desglosar los costos por tipo.

imagePara crear los recursos, accedemos a PWA / Resource Center / New Resource. Creamos dos recursos llamados:

  • Proveedor 1
  • Proveedor 2

Opciones:

  • Type: Cost
  • Display Name: Proveedor 1

imageImportante: los recursos deben ser creados con la opción “Accrue At End” para que los costes se contabilicen en la fecha de fin de la tarea. Esta opción no se puede editar desde PWA. La forma de configurarla es seleccionado los recursos en PWA y presionando el botón “Open”. Con esto se abren los recursos en Project Pro, desde donde se puede agregar esta información. Luego hay que cerrar el Project  Pro para proteger esos recursos:

image

 

Creación de los recursos de tipo presupuesto

El segundo paso es la creación de recursos de tipo presupuesto, que serán utilizados para manejar los presupuestos globales de los proyectos. A modo de ejemplo, creamos uno llamado:

  • Presupuesto de contrataciones

Opciones:

  • Type: Cost
  • Budget: Sí (muy importante)
  • Display Name: Presupuesto de contrataciones

 

Creación del proyecto

Desde Project Professional, creamos un proyecto en dónde detallaremos:

  • El presupuesto global
  • El plan de facturación

Empezamos por crear un plan sencillo de un proyecto con 4 tareas. Estas tareas poseen facturación cuando terminan, lo cual se implementa gracias a la forma en que configuramos los costos (Accrue At End). Ajustamos la escala de tiempo a trimestres:

image

Nota: usamos tareas (no hitos) porque con hitos Microsoft Project no totaliza de la forma esperada en la vista “Resource Usage”.

En Opciones avanzadas chequeamos la opción para ver la tarea resumen del proyecto:

image

El proyecto ahora se verá así:

image

Armamos el equipo de trabajo asignando los tres recursos corporativos que creamos, mediante la opción Build Team from Enterprise:

image

 

Asignación de costo a las tareas

Dentro de cada uno de lo hitos, hacemos doble clic sobre la tarea y en la solapa Recursos asignamos los costos de ese hito:

image

Una vez que cada hito tiene sus costos, agregamos los campos de costos para visualizarlos en el Gantt:

image

Vemos como en este proyecto hay una facturación esperada de $150.000.

 

Asignación del presupuesto global

Imaginemos además que para el proyecto nos asignaron un presupuesto global de $ 500.000. Para cargar este presupuesto agregamos el recurso Presupuesto de Contrataciones a la tarea resumen del proyecto:

image

Luego, en Resource Usage, agregamos la columna Budget Cost y completamos el valor:

image

Si agregamos el campo Budget Cost en la vista, podremos comparar el presupuesto global con el detalle. Más adelante podemos crear fórmula para hacer comparaciones:

image

Lo importante es que estamos comparando un presupuesto previsto con el día a día de los costos del proyecto, el estado fiscal del proyecto.

 

Generación de la línea base y actualización

Finalmente, se establece una línea base para congelar el presupuesto. A partir de ahí hacemos algunas modificaciones:

  • Cambio del presupuesto global a $ 400.000 (reducción)
  • Agregado de una nueva tarea (ampliación de alcance)
  • Completitud de las dos primeras tareas (finalización de tareas y facturación)

En la imagen se reflejan todos los cambios:

image

A simple vista podemos ver:

  • Que la ampliación del proyecto es de $ 30.000 adicionales.
  • La reducción del presupuesto global

A partir de acá podemos agregar los indicadores que consideremos.

 

Análisis por trimestre

Por último, analizamos el uso de recursos por trimestre en la vista Resource Usage. Para ello hacemos algunos cambios:

  • Agregamos las columnas de budget.
  • Quitamos la información de Work.
  • Agregamos la información de Costos.
  • Ajustamos la escala de tiempo.

Queda una vista como la siguiente:

image

Fin.

sábado, 24 de marzo de 2012

Más Trucos de URL en #SharePoint

Me encantan los trucos de URL de SharePoint. He publicado sobre muchos de ellos bajo el label URL y los pueden encontrar aquí: http://surpoint.blogspot.com.ar/search/label/URL.

Acabo de encontrar otro post al respecto que me pareció muy bien documentado así que lo comparto con ustedes:

http://techtrainingnotes.blogspot.com.ar/2012/03/sharepoint-search-filter-or-sort-lists.html (SharePoint: Search, Filter or Sort Lists from a Query String)

Espero les sea útil. Hasta la próxima!

miércoles, 21 de marzo de 2012

Salió CompartiMOSS 11 !!!!! #SharePoint

imageAmigos, ya tenemos disponible el nuevo número de la revista CompartiMOSS, la revista para los amantes de SharePoint. No dejen de leerla, esta vez con muchos artículos. Y desde ya agradecemos difusión!

Aquí el contenido:

  • Editorial
  • Conexiones BCS en el servicio de perfiles (Miguel Tabera Pacheco)
  • Combinando SharePoint y Project Server (Arnau Roca Palà, Marc Bàguena Cuéllar)
  • Linq To SharePoint (Juan Pablo Capdevila)
  • Sitios de Publicación de SharePoint 2010 (Santiago J. Porras Rodríguez)
  • Creando documentos profesionales en Microsoft Word 2010 (Alejandro Garrido)
  • Entrevista con David Martos
  • Lista personalizada con Excel (Marcus Vinícius Bittencourt)
  • ¿Cómo tener éxito con la adopción de usuario de soluciones SharePoint? (Edin Kapic)
  • UXDesignPoint
  • Exposición de un sitio web con autenticación por claims usando ADFS - Parte 1 (Diego Gatti)
  • Customización y ampliación de estadísticas de uso (Víctor Cea Espejo)
  • Firma Electrónica sobre SharePoint: principales ventajas y aplicaciones (Miguel López)
  • Client Object Model en SharePoint 2010 / Modificando la seguridad (Juan Pablo Pussacq Laborde)
  • El concepto de Nube Privada (Daniel S. Levi)

Enlace: http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx

Nos estamos viendo.

martes, 20 de marzo de 2012

Revista CompartiMOSS 11 de #SharePoint

Como siempre digo, si trabajás con SharePoint no podés dejar de leer esta revista. Esta edición tiene muchos artículos. ¿Ya la banjaste?
Link: http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx

lunes, 19 de marzo de 2012

SharePoint 2007–Monitoreo de la la Base de Datos

El propósito de este artículo es identificar un conjunto de actividades a ser realizadas para monitorear la Base de Datos sobre la que hemos instalado SharePoint 2007. Está basado en distintos artículo de Microsoft cuyos enlaces pueden ser consultados en la sección de bibliografía.

A modo de introducción, podemos decir que el monitoreo de la Base de Datos es una actividad esencial para garantizar el correcto funcionamiento de SharePoint 2007. La principales actividades de monitoreo incluyen:

  • Verificar la integridad de la base de datos.
  • Desfragmentar índices.
  • Configurar el factor de relleno del servidor.
  • Recuperar espacio no utilizado de la base de datos.

Las tareas pueden ser realizadas mediante Transact-SQL o mediante el asistente de mantenimiento. En este artículo comentaremos las opciones de Transact-SQL. Para las opciones mediante el programa de mantenimiento, pueden consultar la página 18 del artículo http://technet.microsoft.com/en-us/library/cc262731(v=office.12).aspx.

 

Verificar la integridad de la base de datos

Mediante DBCC CHECKDB podemos corroborar la integridad física y lógica de la base de datos. Ejecuta varias operaciones por separado que pueden ser consultadas en este enlace: http://msdn.microsoft.com/es-es/library/ms176064.aspx.

La recomendación es no usar las opciones REPAIR a menos que sea necesario porque hayamos encontrado un problema.

En la siguiente imagen se ve un ejemplo de salida de esta operación:

image

Importante: no ejecutar esta operación en horario de producción por un tema de rendimiento y de bloqueos que el comando ejecuta.

 

Fragmentación

La fragmentación puede ser el resultado de muchas inserciones, modificaciones o eliminaciones en nuestras tablas. Cuando una tabla se fragmenta, sus índices también se fragmentan. Con el tiempo, la fragmentación puede degradar el rendimiento y utilizar en forma ineficiente el espacio.

Si bien desfragmentar tablas es posible, la desfragmentación de índices genera mejores resultados.

Un ejemplo en SharePoint de tabla que suele fragmentarse es AllDocs, en donde residen las librerías de documentos. La vista sys.dm_db_index_physical_stats nos permite determinar el estado de fragmentación de los índices de una tabla o vista específica. Pueden encontrar más información en: http://msdn.microsoft.com/en-us/library/ms188917.aspx. Se recomienda no utilizar el comando DBCC SHOWCONTIG porque será removido en próximas versiones.

Para medir la fragmentación, se recomienda evaluar la columna: avg_fragmentation_in_percent. Esta columna deberá tender a cero. Valores de 0 a 10 son aceptables.

En el siguiente ejemplo, se puede ver un resultado posible:

image

Dato: para obtener el ID de la base de datos usar SELECT DB_ID() AS [Database ID];

Para reducir el nivel de fragmentación se recomiendan las siguientes acciones:

Ejecutar el job Database Statistics

Este job fue modificado significativamente con el SP2 de WSS 3.0 para también reconstruir índices. En forma predeterminada se ejecuta entre las 22:00 y las 5:00 y ejecuta estas operaciones:

  • Actualiza las estadísticas.
  • Reconstruye todos los índices cada vez que se ejecuta. La forma depende de la versión de SQL.

Ejecutar el procedimiento almacenado de Desfragmentación.

Una vez que hemos determinado nuestros niveles de fragmentación, podemos programar este procedimiento para que se ejecute diariamente, semanalmente o mensualmente de acuerdo a nuestras necesidades. Recomendaciones:

  • Ejecutarlo al menos semanalmente.
  • Ejecutarlo luego de las opciones de reparación: DBCC CHECKDB REPAIR

Más información sobre este procedimiento en: http://support.microsoft.com/kb/943345/. Microsoft no puede predecir el resultado de este procedimiento cuando terceras partes han hecho cambios a la base de datos, modificado datos o incluso hacer consultas ad-hoc. Más información en: http://support.microsoft.com/kb/841057/.

Reducir fragmentación para una tabla o índice específico.

Este se puede lograr reorganizando el índice (operación en línea) o reconstruyendo el índice (en línea o fuera del línea). El nivel de fragmentación nos da una idea del método de desfragmentación a utilizar:

image

 

Configurar el factor de relleno del servidor

El factor de relleno nos permite reservar espacio para futuro crecimiento. Para muchas situaciones, el valor predeterminado 0 es óptimo, sin embargo, para SharePoint 2007 un valor de 70 a nivel de servidor es lo recomendado. Por otro lado, si bien es posible, tampoco se recomienda valores específicos para tablas o índices individuales.

Sys.indexes nos permite conocer el factor de relleno para uno o más índices: http://msdn.microsoft.com/en-us/library/ms173760.aspx. Para configurar el factor de relleno podemos utilizar spconfigure: http://msdn.microsoft.com/en-us/library/ms188787.aspx.

 

Recuperar espacio no utilizado de la base de datos

En SQL Server es posible contraer el espacio de los archivos de datos para remover espacio no utilizado. SharePoint no realiza esta operación automáticamente a pesar de que algunas operaciones como el borrado de un documento, una lista, una librería o un sitio pueden generar espacio en blanco.

La recuperación de espacio puede ser útil cuando tenemos operaciones frecuentes de eliminación de datos. Algunas recomendaciones:

  • No programar esta operación para que se ejecute automáticamente.
  • Ejecutar esta opción cuando se elimino el 50% del contenido.
  • No ejecutar esta operación para la BD de configuración, la BD de contenido del Administrador de SharePoint o las SSP. Normalmente es recomendable para las bases de contenido.
  • Esta operación consume recursos, se recomienda planificarla.

Para llevar adelante esta operación, se pueden utilizar los comandos DBCC SHRINKDATABASE o DBCC SHRINKFILE, Más información en http://technet.microsoft.com/en-us/library/ms190488.aspx y http://technet.microsoft.com/en-us/library/ms189493.aspx respectivamente.

 

Otras consideraciones

Algunas otras recomendaciones a tener en cuenta:

  • Limitar la base de contenido a 100 GB, si es necesario con múltiples BDs.
  • La cantidad de archivos de datos debería ser menor o igual a la cantidad de procesadores.
  • Los archivos de datos deberían tener el mismo tamaño.

Más información en: http://www.mssqltips.com/sqlservertip/1777/best-practices-for-sharepoint-content-databases-in-sql-server/.

 

Bibliografía

 

Herramientas

jueves, 1 de marzo de 2012

Versiones de proyectos en #ProjectServer

Les dejo este excelente artículo de Manolo Herrera que explica cómo manejar versiones de proyectos en Project Server y cómo restaurarlas: http://jmhogua.blogspot.com/2012/02/sabias-que-en-project-server-puedes.html