miércoles, 26 de noviembre de 2008

Page Templates con ayuda del Sharepoint Designer

El otro día me acordé del artículo que ya escribí acerca de como realizar personalizaciones rápidas en sharepoint. El ejemplo realizaba modificaciones en modo unghosted, lo que implicaba que cada que se consume las páginas se estaba accediendo a la bbdd para cargarla.

Como alternativa a las personalizaciones sobre la bbdd de contenidos debemos de realizar nuestras páginas como page templates o applications pages, e incluso podemos pensar en webparts antes de hacer que una página sea unghosted.

Las page templates consisten en páginas que están físicamente en el servidor frontal se ejecuta en "safe mode", es decir no permite ejecutar código en servidor, y permite customizarla.

Un caso real

En el proyecto se planteaba una solución sobre lista de wss3 la cual debía de mostrar una vista y comportamiento especial en las páginas de DispForm, NewForm y EditForm. Si huebiéramos modificado la página directamente desde Sharepoint Designer habríamos terminado rápidamente, pero a cambio habríamos acarreando otros problemas futuros como pueda ser el backup/restore del portal y el rendimiento.

Comenzamos haciendo la lista con la estructura, lo recome

ndable es hacerlo definiendo un contenttype. Una vez creada la lista, abriremos el sharepoint Designer y entraremos en el formulario a modificar, en este ejemplo en DispForm.

Una vez abierto lo modificaremos con la estructura que deseemos, tal y como explicaba en mi anterior artículo.

Una vez modificada, lo que haremos será quedarnos con el código fuente, pero ojo no guardaremos el fichero, solo lo utilizaremos para renderizar el resultado y hacernos una idea en tiempo de diseño.

Ahora crearemos un proyecto en blanco con la estructura adecuada para construir una feature de sharepoint. Añadiremos una nueva páginas aspx sin código y pegaremos el código generado por el designer.

Si nos fijamos en el código generado por el designer veremos que nos ha incrustado un DataFormWebPart y que tiene como datasource y parámetros referencias a la lista pero por ID. Esto significa que todo lo que hagamos no podremos moverlo a otro sitio ya que la instancia de la lista tendrá otro id distinto aunque tenga la misma estructura.

Para solucionarlo accederemos por nombre en lugar de id, por lo que cambiaremos todas las referencias de ListId por ListName y el guid de la lista por el nombre de la lista. También quitaremos el parámetro

<ParameterBinding Name="ListID" Location="None" DefaultValue="{3C54AAE0-1C6F-4FFD-A3F9-F3BB6FEDA399}"/> por <ParameterBinding Name="ListName" Location="None" DefaultValue=""/>

Para verificar que lo hemos hecho correctamente copiaremos el código y lo pegaremos desde el designer en la página que tomamos como ejemplo. PERO SIN GUARDAR DESDE EL DESIGNER!!!.

Ahora tendremos que indicar a sharepoint que la página que hemos hecho se utilizará como template. Crearemos un fichero xml en el que indicaremos lo siguiente:

<Elements xmlns="http://schemas.microsoft.com/sharepoint/">

<Module Path="PagesTemplates" Url="Notas de Gastos/Forms" >
<File Url="NotasDeGastosDispForm.aspx" Path="NotasDeGastosDispForm.aspx" Type="Ghostable" />
<File Url="NotasDeGastosEditForm.aspx" Path="NotasDeGastosEditForm.aspx" Type="Ghostable" />
<File Url="EntregarNotasDeGastosForm.aspx" Path="EntregarNotasDeGastosForm.aspx" Type="Ghostable" />
</Module>

</Elements>

El atributo path indica la ruta física del directorio y de la página, y el atributo Url indica el path relativo de la url desde donde se accederá.

Ahora solo tendremos que terminar de configuar nuestra feature, instalarla y activarla.

Al activarla, si actualizamos nuestro explorador del designer veremos como ha aparecido nuestra página. Fijaros que no tienen ningún indicador de que es unghosted.

Ahora solo nos quedará indicar a la lista que utilice nuestra página cuando se acceda a la Vista de propiedades desde DispForm. Para ello podemos hacerlo desde el designer en caso de las lista, y para las librerías de documentos por código desde un SPFeatureReceiver, en el evento FeatureActivated.

Algunos enlaces adicionales:

http://www.sharepointonlinkedin.com/post/2008/07/20/How-to-free-your-Data-View-Web-Part-(DVWP)-from-those-nasty-GUIDs.aspx

http://sharepoint-insight.blogspot.com/2008/07/dataform-webpart-escape-from-hardcoded.html

martes, 25 de noviembre de 2008

Welcome to the Visual Studio 2010

Son muchos los blogs que ya han comentado las novedades de VST2010. En este artículo me centraré en enseñaros "otras" novedades menos comentadas.

