Ver Mensaje Individual
  #5 (permalink)  
Antiguo 20/05/2014, 12:22
kiko's
 
Fecha de Ingreso: julio-2005
Mensajes: 310
Antigüedad: 19 años, 6 meses
Puntos: 36
Respuesta: Generar código factura

Cita:
Iniciado por gnzsoloyo Ver Mensaje
No me queda claro si la numeración que "sigues" es la forma en que está regulada legalmente en españa (me resulta algo singular, pero puede ser simplemente poque en mi país se hace de otro modo).
Entendamos que no existe una numeración "00000001", eso es representación, no es lo que se almacena en la base. Eso luego, al momento de mostrar los datos, se genera programáticamente, o por medio de la consulta. Pero lo que se almacenan son numeros.
En MySQL puedes guardar un número con ZEROFILL, pero no tiene efectos luego cuando realizas consultas a la base, ni tampoco en los lenguajes de programación (no nos olvidemos que los ceros a la izquierda no existen).
El tema centralo no es que algo esté "permitido", sino lo que está establecido.
En Argentina, por ejemplo, sólo pueden ponerse como "0000-00000000", siendo los primeros dedicados al número de punto de venta habilitado para la facturación, y una letra (A, B, C, E), que determina la condición impositiva de la operación, y su tipo.

En definitiva, si quieres conservar ese esquema por "bonito", te recomiendo usar tres campos, uno VARCHAR(2), uno MEDIUMINT UNSIGNED y el tercero INT UNSIGNED.
Hola,

Gracias por tu respuesta. Miraré a ver cómo lo hago. Respecto a la legislación española dice que las facturas deben constar de dos partes: la serie y la numeración.
La serie puede ser cualquier cosa: RR, BBBB, A11, lo que quieras, pero siempre debes usar la misma para la misma actividad y/o establecimiento. El número es la parte exclusivamente numérica y debe ser siempre secuencial sin saltos de número y su orden debe coincidir con el orden de las fechas de factura. Se permite reiniciar la numeración al cambio de un ejercicio fiscal (es decir, a 1 de enero).

La serie no es obligatoria si no tienes necesidad de distinguir varias actividades (por ejemplo, el caso de una empresa con un único establecimiento de ventas y una única actividad), por eso digo que podría simplemente asignar como número de factura algo así: 00000001 que podría ser perfectamente el id de cada registro en la base de datos (que es un primary key y por lo tanto único y correlativo) rellenado de ceros a su izquierda. Esto sé hacerlo.

Saludos!