![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Hola buenas tardes.
A ver si alguien me puede dar un empujoncito con respecto a la anulación. Tenemos el siguiente planteamiento: Oper. NumFra Fecha Fra ALTA F240001 21/01/2024 ALTA F240002 22/01/2024 BAJA F240001 21/01/2024 ALTA F240003 22/01/2024 ALTA F240004 22/01/2024 ALTA F240005 22/01/2024 ALTA F240006 22/01/2024 En la hoja excel lo tengo claro y lo veo y sin ningún problema. pero me lleva loco el tema de la anulación y ostras, no soy capaz de encaminarlo. Como orientais el asunto en la base de datos si la tabla tiene como índice principal NumFra y tenemos ya el registro de alta con el número F240001. Sería sencillo y básico botón derecho en el alta correspondiente y opción anual factura, automáticamente se duplica el registro con la operación de baja y su fecha, pero no llego ni a probarlo ya que automáticamente me daría registros duplicados en la tabla de cabecera de facturas. Si alguno me diera una pista de como orientar el tema se lo agradecería. No pensaba utilizar el tema de anulación, pero creo que se va a dar el caso en más de una vez y me gustaría tenerlo previsto. Disculpar mi torpeza. Un saludo,
__________________
Se humilde para admitir tus errores, inteligente para aprender de ellos y maduro para corregirlos. |
|
#2
|
||||
|
||||
|
Cita:
1) Incluir un campo de ANULADA booleano a la tabla cabecera de facturas e incluirlo en la clave primaria. Adicionalmente se debería poner un campo de fecha/hora anulación. O… 2) crear una tabla de STATUS de las facturas. En esta tabla podríamos almacenar Serie de factura, número de la misma, año fiscal, tipo de factura, si es alta, anulación, rectificación…, la huella, el csv, y demás datos que puedan interesar. Luego se relacionaria fácilmente esta tabla con la de cabeceras de las facturas.
__________________
El recuerdo es la prisión en la que el alma sueña pasado, cuando no vive el presente, ni quiere un futuro. |
|
#3
|
||||
|
||||
|
Esto es como todo, en enviar pregunta y se aparece la iluminación divina....
Tratar el indice principal con un autoincrement y un secundario mantenido con número de factura. Pasa que no soy muy amigo de los autoincrement, pero como no afecta a los datos, me daría igual que este variara en cualquier momento y por cualquier motivo. El problema es que no se a nivel de aplicación como me afectaría, en la busqueda de facturas. J...r estoy encasquillado con el tema.
__________________
Se humilde para admitir tus errores, inteligente para aprender de ellos y maduro para corregirlos. |
|
#4
|
||||
|
||||
|
Cita:
No sé cómo piensas orientar el tema de las bajas pero yo lo veo peliagudo. Primero te crea problemas para manejar ese dato en la misma tabla de facturas (como ya estás comprobando) y segundo que no creo que sea muy recomendable anular facturas. Si te sirve de algo yo he optado por no dejar anular facturas y en cambio generar facturas rectificativas. A partir de una factura determinada que se quiera modificar por algún motivo creo en memoria una copia para hacer los cambios que se quieran y si se aceptan muevo la factura original a otra tabla y se queda la rectificada con un nuevo número de otra serie. Si lo que se quiere es directamente eliminar la factura lo que hago es un abono. Este proceso, como tantas cosas, es discutible pero creo que es legal y no me marea mucho el programa. Saludos.
__________________
Be water my friend. |
|
#5
|
||||
|
||||
|
Cita:
Gracias Darkdudae y Newtron por los aportes.
__________________
Se humilde para admitir tus errores, inteligente para aprender de ellos y maduro para corregirlos. Última edición por ramherfer fecha: 10-02-2025 a las 20:27:53. |
|
#6
|
||||
|
||||
|
Cita:
Nosotros tenemos en la tabla de facturas un campo de ESTADO, que en un momento dado nos marca si la factura está ANULADA (y otros estados por los que puede pasar). Por otro lado, tenemos una tabla de RegistrosDeFacturación, donde se almacena un registro por cada operación que se le realiza a una factura, y por lo tanto podemos tener varios registros (sobre la misma factura): ALTA MODIFICACION MODIFICACION ANULACION Además, esa segunda tabla se puede consultar, para acceder rápidamente al "historial" de una factura y debe permitir descargar el RegistroDeFacturación de cada factura. ![]()
__________________
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. |
|
#7
|
||||
|
||||
|
Vamos a ver si entendi lo de las bajas, como creo que lo he entendido siempre. bajo la experiencia del SII
Las bajas son una factura mas para la AEAT, tiene su huella: la que tuvo durante el alta y encadenamiento. Cuando das de alta una nueva siguiente a la baja la encadenas con ella y listo. El lugar de la baja no se puede ocupar porque dara error 3000. ¿esto es asi? lo unico que tienes que marcar es un flag en el archivo de facturas que te indique cual es su estado, sin mas. Saludos Nota: gracias a la demo de darkdudae, el componente con total seguridad abandonara el servidor de mensajes, y pasara a funcionar bajo DLL. No hay que modificar nada en el código de los programas que usan el componente. La semana que viene lo publicare. |
|
#8
|
||||
|
||||
|
Cita:
Código:
Id N.Factura Fec.Factura Operacion Notificada 1 FR250001 02/06/2025 A S 2 FR250002 02/07/2025 A S 3 FR250003 02/07/2025 A S 4 FR250003 02/07/2025 M S 5 FR250004 02/10/2025 A S Encadenada a la 3 6 FR250001 02/06/2025 B S Encadenada a la 4??? 7 FR250005 02/11/2025 A S Encadenada a la 1??? 8 FR250006 02/11/2025 A S Encadenada a la 6 Cita:
Gracias.
__________________
Se humilde para admitir tus errores, inteligente para aprender de ellos y maduro para corregirlos. Última edición por Neftali [Germán.Estévez] fecha: 11-02-2025 a las 15:24:10. |
|
#9
|
||||
|
||||
|
Cita:
Por ejemplo, en cada registro de facturación tengo el HASH, tengo el contenido del registro en formato XML,... En esa tabla me lía un poco las fechas que has puesto. En cuanto al encadenamiento, se va haciendo con el último RegistroDeFacturación generado, digamos de forma conológica (independientemente si lo último ha sido un alta, una subsanación o una anulación). Digamos que tenemos una pantalla que muestra todos los registros de facturación dedicada a posibles inspecciones. Desde esa pantalla puedes buscar una fcatura y deberías ver su "historial" y su estado actual (todas sus operacion o registros de facturación); La mayoría aparecerán 1 vez como Alta aceptada, pero también podrás encontrar un Alta + Baja o Alta + Modificacion + Modificación + Baja,... Y tal como pone la documentación se debe poder ver o descargar el registro de facturación (XML), por eso lo guardamos tal cual en un campo.
__________________
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. |
|
#10
|
||||
|
||||
|
Con el “registro de facturación” en XML te refieres a la respuesta que devuelve Hacienda o a una suerte de “Factura Electrónica” con los metadatos de la factura?
__________________
El recuerdo es la prisión en la que el alma sueña pasado, cuando no vive el presente, ni quiere un futuro. |
|
#11
|
||||
|
||||
|
Cita:
En cualquier momento esos XML se deen poder acceder y descargar. https://sede.agenciatributaria.gob.e...generales.html
__________________
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. |
|
#12
|
||||
|
||||
|
Cita:
Pienso que lo ideal a parte de quizas guardarlo en disco en una carpeta, con un nombre serializado, seria incluirlo en una tabla con un codigo y desde la factura(s) enlazarlo, con dos campos binarios, uno para el envio y otro la respuesta. Saludos ! |
|
#13
|
|||
|
|||
|
Cita:
|
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Verifactu o por requerimiento (no-verifactu) ¿decisión del usuario? | Maska10 | Temas legales | 2 | 07-12-2024 12:34:47 |
| Demo de una applicación para una estación de enfermera con RAD Studio | AgustinOrtu | La Taberna | 1 | 21-07-2015 17:41:35 |
| Demo Delphi, EMail | Caral | Internet | 1 | 19-12-2006 00:37:56 |
| Demo de delphi 2005 | mazinger | Varios | 2 | 18-12-2004 09:23:09 |
| El Rave que viene con Delphi es una Demo? | apicito | Impresión | 0 | 04-06-2003 11:33:36 |
|