Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-12-2007
efelix efelix is offline
Miembro
 
Registrado: jul 2006
Posts: 84
Poder: 18
efelix Va por buen camino
Incrementar en 1 un campo númerico

Hola a todos. Tengo el siguiente problema. Trabajo en una aplicación dirigida a llevar el control de las facturas emitidas por mi organización. En un formulario capturo todos los datos relacionados con la misma. En el mismo tengo puesto un botón pra agregar una nueva factura. La base de datos que uso es access, el campo donde almaceno el número de la factura es de tipo númerico. Me gustaría que al presionar el botón agregar se incrementará en 1 el número de la factura, para no hacer esto de manera manual. El campo en la tabla no lo puse de tipo autoincrementable, por qué para este caso no sería adecuado.
Muchas gracias, como siempre espero que me puedan ayudar. Si existe algún código de ejemplo lo agradecería.
Responder Con Cita
  #2  
Antiguo 03-12-2007
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Puedes ir a la última factura y sumarle uno:
Código Delphi [-]
MiNumero:=0;
Facturas.Last;
MiNumero:=Minumero+FacturasNumero.Value +1;

O bien guardar el último número en una tabla auxiliar, que puede llamarse por ejemplo contadores, allí guardaríamos el nº, del último albarán, factura, Cliente, pedido......

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 03-12-2007
Avatar de Chris
[Chris] Chris is offline
Miembro Premium
 
Registrado: abr 2007
Ubicación: Jinotepe, Nicaragua
Posts: 1.678
Poder: 19
Chris Va por buen camino
Sólo un pregunta, ¿Por qué crees que un campo autoincremento, no sería adecuado?.
__________________
Perfil Github - @chrramirez - Delphi Blog - Blog Web
Responder Con Cita
  #4  
Antiguo 03-12-2007
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
El motor de ACCESS ante una cancelación responde saltándose el número actual, además yo prefiero la tabla auxiliar, porque a veces el cliente quiere eliminar una factura realizada por ejemplo por error, basta poner el contador en el lugar a propiado y generar otra que cubra el hueco....

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #5  
Antiguo 03-12-2007
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 28
Lepe Va por buen camino
Cita:
Empezado por D&W Ver Mensaje
Sólo un pregunta, ¿Por qué crees que un campo autoincremento, no sería adecuado?.
Legalmente no se permiten huecos/saltos en la numeración de Facturas (Aplicable en España, México y muchos otros).

Saludos
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #6  
Antiguo 03-12-2007
BertHauser BertHauser is offline
Registrado
 
Registrado: dic 2007
Posts: 3
Poder: 0
BertHauser Va por buen camino
Sugerencia

Hola:
Crea una tabla llamada "secuencias" por ejemplo:
IDSECUENCIA
NOMBRE_CTE
NUMERO_SGTE

En donde IDSECUENCIA es el ID de la tabla, NOMBRE_CTE es el nombre del comprobante -ej.: (PED)ido, (PAG)aré, (FAC)tura, etc- y NUMERO_SGTE es el numero siguiente del comprobante.
Luego haces un query a esa tabla, por ej.:
select max(numero_sgte+1)
from secuencias
where nombre_cte = 'FAC'

Es solo una idea. Deberías tener una tabla de comprobantes también, y aprovecharla para otras cosas.
Repito: solo una idea.

Ernst von BertHäuser
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Incrementar numeros en un campo desde delphi dariana20 SQL 6 25-05-2006 22:40:46
Relacion campo numérico vs campo string JorgeBec Varios 1 11-04-2005 18:26:51
Campo numerico y el driver XTG dc_systems Firebird e Interbase 2 27-06-2004 16:10:45
Campo numerico silviodp Conexión con bases de datos 1 09-06-2004 23:42:51
Incrementar un campo numerio edwin1 OOP 1 11-08-2003 21:32:01


La franja horaria es GMT +2. Ahora son las 21:27:16.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi