Ver Mensaje Individual
  #2 (permalink)  
Antiguo 30/09/2014, 02:00
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Como generar correlativos con funcion

Yo lo solucionaria con programación externa....

Primero guardaria la cosas por separado, de hecho ya lo haces con IDPV, pero el correlativo lo guardaria como un entero, sin ensuciarlo con siglas que ademas no añaden información ya que ya lo tiene en IDPV. Luego consultando el valor mas alto del correlativo de cada tipo y sumando uno.

Código MySQL:
Ver original
  1. TABLA VENTAS
  2. ID | IDPV | CORRELATIVO | IDCLIENTE | IDPROD | CANT | PRECIO | TOTAL | FECHA
  3. 1 | 1 | 1 | 15 | 201 | 20 | 18.45 | 369.00 | 2014-09-29
  4. 2 | 2 | 1 | 10 | 185 | 22 | 11.00 | 242.00 | 2014-09-29
  5. 3 | 1 | 2 | 15 | 201 | 20 | 18.45 | 369 | 2014-09-29
  6. 4 | 2 | 2 | 10 | 185 | 22 | 11.00 | 242.00 | 2014-09-29
  7. 5 | 2 | 3 | 10 | 185 | 22 | 11.00 | 242.00 | 2014-09-29
  8.  
  9. TABLA PUNTO DE VENTA
  10. IDPV | ALIAS | P_VENTA
  11. 1 | KO | KIOSKO
  12. 2 | SV | SALA_DE_VENTAS

Código MySQL:
Ver original
  1. SELECT MAX(CORRELATIVO) ultimo FROM VENTAS WHERE IDPV=1;

INSERT INTO VENTAS...

Código MySQL:
Ver original
  1. SELECT ID,IDPV,CONCAT(PV.ALIAS,V.CORRELATIVO) CORRELATIVO,IDCLIENTE,IDPROD,CANT,PRECIO,TOTAL,FECHA
  2.    FROM VENTAS V INNER JOIN `PUNTO DE VENTA` PV  
  3.        ON V.IDPV=PV.IDPV;
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 30/09/2014 a las 02:07