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 05-11-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 20
juramisa Va por buen camino
keys

Aerror = Access violation at address 00B19045 in module 'BATUZ.exe'. Read of address 00000004
Responder Con Cita
  #2  
Antiguo 05-11-2020
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.229
Poder: 24
keys Va por buen camino
Yo creo que el problema es de delphi seattle.

Si el error da en ese punto es que tu programa no a podido negociar la conexión con el servidor de hacienda, es decir el protocolo que estan utilizando es diferente. Nosotros cuando empezamos las pruebas nos ocurria algo parecido al hacer los envíos y tampoco llegaba al evento OnNeedClientCertificate, pero si nos mostraba el error, que era distinto. Trabajabamos con el delphi Tokio 10.2.0, es decir la primera que sacaron.

Mirando por internet encontramos lo siguiente https://edn.embarcadero.com/print/44770 es decir que la versión que teniamos no estaba preparada para TLS 1.2 que es lo que recomienda hacienda. Tambien puedes seguir el siguiente enlace https://blog.marcocantu.com/blog/201...ents-1022.html que tambien habla de ello. Actualizamos a delphi 10.2.2 y funciono todo correcto.

Yo lo que te recomiendo es que mires si lo puedes probar en un delphi mas actualizado.

Por otra parte hacienda ha publicado esto.

"Se recomienda hacer uso de protocolos de comunicación seguros con el servicio de entradas, con versiones TLS 1.2 o superiores."

Aunque ahora mismo tienen habilitado el 1.0 y el 1.1, pero me comentaron que puede que luego solo dejen el 1.2 o superior. Para indicarle al componente TNEtHttpClient que trabaje con la verisión del protocolo que nosotros queremos es
Código Delphi [-]
Componente.SecureProtocols := [THTTPSecureProtocol.TLS12];

Esta propiedad solo esta disponible a partir de la version 10.2.2(Tokio) de delphi.

Un Saludo.
Responder Con Cita
  #3  
Antiguo 05-11-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 20
juramisa Va por buen camino
Buenos días

keys, está claro que es la versión. Por lo que deduzco, y dime si me equivoco, que si lo intento con otros componentes de la misma versión de Delphi, me ocurriría lo mismo.
Voy a echar un vistazo a TsbxHTTPClient, de 'SecureBlackbox 2020'. De todas formas si alguien trabaja con otros componentes, y que le funcione la comunicación, por favor, hacérmelo saber, para ir por ese camino.

Muchas gracias de nuevo.
Responder Con Cita
  #4  
Antiguo 05-11-2020
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.229
Poder: 24
keys Va por buen camino
Si no puedes cambiar la versión de delphi prueba con otros componentes de terceros. No se si con alguno de los otros de delphi funcionará. Los de secureblackbox yo los utilizo para otras cosas, no para enviar y funcionan bien. Si tienes la version 2020 me imagino que estaran adaptados a todos los protocolos.

Un Saludo y suerte.
Responder Con Cita
  #5  
Antiguo 08-11-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 20
juramisa Va por buen camino
Entorno pruebas TicketBai

Buenos días

Perdonar mi torpeza. Estoy intentando realizar pruebas de envío LROE, en esta ocasión con Delphi 10.4 Sydney, (Trial) con el siguiente código:

Código Delphi [-]
    // Fichero a enviar 'D:\...\Modelos 140-240\temp\CTB-0001-2020-11-08 12-41-50-ALENVIO.xml.gz'
    if FileExists(DMBatu.CDSEnvc.FieldByName('EN050').AsString + '.gz') then 
    begin
      NetHTTPClient1.SecureProtocols := [THTTPSecureProtocol.TLS12];
      // Cargo la cabecera de la petición

      NetHTTPRequest1.CustomHeaders['Accept-Encoding'] := el_accept_Encoding;   // 'gzip'
      NetHTTPRequest1.CustomHeaders['Content-Encoding'] := el_Content_Encoding; // 'gzip'
      NetHTTPRequest1.CustomHeaders['Content-Length'] := IntToStr(tamanoFichero(DMBatu.CDSEnvc.FieldByName('EN050').AsString + '.gz'));
      NetHTTPRequest1.CustomHeaders['Content-Type'] := el_Content_Type;   // 'application/octet-stream'
      NetHTTPRequest1.CustomHeaders['eus-bizkaia-n3-version'] := el_eus_bizkaia_n3_version;  // '1.0'
      NetHTTPRequest1.CustomHeaders['eus-bizkaia-n3-content-type'] := el_eus_bizkaia_n3_content_type;  // 'application/xml'
      el_eus_bizkaia_n3_data := f_cabecera_LROE(el_concepto, el_subcapitulo, DMBatu.CDSPres.FieldByName('PR020').AsString, DMBatu.CDSPres.FieldByName('PR040').AsString,
                                                                         DMBatu.CDSPres.FieldByName('PR090').AsString, DMBatu.CDSPres.FieldByName('PR100').AsString, DMBatu.CDSPres.FieldByName('PR080').AsString, 
                                                                         IntToStr(ejercicio_presentacion.Value));
      //   '{"con": "LROE", "apa": "1.1", "inte": {"nif": "14XXXXXXA","nrs": "MXXXXXX","ap1": "SXXXXXX","ap2": "JXXXXXXXX"},"drs": {"mode": "140","ejer": "2020"}}'
      NetHTTPRequest1.CustomHeaders['eus-bizkaia-n3-data'] := el_eus_bizkaia_n3_data;

     S := TStringList.Create;
     M := TMemoryStream.Create;

      NetHTTPRequest1.MethodString := 'POST';
      case rg_Entorno.ItemIndex of
        0: begin
            NetHTTPRequest1.Post(la_url_pruebas, // https://pruesarrerak.bizkaia.eus/N3B4000M/aurkezpena
                                 DMBatu.CDSEnvc.FieldByName('EN050').AsString + '.gz',  // Fichero a enviar 'D:\...\Modelos 140-240\temp\CTB-0001-2020-11-08 12-41-50-ALENVIO.xml.gz'
                                 M);
            M.Position := 0;
            S.LoadFromStream(M);
            Memo1.Lines.AddStrings(S);
           end;
        .............
      end;

