Agregar Web Part a Plantillas

03/10/2006 - 10:46 por Rober.29 | Informe spam
Hola,

Mi intención es crear una plantilla para SPS que contenga por defecto los
siguientes Web Parts:

- Bliblioteca de Documentos con una estructura de carpetas creada por
defecto, con la opción de requerir aprobación a true y la de generar
versiones también a true.

- Calendario.

- Eventos.

- Enlaces de interes.

El problema es que no soy capaz de añadir Web parts a la plantilla. Ya he
creado una plantilla y está totalmente vacía. De monento lo que me funciona
es que cuando creo una subárea dentro de un área específica se cree dicha
subárea con la plantilla que yo he creado (pero vacía sin Web Parts), y lo
que quiero es que cuando se cree las subáreas se creen pero con los Web Parts
que por defecto yo les he metido.

¿Cómo se hace esto? He estado buscando por internet y no he encontrado nada
en claro, además supuestamente para agregar los Web Parts vía código a la
plantilla, por lo que he visto se les tiene que poner el NameSpace y
registrarlos, pero es que no encuento por ejemplo el NameSpace del WebPart
Document Library, ni como registrarlo en la plantilla vía código.

¿Donde puedo encontrar información sobre esto?

Lo único que sé de momento es que tengo que tocar el fichero Onet.XML y
meter los web parts dentro de los tags:

<modules>

<module Name="default" URL="" Path="">

<file URL="default.aspx" Type="GhosTable">

'******* ESTO POR EJEMPLO ES UN EJEMPLO QUE HE VISTO ********

<AllUsersWebPart WebPartZoneID="Right" WebPartOrder="1">
<![CDATA[
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2"
xmlns:iwp="http://schemas.microsoft.com
/WebPart/v2/Image">
<Assembly>Microsoft.SharePoint, Version.0.0.0,
Culture=neutral,
PublicKeyTokenqe9bce111e9429c</Assembly>
<TypeName>Microsoft.SharePoint.WebPartPages
.ImageWebPart</TypeName>
<FrameType>None</FrameType>
<Title>Site Image</Title>
<iwp:ImageLink>/_layouts/images/homepage.gif<
/iwp:ImageLink>
</WebPart>
]]>
</AllUsersWebPart>


</file>

</module>

</modules>



Pero no se como se registra los WebParts via codigo y donde puedo encontrar
las propiedades y namespace de cada WebPart que tiene el SharePoint.

Les agradecería muchisimo su ayuda.

El Editor que utilizo para tocar el Onet.xml es el Edit Plus, podría
utilizar el Visual Studio 2005 porque si que lo tengo instalado, pero para
editar texto pienso que es más rápido el Edit Plus ya que consume menos
recursos.

Un saludo y muchas gracias.

Analista - Programador
Valladolid
 

Leer las respuestas

#1 Gustavo
04/10/2006 - 08:53 | Informe spam
Hola,
Toda la informacion que necesitas se encunetra en el SDK de WSS. Todas las
WebParts por defecto de SharePoint se encuentran en el NameSpace
"Microsoft.SharePoint", con la version, cultura y token que ya has
encontrado, asi que no necesitas cambiar nada. el TypeName es siempre
"Microsoft.SharePoint.WebPartPages.xxx", en donde xxx es la WebPart que
quieres utilizar, y la informacion al respecto tambien esta en el SDK.
Para modificar archivos CAML puedes usar cualquier editor ASCII, Edit Plus
es perfecto para el trabajo. Cada vez que modifiques algo, tienes que hacer
un iisreset para que los cambios se puedan activar. Has copias de seguridad
de todos los archivos que modifiques, pues es muy facil arruinar la
instalacion de SharePoint cuando trabajas con CAML.
Suerte,
Gustavo
http://www.gavd.net/servers/default.aspx
http://geeks.ms/blogs/gvelez/


"Rober.29" wrote:

Hola,

Mi intención es crear una plantilla para SPS que contenga por defecto los
siguientes Web Parts:

- Bliblioteca de Documentos con una estructura de carpetas creada por
defecto, con la opción de requerir aprobación a true y la de generar
versiones también a true.

- Calendario.

- Eventos.

- Enlaces de interes.

El problema es que no soy capaz de añadir Web parts a la plantilla. Ya he
creado una plantilla y está totalmente vacía. De monento lo que me funciona
es que cuando creo una subárea dentro de un área específica se cree dicha
subárea con la plantilla que yo he creado (pero vacía sin Web Parts), y lo
que quiero es que cuando se cree las subáreas se creen pero con los Web Parts
que por defecto yo les he metido.

¿Cómo se hace esto? He estado buscando por internet y no he encontrado nada
en claro, además supuestamente para agregar los Web Parts vía código a la
plantilla, por lo que he visto se les tiene que poner el NameSpace y
registrarlos, pero es que no encuento por ejemplo el NameSpace del WebPart
Document Library, ni como registrarlo en la plantilla vía código.

¿Donde puedo encontrar información sobre esto?

Lo único que sé de momento es que tengo que tocar el fichero Onet.XML y
meter los web parts dentro de los tags:

<modules>

<module Name="default" URL="" Path="">

<file URL="default.aspx" Type="GhosTable">

'******* ESTO POR EJEMPLO ES UN EJEMPLO QUE HE VISTO ********

<AllUsersWebPart WebPartZoneID="Right" WebPartOrder="1">
<![CDATA[
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2"
xmlns:iwp="http://schemas.microsoft.com
/WebPart/v2/Image">
<Assembly>Microsoft.SharePoint, Version.0.0.0,
Culture=neutral,
PublicKeyTokenqe9bce111e9429c</Assembly>
<TypeName>Microsoft.SharePoint.WebPartPages
.ImageWebPart</TypeName>
<FrameType>None</FrameType>
<Title>Site Image</Title>
<iwp:ImageLink>/_layouts/images/homepage.gif<
/iwp:ImageLink>
</WebPart>
]]>
</AllUsersWebPart>


</file>

</module>

</modules>



Pero no se como se registra los WebParts via codigo y donde puedo encontrar
las propiedades y namespace de cada WebPart que tiene el SharePoint.

Les agradecería muchisimo su ayuda.

El Editor que utilizo para tocar el Onet.xml es el Edit Plus, podría
utilizar el Visual Studio 2005 porque si que lo tengo instalado, pero para
editar texto pienso que es más rápido el Edit Plus ya que consume menos
recursos.

Un saludo y muchas gracias.

Analista - Programador
Valladolid

Preguntas similares