Ver Mensaje Individual
  #2923  
Antiguo 17-10-2024
unomasmas unomasmas is offline
Miembro
 
Registrado: dic 2019
Posts: 194
Reputación: 7
unomasmas Va por buen camino
Cita:
Empezado por sglorka Ver Mensaje
El método que utilizas para iniciar una factura o tique es el que siempre se ha hecho, no había necesidad de encadenamiento y por tanto, podías iniciar y terminar el proceso en cualquier momento. Con la entrada de Verifactu, debes cambiar por completo esa filosofía porque ese caso que comentas, puede ocurrir en cualquier software donde exista concurrencia entre los usuarios a la hora de emitir facturas.

La idea es iniciar el proceso de facturación utilizando un contador auxiliar que no es el de factura o tique, por ejemplo, comenzar con una nota de entrega (albarán), ambos usuarios inician el proceso de venta con el contador de notas de entrega (cada uno con su número obtenido), el primero inicia la venta con 2 ítems y posteriormente, aparca el documento porque el cliente no le pasa la tarjeta, el segundo usuario termina su documento y solicita un número de factura bloqueando el contador de facturas para que sólo él pueda obtener un número, si el primer usuario recupera el documento aparcado y quiere emitir la factura en ese mismo momento, se encontrará con el contador bloqueado y tendrá que esperar. Desde que obtiene el número de factura el segundo usuario, genera el registro de facturación xml y desbloquea el contador. Ahora, el primer usuario podrá emitir su factura realizando el mismo proceso.

El proceso de bloqueo es muy rápido, ya que sólo requiere obtener el siguiente número de factura, asignárselo al documento que quiere emitir y generar el Xml con su fecha de creación, la del momento de generación del xml, no del inicio del proceso de venta.

No hay otra manera de asegurar la emisión de facturas en orden cronológico de número y fecha y además, asegurar el encadenamiento con el registro anterior. Al utilizar este contador de notas de entrega aseguras, por ejemplo, desechar el documento en caso de que te hayas equivocado, emitir un albarán en vez de una factura, porque el cliente era un cliente de resumen mensual de albaranes y no te habías percatado, aparcar operaciones como se hace en hostelería cuando gestionas mesas, emitir una factura completa porque el cliente antes de pagar te dice que quiere sus datos en ella, etc..
Muchas gracias por responder y especialmente, por lo detallada que es la respuesta :-)

Cita:
Empezado por rci Ver Mensaje
En nuestro caso, el numero de factura no se asigna hasta justo en el momento de guardar, así que el primer tpv que salva la factura coge el contador le toca. el número no se asigna al iniciar la venta.
Cita:
Empezado por pablog2k Ver Mensaje
justo esto iba a comentar, nosotros hacemos igual, hasta que la factura/ticket no está 'finalizada', no se le asigna el número
Muchas gracias por vuestra respuesta. A cambiar el planteamiento...