none
Problema con fechas, javascript y json en CRM 2011 online RRS feed

  • Pregunta

  • Hola a todos, me estoy encontrando con un problema al actualizar un campo de tipo fecha (sin hora) en una entidad a través de javascript y json.

    Al realizar la serialización (var jsonEntidad = window.JSON.stringify(Cambios);) de los datos que quiero actualizar, esta instrucción me cambia la hora de la fecha con lo que me cambia el día cuando se actualiza en el servidor.

    En estos momentos el problema que tengo es que mi fecha local es UTC +2 horas pero en el servidor es UTC y me retrasa 2 horas, me gustaría saber si hay alguna solución sencilla (que no sea retrasando la hora de mi fecha local directamente 2 horas ya que esa diferencia podría ser variable). 

    Muchas gracias.

    martes, 18 de octubre de 2011 11:55

Respuestas

  • Muchas gracias por tu respuesta Frank, pero lo he comprobado y tengo la zona horaria correcta.

     

    Sin embargo investigando un poco más en javascript he conseguido que me maneje correctamente las fechas (no lo he probado en profundidad pero de momento para mi caso me funciona):

     

    A la hora de rellenar el valor en el objeto que uso para pasar los cambios a la entidad, le aplico la función Date.UTC de manera que me convierte la fecha que quiero a formato milisegundos UTC:

    Cambios.sf_fechainicio = new Date(Date.UTC(v_fechainiciotema.getYear(), v_fechainiciotema.getMonth(), v_fechainiciotema.getDate()));

    De esta manera me está funcionando correctamente al hacer posteriormente el window.JSON.stringify(Cambios);

     

    Saludos.

     

    • Marcado como respuesta oiglesias martes, 18 de octubre de 2011 14:06
    martes, 18 de octubre de 2011 14:05

Todas las respuestas

  • Saludos,

     

    Te pregunto, tienes la opción de personalización de CRM la zona horaria correcta? Entiendo que esta utilizando CRM 2011. Si vas Archivo ->Opciones en la página principal. Te va salir una pantalla como la siguiente, verifica que tengas la zona horaria correcta.

     

     

    Espero esto te ayude,

    Frank

    martes, 18 de octubre de 2011 13:36
  • Muchas gracias por tu respuesta Frank, pero lo he comprobado y tengo la zona horaria correcta.

     

    Sin embargo investigando un poco más en javascript he conseguido que me maneje correctamente las fechas (no lo he probado en profundidad pero de momento para mi caso me funciona):

     

    A la hora de rellenar el valor en el objeto que uso para pasar los cambios a la entidad, le aplico la función Date.UTC de manera que me convierte la fecha que quiero a formato milisegundos UTC:

    Cambios.sf_fechainicio = new Date(Date.UTC(v_fechainiciotema.getYear(), v_fechainiciotema.getMonth(), v_fechainiciotema.getDate()));

    De esta manera me está funcionando correctamente al hacer posteriormente el window.JSON.stringify(Cambios);

     

    Saludos.

     

    • Marcado como respuesta oiglesias martes, 18 de octubre de 2011 14:06
    martes, 18 de octubre de 2011 14:05