Cita:
Empezado por bmfranky
Hola @rci, Prueba esto.
public System.DateTime(System.DateTime currentDateTime)
{
return new DateTime(currentDateTime.Year, currentDateTime.Month, currentDateTime.Day, currentDateTime.Hour, currentDateTime.Minute, currentDateTime.Second, DateTimeKind.Local);
}
Si la hora no es local la convierte a local.
|
Hola bmfranky, esto es exactamente lo que hago

Pero esto solo crea un DateTime indicando que DateTimeKind es local, luego cuando el serializador o "quien" sea coge ese DateTime para obtener la fecha hora real con el huso, utiliza la configuración de la zona horaria del ordenador donde se ejecuta. y si no es el mismo que el que generó el registro de facturación, pues no indica la misma hora/huso.
Cita:
Empezado por bmfranky
Hola, habeis probado a pasar el Date, como un parametro al mismo tiempo que enviais el registro y usarlo para generar la huella, asi seguro que es el mismo....
Osea que consultais la fecha hora al ordenador que hace el envio y la usais para generar el registro y la huella, asi seguro que es la misma, con unos segundos de diferencia.
El ordenador que hace el envio a su vez la consulta con la base de datos o internet o lo que sea.
|
Si hago esto funcionaria pero no cumpliría la ley

Generar el registro y la huella se tiene que hacer al emitir la factura y no al enviar.
Pero gracias de todas formas.
De momento he prohibido que haya configuraciones de zona horaria distintas en todos los ordenadores que ejecutan el programa con la misma base de datos.
Si no encuentro otra solución lo dejaré así.
Saludos