Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #761  
Antiguo 03-06-2021
bilbur bilbur is offline
Miembro
 
Registrado: dic 2019
Posts: 60
Poder: 5
bilbur Va por buen camino
Cita:
Empezado por landaga Ver Mensaje
Yo tambien utilizo curl para enviar el LROE pero no veo la forma de recibir las cabeceras de la respuesta, el cuerpo de la respuesta si lo recibo y lo archivo pero no los headers.
El asunto es que algunas veces no envia nada y como en estos casos no devuelve nada en el body no se cual es la razón del fallo.
Alguien lo tiene resuelto?
Gracias

Mira si te sirve esto:

Código PHP:
 $response curl_exec($soap_do); 
    
$size_response curl_getinfo($soap_doCURLINFO_HEADER_SIZE);
    
$header_response substr($response0$size_response);
    
$body_response substr($response$size_response);

    function 
get_headers_from_curl_response($header_response)
    {
    
$headers_r = array();
    foreach (
explode("\r\n"$header_response) as $i => $line)
    if (
$i !== 0)
    {
    list (
$key$value) = explode(': '$line);
    
$headers_r[$key] = utf8_encode($value);
    }
    return 
$headers_r;
    }    
$headers_r get_headers_from_curl_response($header_response);
    
$respuesta_tipo $headers_r['eus-bizkaia-n3-tipo-respuesta'];
    
var_dump($headers_r); 
Responder Con Cita
  #762  
Antiguo 04-06-2021
landaga landaga is offline
Miembro
 
Registrado: may 2021
Posts: 15
Poder: 0
landaga Va por buen camino
Gracias Bilbur pero lo estoy haciendo por línea de comandos.
Responder Con Cita
  #763  
Antiguo 04-06-2021
batuzail batuzail is offline
Miembro
 
Registrado: feb 2017
Posts: 57
Poder: 8
batuzail Va por buen camino
Memoria alta software garante

Hola,
Estoy preparando la memoria para darnos de alta en el directorio de software garante, aún no tengo casi empezada la programación. Podéis ayudarme es esto?


Que tipos de certificados se podrán usar, cuales son los más comunes?
Para la validación se ha de acceder a alguna url o basta con validar usando comprobaciones locales? uso los componentes de chilckat.


Gracias
Responder Con Cita
  #764  
Antiguo 04-06-2021
landaga landaga is offline
Miembro
 
Registrado: may 2021
Posts: 15
Poder: 0
landaga Va por buen camino
Cita:
Empezado por batuzail Ver Mensaje
Hola,
Estoy preparando la memoria para darnos de alta en el directorio de software garante, aún no tengo casi empezada la programación. Podéis ayudarme es esto?


Que tipos de certificados se podrán usar, cuales son los más comunes?
Para la validación se ha de acceder a alguna url o basta con validar usando comprobaciones locales? uso los componentes de chilckat.


Gracias
Hola Batuzail,
- Puedes utilizar certificados de representante de entidad jurídica, de persona física, de dispositivo (es el que uso yo), etc.
- Para la validación tienes que realizar tus comprobaciones a nivel local, ellos no comprueban nada, tan sólo que en la memoria pongas que cumples lo que exigen....
- Una vez que estas dado de alta en el registro de software garante puede empezar a utilizar el entorno de pruebas para depurar errores.
Un saludo
Responder Con Cita
  #765  
Antiguo 04-06-2021
batuzail batuzail is offline
Miembro
 
Registrado: feb 2017
Posts: 57
Poder: 8
batuzail Va por buen camino
Cita:
Empezado por landaga Ver Mensaje
Hola Batuzail,
- Puedes utilizar certificados de representante de entidad jurídica, de persona física, de dispositivo (es el que uso yo), etc.
- Para la validación tienes que realizar tus comprobaciones a nivel local, ellos no comprueban nada, tan sólo que en la memoria pongas que cumples lo que exigen....
- Una vez que estas dado de alta en el registro de software garante puede empezar a utilizar el entorno de pruebas para depurar errores.
Un saludo

Muchas gracias, pensaba que se referian a proveedores de certificados.
Responder Con Cita
  #766  
Antiguo 04-06-2021
landaga landaga is offline
Miembro
 
Registrado: may 2021
Posts: 15
Poder: 0
landaga Va por buen camino
Cita:
Empezado por batuzail Ver Mensaje
Muchas gracias, pensaba que se referian a proveedores de certificados.

