Sharepoint internalmente almacena las fechas para list items como UTC dates (ISO 8601 DateTime format):
yyyy-MM-ddTHH:mm:ssZ
De esta manera podriamos hacer nuestras consultas CAML:
<Where>
<Gt>
<FieldRef Name='Created' />
<Value Type='DateTime' IncludeTimeValue='TRUE' StorageTZ='TRUE'>
2014-09-13T13:30:26Z
</Value>
</Gt>
</Where>
Cómo podemos convertir las variables de DateTime en este formato?
En Server Object Model podemos usar el método: SPUtility.CreateISO8601DateTimeFromSystemDateTime(date)
En Cliente Object podemos usar el método ToString("yyyy-MM-ddTHH:mm:ssZ")
Por ejemplo: DateTime.Today.ToString("yyyy-MM-ddTHH:mm:ssZ");
En Javascript podemos usar el siguiente método:
var isoDate = function( d ) {
//defaults to new date
d = d || new Date();
function pad( n ) {
return n < 10 ? '0' + n : n;
}
return d.getUTCFullYear() + '-' +
pad( d.getUTCMonth() +1 ) + '-' +
pad( d.getUTCDate() ) + 'T' +
pad( d.getUTCHours() ) +':' +
pad( d.getUTCMinutes() )+':' +
pad( d.getUTCSeconds() )+'Z'
;
};
No hay comentarios:
Publicar un comentario