Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Colaboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 28-01-2021
Dadaista Dadaista is offline
Registrado
 
Registrado: jun 2020
Posts: 2
Poder: 0
Dadaista Va por buen camino
Muy agradecido keys y Neftali
Responder Con Cita
  #2  
Antiguo 28-01-2021
Avatar de elcharlie
elcharlie elcharlie is offline
Miembro
 
Registrado: mar 2013
Ubicación: Bilbao
Posts: 193
Poder: 14
elcharlie Va por buen camino
Cita:
Se ha abierto la posibilidad de realizar envíos al entorno de pruebas mediante certificados de dispositivo.

Con carácter previo a la remisión de las anotaciones, se deberán comunicar los datos identificativos de el/los certificados de dispositivo mediante la cumplimentación del formulario electrónico al que se puede acceder en el siguiente enlace: https://www.ebizkaia.eus/es/catalogo...os?procID=1740.



En https://www.batuz.eus/es/documentacion-tecnica dispone de un manual para obtener el número de serie asociado al certificado de dispositivo.



Por otro lado, se ha habilitado igualmente en el entorno de pruebas la anulación de los siguientes subcapítulos:



1.1 - Ingresos con factura con Software garante del LROE de personas físicas y entidades sin personalidad jurídica (modelo 140).
1.1 - Facturas emitidas con Software garante del LROE de personas jurídicas y de contribuyentes no residentes con establecimiento permanente (modelo 240).



Las consultas o incidencias relacionadas con el entorno de pruebas se deben dirigir por escrito a [email protected].
Esto han enviado desde Batuz, por si alguien le interesa hacer las pruebas con los certificados de dispositivos.
Responder Con Cita
  #3  
Antiguo 28-01-2021
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 671
Poder: 18
espinete Va camino a la fama
Me respondo a mí mismo...

Las respuestas al envío de la petición REST vienen en el Header de la respuesta. Concretamente en estos valores:

Código Delphi [-]
    if AResponse.ContainsHeader('eus-bizkaia-n3-mensaje-respuesta') then
        memo2.Lines.Append(AResponse.HeaderValue['eus-bizkaia-n3-mensaje-respuesta']);

    if AResponse.ContainsHeader('eus-bizkaia-n3-codigo-respuesta') then
        memo2.Lines.Append(AResponse.HeaderValue['eus-bizkaia-n3-codigo-respuesta']);

    if AResponse.ContainsHeader('eus-bizkaia-n3-tipo-respuesta') then
        memo2.Lines.Append(AResponse.HeaderValue['eus-bizkaia-n3-tipo-respuesta']);

Ahora ya consigo ver los distintos motivos de error en los envíos.
Responder Con Cita
  #4  
Antiguo 28-01-2021
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 671
Poder: 18
espinete Va camino a la fama
Me devuelve "Error al descomprimir el fichero.Not in GZIP format", así que me temo que el algoritmo para comprimir en GZIP no es válido.

Buscando en StackOverflow encontré esta variante que parece que sí funciona:

Código Delphi [-]
procedure comprimir(origen,destino:string);
var LInput, LOutput: TFileStream;
    LZip: TZCompressionStream;
begin
    { Create the Input, Output, and Compressed streams. }
    LInput := TFileStream.Create(origen, fmOpenRead);
    LOutput := TFileStream.Create(destino, fmCreate);
    LZip := TZCompressionStream.Create(LOutput, zcDefault, 15 + 16);

    { Compress data. }
    LZip.CopyFrom(LInput, LInput.Size);

    { Free the streams. }
    LZip.Free;
    LInput.Free;
    LOutput.Free;
end;
Responder Con Cita
  #5  
Antiguo 28-01-2021
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 671
Poder: 18
espinete Va camino a la fama
Después de corregir otros errores en el envío (certificado, modelo, etc.) y de adaptar el envío tanto para el 140 como para el 240, etc. ahora obtengo el siguiente error

El XML no cumple el esquema.[Linea:1 Columna:180] Error:cvc-complex-type.2.4.a: Invalid content was found starting with element '{"https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PJ_240_1_1_FacturasEmitidas_ConSG_AltaPeticion_V1_0_1.xsd":Cabecera}'. One of '{Cabecera}' is expected.

Si comparo los XML generados por mi aplicación, con los XML de ejemplo que proporciona Bizkaia, la única diferencia que veo es que los de Bizkaia empiezan así:

<lrpjfecsgap:LROEPJ240FacturasEmitidasConSGAltaPeticion xmlns:lrpjfecsgap="https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PJ_240_1_1_FacturasEmitidas_ConSG_AltaPeticion_V1_0_1.xsd">
<Cabecera>
<Modelo>240</Modelo>
...

...y el mío empieza así...

<LROEPJ240FacturasEmitidasConSGAltaPeticion xmlns="https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PJ_240_1_1_FacturasEmitidas_ConSG_AltaPeticion_V1_0_1.xsd">
<Cabecera>
<Modelo>240</Modelo>
...

¿Alguien más ha tenido este problema? Si la causa es esa... ¿hay forma de forzar a añadir ese prefijo en los XML o hay que hacerlo manualmente modificando directamente los strings antes de guardar el xml?
Responder Con Cita
  #6  
