Ver Mensaje Individual
  #1605  
Antiguo 10-04-2024
CarlosR CarlosR is offline
Miembro
 
Registrado: sep 2015
Posts: 67
Reputación: 9
CarlosR Va por buen camino
Formato fecha hora con huso horario

Cita:
Empezado por javipes Ver Mensaje
Hola a todos.
Estoy ya implementando con wsdl V0.11.5 y me encuentro con que al importar la wsdl correspondiente me aparece la definicion del dato FFechaHoraHusoGenRegistro: TXSDateTime;
Al utilizarlo segun la definicion de Soap.XSBuiltIns me genera un valor 2024-04-10T11:38:56.000Z , cosa que se separa ligeramente del formato indicado.
Lo he resuelto incluyendo al principio de la unit SistemaFacturacion una redefinicion: type TXSDateTime=string; y el valor lo he formateado adecuadamente segun el formato indicado: AAAA-MM-DDThh:nn:ss+0x:00 la x varia entre 0, 1 2 segun corresponda. En principio está resuelto para la generacion del xml.
La pregunta es ¿esto solo me ha ocurrido a mi, o es que he utilizado un importacion incorrecta del wsdl?
He importado (desde Studio 10.1 Berlin)
...aeat/tikeV1.0/... /SistemaFacturacion.wsdl (no me deja poner la url entera)
y utilizo la opcion
Porcess only WSDL Binding extensions por the SOAP 1.2 Protocol

Al importarlo en Embarcadero Studio Enterprise con el compilador C++ builder 11 no genera ese mismo nombre de campo. La importación al framework del wsdl se hizo en modo automático.

De todos modos, no creo que sea difícil hacer un conversor a string.


Si usa sql server para generar datos y por si le sirve de ayuda le paso una simple instrucción :


print SubString(convert(varchar(14),getdate(),112),7,2) + '-' + SubString(convert(varchar(14),getdate(),112),5,2) + '-' + SubString(convert(varchar(14),getdate(),112),1,4)+' ' + SubString(convert(varchar(14),getdate(),114),1,8)+'+0'+TRIM(STR(datediff(hour,getutcdate(),getdate() )))+':00'


Le generará el diferencial transformado entre la fecha utc y la fecha real de su sistema. Todo en uno !


Saludos.
Responder Con Cita