Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Envío de registros y sus respuestas (https://www.clubdelphi.com/foros/forumdisplay.php?f=66)
-   -   Qué guardar en Base de datos (https://www.clubdelphi.com/foros/showthread.php?t=97629)

_Io 12-08-2025 16:19:45

Qué guardar en Base de datos
 
Hola, buenas tardes.

¿Qué información guardáis en Bd, una vez enviado los registros de facturación?

Yo tenía pensado guardar la contestación de la aeat y actualizar el registro de la factura en consecuencia,
pero no sé, si también haría falta los Registros de facturación enviados

¿Guardáis también el registro de facturación que se envía ?

Muchas Gracias.

YellowStone 12-08-2025 16:57:46

Pues al menos, nosotros guardamos estos, en una tabla específica de registros de facturación, no de facturas.:

identificador de registro (único, autogenerado)
tipo de registro (alta o anulación)
identificador de la factura (puede repetirse)
Todos los datos que participan en la creación de la huella del registro, incluido la huella del registro anterior.
huella del registro
url del código QR
todos los campos posibles que vengan en la respuesta de la AEAT.

y otros que no vienen al caso, pero que también guardo.

_Io 12-08-2025 20:14:49

Hola.

Muchas gracias por tu respuesta.

En un principio, sólo guardaba la respuesta de la aeat, pero tenía mis dudas si con eso sólo valdría.
Guardaré el registro que envío, creo que tendré que hacer uso de tablas relacionadas, para el desglose, facturas rectificadas/sustituidas y destinatarios.

Saludos !!!!!

Jarogo08 13-08-2025 08:37:33

Cita:

Empezado por _Io (Mensaje 567027)
¿Qué información guardáis en Bd, una vez enviado los registros de facturación?

¿Guardáis también el registro de facturación que se envía?

Guardaré el registro que envío


Supongo que tendrás una tabla de registros de facturación, que son los que tienes que enviar. Si a esa tabla le creas un estado "Pendiente/Enviado" y cuando lo envías le actualizas el estado ya no tienes que guardar nada a mayores. Puedes crearle también otro campo respuesta donde guardas "Correcto/Incorrecto/Aceptado con errores" y otros campos "Codigo y descripción del error", donde guardas el error por el que el envío no fue correcto.

Si añades estos 4 campos a tu tabla de registros de facturación creo que quedará bien

Saludos

CarlosArjonomia 13-08-2025 08:44:38

Yo guardo todos los datos relacionados con la transacción. Y además como son aplicaciones escritorio me los envío a una API para que estén en mi poder pase lo que pase.

emailesc 14-08-2025 10:49:32

Nosotros guardamos TODO (solo hacemos Verifactu), datos de factura, XML's generados, sin firmar y firmados, logs, respuestas, CSV's, QR's, tratamiento de los errores... en Base de datos local (y en local también los archivos físicos) y con copia en nuestros servidores. Y porque no se nos ha ocurrido nada más que guardar, sino también. Solo faltaría que alguien te diga algo y no tengas documentación a la que agarrarte...

_Io 15-08-2025 09:10:50

Buenos días.

Muchas gracias a todos.
Me habéis dados unas cuantas ideas que las implementará, aunque me lleve un poco de tiempo más.

Saludos!!!!

caballerantoni 25-08-2025 19:07:36

registros tabla repetidos
 
Buenas tardes,

perdonad que me he incorporado tarde a este hilo,

tengo una duda, ¿ creéis que un mismo tipo de operación (RegistroAlta ó RegistroAnulación) relativo a una cierta factura, puede estar repetido en la tabla de la base de datos ?,
lo digo porque sobre una misma factura pueden haber por ejemplo más de un registro de alta (en xml), por incidencias, subsanación...

quizás también sería factible tener por ejemplo un solo RegistroAlta en la tabla, e ir actualizando ese mismo registro si luego hay algún cambio estructural, de modo que refleje lo último que ha sucedido a parte de los datos básicos que no cambian.

Si alguien sabe como proceder en este caso agradecería su opiniòn.

Saludos

emailesc 26-08-2025 06:24:15

Cita:

Empezado por caballerantoni (Mensaje 567228)
Buenas tardes,

perdonad que me he incorporado tarde a este hilo,

tengo una duda, ¿ creéis que un mismo tipo de operación (RegistroAlta ó RegistroAnulación) relativo a una cierta factura, puede estar repetido en la tabla de la base de datos ?,
lo digo porque sobre una misma factura pueden haber por ejemplo más de un registro de alta (en xml), por incidencias, subsanación...

quizás también sería factible tener por ejemplo un solo RegistroAlta en la tabla, e ir actualizando ese mismo registro si luego hay algún cambio estructural, de modo que refleje lo último que ha sucedido a parte de los datos básicos que no cambian.

Si alguien sabe como proceder en este caso agradecería su opiniòn.

Saludos

Supongo que se puede hacer de la manera que indicas, pero creo que es mas complicado. Si haces modificaciones a una factura, por ejemplo una cualificación de factura simplificada, que en mi caso tienen el mismo numero de factura, aun así tendrán registros de facturación diferentes, con su xmls diferentes. En mi caso cada modificación es un registro nuevo en la tabla de registros de facturación, la cual tiene una columna indice clave con un autonumérico, y donde además de la serie y numero de factura, guardo el tipo de operación que es. Así puedo ver si hay varios registros con el mismo numero de factura, que es cada uno y cuando se hicieron sin problemas.

Jarogo08 26-08-2025 08:04:01

Cita:

Empezado por caballerantoni (Mensaje 567228)
tengo una duda, ¿ creéis que un mismo tipo de operación (RegistroAlta ó RegistroAnulación) relativo a una cierta factura, puede estar repetido en la tabla de la base de datos ?,
lo digo porque sobre una misma factura pueden haber por ejemplo más de un registro de alta (en xml), por incidencias, subsanación...

quizás también sería factible tener por ejemplo un solo RegistroAlta en la tabla, e ir actualizando ese mismo registro si luego hay algún cambio estructural, de modo que refleje lo último que ha sucedido a parte de los datos básicos que no cambian.


No actualices ningún registro, no lo puedes hacer. Aparte que perderás el encadenamiento.

Si una factura tiene 7 altas, 5 subsanaciones y 8 bajas, pues guardas en tu tabla 20 registros. Cada uno encadenado con el anterior.
Si vas actualizando los registros y al final solo tienes en tu tabla 3 (la alta, la subsanación y la baja... o incluso sólo dos: la alta y la baja) no veo como puedes mantener los encadenamientos correctos.

Por no hablar que pierdes todo el histórico, no sabrás qué le pasó a esa factura

CarlosArjonomia 26-08-2025 09:20:59

Una tabla para las facturas y otra tabla relacionada con los registros asociados a las facturas donde se guardan huellas y demás datos de cada transacción.

caballerantoni 26-08-2025 09:46:48

Buenos días

Gracias a todos por vuestras aportaciones.
Pues si, es más complicado ir actualizando el mismo registro de la tabla, y además se perdería el histórico de incidencias,
cambiaré la operativa así cada XML tendrá un registro en la tabla.
Yo en la misma tabla guardo todo, con una estructura similar al XML.

Saludos


La franja horaria es GMT +2. Ahora son las 10:24:20.

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