Lo primero que nos encontramos al iniciar la máquina es que ya viene instalado:
VSTudio 2010 y 2008
Framework 4.0
TFS
Microsoft Camano
Dinner Now
SqlServer2008
W2k8 con IIS7 y WSS3, etc
Ha merecido la pena la descarga.



VisualStudio 2010
Después de leer las nuevas herramientas y novedades Principalmente me he centrado en los siguientes puntos que me han parecido importantes para el entorno en el que me muevo:
El nuevo Framework 4 con las Parallel Extension incorporadas en el core
Herramientas para el desarrollo integrado con WSS3 y MOSS
Mejoras en las herramientas de Testing
Nuevas herramientas para los arquitectos

Tenéis más referencias de Visual Studio en:
http://blogs.msdn.com/sharepoint/archive/2008/11/10/visual-studio-2010-tools-for-sharepoint-announced-at-teched-emea-developers-2008.aspx
http://geeks.ms/blogs/elbruno/archive/2008/11/13/vsts2010-training-kit-ya-disponible.aspx
http://dotnet.org.za/willy/archive/2008/11/21/visual-studio-2010-ctp-2-6-7-the-exciting-world-of-construction-part-2-2.aspx

El nuevo Framework 4
Entre las novedades podemos destacar el manejo de código que podemos compilar en tiempo de ejecución, la incorporación de Parallel Framework y LinQ en el core, Entity framework ( sin SP's), MVC, Velocity, ...
Tenemos también el Visual Studio 2010 and .NET Framework 4.0 Training Kit con presentaciones acerca de las novedades http://www.microsoft.com/downloads/details.aspx?FamilyId=752CB725-969B-4732-A383-ED5740F02E93&displaylang=en


Herramientas para el desarrollo integrado con WSS3 y MOSS
Ya he leído varios artículos sobre esta herramienta, pero no la he podido tocarla ya que todavía no está disponible en esta versión, de hecho, hay disponible un vídeo en Channel 9 http://channel9.msdn.com/posts/VisualStudio/Sharepoint-Development-with-Visual-Studio-2010/, que muestra ligeramente la herramienta. Si os fijais en el vídeo vereis como ocultan la parte izquierda de la ventana de proyectos.
Dispondremos de varios tipos de proyectos con sus correspondientes asistentes.

Tendremos además un explorador donde podremos navegar por la estructura de nuestro portal.

Podremos definir mediante asistentes la estructura de nuestros contentypes y features, además parece que los proyectos vienen preparados para encapsular las features y soluciones y no tratarlos como ficheros adjuntos al proyecto, fijaros en la ventana del explorador de soluciones.


Al menos por lo que he visto tiene buena pinta.

Nuevas herramientas para los arquitectos
Architecture explorer

Model proyect





VST TFS
No puedo profundizar porque no lo he tratado, así que se lo dejo a los expertos.

Microsoft Camano
Consiste en una aplicación para la gestión, monitorización, seguimiento de los test. No es una herramienta basada en el código, sino en la gestión del ciclo de vida de las pruebas de los proyectos.
Está integrado con nuestro TFS y está dividido en varias secciones: Planificación, testing, defects y reports.




Dinner Now
Consiste en un conjunto de aplicaciones de ejemplo que nos muestra distintas tecnologías. La máquina virtual incorpora los fuentes por lo que podemos echar un vistazo a las nuevas herramientas que incorpora VST2010 sin tener que crear ningún proyecto.
Podéis descargaros el proyecto desde http://www.codeplex.com/DinnerNow


Si apodéis, echarle un vistazo, solo ocupa unos 7 GB y unos GB de RAM libres, parar un rato las pelis y ya verséis como tarda poco. Podeis descargarlo http://www.microsoft.com/downloads/details.aspx?FamilyId=922B4655-93D0-4476-BDA4-94CF5F8D4814 y las FAQS https://connect.microsoft.com/VisualStudio/content/content.aspx?ContentID=10046.
Por cierto, algo curioso que he visto en la página de connect en el apartado "How can I improve the performance of the Virtual PC?" indica al final del todo el siguiente comentario "Also while using the Virtual PC, you should periodically close and reopen Visual Studio 2010.", joer, menuda técnica!!

martes, 18 de noviembre de 2008

Microsoft Certified Master en MOSS2007

Acaba de salir la nueva certificación para MOSS Microsoft Certified Master: Microsoft Office SharePoint Server 2007, consiste en un paso previo al MCA (Microsoft Certified Architect) pero especializado en MOSS2007.

Consiste en un curso presencial de tres semanas con expertos en el producto, con charlas, laboratorio y esas cosas.

Esta certificación te exige tener los 4 MCTS de Sharepoint , hablar un buen inglés (seguro que Enrique ya está en ello), además de unos 20.000$.

 

Ya están disponibles varios Certified Master:

  • Exchange 2007
  • Sqlserver2008
  • MOSS2007
  • Office Communication 2007

 

buffff, espero que no me pongan una de estas como objetivos,