none
Sumar fecha XSL - ItemStyle.xsl > SharePoint 2010 RRS feed

  • Pregunta

  • Buenas tardes, tengo un problema con un componente, en el XSL de ItemStyle se ha conseguido que una variable almacene la fecha del sistema con el formato "YYYYMMDD" y en otra la fecha de creacion del elemento con el mismo formato.

    Mi problema es que necesito poder sumar 4 días a la fecha de creacion, pero nos hemos topado con que si a la fecha 20120528 + 4 = 20120532.

    <xsl:value-of select="ddwrt:FormatDateTime(string(@Created) ,1033 ,'YYYYMMDD')" />

    La cabecera del XSL creo que está tal que:

    <xsl:stylesheet 
      version="1.0" 
      exclude-result-prefixes="x d xsl msxsl cmswrt"
      xmlns:x="http://www.w3.org/2001/XMLSchema" 
      xmlns:d="http://schemas.microsoft.com/sharepoint/dsp" 
      xmlns:cmswrt="http://schemas.microsoft.com/WebParts/v3/Publishing/runtime"
      xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:msxsl="urn:schemas-microsoft-com:xslt"
      xmlns:ddwrt="http://schemas.microsoft.com/WebParts/v2/DataView/runtime">

    Para poder usar la extension de FormatDateTime.

    Me estoy volviendo loco con este tema y no se me ocurre nada... agradeceria cualquier tipo de ayuda.

    jueves, 7 de junio de 2012 18:07

Todas las respuestas

  • Hola,

    Tendrás que crearte unas trasnformaciones más complejas del estilo de las siguientes: http://www.sharepointboris.net/2008/11/xsl-template-for-adding-days/

    Saludos


    ------------------------------------------------------------
    Juan Carlos González Martín MVP de SharePoint Server
    Director revista CompartiMOSS: http://www.gavd.net/servers/compartimoss/compartimoss_main.aspx
    Blog: http://geeks.ms/blogs/ciin
    Twitter: @jcgm1978
    ------------------------------------------------------------

    jueves, 7 de junio de 2012 19:46
  • Hola Pablo.

    Esta operación es algo que no se debería realizar en XSL.

    No obstante, creo que este código te puede ayudar Date Addition

    También te dejo la referencia de las funciones de DateTime en XSL y, quizás mediante un bucle con el número de días a añadir y el uso de la función "next-day" podrías solventarlo.


    "En los momentos de crisis, sólo la imaginación es más importante que el conocimiento"

    miércoles, 13 de junio de 2012 10:00
    Moderador