SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: DiabloRojo en Viernes 6 de Mayo de 2005, 17:29

Título: Actualizar Número
Publicado por: DiabloRojo en Viernes 6 de Mayo de 2005, 17:29
Qué tal foro?

Tengo el problema siguiente:

En una base de datos almaceno un número (digamos un número de factura). En mi aplicación tomo este número y le sumo 1 y luego actualizo la tabla. El problema está en que no sé si en la organización donde implementarán el programa colocarán más de un puesto de ventas y si sigo usando esta estrategia para ubicar el número de la próxima factura me temo que  el programa tendrá problemas ¿cómo saber si el número base ha sido usado por otro usuario?. No sé si me hago entender...


Número Base    Número Aplicación        Nuevo número base

5025                5025+1=5026      ----->5026 (luego de actualizar la tabla)


Expresado de otra manera: alguien podría indicarme como llevar y actualizar el número de factura para una aplicación multiusuario?.


Gracias por su ayuda.

DiabloRojo.
Título: Re: Actualizar Número
Publicado por: _vgt_ en Viernes 6 de Mayo de 2005, 19:49
mmmmm una idea podría ser utilizando varias tablas... me explico:

- El usuario crea el puesto 1 de trabajo -> dinamicamente creo a su vez la tabla 1 de  control de numeros de factura...
- El usuario crea el puesto 2 de trabajo -> dinamicamente creo otra tabla de control para numeros de factura del puesto 2...

no se si es eso a lo k te referias pero x lo menos espero haberte dado una idea de algo xD :-)

Saludos  :hola:
Título: Re: Actualizar Número
Publicado por: DiabloRojo en Viernes 6 de Mayo de 2005, 20:35
Hola.
Pues sí _vgt_ es una idea. Lamentablemente el número de factura debe ser secuencial y creo que usando dos o x número de tablas no puedo lograr esto.

Muchas gracias por tu sugerencia. Sigo escuchando ideas!

DiabloRojo.
Título: Re: Actualizar Número
Publicado por: Brroz en Sábado 7 de Mayo de 2005, 10:01
Hola.

Prueba con algo de este estilo:

Código: Text
  1.  
  2.    Dim rs1 As Recordset, varNuevoNumero as Variant
  3.    Set rs1 = cnx1.Execute("SELECT Max(NumFra) From TablaCabeceraFacturas")
  4.    varNuevoNumero = rs1.Fields(0).Value
  5.    varNuevoNumero = IIf(Not IsNull(varNuevoNumero), varNuevoNumero + 1, 1)
  6.  
  7.  

Chao.
Título: Re: Actualizar Número
Publicado por: DiabloRojo en Martes 10 de Mayo de 2005, 04:34
Ok Brroz está interesante el código que sugieres estudiaré la forma de implementarlo para lograr lo que deseo...

Gracias por la ayuda.

Eh, por cierto ¿alguien sabe como gestionar errores de concurrencia y/o bloqueo?.

DiabloRojo.