Forms & Views & Site Definitions

23/01/2006 - 21:46 por Rene | Informe spam
Hola a todos,

estoy trabajando con site definitions y en una lista quiero definir dos
vistas diferentes, allitems_reader.aspx y allitems_edit.aspx. Hasta
aquí todo bien. El problema está en que quiero asociar a cada una de
estas vistas un display form diferente, de manera que cuando un usuario
entre en allitems_reader.aspx y le dé a un elemento de la lista se
abra el fichero dispform_reader.aspx. De la misma manera, cuando un
usuario entre en allitems_edit.aspx y quiera ver un elemento de la
lista se le abra el dispform_edit.aspx. Todo esto sin tocar FrontPage,
claro.

He estado investigando en el archivo schema.xml y en la definición de
las vistas hay lo siguiente:

<HTML><![CDATA[;if (ctx.PortalUrl == "") ctx.PortalUrl = null;
ctx.displayFormUrl = ]]></HTML>
<ScriptQuote>
<URL Cmd="DISPLAY" NoID="TRUE"/>
</ScriptQuote>

que he cambiado por:


<HTML><![CDATA[;
if (ctx.PortalUrl == "") ctx.PortalUrl = null; ctx.displayFormUrl "DispForm_edit.aspx" ]]></HTML>

pero este cambio de fichero me lo aplica a todas las vistas, aunque
solo lo defina dentro de una. Alguien sabe la manera de modificar el
formulario de visualización de los elementos de una lista vía site
definitions?

Muchas gracias por cualquier idea.

Saludos,
René

Preguntas similare

Leer las respuestas

#6 csegura
01/02/2006 - 19:37 | Informe spam
Rene te entiendo pero eso son las cosas que tiene el SharePoint….

De todas formas para hacer ese tipo de cosas yo suelo usar mi webpart
csegRollUp, pongo la lista los campos que quiero (el filtro o caml sql) y
renderizo los datos con el XSL de este modo no tengo que andar haciendo un
webpart para cada cosa especifica, a lo sumo un xsl (pero es muy sencillo)

Además en el xsl puedes añadir un menú de contexto ….

Mira

http://www.ideseg.com/SharePointMen...zados.aspx
http://www.ideseg.com/CategoryView,...ollUp.aspx

Carlos Segura Sanz
www.ideseg.com


"Rene" escribió:

Hola Carlos,

gracias por tu explicación tan detallada. Lo de usar site definitions,
a parte de para que no queden unghosted, es porque la lista se ha de
utilizar en varias áreas diferentes y quiero que si más adelante he
de modificar algún campo o vista (cosa bastante probable), se apliquen
los cambios a todas las listas que he creado (sino sí que podría
utilizar templates).

Al convertir una vista a XSLT, lo que hace FP es cambiarte de un
listviewebpart a un dataviewebpart, con lo que te incluye código XSL
para poder cambiarle el formato (y añadir los campos como has
comentado), pero este código que genera no se puede incluir en la
vista de un site definition (sí en cambio el de un listviewebpart). Lo
que sí que se podría hacer sería un webpart con un objeto
dataviewebpart al que se le inicializasen los métodos a partir del
código que genera FP (xsl, parameterbindings, query, etc.). Lo probé
en otro proyecto y funcionó, pero me parece demasiado complicado para
solo cambiar un link...

No sé si me sigues por donde voy, es un tema bastante específico.

Un saludo,
René
http://www.zulsystems.com


Respuesta Responder a este mensaje
#7 Rene
07/02/2006 - 17:44 | Informe spam
Hola Carlos,

siento haber tardado en responder. Yo también utilizo un wp propio
parecido a tu csegRollUp, que con el código XSL que le pases te pinte
la lista. Pero intentaba buscar una manera alternativa, aunque ya veo
que será imposible. Muchas gracias por tu colaboración,

Un saludo,
René
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida