Ver Mensaje Individual
  #2  
Antiguo 06-05-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Master23.

Tal como pones en el post no creo que se pueda incrementar códigos alfanuméricos desde la base de datos con un autoincremental.

Se me ocurre que lo podrías solucionar utilizando un campo alfanumérico y hacer el incremento por código antes de guardar.

Te pongo un ejemplo simple de como podrías implementarlo: (acorde al código de tu post)
Código:
function ProximoCodigo(CodAnt: string): string; // CodAnt= código leído de la BD
const
  NDIGIT = 5;  // parte numérica
  NCHAR = 3;  // parte alfanum.
var
  Prox: Integer;
begin
  // parte numerica + 1
  Prox:= StrToInt(Copy(CodAnt,NCHAR,Length(CodAnt)))+1;  
 // completar con ceros 
  Result:= Copy('00000',1,NDIGIT-Length(IntToStr(Prox)))+IntToStr(Prox); 
 // componer el código nuevamente
  Result:= 'A-'+Result;  
end;
Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....

Última edición por ecfisa fecha: 06-05-2010 a las 03:14:49.
Responder Con Cita