Pues bien, el certificado me lo pide, como es de ciudadano, me solicita la clave, se la doy y tras un breve tiempo, me da el siguiente error:
'Error sending data: (12030) La conexión con el servidor finalizó anormalmente'


Si alguien que utilice este método, puede corregirme, qué estoy haciendo mal, agradecido.

Muchas gracias a todos
Responder Con Cita
  #6  
Antiguo 09-11-2020
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.229
Poder: 24
keys Va por buen camino
Yo creo que el problema esta en como envías el fichero. Te pongo como lo hago yo

Código Delphi [-]
var
 json : string;
 RequestBody: TFileStream;
 AResponse: IHTTPResponse;
begin
 RequestBody := TFileStream.Create(FicheroComprimido, fmOpenRead);

 EnvioBizkaia.SecureProtocols := [THTTPSecureProtocol.TLS12];
 EnvioBizkaia.CustomHeaders['Accept-Encoding'] := 'gzip';
 EnvioBizkaia.CustomHeaders['Content-Encoding'] := 'gzip';
 EnvioBizkaia.CustomHeaders['Content-Type'] := 'application/octet-stream';

 EnvioBizkaia.CustomHeaders['eus-bizkaia-n3-version'] := '1.0';
 EnvioBizkaia.CustomHeaders['eus-bizkaia-n3-content-type'] := 'application/xml';

//Formamos los parametros json de entrada
 json := '{"con": "LROE","apa": "1.1","inte": {"nif": "'+ Factura.DatosAsesoria.CIF +'",';

 if PersonaFisica  then
    json := json + '"nrs": "' + NombreP + '","ap1": "' + Apellido1P + '","ap2": "'+ Apellido2P +'"},'
 else
    json := json + '"nrs": "' + Nombre + '","ap1": "","ap2": ""},';

 json := json + '"drs":{"mode": "' + Modelo + '","ejer": "2020"}}';

 EnvioBizkaia.CustomHeaders['eus-bizkaia-n3-data'] := json;
 AResponse := EnvioBizkaia.Post('https://pruesarrerak.bizkaia.eus/N3B4000M/aurkezpena',RequestBody);
end;

Espero que te sirva. Un Saludo
Responder Con Cita
  #7  
Antiguo 09-11-2020
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 juramisa Ver Mensaje
Buenos días

Pues bien, el certificado me lo pide, como es de ciudadano, me solicita la clave, se la doy y tras un breve tiempo, me da el siguiente error:
'Error sending data: (12030) La conexión con el servidor finalizó anormalmente'


Si alguien que utilice este método, puede corregirme, qué estoy haciendo mal, agradecido.

Muchas gracias a todos
A mi me hace lo mismo, si seguidamente, lo vuelves a enviar, ya no te pide que valides la clave y lo envía. Debe de ser algo de la configuración del timeout de su servidor de pruebas, digo yo..
Responder Con Cita
  #8  
Antiguo 09-11-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 20
juramisa Va por buen camino
Entorno pruebas TicketBai

Tienes razón, la segunda vez lo admite. Muchas gracias, ya no sabía que cambiar. La única diferencia que tenía con keys era:

Código Delphi [-]
     NetHTTPClient1.CustomHeaders['Content-Length'] := IntToStr(tamanoFichero(FicheroComprimido));

Que han introducido en una última versión.

Gracias
Responder Con Cita
  #9  
Antiguo 09-11-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 20
juramisa Va por buen camino
Cita:
Empezado por elcharlie Ver Mensaje
A mi me hace lo mismo, si seguidamente, lo vuelves a enviar, ya no te pide que valides la clave y lo envía. Debe de ser algo de la configuración del timeout de su servidor de pruebas, digo yo..
Si lo reintento como dices, no me funciona, me había equivocado, al controlar el error me da un

Código Delphi [-]
Error
Server error 408: Request Timeout

Si encuentras la solución ya me dirás. Yo seguiré también haciendo pruebas.
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 17:28:26.


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