Ver Mensaje Individual
  #11  
Antiguo 27-05-2021
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.229
Reputación: 24
keys Va por buen camino
Hola a todos.

Para los de delphi o no. El lunes al realizar envíos a Bizkaia, resulta que me empezó a dar errores del servidor y se había estado enviando sin problemas hasta ahora. Después de envíar la consulta a hacienda me dijeron que el problema es que habían tocado algo y el sistema ya no aceptaba saltos de línea ni retornos de carro en el campo TicketBai, es decir donde va el fichero TicketBai en Base64.

Me dijeron que lo volvían a cambiar y ya esta funcionando como antes.

Y ahora al grano, la función que estamos utilizando para pasar a Base64 en delphi esta devolviendo saltos de linea y retornos de carro. He modificado la función para que no tenga en cuenta esos caracteres y salga todo en una misma linea como en los ejemplo de hacienda.

Código Delphi [-]
 
function DevolverFicheroBase64(Nfichero:string): string; //nfichero es el fichero xml de TBai a enviar
var
     ListaFichero : TStringList;
     Base64: TBase64Encoding;
     i : integer;
     resultado : string;
begin
   ListaFichero := TStringList.Create;
   ListaFichero.LoadFromFile(NFichero);
   Base64 := TBase64Encoding.Create;
   resultado := Base64.Encode(ListaFichero.Text);
   Base64.Destroy;
   ListaFichero.Destroy;

   result := '';
   for i := 1 to Length(resultado) do
    if (resultado[i] = Char(13)) or (resultado[i] = Char(10)) then //Vamos a quitarles los saltos de linea y retornos de carro
    else
     result := result + resultado[i];


end;
Responder Con Cita