none
Crear vistas en tiempo de ejecución RRS feed

  • Pregunta

  • Hola a todos,

    a ver si me podéis echar un cable. Resulta que tengo una "lista x" en mi sitio Sharepoint (2010) con una serie de entradas o registros (estos registros son ficheros). Bien, cada uno de los registros tiene un enlace a otras listas (cada registro a su lista correspondiente). Hasta aquí sin problema. Si yo pincho en la "lista x" voy a una "lista y". La duda viene ahora. Estando en la página de la "lista y" que también tiene sus registros (en este caso usuarios), cada registro o usuario tiene un campo con un enlace que va a la "lista x" de vuelta, pero esta vez con la condición de que únicamente se muestren los ficheros relacionados con el registro pinchado. Es decir, si pincho sobre Fulanito, que vaya a la lista de ficheros y ÚNICAMENTE muestre los ficheros relacionados con Fulanito. Esto claro está, lo solucionaría con una "vista de la lista", pero como son muchísimos usuarios, se hace difícil crear una vista para cada uno de ellos. Y ahora viene la pregunta.

    ¿Es posible crear una vista en tiempo de ejecución? Podría hacerse desde Sharepoint o desde el Designer, sin tener que hacerlo desde Visual Studio? Sería esto la manera más eficiente? 

    No llevo mas que 8 días con Sharepoint, creo que estoy aprendiendo rápido pero aún así, soy muy novato. Muchas gracias de antemano y un saludo!

    jueves, 15 de noviembre de 2012 12:06

Respuestas

  • Paga que tu vista coja los parametros de la Query String te adjunto la imagen:

    Ahora para que en la vista pongas el enlace y la query string, tienes que abrir el Designer y modifcar el Xslt  se le aplica a la vista y hay añades tu la estructura que te hace falta.

    Un saludo

    • Marcado como respuesta eusairways jueves, 15 de noviembre de 2012 13:07
    jueves, 15 de noviembre de 2012 13:05