Proveedores son los que aparecen en el enlace que publican en la normativa.
Aquí los más usados y aceptados por TBai son los de Izenpe y los de la FNMT
Responder Con Cita
  #767  
Antiguo 04-06-2021
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 128
Poder: 4
tejano Va por buen camino
Buenos días Sistel.

Al final parece que el problema venía por el curl que estaba utilizando el que viene con el Windows.
Utilizando el descargado parece que no da ese error, da otro. Ahora me toca mirar a que es debido este nuevo error.

Gracias
Responder Con Cita
  #768  
Antiguo 04-06-2021
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 128
Poder: 4
tejano Va por buen camino
Cita:
Empezado por landaga Ver Mensaje
Gracias Bilbur pero lo estoy haciendo por línea de comandos.
Yo también lo hago por línea de comandos y me devuelve unos caracteres muy extraños.

Landaga, puedes enviar la línea de comando?

Yo lo envío de esta forma
c:\curl\1\bin\curl --insecure --cert-type P12 --cert c:\amis\exes\CERTIFICADO.p12:PASSWORD -H "Accept-Encoding:gzip" -H "Content-Encoding:gzip" -H "Content-Type:application/octet-stream" -H "eus-bizkaia-n3-version:1.0" -H "eus-bizkaia-n3-content-type:application/xml" -H "eus-bizkaia-n3-data:{\"con\":\"LROE\",\"apa\":\"1.1\",\"inte\":{\"nif\":\"A48190839\",\"nrs\":\"TECNICAS DE REFRACTARIOS S.A.U\"},\"drs\":{\"mode\":\"240\",\"ejer\":\"2021\"}}" -v "https://pruesarrerak.bizkaia.eus/N3B4001M/kontsulta" --data-binary "@c:\tmp\consulta.gz" --output c:\tmp\respuesta.xml

Y devuelve algo así.

‹ ªUþ‹ ÿ101368_peticion_Resp.xml ¥R]oÛ0 ü+FßkÙi¶µ'Àðœ!ÅævÚWC–ÕTmy¢„ýõ£ƒ6éöRxGñHî”Ä*´É¯r•¯¯góh!¤óV`Þk§[™ªŸt¡ïœ(Ž^¡Á¾ïL^(|?»wnÄ„±Ýn6ÂùÇPydwÚí…S[-þ°˦VLá_¯zT¯¯kj]ÇtÞö¯Ôï&¨oãš*Â=¶g2Ñ(©¬àðÛ´ª3œä€=Å”µóÅÀŽ1T¾‘ÇDH©—¬F’“Ú <‹HêáVYœ‚8$þ@þ*¬Ôô‚Ï¢‰0¬šNoEk6V7Þ ;qÅrÁÓùe|]^\› ¤£ê:Ý,LßXUŠGZÝH-:¾É³b™¥Uð#Ê|Q¦Ù&-—«*¨Â4¼öŸRšýƒþìäY:9Ûšg9,”¼GÍÏ£¯çÓZA<OâoÉì °×O*ðýZlõp¢Èƒ÷$ä{N
%}tÖ /Ȫ·°fbŸø®üðîJì ìÅ%sª

Gracias
Saludos
Responder Con Cita
  #769  
Antiguo 04-06-2021
landaga landaga is offline
Miembro
 
Registrado: may 2021
Posts: 15
Poder: 0
landaga Va por buen camino
Cita:
Empezado por tejano Ver Mensaje
Yo también lo hago por línea de comandos y me devuelve unos caracteres muy extraños.

Landaga, puedes enviar la línea de comando?

Yo lo envío de esta forma
c:\curl\1\bin\curl --insecure --cert-type P12 --cert c:\amis\exes\CERTIFICADO.p12:PASSWORD -H "Accept-Encoding:gzip" -H "Content-Encoding:gzip" -H "Content-Type:application/octet-stream" -H "eus-bizkaia-n3-version:1.0" -H "eus-bizkaia-n3-content-type:application/xml" -H "eus-bizkaia-n3-data:{\"con\":\"LROE\",\"apa\":\"1.1\",\"inte\":{\"nif\":\"A48190839\",\"nrs\":\"TECNICAS DE REFRACTARIOS S.A.U\"},\"drs\":{\"mode\":\"240\",\"ejer\":\"2021\"}}" -v "https://pruesarrerak.bizkaia.eus/N3B4001M/kontsulta" --data-binary "@c:\tmp\consulta.gz" --output c:\tmp\respuesta.xml

Y devuelve algo así.

‹ ªUþ‹ ÿ101368_peticion_Resp.xml ¥R]oÛ0ü+FßkÙi¶µ'Àðœ!ÅævÚWC–ÕTmy¢„ýõ£ƒ6éöRxGñHî”Ä*´É¯r•¯¯góh!¤óV`Þk§[™ªŸt¡ïœ(Ž^¡Á¾ïL^(|?»wnÄ„±Ýn6ÂùÇPydwÚí…S[-þ°Ë¦VLá_¯zT¯¯kj]ÇtÞö¯Ôï&¨oãš*Â=¶g2Ñ(©¬àðÛ´ª3œä€=Å”µóÅÀŽ1T¾‘ÇDH©—¬F’“Ú<‹HêáVYœ‚8$þ@þ*¬Ôô‚Ï¢‰0¬šNoEk6V7Þ ;qÅrÁÓùe|]^\› ¤£ê:Ý,LßXUŠGZÝH-:¾É³b™¥Uð#Ê|Q¦Ù&-—«*¨Â4¼öŸRšýƒþìäY:9Ûšg9,”¼GÍÏ£¯çÓZA<OâoÉì°×O*ðýZlõp¢Èƒ÷$ä{N
%}tÖ /Ȫ·°fbŸø®üðîJì ìÅ%sª

Gracias
Saludos

esos caractertes son el gzip de batuz, si lo abres con un descompresor de archivos te da el xml de hacienda
Cambia --output c:\tmp\respuesta.xml por --output c:\tmp\respuesta.gz
Responder Con Cita
  #770  
Antiguo 04-06-2021
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 128
Poder: 4
tejano Va por buen camino
Cita:
Empezado por landaga Ver Mensaje
esos caractertes son el gzip de batuz, si lo abres con un descompresor de archivos te da el xml de hacienda
Cambia --output c:\tmp\respuesta.xml por --output c:\tmp\respuesta.gz
Gracias Landaga, me imagino que la compresión y descompresión lo estás haciendo por línea de comando. Puedes decirme que programa utilizar y que línea de comando? Yo estaba con el 7zip - 7z a -tgzip archivo.gz archivo.xml , pero no va bien.

Gracias.
Responder Con Cita
  #771  
Antiguo 04-06-2021
landaga landaga is offline
Miembro
 
Registrado: may 2021
Posts: 15
Poder: 0
landaga Va por buen camino
Cita:
Empezado por tejano Ver Mensaje
Gracias Landaga, me imagino que la compresión y descompresión lo estás haciendo por línea de comando. Puedes decirme que programa utilizar y que línea de comando? Yo estaba con el 7zip - 7z a -tgzip archivo.gz archivo.xml , pero no va bien.

Gracias.



Para comprimir:
7z a C:\envio.gz C:\archivo.XML


simplemente ya que al poner la extensión .gz el 7zip ya entiende que debe comprimir en GZip y lo hace correctamente.



Para descomprimir tambien utilizo 7zip pero como el GZip de respuesta viene dentro de otro fichero no consigo hacerlo directamente por línea de comando. En cualquier caso utilizo:


7z e C:\salida.gz -oC:\miarchivo
Responder Con Cita
  #772  
Antiguo 04-06-2021
landaga landaga is offline
Miembro
 
Registrado: may 2021
Posts: 15
Poder: 0
landaga Va por buen camino
Cita:
Empezado por landaga Ver Mensaje
Para comprimir:
7z a C:\envio.gz C:\archivo.XML


simplemente ya que al poner la extensión .gz el 7zip ya entiende que debe comprimir en GZip y lo hace correctamente.



Para descomprimir tambien utilizo 7zip pero como el GZip de respuesta viene dentro de otro fichero no consigo hacerlo directamente por línea de comando. En cualquier caso utilizo:


7z e C:\salida.gz -oC:\miarchivo

Bueno pues ya lo he conseguido de una manera un poco rudimentaria, he vuelto a descomprimir ese archivo que me devuelve el primer proceso (C:\miarchivo) y obtengo el xml de respuesta de Batuz


7z e C:\miarchivo -oC:\
Responder Con Cita
  #773  
Antiguo 06-06-2021
landaga landaga is offline
Miembro
 
Registrado: may 2021
Posts: 15
Poder: 0
landaga Va por buen camino
Cita:
Empezado por landaga Ver Mensaje
Yo tambien utilizo curl para enviar el LROE pero no veo la forma de recibir las cabeceras de la respuesta, el cuerpo de la respuesta si lo recibo y lo archivo pero no los headers.
El asunto es que algunas veces no envia nada y como en estos casos no devuelve nada en el body no se cual es la razón del fallo.
Alguien lo tiene resuelto?
Gracias

Me respondo a mi mismo:


La opción -D de curl permite volcar las cabeceras (headers) HTTP recibidas en la respuesta del servidor.

-D Cabecera.txt (guarda las cabeceras en el archivo de texto Cabecera)
Responder Con Cita
  #774  
Antiguo 08-06-2021
Band Band is offline
Miembro
 
Registrado: may 2021
Posts: 35
Poder: 0
Band Va por buen camino
Buenas,

estoy intentando extraer la firma de los xml, pero no consigo referenciar al nodo ds:Signaturevalue.

A continuación os paso el código reducido de cómo lo hago:

Código Delphi [-]
docXML := CreateOleObject('Msxml2.DOMDocument.6.0');
docXML.Load(path+'\'+fichero);

ns := 'xmlns:T=''urn:ticketbai:emision'' xmlns:ds=''http://www.w3.org/2000/09/xmldsig#'' xmlns:xsi=''http://www.w3.org/2001/XMLSchema-instance''';

docXML.setProperty('SelectionNamespaces', ns);
docXML.setProperty('SelectionLanguage', 'XPath');

NodeList := docXML.selectNodes('//T:TicketBai/ds:Signature/ds:SignatureValue');


Considero que así sería la forma correcta de acceder al nodo, sin embargo "NodeList" es un nulo.
Si quiero obtener los nodos hijo de "T:TicketBai", lo hago así:

Código Delphi [-]
NodeList := docXML.selectNodes('//T:TicketBai/*');

Y me devuelve todos los nodos hijos de T:TicketBai, excepto el ds:Signature. La variable ns, que contiene los namespace, también considero que es correcta, puesto que si modifico los namespaces declarados ahí, entonces al ejecutar el
Código Delphi [-]
docXML.selectNodes('//T:TicketBai/ds:Signature/ds:SignatureValue')
se me queja de que los nombres de espacios son incorrectos.

Por ahora, solo puedo hacerlo con Msxml2.DOMDocument.6.0 y debería poderse pero no encuentro donde estoy fallando.

Alguien extrae la firma de esta manera o alguien me puede orientar?


Muchas gracias
Responder Con Cita
  #775  
Antiguo 08-06-2021
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.030
Poder: 22
keys Va por buen camino
Hola.

Para sacar la firma yo lo hago de la siguiente manera.

Código Delphi [-]
  Documento := Txmldocument.Create(nil);
  CoInitialize(nil);
  Documento.LoadFromFile(FicheroTBAI);
  Documento.Active := true;
  firma :=  Documento.DocumentElement.ChildNodes[4].ChildNodes[1].Text;

a través de las clases de Tbai no he conseguido hacerlo, el resto de cosas si, pero la firma no.
Responder Con Cita
  #776  
Antiguo 08-06-2021
Avatar de keys
keys keys is offline
Miembro
 
Registrado: sep 2003
Ubicación: Bilbao
Posts: 1.030
Poder: 22
keys Va por buen camino
Hola a todos.

Alguien a podido consultar en bizkaia los datos enviados al 140 en delphi, con las clases que ellos dan. No hay forma de llegar a los datos. Como por ejemplo al objeto TicketBai.
Responder Con Cita
  #777  
Antiguo 08-06-2021
Band Band is offline
Miembro
 
Registrado: may 2021
Posts: 35
Poder: 0
Band Va por buen camino
Unhappy

Cita:
Empezado por keys Ver Mensaje
Hola.

Para sacar la firma yo lo hago de la siguiente manera.

Código Delphi [-]
  Documento := Txmldocument.Create(nil);
  CoInitialize(nil);
  Documento.LoadFromFile(FicheroTBAI);
  Documento.Active := true;
  firma :=  Documento.DocumentElement.ChildNodes[4].ChildNodes[1].Text;

a través de las clases de Tbai no he conseguido hacerlo, el resto de cosas si, pero la firma no.

Hola keys, gracias por la respuesta.
Mi problema es que no puedo usar el Txmldocument de momento
No sé si es problema del Msxml2.DOMDocument.6.0, porque así
Código Delphi [-]
Documento.DocumentElement.ChildNodes[4].ChildNodes[1].Text;
tampoco consigo referenciarlo.

Seguiré investigando.
Responder Con Cita
  #778  
Antiguo 08-06-2021
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 128
Poder: 4
tejano Va por buen camino
Codigo Qr

Hola, sabéis si una vez enviado el dato de la factura a la hacienda, ya se puede escanear el código QR, o es que estando en pruebas no es posible.

Gracias

Por otra parte, daros las gracias a todos. Hace un par de meses no habría sido capaz de hacer nada y parece que ya he podido enviar mi primera factura correcta.

GRACIASSSSSSSSS, de verdad.
Responder Con Cita
  #779  
Antiguo 08-06-2021
skymota skymota is offline
Registrado
 
Registrado: mar 2011
Posts: 6
Poder: 0
skymota Va por buen camino
Buenas, tengo los xml firmados y su generación integrada en el software, asi que me he puesto con el envío, pero primer problema, el hacer la petición post con el certificado...
Utilizo Delphi y con el TIdHTTP como utilizo con todas las conexiones externas del software, lo que consigo aunque le meta el componente SSLIOHandler con el certificado, es que cuando me hace la petición POST, se me abre la ventana de los certificados de windows, no me coge el certificado que le estoy incluyendo.

¿Alguien ha tenido este problema? Sabeis como forzar para que pille el certificado del IOHandler?

Gracias!!



Cita:
Empezado por jaiser Ver Mensaje
No se porque me da el error 503. Estoy progrmamando en vb.net, no se si alguien me puede ayudar a ver donde está el error, lo he pasado a c el código.

Código:
public void envio(System.Xml.XmlDocument xml, System.Security.Cryptography.X509Certificates.X509Certificate2 certificado)
{
    byte[] sentXml = System.Text.Encoding.UTF8.GetBytes(xml.OuterXml);
    Stream stream;

    request.Method = "POST";
    request.ContentType = "application/xml; charset=utf-8";
    request.ContentType = "text/xml; charset=utf-8";
    request.Timeout = 3000000;
    request.ClientCertificates.Add(certificado);
    // soap action (this is the header I tried to add. Didn't work.)
    request.Headers.Add("SOAPAction", "h t t p s://tbai-prep.egoitza.gipuzkoa.eus/WAS/HACI/HTBRecepcionFacturasWEB/rest/recepcionFacturas/alta");

    // Set the ContentLength property of the WebRequest.
    request.ContentLength = sentXml.Length;

    stream = request.GetRequestStream();

    try
    {
        stream.Write(sentXml, 0, sentXml.Length);
    }
    catch (Exception ex)
    {
        Interaction.MsgBox("Error Sending Data: " + ex.Message);
    }

    // Close the Stream object.
    stream.Close();

    try
    {
        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        Console.WriteLine("Received response with status {0} {1}.", response.StatusCode, response.StatusDescription);

        if (response.StatusCode == HttpStatusCode.OK)
        {
            XmlDocument responseXML = new XmlDocument();
            Stream a = response.GetResponseStream;
            StreamReader reader = new StreamReader(a);
            Interaction.MsgBox(reader.ReadToEnd());

            responseXML.Load(response.GetResponseStream());
            responseXML.Save("respuesta.xml");
            responseXML.Save(Console.Out);
        }

        response.Close();
    }
    catch (Exception ex)
    {
        Interaction.MsgBox("Error Getting Response: " + ex.Message);
    }
}
Responder Con Cita
  #780  
Antiguo 08-06-2021
joselugrk joselugrk is offline
Miembro
 
Registrado: abr 2021
Posts: 28
Poder: 0
joselugrk Va por buen camino
Question Firma de Código

Hola,

Estaba intentando localizar una empresa para obtener el Certificado de Firma de Código y no sé a que empresa comprarlo.

He estado mirando www.ksoftware.net, recomendado en el foro, tiene un buen precio. Pero a la hora de realizar el pedido no me funciona con Internet Explorer 11 tal como indican en su página. También les he enviado un email y después de varios días no me han contestado.

He estado mirando:
  • digicert.com 1 año $499.00 - Muy caro
  • sectigostore.com 1 año $99.00 - Buen precio
  • leaderssl.es 1 año €69.00 - Buen precio y te dejan probarlo durante 14 días

¿Qué certificado me recomendáis? ¿Qué estáis utilizando vosotros?

Cualquier ayuda será muy agradecida, saludos y muchas gracias,
Joselu

Última edición por joselugrk fecha: 08-06-2021 a las 17:15:17.
Responder Con Cita
Respuesta



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 3557 Hace 2 Días 17:42:47
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 02:08:18.


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