Antiguo 28-01-2021
Avatar de elcharlie
elcharlie elcharlie is offline
Miembro
 
Registrado: mar 2013
Ubicación: Bilbao
Posts: 193
Poder: 14
elcharlie Va por buen camino
Cita:
Empezado por espinete Ver Mensaje
Me devuelve "Error al descomprimir el fichero.Not in GZIP format", así que me temo que el algoritmo para comprimir en GZIP no es válido.

Buscando en StackOverflow encontré esta variante que parece que sí funciona:

Código Delphi [-]
procedure comprimir(origen,destino:string);
var LInput, LOutput: TFileStream;
    LZip: TZCompressionStream;
begin
    { Create the Input, Output, and Compressed streams. }
    LInput := TFileStream.Create(origen, fmOpenRead);
    LOutput := TFileStream.Create(destino, fmCreate);
    LZip := TZCompressionStream.Create(LOutput, zcDefault, 15 + 16);

    { Compress data. }
    LZip.CopyFrom(LInput, LInput.Size);

    { Free the streams. }
    LZip.Free;
    LInput.Free;
    LOutput.Free;
end;
Yo creo que lo estas haciendo bien, asi lo hago yo.
Responder Con Cita
  #7  
Antiguo 29-01-2021
espinete espinete is offline
Miembro
 
Registrado: mar 2009
Posts: 671
Poder: 18
espinete Va camino a la fama
Hola, sí, eso ya estaba resuelto. El problema que tengo ahora es el del mensaje posterior:

El XML no cumple el esquema.[Linea:1 Columna:180] Error:cvc-complex-type.2.4.a: Invalid content was found starting with element '{"https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PJ_240_1_1_FacturasEmitidas_ConSG_AltaPeticion_V1_0_1.xsd":Cabecera}'. One of '{Cabecera}' is expected.

No entiendo por qué dice que no tiene Cabecera si el XML es idéntico, salvo que el XML "original" incluye el prefijo "lrpjfecsgap"
Responder Con Cita
  #8  
Antiguo 29-01-2021
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.238
Poder: 25
keys Va por buen camino
Es por que delphi no genera las cabeceras como tiene que ser o no he encontrado la forma de hacerlo.

Antes de enviar hay que rehacer el fichero.

Código:
 Para el 140

FicheroCorregir := TStringList.Create;
      FicheroCorregir.LoadFromFile(FicheroDestino);

      FicheroCorregir.Text := AnsiReplaceStr(FicheroCorregir.Text, '<LROEPF140IngresosConFacturaConSGAltaPeticion xmlns="https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PF_140_1_1_Ingresos_ConfacturaConSG_AltaPeticion_V1_0_1.xsd">', '<lrpficfcsgap:LROEPF140IngresosConFacturaConSGAltaPeticion xmlns:lrpficfcsgap="https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PF_140_1_1_Ingresos_ConfacturaConSG_AltaPeticion_V1_0_1.xsd">');
      FicheroCorregir.Text := AnsiReplaceStr(FicheroCorregir.Text, '</LROEPF140IngresosConFacturaConSGAltaPeticion>', '</lrpficfcsgap:LROEPF140IngresosConFacturaConSGAltaPeticion>');
     
      System.SysUtils.DeleteFile(FicheroDestino);
     
      FicheroCorregir.SaveToFile(FicheroDestino);
Código:
Para el 240 
FicheroCorregir := TStringList.Create;
      FicheroCorregir.LoadFromFile(FicheroDestino);
      FicheroCorregir.Text := AnsiReplaceStr(FicheroCorregir.Text, '<LROEPJ240FacturasEmitidasConSGAltaPeticion xmlns="https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PJ_240_1_1_FacturasEmitidas_ConSG_AltaPeticion_V1_0_1.xsd">','<lrpjfecsgap:LROEPJ240FacturasEmitidasConSGAltaPeticion xmlns:lrpjfecsgap="https://www.batuz.eus/fitxategiak/batuz/LROE/esquemas/LROE_PJ_240_1_1_FacturasEmitidas_ConSG_AltaPeticion_V1_0_1.xsd">');
      FicheroCorregir.Text := AnsiReplaceStr(FicheroCorregir.Text, '</LROEPJ240FacturasEmitidasConSGAltaPeticion>','</lrpjfecsgap:LROEPJ240FacturasEmitidasConSGAltaPeticion>');
      
      System.SysUtils.DeleteFile(FicheroDestino);
      
      FicheroCorregir.SaveToFile(FicheroDestino);
Esto antes de comprimir y enviarlo.
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
SII -Nuevo sistema de la Agencia Tributaria española de envío de datos vía Webservice newtron Internet 3716 19-01-2026 20:01:34
Como utilizar la ayuda del nuevo Sistema Operativo gluglu Humor 3 24-09-2007 09:39:05
Aplicacion Agencia De Viajes ArdiIIa Varios 9 20-01-2007 16:49:53
El Vasco Aguirre Al González La Taberna 5 26-05-2006 09:22:28
Microsoft ha lanzado su nuevo sistema operativo DarkByte Humor 0 25-01-2004 09:21:14


La franja horaria es GMT +2. Ahora son las 01:11:03.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi