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
  #1081  
Antiguo 15-07-2021
batuzail batuzail is offline
Miembro
 
Registrado: feb 2017
Posts: 57
Poder: 8
batuzail Va por buen camino
Cita:
Empezado por Galaxian Ver Mensaje
Ten en cuenta que ese error también lo puede ocasionar un problema en el XML. Echa un vistazo a los encabezados de la respuesta. A mí, en una ocasión, me dijo tan claro lo que pasaba que no me lo creía.
Gracias Glaxian, el error era por el nombre del cliente que contenia un acento :-(, limpiando acentos y otros carácteres me ha funcionado con Chilckat
Responder Con Cita
  #1082  
Antiguo 15-07-2021
Galaxian Galaxian is offline
Miembro
 
Registrado: mar 2021
Posts: 52
Poder: 4
Galaxian Va por buen camino
Cita:
Empezado por batuzail Ver Mensaje
El error era pq el nombre del cliente tenía un acento. ya podia ir probando cosas



Saludos
Precisamente para eso sirve la conversión a UTF8. Si algo con acentos lo conviertes a UTF8 antes de firmar no hay problemas.
Responder Con Cita
  #1083  
Antiguo 15-07-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por batuzail Ver Mensaje
Alguna función para calcular el CRC8 para VB6?

Revisa mensajes anteriores del hilo. Hay varios códigos en varios lenguajes.
Si no también tienes una DLL que puedes llamarla para calcularlo.
Es este mensaje concretamente: http://clubdelphi.com/foros/showpost...&postcount=606
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #1084  
Antiguo 15-07-2021
Avatar de Eric Mtz
Eric Mtz Eric Mtz is offline
Miembro
 
Registrado: jun 2021
Ubicación: Vitoria-Gasteiz
Posts: 43
Poder: 0
Eric Mtz Va por buen camino
Socorro

AYUDA: Necesito a alguien que haya logrado cruzar el corredor de Kessel en menos de 12 parsecs.
Estoy seriamente desesperado así que intentaré documentar mi situación lo mejor que pueda.

Estoy pausado con el envío del 140 de BATUZ desde hace una maldita eternidad, he visto lunas pasar sin lograr avances, así que recurro a vosotros para mendigar un poco de sensatez.

Os pongo en situación, hace ya un tiempo que he logrado realizar envíos exitosos a BATUZ con el modelo 240, así que todo el tema pre-envío de construir, almacenar, encadenar, comprimir, parsear y todas las gilipolleces que se les han podido ocurrido a batuz están correctamente implementadas.

El tema es que adapté las clases relacionadas con el 240 al 140, eso incluye la clase donde van insertadas las facturas, la cabecera del propio envío y hasta la clase a la que parseo la respuesta. Pues aún así y tras decenas de comprobaciones me devuelve un “Error 505” vamos que el servidor me manda a freír puñetas sin mirar tan siquiera el contenido del envío.

Supongo que detecta algo mal dentro de la propia solicitud pero de verdad que ya no sé que hacer, a mi juicio solo hay dos cosas que juegan un papel importante a la hora de ser rechazados por el servidor (¡Ojo! rechazados, ni siquiera devuelto con errores) una es el certificado y la otra es la información de la cabecera del envío.

CABECERA:
Lo único que cambié en la cabecera frente al 240 es el campo de "eus-bizkaia-n3-data" que tal y como indican en la documentación les he añadido el nombre y los apellidos.
(Creo que sobra decirlo pero en las pruebas uso datos reales)

Código:
request.Headers["Accept-Encoding"] = "gzip";
request.Headers["Content-Encoding"] = "gzip";
request.ContentType = "application/octet-stream";
request.Headers["eus-bizkaia-n3-version"] = "1.0";
request.Headers["eus-bizkaia-n3-content-type"] = "application/xml";
request.Headers["eus-bizkaia-n3-data"] = "{\"con\": \"LROE\", \"apa\": \"1.1\", \"inte\": {\"nif\": \"00000000N\",\"nrs\":\"Perico\",\"ap1\": \"De los\",\"ap2\": \"Palotes\"},\"drs\": {\"mode\": \"140\",\"ejer\": \"2021\"}}";
CERTIFICADO:
Preparaos que vienen curvas, probé con varios DNIs electrónicos, de autónomos y todo por si acaso fuera ese el error, solicité mi propio certificado de persona física y hasta con los certificados de pruebas que me han recomendado en éste foro, TODOS ME HAN DEVUELTO "Error 505"!!

Ando perdidísimo, no se si el error está en el certificado o he insertado en algún momento el correcto y hay algún otro dato mal, o si BATUZ me tiene manía... Ya no sé nada, al menos con el 240 el servidor me decía cosas como "El modelo está mal introducido" o "Faltan datos en tal sitio" pero ahora me rechazan cual leproso sin mirarme ni a la cara, ayuda, estoy a un par de envíos incorrectos de enviar un mensaje a batuz... pero de esos con la cara encapuchada y la voz distorsionada.
Responder Con Cita
  #1085  
Antiguo 15-07-2021
Avatar de thinkows
thinkows thinkows is offline
Miembro
 
Registrado: mar 2020
Ubicación: Sabadell
Posts: 70
Poder: 5
thinkows Va por buen camino
Cita:
Empezado por batuzail Ver Mensaje
Alguna función para calcular el CRC8 para VB6?


Gracias
La función ....


Function TicketSI_CRC8(Huella As String)

Dim crc As Byte
Dim CRCtable1() As Variant
Dim i As Integer
Dim Data() As Byte
Dim Longitud As Integer

Data = StrConv(Huella, vbFromUnicode)
Longitud = UBound(Data()) + 1


crc = 0
CRCtable1 = Array( _
&H0, &H7, &HE, &H9, &H1C, &H1B, &H12, &H15, &H38, &H3F, &H36, &H31, &H24, &H23, &H2A, &H2D, &H70, &H77, &H7E, &H79, &H6C, &H6B, &H62, &H65, &H48, &H4F, &H46, &H41, &H54, &H53, &H5A, &H5D, _
&HE0, &HE7, &HEE, &HE9, &HFC, &HFB, &HF2, &HF5, &HD8, &HDF, &HD6, &HD1, &HC4, &HC3, &HCA, &HCD, &H90, &H97, &H9E, &H99, &H8C, &H8B, &H82, &H85, &HA8, &HAF, &HA6, &HA1, &HB4, &HB3, &HBA, &HBD, _
&HC7, &HC0, &HC9, &HCE, &HDB, &HDC, &HD5, &HD2, &HFF, &HF8, &HF1, &HF6, &HE3, &HE4, &HED, &HEA, &HB7, &HB0, &HB9, &HBE, &HAB, &HAC, &HA5, &HA2, &H8F, &H88, &H81, &H86, &H93, &H94, &H9D, &H9A, _
&H27, &H20, &H29, &H2E, &H3B, &H3C, &H35, &H32, &H1F, &H18, &H11, &H16, &H3, &H4, &HD, &HA, &H57, &H50, &H59, &H5E, &H4B, &H4C, &H45, &H42, &H6F, &H68, &H61, &H66, &H73, &H74, &H7D, &H7A, _
&H89, &H8E, &H87, &H80, &H95, &H92, &H9B, &H9C, &HB1, &HB6, &HBF, &HB8, &HAD, &HAA, &HA3, &HA4, &HF9, &HFE, &HF7, &HF0, &HE5, &HE2, &HEB, &HEC, &HC1, &HC6, &HCF, &HC8, &HDD, &HDA, &HD3, &HD4, _
&H69, &H6E, &H67, &H60, &H75, &H72, &H7B, &H7C, &H51, &H56, &H5F, &H58, &H4D, &H4A, &H43, &H44, &H19, &H1E, &H17, &H10, &H5, &H2, &HB, &HC, &H21, &H26, &H2F, &H28, &H3D, &H3A, &H33, &H34, _
&H4E, &H49, &H40, &H47, &H52, &H55, &H5C, &H5B, &H76, &H71, &H78, &H7F, &H6A, &H6D, &H64, &H63, &H3E, &H39, &H30, &H37, &H22, &H25, &H2C, &H2B, &H6, &H1, &H8, &HF, &H1A, &H1D, &H14, &H13, _
&HAE, &HA9, &HA0, &HA7, &HB2, &HB5, &HBC, &HBB, &H96, &H91, &H98, &H9F, &H8A, &H8D, &H84, &H83, &HDE, &HD9, &HD0, &HD7, &HC2, &HC5, &HCC, &HCB, &HE6, &HE1, &HE8, &HEF, &HFA, &HFD, &HF4, &HF3 _
)

For i = 0 To Longitud - 1
crc = CRCtable1((crc Xor Data(i)) And &HFF)
Next

TicketSI_CRC8 = Format(crc And &HFF, "000")

End Function
Responder Con Cita
  #1086  
Antiguo 15-07-2021
Avatar de thinkows
thinkows thinkows is offline
Miembro
 
Registrado: mar 2020
Ubicación: Sabadell
Posts: 70
Poder: 5
thinkows Va por buen camino
D E L U J O

Cita:
Empezado por Galaxian Ver Mensaje
Las librerías Chilkat también tienen su propia clase REST. Aquí tiene un ejemplo en C++ que no debería costarte demasiado "trasplantarlo" a VB6:

NOTAS:
El JSON y el XML ya están creados y cargados en la variable string "jsn" y "xml" respectivamente.
El certificado en un objeto del tipo CkCert llamado "Certificado.
Para más claridad he quitado el control de errores.


Muy agradecido compañero!!!!
Responder Con Cita
  #1087  
Antiguo 15-07-2021
batuzail batuzail is offline
Miembro
 
Registrado: feb 2017
Posts: 57
Poder: 8
batuzail Va por buen camino
Cita:
Empezado por thinkows Ver Mensaje
La función ....


Function TicketSI_CRC8(Huella As String)

Dim crc As Byte
Dim CRCtable1() As Variant
Dim i As Integer
Dim Data() As Byte
Dim Longitud As Integer

Data = StrConv(Huella, vbFromUnicode)
Longitud = UBound(Data()) + 1


crc = 0
CRCtable1 = Array( _
&H0, &H7, &HE, &H9, &H1C, &H1B, &H12, &H15, &H38, &H3F, &H36, &H31, &H24, &H23, &H2A, &H2D, &H70, &H77, &H7E, &H79, &H6C, &H6B, &H62, &H65, &H48, &H4F, &H46, &H41, &H54, &H53, &H5A, &H5D, _
&HE0, &HE7, &HEE, &HE9, &HFC, &HFB, &HF2, &HF5, &HD8, &HDF, &HD6, &HD1, &HC4, &HC3, &HCA, &HCD, &H90, &H97, &H9E, &H99, &H8C, &H8B, &H82, &H85, &HA8, &HAF, &HA6, &HA1, &HB4, &HB3, &HBA, &HBD, _
&HC7, &HC0, &HC9, &HCE, &HDB, &HDC, &HD5, &HD2, &HFF, &HF8, &HF1, &HF6, &HE3, &HE4, &HED, &HEA, &HB7, &HB0, &HB9, &HBE, &HAB, &HAC, &HA5, &HA2, &H8F, &H88, &H81, &H86, &H93, &H94, &H9D, &H9A, _
&H27, &H20, &H29, &H2E, &H3B, &H3C, &H35, &H32, &H1F, &H18, &H11, &H16, &H3, &H4, &HD, &HA, &H57, &H50, &H59, &H5E, &H4B, &H4C, &H45, &H42, &H6F, &H68, &H61, &H66, &H73, &H74, &H7D, &H7A, _
&H89, &H8E, &H87, &H80, &H95, &H92, &H9B, &H9C, &HB1, &HB6, &HBF, &HB8, &HAD, &HAA, &HA3, &HA4, &HF9, &HFE, &HF7, &HF0, &HE5, &HE2, &HEB, &HEC, &HC1, &HC6, &HCF, &HC8, &HDD, &HDA, &HD3, &HD4, _
&H69, &H6E, &H67, &H60, &H75, &H72, &H7B, &H7C, &H51, &H56, &H5F, &H58, &H4D, &H4A, &H43, &H44, &H19, &H1E, &H17, &H10, &H5, &H2, &HB, &HC, &H21, &H26, &H2F, &H28, &H3D, &H3A, &H33, &H34, _
&H4E, &H49, &H40, &H47, &H52, &H55, &H5C, &H5B, &H76, &H71, &H78, &H7F, &H6A, &H6D, &H64, &H63, &H3E, &H39, &H30, &H37, &H22, &H25, &H2C, &H2B, &H6, &H1, &H8, &HF, &H1A, &H1D, &H14, &H13, _
&HAE, &HA9, &HA0, &HA7, &HB2, &HB5, &HBC, &HBB, &H96, &H91, &H98, &H9F, &H8A, &H8D, &H84, &H83, &HDE, &HD9, &HD0, &HD7, &HC2, &HC5, &HCC, &HCB, &HE6, &HE1, &HE8, &HEF, &HFA, &HFD, &HF4, &HF3 _
)

For i = 0 To Longitud - 1
crc = CRCtable1((crc Xor Data(i)) And &HFF)
Next

TicketSI_CRC8 = Format(crc And &HFF, "000")

End Function



Gracias , ya latenía casi hecha, estaba teniendo algún problema al intentar usar &HFFF,
Responder Con Cita
  #1088  
Antiguo 16-07-2021
rci rci is offline
Miembro
 
Registrado: nov 2020
Posts: 143
Poder: 4
rci Va por buen camino
Exclamation Nuevo servicio SUBSANAR en julio

Buenas, antes de irme de vacaciones e intentar olvidarme de ticketBAI hasta la vuelta, os comunico que desde Gipuzkoa me han contestado esto:


Cita:
Egun on, Buenos días

Para los casos en los que se requiera enviar la misma factura con modificaciones, está previsto que a lo largo de julio se publique la especificación de un servicio que servirá para este propósito, junto con la normativa que explicará en qué casos es admisible esta modificación.

Un saludo,
Saludos y muchas gracias a todos.


Que os vayan bien las vacaciones cuando las hagáis!

Última edición por rci fecha: 16-07-2021 a las 11:36:08. Razón: me confundí de agencia
Responder Con Cita
  #1089  
Antiguo 16-07-2021
ARPE1 ARPE1 is offline
Miembro
 
Registrado: nov 2012
Posts: 43
Poder: 0
ARPE1 Va por buen camino
Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Nosotros hemos tenido este error.
Es debido (al menos en nuetro caso) a problemas en la codificación.
Normalmente en el paso entre la firma del XML y el envío.

Revisad si el contenido de lo que habéis firmado (justo después de firmar) es lo mismo que estáis enviando. Sobre todo revisad si en la razón social o en alguno de las cadenas que enviáis hay caracteres extraños (con acentos, tildes,...).

A veces el resultado del envío lo grabamos en fichero o trabajamos con Streams y sin darnos cuenta la codificación cambia. Revisad entre UTF8, UTF8 BOM y ANSI.

Revisad por ejemplo si estáis utilizando Streams, que la clase TStream en la creación posee opciones de codificación.

Al final nosotros acabamos comparando el contenido en cada paso (Editor Hexadecimal) y nos dimos cuenta de que el character Ó (de la razón social) al realizar la firma con los SBB se estaba cambiando (cofidicación implícita).

NOTA: Ahora estoy probando con esta empresa... .
Hola, estamos intentando enviar el fichero a Guipúzcoa y no hay manera. La factura la graba en el sistema, ya que si volvemos a enviar el mismo fichero nos devuelve que ya está registrada. Pero la primera vez nos retorna error con el siguiente mensaje: "El mensaje ha sido modificado en tránsito o la firma no está bien realizada -- Reference URI="" failed to verify. [src/xml2signatureobj.cpp(315)] - (10606)"
Toda la pinta tiene que es por lo que indicas arriba ya que si enviamos el mismo fichero con la aplicación SOAPUI todo es correcto. Usamos los componentes INDY (versión 10.6) que trae delphi (versión 10.2) para hacer el envío. Al final ¿con qué componentes o de qué manera haces el envío para que no modifique el fichero en el proceso?

Gracias de antemano
Responder Con Cita
  #1090  
Antiguo 16-07-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por ARPE1 Ver Mensaje
¿con qué componentes o de qué manera haces el envío para que no modifique el fichero en el proceso?
Aunque el mensaje diga eso, no te fies, no es que los componentes modifiquen el fichero en el envío.
Lo normal es que en algún punto del proceso, desde que generamos el fichero y lo firmamos, hasta que lo enviamos, sin querer estamos modficando la codificación.
A veces simplemente es al usar TStreams o grabar en disco y recuperar.

Revisad los pasos que estáis haciendo desde la firma hasta el envío y si en algún punto la codificación cambia, no porque lo hagáis expresamente, sino porque se esté haciendo sin daros cuenta.

En cuanto a los envíos en los mensajes del foro puedes ver que hay varios componentes que se están utilizando. En este mensaje tienes (en la parte inferior) un resumen de los diferentes componenetes que se usa para enviar:
https://www.clubdelphi.com/foros/sho...&postcount=436

* Opcion1: TNetHTTPClient
* Opción2: TRESTClient + TRESTRequest + TRESTResponse
* Opcion3: TsbxHTTPClient (SecureBlackBox)
* Opción4: Utilizando commandos CURL
* Opción5: Utilizando las Indy + OpenSSL
* ...
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.

Última edición por Neftali [Germán.Estévez] fecha: 16-07-2021 a las 11:51:10.
Responder Con Cita
  #1091  
Antiguo 16-07-2021
skatologiko skatologiko is offline
Miembro
 
Registrado: jul 2021
Posts: 27
Poder: 0
skatologiko Va por buen camino
¿Alguien puede poner un ejemplo de algún archivo XML de anulación?
Responder Con Cita
  #1092  
Antiguo 16-07-2021
ARPE1 ARPE1 is offline
Miembro
 
Registrado: nov 2012
Posts: 43
Poder: 0
ARPE1 Va por buen camino
¡Qué rapidez! Gracias.

Cita:
Empezado por Neftali [Germán.Estévez] Ver Mensaje
Lo normal es que en algún punto del proceso, desde que generamos el fichero y lo firmamos, hasta que lo enviamos, sin querer estamos modficando la codificación.
A veces simplemente es al usar TStreams o grabar en disco y recuperar.

Revisad los pasos que estáis haciendo desde la firma hasta el envío y si en algún punto la codificación cambia, no porque lo hagáis expresamente, sino porque se esté haciendo sin daros cuenta.
Hemos probado a enviar el fichero firmado generado directamente con funciones como:
Código Delphi [-]
IdHTTP1.Post(URL, SourceFile, ResponseStream);
o esta
Código Delphi [-]
sbxHTTPClient1.PostFile(URL, FileName);

En teoría así evitamos lo que comentas de cambio de codificaciones al cargar el fichero con Streams y compañía. El resultado es el mismo. Lo sorprendente es que si ese fichero lo enviamos con el programa SoapUI lo acepta sin problemas. Hemos "intentado" crear un LOG con los datos que se envían y comparado byte a byte con el nuestro y son idénticos.

Cita:
En cuanto a los envíos en los mensajes del foro puedes ver que hay varios componentes que se están utilizando. En este mensaje tienes (en la parte inferior) un resumen de los diferentes componenetes que se usa para enviar:
https://www.clubdelphi.com/foros/sho...&postcount=436
Hemos probado todas las opciones y no hay manera, cada una nos falla en un punto diferente. Con la que más hemos conseguido es con las INDY del propio Delphi.

Gracias de nuevo de antemano.
Responder Con Cita
  #1093  
Antiguo 16-07-2021
Avatar de b4aronDeLaBirr4
b4aronDeLaBirr4 b4aronDeLaBirr4 is offline
Miembro
 
Registrado: jul 2021
Posts: 67
Poder: 3
b4aronDeLaBirr4 Va por buen camino
Al no haber empezado con Batuz pues lo único que pruebes con el "sello_entidad_act.p12" de desarrollo de Izenpe (link) porque no te puedo ayudar con mucho más sorry...
Responder Con Cita
  #1094  
Antiguo 16-07-2021
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 128
Poder: 4
tejano Va por buen camino
Cita:
Empezado por skatologiko Ver Mensaje
¿Alguien puede poner un ejemplo de algún archivo XML de anulación?
Es un proceso algo similar a la emisión, crear la cabecera, codificar el xml del archivo ticketbai de la emisión en base 64, comprimirlo en gz y enviar la anulación.
Responder Con Cita
  #1095  
Antiguo 16-07-2021
sEngine sEngine is offline
Miembro
 
Registrado: jul 2021
Posts: 53
Poder: 3
sEngine Va por buen camino
Asegurate de enviarlo asi



Código Delphi [-]
idhttp1.Request.ContentType := 'application/xml; charset=utf-8"';


Cita:
Empezado por ARPE1 Ver Mensaje
¡Qué rapidez! Gracias.


Hemos probado a enviar el fichero firmado generado directamente con funciones como:
Código Delphi [-]IdHTTP1.Post(URL, SourceFile, ResponseStream);

o esta
Código Delphi [-]sbxHTTPClient1.PostFile(URL, FileName);


En teoría así evitamos lo que comentas de cambio de codificaciones al cargar el fichero con Streams y compañía. El resultado es el mismo. Lo sorprendente es que si ese fichero lo enviamos con el programa SoapUI lo acepta sin problemas. Hemos "intentado" crear un LOG con los datos que se envían y comparado byte a byte con el nuestro y son idénticos.


Hemos probado todas las opciones y no hay manera, cada una nos falla en un punto diferente. Con la que más hemos conseguido es con las INDY del propio Delphi.

Gracias de nuevo de antemano.
Responder Con Cita
  #1096  
Antiguo 16-07-2021
tejano tejano is offline
Miembro
 
Registrado: dic 2020
Posts: 128
Poder: 4
tejano Va por buen camino
Cita:
Empezado por tejano Ver Mensaje
Es un proceso algo similar a la emisión, crear la cabecera, codificar el xml del archivo ticketbai de la emisión en base 64, comprimirlo en gz y enviar la anulación.
Perdona, se me olvidaba el fichero de anulación, esta firmado, hay que firmarlo al igual que el de la emisión.
Archivos Adjuntos
Tipo de Archivo: rar Ejemplo_Anulacion_TicketBAI_79732487C_A2022_0399.rar (4,4 KB, 16 visitas)
Responder Con Cita
  #1097  
Antiguo 16-07-2021
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.275
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por skatologiko Ver Mensaje
¿Alguien puede poner un ejemplo de algún archivo XML de anulación?

En los ejemplos de Batuz creo que tienes varios XML de anulación. Los ficheros enviados y las diferentes respuestas, tanto para TicketBAI como para Batuz.
https://www.batuz.eus/fitxategiak/Ba...os/Ejemplos.7z
Archivos Adjuntos
Tipo de Archivo: zip Ejemplos anulaciones TBi-BATUZ.zip (28,4 KB, 21 visitas)
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #1098  
Antiguo 16-07-2021
ARPE1 ARPE1 is offline
Miembro
 
Registrado: nov 2012
Posts: 43
Poder: 0
ARPE1 Va por buen camino
Sí, así lo tenemos pero no hay manera.

Código Delphi [-]
   ... 
    wXML := 'prueba.xsig';
    wURL := 'https://tbai-prep.egoitza.gipuzkoa.eus/WAS/HACI/HTBRecepcionFacturasWEB/rest/recepcionFacturas/alta';
    idhttp1.Request.ContentType := 'application/xml; charset=utf-8';
    IdHTTP1.Request.BasicAuthentication := False;
    wCer := 'CERT_TEST.pfx';
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.CertFile := wCer;
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.KeyFile  := wCer;

    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Mode   := sslmClient;
    IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvTLSv1_2; // sslvSSLv23; //sslvTLSv1_1;
    wML.Position := 0;
    Try
      IdHTTP1.Post(wURL, wXML, wMR);
      wMR.Position := 0;
      memo1.Lines.LoadFromStream(wMR, TEncoding.UTF8);
      label1.Caption := IntToStr(IdHTTP1.Response.ResponseCode) + ': ' + IdHTTP1.Response.ResponseText;
    Except
      On E:Exception do
        memo1.Lines.Add(E.Message);
    End;

Gracias por la respuesta.
Responder Con Cita
  #1099  
Antiguo 19-07-2021
batuzail batuzail is offline
Miembro
 
Registrado: feb 2017
Posts: 57
Poder: 8
batuzail Va por buen camino
Cita:
Empezado por ARPE1 Ver Mensaje
Sí, así lo tenemos pero no hay manera.

Código Delphi [-] ... wXML := 'prueba.xsig'; wURL := 'https://tbai-prep.egoitza.gipuzkoa.eus/WAS/HACI/HTBRecepcionFacturasWEB/rest/recepcionFacturas/alta'; idhttp1.Request.ContentType := 'application/xml; charset=utf-8'; IdHTTP1.Request.BasicAuthentication := False; wCer := 'CERT_TEST.pfx'; IdSSLIOHandlerSocketOpenSSL1.SSLOptions.CertFile := wCer; IdSSLIOHandlerSocketOpenSSL1.SSLOptions.KeyFile := wCer; IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Mode := sslmClient; IdSSLIOHandlerSocketOpenSSL1.SSLOptions.Method := sslvTLSv1_2; // sslvSSLv23; //sslvTLSv1_1; wML.Position := 0; Try IdHTTP1.Post(wURL, wXML, wMR); wMR.Position := 0; memo1.Lines.LoadFromStream(wMR, TEncoding.UTF8); label1.Caption := IntToStr(IdHTTP1.Response.ResponseCode) + ': ' + IdHTTP1.Response.ResponseText; Except On E:Exception do memo1.Lines.Add(E.Message); End;


Gracias por la respuesta.
Hola, a mi me pasaba lo mismo me volví loco con la codificación utf-8, al final el problema era que el nombre del cliente tenía un acento, limpia de carácteres un poco raros todos los strings y prueba, yo tras hacer eso puedo enviar sin problema.


Suerte
Responder Con Cita
  #1100  
Antiguo 19-07-2021
ARPE1 ARPE1 is offline
Miembro
 
Registrado: nov 2012
Posts: 43
Poder: 0
ARPE1 Va por buen camino
Hola, ya hemos revisado eso también y efectivamente el acento lo tiene la propia firma ("CN=AC Representación") y no somos capaces de quitarlo ya que si lo hacemos entonces salta que el certificado ha sido modificado. Lo hemos intentado limpiar en el evento OnFormatText del componente TElXMLSigner de SecureBlackBox, sin resultado. De hecho por eso empezamos esta pregunta citando el caso de Neftali ya que no solo lo resolvió si no que está probando con una empresa llamada "áéíóúÁÉÍÓÚÜçÇñÑ€~#@". ¡Tela!

Un saludo y gracias por las respuestas.
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 3547 Hace 1 Semana 18:06: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 22:16:27.


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