![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
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;
__________________
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. |
|
#2
|
||||
|
||||
|
Supongo que la letra es la serie de facturación.
Yo te sugiero tener separados los valores en dos campos. Serie, Numero, resto_de_campos Con esto solo deberás incrementar el número para la siguiente factura. Al imprimir, solo tienes que concatenarlos. También puedes tener un campo calclulado que sea Serie+'-'+Numero dentro de la base de datos (no se que que base trabajas) pero creo que casi todas lo permiten. Una tercera opción es hacerlo dentro de la base. Yo conozco Firebird: existe la función substr que es similar al copy de delphi. Esto te servirá para pedir los últimos 5 números del campo, incrementarlo y luego concatenarlo. El resto de bases de seguramente tienen algo parecido. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| ¿cómo aumentar el número de factura en una base de datos paradox ? | Master23 | Varios | 2 | 09-04-2010 00:42:26 |
| como puedo cambiar la fuente de Delphi - tipo de letra | micky mouse | Varios | 6 | 07-03-2008 02:26:12 |
| Como convertir numero entero en letra | kurono | Varios | 2 | 23-01-2008 05:10:39 |
| Convertir datos DBEdit tipo $ a numero | destrukthor | Varios | 12 | 26-06-2006 16:35:51 |
|