Todas las respuestas

  • Hola,

    Para la solución que comentes te valdria con crearte un vista en la que filtres el campo por el valor de una QueryString y de esta forma ya lo tendrias solucionado

    jueves, 15 de noviembre de 2012 12:14
  • Antes de nada muchas gracias por darme la solución, la verdad es que no tengo mucha idea de crear querystrings de momento, en cualquier caso lo que me preocupa es cómo recojo el nombre del usuario al que pertenece el enlace que he pinchado. En la fila de "Fulanito" hay un enlace. Pincho en el enlace y cómo paso en ese enlace el nombre Fulanito que es el que compararé en la vista?
    jueves, 15 de noviembre de 2012 12:32
  • Paga que tu vista coja los parametros de la Query String te adjunto la imagen:

    Ahora para que en la vista pongas el enlace y la query string, tienes que abrir el Designer y modifcar el Xslt  se le aplica a la vista y hay añades tu la estructura que te hace falta.

    Un saludo

    • Marcado como respuesta eusairways jueves, 15 de noviembre de 2012 13:07
    jueves, 15 de noviembre de 2012 13:05
  • No sabes cuánto te lo agradezco!

    Un saludo!

    jueves, 15 de noviembre de 2012 13:07
  • No hay de que para eso estamos, para intentar ayudar.

    Un saludo :)

    jueves, 15 de noviembre de 2012 13:21
  • Buenos días!

    Siento tener que reflotar el tema pero es que no consigo entrar a editar el XSLT que me comentabas. Resulta que puedo abrir el designer, abrir el sitio que yo he creado y para el que supuestamente tengo todos los permisos y puedo crear listas y vistas. Sin embargo, tras crear una vista, no puedo entrar a editarla. Me sale un error de master page. Concretamente este:

    "Error de la página maestra"

    Por otro lado, no sé muy bien cómo referenciar al campo nombre del registro, he intentado no preguntar demasiado y buscarme la vida por la web a la hora de crear queryStrings pero ya ves que ha pasado un día entero y nada :( Llevo muy poquito tiempo con Sharepoint, espero se me comprenda. Gracias!

    viernes, 16 de noviembre de 2012 7:49
  • Yo lo primero que haria ya que te da error en la página maestra, es si has modifcado la masterpage restaurarla a su estado original, para que no te de error. Yo te aconsejo que en el Designer cuando entres siempre entre en editar en modo avanzado (te ahorras bastantes problemas). De esta forma supongo que ya podras entrar en la lista, yo lo que te aconsejo es en lugar de modificar el formulario de vista me creo uno nuevo y una vez ya lo tenga funcionando lo establezco como opción predeterminada. Te adjunto la imagen:

    Para entrar en los XLST estan en esta ubicación:

    Cualquier cosa ya comentas

    viernes, 16 de noviembre de 2012 9:26
  • Es que es alucinante, no tengo permisos para hacer nada.

    So voy a "Todos los archivos" no existe la Style Library (ni nada parecido) y cuando creo un form nuevo para la lista, al momento de crearlo, no tengo permisos para acceder a su edición. Es desesperante. Lo curioso es que el sitio está creado por mi y tengo CONTROL TOTAL sobre este sitio. Con las herencias activadas por supuesto. Eso sí, el sitio está dentro de una intranet donde mis permisos son limitados. Pero soy dueño y señor del sitio, así que ya no sé... 

    viernes, 16 de noviembre de 2012 9:46
  • Haber si te he entendido te lo pongo en un ejemplo tienes una intranet http://intranet y dentro de esta intranet tienes un sitio http://intranet/sitio que en ese tienes control total es eso asi?

    En caso de que sea asi el que tengas permisos en el http://intranet/sitio no implica que puedas acceder al Style Library que esta en dentro de http://intranet/style library

    lo que ya haria en este caso es decirle al adminsitrador del sitio que suba los permisos para poder realizar estas acciones. De todas formas si tienes control total sobre tu sitio debes de poder crear nuevas vistas sin ningun tipo de problema  Yo hablaria con el administrador del sitio y comprobaria los permisos que me han asignado.

    Saludos

    viernes, 16 de noviembre de 2012 9:52
  • Concretamente tengo este error:

    Así es, de hecho me deja crear las vistas, los formularios, las listas, puedo crear y eliminar cualquier elemento dentro de mi sitio. Como estoy empezando es un sitio que me han creado para que yo desarrolle sin peligro de cargarme nada y una vez terminado, se sustituirá por otro sitio, actualmente activo. Lo raro del asunto es, si puedo crear y eliminar, por qué no modificar? Puedo entrar como administrador, tengo la clave y el usuario, pero quiero evitarlo para no cargarme nada que esté fuera de mi ámbito.

    viernes, 16 de noviembre de 2012 10:01
  • Buenas para un entorno de pruebas  y para empezar a tocas cosas yo te aconsejo (siempre que se pueda) que te crees una maquina virtual  con un entorno minimo de 4Gb de Ram para la maquina o sino puede hacer uso de las versiones de evaluación de cloudshare http://cloudshare.com/Free-Trial-Registration y hay empieces a romper mano.

    Una vez ya tengas el desarrollo que quieres hacer hay que pasarlo al entorno de desarrollo y para ello que ya lo realicen con el usuario con privilegios de administración (otra cosa es para los usuarios/visitantes del portal).

    P.D: En lugar de intentar crearte un formulario, create una vista y modifica hay los estilos que tambien debes de poder sin ser usuario administrador (porque los usuarios normales pueden crearse vistas personales).

    viernes, 16 de noviembre de 2012 10:30
  • A ver que hay noticias!

    He conseguido poder editar la vista que había creado. No la he editado todavía porque no tengo ni idea de como crear ahí un queryString pero si que he conseguido acceder al código. Resulta que al crear la vista, por defecto tiene una propiedad "Protegida". Hay que dar a "Desproteger" para poder empezar a tocar algo. Así que algo he avanzado. Ahora lo que proponías era que creara dentro del código (a mano) la queryString? 

    PD: Algún día, algún ser supremo te recompensará por esto

    viernes, 16 de noviembre de 2012 10:37
  • Mira este link en la que te muestra pantalla a pantalla como añadir un link a una vista, lo que tienes que hacer es tu en ese link añadir el valor de la QueryString que quieras pasar.

    http://notas-desarrollo.blogspot.com.es/2011/11/adicionar-links-dinamicos-columnas-en.html#!/2011/11/adicionar-links-dinamicos-columnas-en.html

    Saludos

    
    viernes, 16 de noviembre de 2012 11:03
  • Está bien guardadito el enlace. Definitivamente hoy no me pueden dar los permisos así que lo seguiré intentando el lunes. 

    Gracias y buen fin de semana!

    viernes, 16 de noviembre de 2012 13:20