none
Redireccion desde DispForm RRS feed

  • Pregunta

  • Hola de nuevo,

    Tengo una duda a ver si alguna vez se os ha planteado algo similar. Tengo una lista personalizada con uno de los campos de tipo "hipervinculo". Esta lista tiene un workflow de aprobacion, el basico de moss. Mi necesidad surge de evitar que el usuario vea la pagina "Dispform.aspx" y que en vez de esa, se redireccione la pagina a la Url que queda en el campo del item y asi evitar un "clic" mas del usuario.

    ¿Alguna idea de como hacerlo?

    Muchas gracias

    Alex R.

    • Cambiado VladPoint lunes, 19 de abril de 2010 18:12 Tema de Desarrollo (De:SharePoint: Productos y Tecnologías)
    jueves, 15 de abril de 2010 13:46

Respuestas

Todas las respuestas

  • Dejame ver si entendi bien, quieres que el aprobador no vea el elemento de la lista sino que directamente vaya al link que tienes en el campo de tipo hipervínculo?... eso quieres que suceda en el correo que le llega para revisar el elemento a aprobar? o cuando entre al detalle del elemento en la lista? o cuando le aparezca el link al elemento en la tarea de aprobación que maneja el flujo de SharePoint?...

    En la mayoría de los casos, si no es que en todos, creo que la única opción viable que veo es a través de desarrollo, pero explicanos un poco más al respecto para que te podamos ayudar correctamente...

     

    Saludos;

    Vlad


    Vlad Blogs: http://sharepointblogs.com.mx/blogs/medinav/default.aspx & http://vladpoint.wordpress.com/
    viernes, 16 de abril de 2010 3:40
  • Basicamente, la idea es que en el "Page Load" del Dispform.aspx, se redireccione automaticamente a la URL a la que apunta el metadato del elemento. Con esto, se evitaria que el usuario pasase por la pantalla del DispForm y evitariamos un clic al usuario, ya que la operativa de la aplicacion, hace que una vez visualizado el item, siempre, se entre a la pagina apuntada por el metadato...

    Muchas gracias

    Alex R.

    viernes, 16 de abril de 2010 6:12
  • Pero mi duda principal sigue siendo a que usuario le quieres dar esta funcionalidad y desde que lugar, ya que puede ser al aprobador desde el correo que le llega de aprobación o a cualquier usuario cuando entra a ver el elemento directamente desde la lista o biblioteca, de todos modos este tipo de funcionalidad no existe dentro de SharePoint, tendrías que buscar un desarrollo encodeplex o realizar tu mismo esta funcionalidad a través de Visual Studio...

     

    Saludos;

    Vlad


    Vlad Blogs: http://sharepointblogs.com.mx/blogs/medinav/default.aspx & http://vladpoint.wordpress.com/
    viernes, 16 de abril de 2010 15:20
  • Hola Jandrus,

    si lo que quieres es hacer un Redirect a DispForm del elemento que el usuario acaba de crear, tienes dos opciones:

    1. Crearte un EventReceiver y sobreescribir el ItemAdded para guardar los datos del usuario y hacer un redirect.

    2. Utilizar jQuery para hacer el redirect una vez que se ha guardado el elemento. Hay una librearía en codeplex (http://spservices.codeplex.com/wikipage?title=%24().SPServices.SPRedirectWithID) que puede ayudarte a hacer esto que quieres.

     


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin
    viernes, 16 de abril de 2010 19:07
  • Hola,

    La funcionalidad la quiero dar a los usuarios aprobadores, para que, cuando visualizan la pantalla del workflow estandar de moss, donde aparece aprobar, rechazar, solicitar cambio, añadir comentarios, etc, y aparece un link al elemento del workflow, no vaya al dispform.aspx de la lista, si no a la URL que apunta un metadato del item del wf, es por ello que querria implementar esta funcionalidad.

    Voy a echar un ojo a la libreria que me dices Alberto, y a ver si logro implementar esta funcionalidad

    Gracias

    Alex R.

    lunes, 19 de abril de 2010 7:15
  • Con esa librería podrían hacer la consulta del usuario activo y comprobar a que grupos pertenece.


    Alberto Diaz Martin twitter://@adiazcan | http://geeks.ms/blogs/adiazmartin
    lunes, 19 de abril de 2010 10:42
  • Podrias hacer algo de trampa, desde SharePoint Designer abre la página que te carga el formulario del aprobador y revisa si puedes por medio de un javascript o algo en HTML cazar el redirect que hace ese control que te vincula a tu elemento de lista para que en vez de que te lleve al dispform te mande a la url que comentas... lo complejo va a ser generar dinamicamente la url de cada elemento porque me imagino que no es la misma para todos verdad?, tendrias que hacer una consulta al elemento, conseguir la URL y despues cazar el redirect del control con tu dato obtenido.

     

    Saludos;

    Vlad


    Vlad Blogs: http://sharepointblogs.com.mx/blogs/medinav/default.aspx & http://vladpoint.wordpress.com/
    lunes, 19 de abril de 2010 15:26
  • Gracias a ambos por las respuestas,

    - Alberto, En el caso de la jquery, he estado mirando la documentacion  asi como la implementacion de la libreria y no he visto manera de ajustarlo a la casuística en cuestion. La necesidad no surge a la hora de crear, grabar o modificar el elemento del workflow, si no, a la hora de visualizar el dispfom.aspx.

    - Por otro lado, VladPoint, no creo que pueda hacer lo que me comentas, ya que por un lado, esta aplicacion correra en un servidor de produccion con varias aplicaciones que desconozco y que pueden estar utiizando el formulario de sharepoint, y por tanto, no me dejarian tocarlo. Te refieres al: /_layouts/WrkTaskIP.aspx?List=....., correcto?

    Respecto a tu pregunta, si, la url que se genera como metadato, es una URL dinamica y encriptada mediante C# (Encryption.EncryptQueryString()) quedando del tipo:

    .../Gestion.aspx?5F496450657469=31

    sigo investigando...

     

    lunes, 19 de abril de 2010 16:50
  • Voy a mover tu tema al foro de MSDN sobre SharePoint para que le den mejor atención, ya que veo que tu necesidad es más de desarrollo que de configuración...

     

    Saludos;

    Vlad


    Vlad Blogs: http://sharepointblogs.com.mx/blogs/medinav/default.aspx & http://vladpoint.wordpress.com/
    lunes, 19 de abril de 2010 17:50
  • He resuleto este tema en una aplicación de la siguiente manera:

    1) Armé una página (desarrollo) que mediante un SPQuery consulta cuál es el elemento que ha creado el usuario y re-direcciona el DispForm pasando como parámetro el ID de ítem que obtuvo el SPQuery.

    Aquí lo complejo es poder identificar univocamente el ítem creado. Es un tema funcional.

    2) Antes de llamar al NewForm.aspx, modifico el parámetro Source y lo cambió por la página que quesarrollé en el punto 1. Eso lo hago con jQuery.

    Para ver como funciona Source, consultar: http://surpoint.blogspot.com/2009/12/trucos-en-las-urls-de-sharepoint-parte.html

    Para ver como reemplazar el Source, recomiendo este jQuery: http://surpoint.blogspot.com/2009/09/remover-o-reemplazar-vinculos-estandar.html

    Espero te sea útil. Si necesitás más info, me avisas.

    Saludos!


    Juan Pablo.
    surpoint.blogspot.com
    geeks.ms/blogs/jpussacq
    ¿Hiciste tu consulta en HispaPoint?
    lunes, 19 de abril de 2010 19:23
  • Gracias por la info Juan Pablo,

    Intentare realizar los pasos que me indicas, aunque no estoy muy familiariazo en trabajar con Jquery, no creo que me quede mas remedio...

     

    Un saludo y gracias de nuevo

    Alex

    miércoles, 21 de abril de 2010 10:32
  • Por nada, cualquier duda me consultas.

    Y ten en cuenta que jQuery es un camino de ida :-)


    Juan Pablo.
    surpoint.blogspot.com
    geeks.ms/blogs/jpussacq
    ¿Hiciste tu consulta en HispaPoint?
    jueves, 22 de abril de 2010 0:52