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 16-10-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
Hola a todos.

Bizkaia a publicado nuevos ficheros para el envío del 140/240 www.batuz.eus por cierto les he comentado lo del espacio en el xsd que da error al importarlos en el xml databinding y me han dicho que es un error y que lo van a corregir. No se si en lo subido esta corregido ya que sus xsd de envio del 140/240 da el mismo error.

Por otra parte. Al importar los ficheros xsd con el xml databindig y generar los xml con delphi no añade el espacio de nombres. Es decir pone

Código:
<TicketBai xmlns="urn:ticketbai:emision">
y ellos quieren que ponga

Código:
<T:TicketBai xmlns:T="urn:ticketbai:emision" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:ticketbai:emision ticketBaiV12.xsd ">
Yo lo que estoy haciendo una vez generado el fichero cambiarlo a pelo. ¿Pero hay alguna forma que la clase IXMLDocument lo genere asi directamente?.

Un Saludo.
Responder Con Cita
  #2  
Antiguo 16-10-2020
Avatar de elcharlie
elcharlie elcharlie is offline
Miembro
 
Registrado: mar 2013
Ubicación: Bilbao
Posts: 193
Poder: 14
elcharlie Va por buen camino
Buenas a todos,
¿Alguien ha podido enviar alguna factura/ticket al servidor de Gipuzkoa? Es que a mi siempre me esta retornando esto:
Código PHP:
<ns2:TicketBaiResponse xmlns:ns2="http://ticketbai.eus">
   <
Salida>
      <
FechaRecepcion>16-10-2020 10:50:32</FechaRecepcion>
      <
Estado>01</Estado>
      <
Descripcion>Rechazado</Descripcion>
      <
Azalpena>Baztertua</Azalpena>
      <
ResultadosValidacion>
         <
Codigo>006</Codigo>
         <
Descripcion>ErrorEl servicio de recepción no está disponibleRepita la operación más tarde</Descripcion>
         <
Azalpena>AkatsaJasotze zerbitzua ez dago erabilgarriEgin berriro eragiketa geroago</Azalpena>
      </
ResultadosValidacion>
   </
Salida>
</
ns2:TicketBaiResponse
Responder Con Cita
  #3  
Antiguo 16-10-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 keys Ver Mensaje
Hola a todos.

Bizkaia a publicado nuevos ficheros para el envío del 140/240 www.batuz.eus por cierto les he comentado lo del espacio en el xsd que da error al importarlos en el xml databinding y me han dicho que es un error y que lo van a corregir. No se si en lo subido esta corregido ya que sus xsd de envio del 140/240 da el mismo error.

Por otra parte. Al importar los ficheros xsd con el xml databindig y generar los xml con delphi no añade el espacio de nombres. Es decir pone

Código:
<TicketBai xmlns="urn:ticketbai:emision">
y ellos quieren que ponga

Código:
<T:TicketBai xmlns:T="urn:ticketbai:emision" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:ticketbai:emision ticketBaiV12.xsd ">
Yo lo que estoy haciendo una vez generado el fichero cambiarlo a pelo. ¿Pero hay alguna forma que la clase IXMLDocument lo genere asi directamente?.

Un Saludo.
Yo tambien lo estoy cambiando a mano, pero solo estoy añadiendo esto:
Código PHP:
<T:TicketBai xmlns:T="urn:ticketbai:emision" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
Responder Con Cita
  #4  
Antiguo 16-10-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
Puede ser que valga solo con eso.
Yo he cogido lo que viene en un fichero de ejemplo de la hacienda de gipuzkoa que me han mandado.
Responder Con Cita
  #5  
Antiguo 20-10-2020
Avatar de elcharlie
elcharlie elcharlie is offline
Miembro
 
Registrado: mar 2013
Ubicación: Bilbao
Posts: 193
Poder: 14
elcharlie Va por buen camino
Hola a todos,
hoy me han mandado esto los de la diputación de Gipuzkoa. Les mandé un email. porque el servicio web siempre me respondía con el mensaje "Error: El servicio de recepción no está disponible. Repita la operación más tarde".
Por si os sirve de ayuda.

Cita:
Buenos días,
Hemos detectado que hay un problema derivado de la comprobación de la política de firma, estamos revisando como está implementada esta comprobación.
Si se envía el fichero sin indicar una política de firma explícita, creemos que funcionará.

Un saludo,
Responder Con Cita
  #6  
Antiguo 20-10-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 20
juramisa Va por buen camino
Petición al servicio

Buenas tardes,

Os pido ayuda para el envío del fichero LROE, siempre me da error desconocido.
Estoy usando los componente TNetHTTPRequest y TNetHTTPClient, pero si alguien me da otra opción más sencilla y que funcione, estoy dispuesto a cambiar.

Os expongo el código a ver si alguien puede ayudarme, que hago mal.

en TNetHTTPClient cargo el cerificado:

Código Delphi [-]
procedure TfrmEnvelm.NetHTTPClient1NeedClientCertificate(const Sender: TObject; const ARequest: TURLRequest; const ACertificateList: TCertificateList; var AnIndex: Integer);
var
  i: Integer;
begin
  for i := 0 to ACertificateList.Count - 1 do
  begin

    if SameText(ACertificateList[i].Subject, mi_certificado.Caption) then
    begin
      AnIndex := i;
      break;
    end;
  end;
end;

Genero el fichero XML y lo comprimo en formato gzip.

Código Delphi [-]
    

function TfrmEnvelm.f_cabecera_LROE(mi_con, mi_apa, mi_nif, mi_nrs, mi_ap1, mi_ap2, mi_mode, mi_eje : string): string;
begin
  result := Format('{"con": "%s", "apa": "%s", "inte": {"nif": "%s","nrs": "%s","ap1": "%s","ap2": "%s"},"drs": {"mode": "%s","ejer": "%s"}}', [mi_con, mi_apa, mi_nif, mi_nrs, mi_ap1, mi_ap2, mi_mode, mi_eje]);
end;


var
  Src, Dst: TFileStream;
  ResponseContent: TMemoryStream;
  Encoding: TEncoding;
  ss: TStringStream;
....
    SaveAsUTF8(DMBatu.CDSEnvc.FieldByName('EN050').AsString, el_xml.XML);
    Src := TFileStream.Create(DMBatu.CDSEnvc.FieldByName('EN050').AsString, fmOpenRead);
    try
      Dst := TFileStream.Create(DMBatu.CDSEnvc.FieldByName('EN050').AsString + '.gz', fmCreate);
      try
        MakeGZ(Src, Dst);
      finally
        Dst.Free;
      end;
    finally
      Src.Free;
    end;

Cargo cabecera y cuerpo de https, y realizo la llamada.

Código Delphi [-]
   
      if FileExists(DMBatu.CDSEnvc.FieldByName('EN050').AsString + '.gz') then
      begin
        NetHTTPRequest1.CustomHeaders['Accept-Encoding'] := el_accept_Encoding;
        NetHTTPRequest1.CustomHeaders['Content-Encoding'] := el_Content_Encoding;
        NetHTTPRequest1.CustomHeaders['Content-Type'] := el_Content_Type;
        NetHTTPRequest1.CustomHeaders['eus-bizkaia-n3-version'] := el_eus_bizkaia_n3_version;
        NetHTTPRequest1.CustomHeaders['eus-bizkaia-n3-content-type'] := el_eus_bizkaia_n3_content_type;
        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,
                                                   txtEjer.Text);
        NetHTTPRequest1.CustomHeaders['eus-bizkaia-n3-data'] := el_eus_bizkaia_n3_data;
        ss := TStringStream.Create('', TEncoding.UTF8);
        ss.Position := 0;
        ss.LoadFromFile(DMBatu.CDSEnvc.FieldByName('EN050').AsString + '.gz');

        NetHTTPRequest1.MethodString := 'POST';
        Memo1.Text := NetHTTPClient1.Post(la_url, ss).ContentAsString(tencoding.UTF8);

Las variables siguientes, se leen de un fichero de configuración:

Código Delphi [-]
    la_url := 'https://sarrerak.bizkaia.eus/aurkezpena';
    el_accept_Encoding := 'gzip';
    el_Content_Encoding := 'gzip';
    el_Content_Type := 'application/octet-stream';
    el_eus_bizkaia_n3_version := '1.0';
    el_eus_bizkaia_n3_content_type := 'application/xml';
    el_Concepto := 'LROE';
   el_subcapitulo := '1.1';
Tengo dudas si el cuerpo debe de estar en hexadecimal.

Estoy abierto a todo, ya no se por donde seguir,
Gracias
Responder Con Cita
  #7  
Antiguo 21-10-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
Hola a todos.

No te he revisado todo pero vas por buen camino.

El problemaes es que en Bizkaia no han empezado el periodo de prueba de los envíos. Site fijas en la url https://sarrerak.bizkaia.eus/aurkezpena y pinchas te dice que el servidor no esta disponible.

Esa es la dirección de producción, es decir la definitiva. Tienen que publicar la dirección del entorno de pruebas que me imagino que será distinta.

Si tienes que hacer también Gipuzkoa, puedes empezar por ellos que ya tienen el periodo de pruebas de envíos en marcha y es más sencillo.

Un Saludo.
Responder Con Cita
  #8  
Antiguo 21-10-2020
juramisa juramisa is offline
Miembro
 
Registrado: abr 2007
Posts: 54
Poder: 20
juramisa Va por buen camino
Gracias,

Me quitas un gran peso de encima. Estoy mirando Gipuzkoa, no se me da el caso, y es totalmente distinto. En esta hacienda mandan directamente el XML del ticketbai. De todas formas sabes si Bizkaia, ¿ va a habilitar portal de pruebas?. Si no les pongo una consulta, a ver que responden.

Saludos
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 08:40:36.


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