![]() |
la DLL ya esta modificada
No se cuantos estais utilizando el componente pero este fin de semana publicare la version 2. Ya no hara falta el registro anterior, y habra que incluir el registroInicial con el primer encadenamiento del envio. agradecer a los usuarios que me informaron del funcionamiento del encadenamiento, con ese conocimiento aportado he modificado el componente. Ya detallare mas los cambios una vez se publique. slds ! |
Buenos días. Por favor tengo a raíz de los últimos post una pequeña duda y que pensaba que lo tenía claro.
Entonces, si la AEAT me rechaza una factura ya que contiene errores, en la AEAT está claro que no está, pero yo en el registro del SIF ya tengo uno como incorrecto/rechazado por el motivo que sea un registro. Ahora bien, ¿Rectifico los errores en la factura (importes,nif, motivos exención,etc... -cualquier dato-) o se debe generar una nueva con los errores corregidos? ¿En el registro SIF dejo el registro de error tal cual para siempre generando un nuevo registro como subsanación por rechazo previo e inexistente en la AEAT y que iria encadenado con el registro SIF que provocó el rechazo? Entiendo que se rectifica la factura y se genera un nuevo registro en el SIF con los datos correctos y encadenado al registro SIF erróneo. ¿Estoy en lo cierto? ¿Si ha sido aceptada con errores el procedimiento sería el mismo tanto en la factura como en el registro SIF? Un saludo, |
Cita:
El encadenamiento recuerda que se hace con el ultimo registro de factuacion generado. De tal forma que si antes del rechazo habias generado otro se encadena a ese ultimo y no al rechazado. |
Cita:
Cita:
|
Cita:
Cita:
|
Cita:
|
Cita:
|
Si me da que estamos pensando lo mismo solo que hemos interpretado mal las palabras, el dogma es: se encadena al ultimo RF que hayas generado, pensaba que te referías a que se encadena al último RF aceptado que tuvieras. Me ha liado la palabra "antes".
|
Me da la sensación que hay mucha confusión con el tema de encadenamientos.
Hay que saber diferenciar entre Registro de Facturación y Facturación. El registro de facturación es el que almacena el encadenamiento y las huellas y es el SIF el que debe encargarse de almacenar este registro de facturación. Este registro de facturación tendrá un registro encadenado por cada una de las operaciones que enviamos a VeriFactu, independientemente de que estas hayan sido aceptadas, aceptadas con error, o rechazadas. El encadenamiento no ha de tener en cuenta la respuesta recibida por VeriFactu (al menos no en lo relativo al encadenamiento y huellas previas), así que todos los registros irán inmediatamente enlazados a su registro anterior sin tener en cuenta su aceptación o no en la AEAT. Por otro lado, tenemos la facturación. Hay que saber distinguir los casos en los que una factura no ha llegado bien a VeriFactu o ha llegado pero con errores, o directamente, es errónea. Si haces una subsanación de un registro NO ACEPTADO (el caso de un NIF incorrecto, por ejemplo) FLAGS: Subsanacion = S RechazoPrevio = X Si haces una subsanación de un registro Aceptado o Aceptado con Errores: FLAGS: Subsanacion = S RechazoPrevio = N En este último caso (Verifactu tiene los registros aceptados o aceptados con errores), el registro de facturación tendrá el mismo número de factura a subsanar cuando NO estemos obligados a generar una factura rectificativa. En caso de que sea necesaria una factura rectificativa, sí que llevaría el número de factura nuevo con la serie de rectificativas y la nueva numeración pertinente. |
Buenas noches
Ya esta enviada para publicacion la nueva version del componente la 2.0: Cita:
|
Cita:
|
La versión 2 del proyecto ya está subida al FTP del club.
Se adjunta el fichero RAR y un pequeño fichero TXT descriptivo de la versión, con el enlace al mensaje y los créditos. Un saludo. |
Cita:
Tengo una nueva oportunidad "Gracias a vosotros" sin lugar a ninguna duda. |
Muchas gracias por tu trabajo y compartirlo de esta manera con la comunidad delphi,
A mi personalmente me ayudó mucho tu demo, pues no había usado SOAP nunca antes... |
Aunque no utilizo el componente, vi tu primera demo, y la verdad es que me instruyo bastante, te lo agradeci en su momento y te lo vuelvo a agradecer, eres un maquina!!!!
|
Yo me empezaré a poner en "serio" con este componente a partir de ahora que ya he conseguido finalizar otras cosas que tenía pendientes.
La verdad es que es de agradecer el curro que os habéis pegado para preparar esta demo y esta dll. Que nos va a servir a muchos como punto de partida para aprender muchas cosas. Lo primero que voy a intentar entender es como poder aplicar esta dll a todas las variantes que se me pueden dar con mis clientes. Clientes que tienen un servidor y las tiendas se conectan por escritorio remoto, que cada tienda va a generar sus tickets con una numeración independiente y que la numeración de las facturas en unos casos las van a compartir y en otros casos van a tener diferentes series por delegación, etc. Gracias de nuevo y voy leerme el hilo desde el principio para intentar entender lo más posible todo tu planteamiento. Un saludo. |
Muchas gracias. A más de uno nos has salvado la vida.
|
Buenos días
En la operaciones de baja / Anulación y teniendo en cuenta el nuevo dato sinRegistroPrevio en el registro de factura, ¿El siguiente código sería correcto?
Ya que en el registro de anulación el dato RechazoPrevio está contemplado con el siguiente texto: Cita:
Un saludo, |
Cita:
|
Cita:
Estoy trabajando con Delphi 2007 y acabo de modificar el código de la DEMO_D7_DLL2 y la Validación del NIF para que lo haga utilizando un certificado en fichero .p12 y con contraseña (en lugar de un certificado instalado en el sistema y seleccionado mediante el combo) y me ha hecho la validación correctamente. Genial!!!. Muchas gracias!!! |
Otro más que aterriza por aquí.
Me he enterado tarde de este proyecto que puede ser un "salva vidas" literal para mucha gente, entre los que me incluyo. Cuanto tiempo me habría ahorrado si me hubiese enterado antes.. Mil gracias a seccion_31!!!! Estoy analizando todo. Pero al intentar la demo, no hace nada, compila sin errores, pero no muestra formulario. Se cierra automáticamente. Estoy haciendo algo mal?. Evidentemente se me escapa algo, pq al resto de la gente le funciona. Versión Delphi 10.1 y 11.3 Gracias, |
Cita:
Ponlo a true |
Cita:
que horror, se debio quedar a false en algun momento y como en D7 se abre sin problema ni cuenta me di. gracias por todos los apoyos, y gracias a los que habeis contribuido, porque hemos pasado por varias fases: al principio era un servidor de mensajes, que luego gracias a darkdudae y su aviso, paso a ser DLL, que parece mas profesional a los usuarios del foro que han contribuido para aislar el xml del registro y poder archivarlo, cosa que no tenia ni idea y finalmente el tema de comprender el encadenamiento que estaba muy equivocado. fallos, no se si saldran muchos mas, ahora, tampoco se si falta alguna caracteristica clave como las dos ultimas mencionadas arriba. Un saludo a todos, y me alegro de que este sirviendo para su fin. |
Cita:
Pido a los moderadores, que sólo dejen uno. Gracias Respecto a visible = false en el form principal, sí, ya lo había visto y por supuesto lo he puesto a true, pero sigue exactamente igual. Y como digo lo he probado con 2 versiones diferentes de Delphi. Evidentemente, asumo que es un error de mi equipo, pero no tengo ni idea de qué puede ser, porque desarrollo en este equipo sin ningún problema desde hace varios años. Reitero mi agradecimiento a seccion_31 y a todos los que habéis contribuido en este proyecto y desde ahora en lo que pueda, intentaré ayudar igualmente. |
Cita:
|
Cita:
En principio la DLL y el componente se puede usar desde cualquier versión. De delphi. Si vas a usar la DLL puedes ver la llamada desde el.componente. También podrías usar la unidad de funciones sin su encapsulado de DLL llamando sin más a su unidad |
Hola buenos días.
¿Teneis algún mecanismo para que antes de realizar un envío comprobar si el servicio de la AEAT se encuentra activo o no?. creo que VeriFactuD7.final( LogFile ) No me está creando el fichero log Un saludo, |
Cita:
|
Cita:
|
Cita:
gracias por informar con el tema del log. |
Cita:
Incluso habia pensado hacer una función de ese tipo, a ver si hay otra forma... Con otro tema: Pensé en validar el.vies y está la función dentro, pero no me válida casi nunca y lo dejé por imposible. Slds,! |
Voy de momento a usar esta función con la URL del Endpoint de la AEAT
Con un elemento visual en verde si está activo y en rojo si NO está activo en el statusBar. Esto en el hilo principal de la aplicación y si al ir a remitir facturas a la señora AEAT si está inactivo que ni lo intente. Ya que en estos momentos está caido lo tengo a modo de pruebas |
Cita:
Slds ! |
verificar que la AEAT esta ahi.
He usado el codigo de ramherfer con algun cambio para que me funcionara, y hoy da como activa la web de la aeat cuando tiene un error, el tipico del fin de semana: Cita:
Por lo que creo que es mejor incorporar una consulta, la mas simple, de un día determinado, por ejemplo del día siguiente. (no se si dejara). Otro tema es la frecuencia de revision planteada. Saludos ! Nota: ya esta incpororada la funcion, para ello consulta una factura, llamada PING en el periodo y fecha actuales con el certificado de la sesion. Es inmediato y seguro. |
Buenas session_31.
Yo lo que hago en tu componente es lo que dices, una consulta inexstente y listo.
|
si, creo que la consulta inexistente es lo mejor.
ahora se reducira a: Código:
VeriFactuD7.Certificado :=comboCertificados.text;y si tienes el certificado ya cargado mucho menos codigo. Sin iniciar sesion. Ya esta incluido el ejemplo en la Demo Y la publicare la semana del 31 ; ) como version 2.1 con los cambios que vayan apareciendo. Saludos ! : ) y buenas tardes |
en el proceso siguiente:
Creo que resultado.Fecha+' '+resultado.Hora estan cambiados. ya que devuelve 11:59:10 25/03/2025 |
Ya esta corregido !
gracias por el aviso. Por cierto starlet ¿has podido probar la demo? slds ! Cita:
|
parece que han cambiado esto en la normativa: desde el 18 de marzo:
Cita:
Cita:
Asi que he probado a intentar subir una factura usando la demoD7 con REQ y me la ha rechazado: Incorrecto 1279 Si el impuesto es IVA(01) o vacio, solo se podrá informar TIPORECARGOEQUIVALENCIA y CUOTARECARGOEQUIVALENCIA si la clave de régimen es 18. Este sera otro cambio que llevara la version 2.1 Si alguien quiere comentarlo.... Saludos ! |
Cita:
Si la factura lleva Recago de Equivalencia la ClaveRegimen tiene que ser 18, y aclaro, si la emite es por que puede hacerlo con recargo. Si esta en Recargo de Equivalencia el OT no puede emitir facturas con RE, por lo tanto sera la clave 01 u otra. |
| La franja horaria es GMT +2. Ahora son las 22:46:31. |
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