![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#21
|
||||
|
||||
Cita:
Edito: Estoy pensando e igual suelto una tontería.... ¿hay forma de asignarle un fichero XML con unas características determinadas a la variable ARegistroLRFacturasEmitidas?
__________________
Be water my friend. Última edición por newtron fecha: 19-12-2016 a las 12:39:20. |
#22
|
||||
|
||||
Hola Newtron,
según la documentación que aportas, el "idFactura" del "RegistroLRFacturasEmitidas" debe ser : IDEmisorFactura: (NIF) NIF asociado al emisor de la factura. FormatoNIF(9) NumSerieFacturaEmisor: Número+Serie que identifica a la factura emitida. Alfanumérico(60) NumSerieFacturaEmisorResumenFin: Número+serie que identifica a la ultima factura cuando el Tipo de Factura es un asiento resumen de facturas. Alfanumérico(60) FechaExpedicionFacturaEmisor:Fecha de expedición de la factura. Fecha(dd-mm-yyyy) ( página 55 de la documentación) Por lo que he leido, hay que montar un xml con los formatos que te ponen. Una vez lo tengas montado, haces la conexión y en la función de llamada lo metes como parámetro. Luedo te da la respuesta. Según lo que he entendido, es como montar un cuaderno bancario de cobros y pagos ( el 19 suele ser el más habitual ), pero en vez de usar un fichero de texto, utilizar el xml con el formato que te ponen en la documentación. El arte es ir montando el código para que coja tus datos de la aplicación, monte el xml, y haga la conexión a la agencia. Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
#23
|
||||
|
||||
Cita:
Saludos
__________________
Be water my friend. |
#24
|
|||
|
|||
Hola foro, aqui el codigo de llamada un poco mas desarrollado:
Este código compila sin problemas, pero los parámetros hay que ver en la propia documentación a que corresponden y cuales son opcionales u obligatorios. Las partes de información de facturación desabilitadas pueden a su vez ser mas classes con mas propiedades. Un Saludo |
#25
|
||||
|
||||
newtron,
no tengo código, simplemente me llamó la atención la pregunta y he leido los links que pusiste. No me dedico a ésto. el chiste es montar los xml con los formatos que te dan ( en la propia documentación te muestran esquemáticamente cómo quedaría el árbol del xml, y luego hacer la llamada a la superfunción que hace todo.
todas las clases las tienes definidas en la unidad SuministroInmediatoInfo.pas En este caso SuministroLRFacturasEmitidas para la llamada y RespuestaLRFacturasEmitidas para la respuesta.
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
#26
|
||||
|
||||
Cita:
Tal y como está en el documento que han adjuntado más arriba...
Y el tipo IDFacturaExpedidaType está definido tal que así:
Es un comentario.
__________________
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. |
#27
|
||||
|
||||
Bucanero, fjcg02, Neftali, gracias por vuestros comentarios.
Estoy probando el nuevo código de Bucanero y, en la primera línea
me da un error "Access Violation". Sigo probando. Saludos
__________________
Be water my friend. |
#28
|
|||
|
|||
como ha comentado Neftali, son objetos de tipo class(TRemotable), y necesitas crearlos antes de llamar a sus elementos, yo suelo añadir en la propia clase la funcion create al propio objeto con la propiedad override, para dejar el código mas limpio,
Este codigo, salvo la llamada, que no quiero hacerla por que los datos introducidos no son validos, no da access Violation |
#29
|
||||
|
||||
Se trata de hacerlo en orden inverso.
Ir creando los objetos a medidas que los vas necesitando....
Se me han adelantado...
__________________
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. |
#30
|
||||
|
||||
Bucanero, Neftali, gracias por vuestra respuesta.
Efectivamente ya no da errores. Como yo soy más lanzado no he tenido problemas en hacer la llamada "a ver qué pasa", y en principio me decía: Invalid url 'xxxxxxxxx' Echando un vistazo al código veo que esa url está informada en este trozo de código:
En principio he pensado que habría que sustituir 'xxxxxxxxxxxx' por alguna url válida y he mirado en la documentación algo relacionado con esto pero no he encontrado nada. Luego me he dado cuenta de que dependiendo del parámetro "UseWSDL" si está en True o False coge la constante defWSDL o defURL así que he cambiado el valor a true de la definición de la función
con lo cual ahora coge el valor de defWSDL y hace correctamente la llamada (parece) pero, claro, ahora me dice que se requiere un certificado para completar la autenticación del cliente. Yo tengo un certificado instalado pero imagino que esto no se entera. ¿Hay alguna forma de informar del certificado? Saludos Edito: También he cambiado el valor de defPrt = 'SuministroFacturas' a 'SuministroFacturasPruebas' para hacer las pruebas.
__________________
Be water my friend. Última edición por newtron fecha: 19-12-2016 a las 17:44:38. |
#31
|
||||
|
||||
Hola a tod@s y Feliz Año.
¿Hay algún avance sobre este tema? Lo que quedaba era poder hacer la llamada informando de alguna manera del certificado digital con el que se hace la llamada. Saludos
__________________
Be water my friend. |
#32
|
||||
|
||||
He encontrado este enlace en el que se ve un ejemplo de llamada incluyendo un certificado usando CAPICOM.
Si alguien le quiere echar un vistazo yo seguiré haciendo pruebas a ver si resuelvo algo. Saludos
__________________
Be water my friend. |
#33
|
|||
|
|||
Un usuario de esa página dice que no funciona en Delphi, alguno lo ha probado?
|
#34
|
|||
|
|||
SuministroLRFactirasEmitidasRequest
Saludos, estoy tratando de enviar una factura emitida pero al llamar a la función:
GetsiiSOAP.SuministroLRFacturasEmitidas Me pide como parámetro un objeto del tipo SuministroLRFacturasEmitidasRequest. He creado uno pasándole como parámetro ASuministroLRFacturasEmitidas en el constructor de FacturasEmitidasRequest, pero a la hora de hacer la llamada a la función SuministroLRFacturasEmitidas, me retorna error al generar el documento XML: Error al serializar el cuerpo del mensaje SuministroLRFacturasEmitidasRequest: 'Error al generar el documento XML.'. Alguna sugerencia o ayuda? |
#35
|
||||
|
||||
Cita:
De una forma o de otra ahora mismo el asunto está bloqueado a falta de saber cómo hacer la llamada usando un certificado digital instalado en el ordenador. Saludos
__________________
Be water my friend. |
#36
|
|||
|
|||
Sí, lo probé y obtengo como bien comentas error con el certificado digital. También estoy haciendo un por en C# del código, por lo que se agradecen todos vuestros comentarios y ayuda.
|
#37
|
|||
|
|||
Información AEAT
Os adjunto el mensaje que me ha enviado la AEAT ante la pregunta de cómo obtener un certificado de pruebas o usar un certificado digital existente para el envío de Facturas Emitidas, Facturas Recibidas y Pago Recibidas:
No existe certificado de pruebas. La presentación podrá ser efectuada por el obligado tributario, un apoderado suyo a este trámite ó un colaborador social, que deberá disponer de un certificado electrónico reconocido. Por tanto, el uso de los servicios requiere tener instalado un certificado electrónico reconocido admitido por la Agencia Tributaria, en el ordenador desde el que se produzca el envío de la información. Dicho certificado podrá ser de Persona Física ó de Persona Jurídica. Todos los NIFs se tienen que validar contra la Base de Datos Centralizada de la AEAT. No se debe firmar el envío. No hay que inscribir el certificado en ningún censo. Consulte la ayuda para la obtención del certificado electrónico Atentamente, AEAT Si alguien consigue mandar una factura por favor que me ayude, porque yo sólo obtengo error 403: Error de identificación. No se detecta certificado digital o no se ha seleccionado correctamente. Aún cuando añado un certificado al objeto siiSoap. |
#38
|
||||
|
||||
La AEAT no te va a ayudar en gran cosa en este asunto, como bien te dicen tienes que tener instalado un certificado digital válido para poder hacer la llamada.
Yo creo que la "madre del cordero" está en manejar el evento "OnBeforePost" del componente "THTTPRIO" para asignar el certificado digital correspondiente tal y como aparece en el link de ejemplo que he puesto. Yo lo que todavía no veo claro es la unidad "SignCertificate" que aparece en el ejemplo que no he sido todavía capaz de encontrar la forma de instalar o sustituir por otra similar. Saludos
__________________
Be water my friend. |
#39
|
||||
|
||||
Amig@s.
Un antiguo usuario del foro (que por lo visto ya no tiene la cuenta activa por no haberla usado en muuuuuuuuuucho tiempo), después de leer este hilo, ha tenido el detalle de ponerse en contacto conmigo por mail para echarme una mano y adaptar el proyecto de ejemplo que estamos intentando sacar adelante para resolver el tema del Suministro Inmediato de Información (SII) de la AEAT, cosa que todos tendremos que agradecerle. Ahora, tengo dos noticias, una buena y otra mala. La buena es que adjunto el proyecto con las modificaciones necesarias para, antes de hacer la llamada al webservice, asignar el certificado con el que se va a hacer la misma. La mala es que el proyecto está en la versión Berlín de Delphi, imagino que funcionará a partir de las versiones XE... en adelante pero no he conseguido de forma fácil encontrar las unidades similares (si es que las hay) para Delphi 2007 por ejemplo. Espero que con esto podamos seguir adelante con la tarea de conseguir efectuar la llamada al dichoso webservice. Saludos.
__________________
Be water my friend. |
#40
|
||||
|
||||
![]() Hola A todos! Lo primero decir que me produce cierta alegría encontrar gente en este mundo que se esta pegando también con el nuevo sistema inmediato de información del AEAT desde delphi. Creía que era el único es este mundo.
![]() Yo no voy tan adelantando como vosotros, estoy en el punto de generar los ficheros xml para mandar a la Aeat. En la información de la AEAT hay dos ficheros XSD SuministroInformacion.xsd y SuministroLR.xsd, cada uno con la definicion de dos namespace. Pero luego hay que generar un único fichero xml con los dos namespaces dentro. Mi pregunta es como puedo generar un unico fichero xml, ya que el xml data binding sólo me deja generar el fichero de uno en uno. Un Saludo y gracias y procurare aportar lo que pueda. |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
TICKET BAI (TicketBAI); Nuevo sistema de la Agencia Tributaria del Pais Vasco | keys | Internet | 4170 | Hace 1 Semana 17:29:05 |
AEAT envio de datos vía Webservice problemas con WSDL | CelsoO | Internet | 11 | 09-10-2019 20:03:41 |
webService Soap de la Administración Digital Española notific@ | apicito | Internet | 3 | 31-01-2017 11:25:28 |
Error en Webservice funcion envio de sms | webmasterplc | Delphi para la web | 5 | 25-07-2013 20:10:29 |
Problemas con envío de XML a un WebService | davidvamo | Internet | 1 | 13-02-2007 15:49:20 |
![]() |
|