Visual Basic - AYUDA URGENTE CON CONTADOR

Life is soft - evento anual de software empresarial
 
Vista:

AYUDA URGENTE CON CONTADOR

Publicado por Pep (1 intervención) el 26/07/2001 11:38:44
Hola, ante todos gracias de antemano por las respuestas

el caso es que tengo una tabla que tiene un campo Numerico que es manual, es decir que lo introduce el usuario, pero este campo no debe ser repetido sino que debe ser unico ( es como un campo Autoincrmentable ) pero la gestion deberia ser automatica.

El caso es que no consigo que coga como valor predeterminado el Maximo de la tabla+1 asi el usuario no debe recordar cual es el ultimo que asigno sino que es automatico.

He probado con el generador de expresiones poniendo =Max([TABLA]![NUMERO] como valor predeterminado pero siempre me muestra 0

He probado poniendo como valor predeterminado uhna consulta SQL que calcula el maximo+1 pero en el formlario me devuelve ?#Nombre#

He puesto otro control en el formulario que es independiente y que como Origen del Control tiene MAX(NUMERO)+1 y este control me muestra correctamente el valor maximo+1 pero el problema es que en el otro campo pongo como valor predeterminado el valor de este nuevo control que he creado pero el caso es que como tarda 1 segundo en calcularse el maximo+1 pues antes se asigna el valor al otro campo y siempre me dice 1 de menos y claro sumarle 1 a mano es poco "elegante"

Ya no se que hacer para conseguirlo y el caso es que parece una chorrada, alguien sabe como puedo hacerlo? como se hacen contadores manuales en acces? puedo convertir este campo en un campo autoincrementable?

Espero no haberos aburrido con todo esto y que me ayudeis lo antes posible

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:AYUDA URGENTE CON CONTADOR

Publicado por Miguel (5 intervenciones) el 26/07/2001 13:11:54
Hola.
Lo que puedes hace es indexar el campo y sacar el valor + 1 de esta manera.

Tabla.MoveLast
Valor = Tabla.Fileds("Campo") + 1

Espero que te sirva
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:AYUDA URGENTE CON CONTADOR

Publicado por Juanito (15 intervenciones) el 26/07/2001 13:12:30
Buenas, te digo una posible solución:

Crea un recordset que mantenga el valor más alto de la tabla:

dim rs as new adodb.recordset
dim sqlindice as string

rs.activeconnection =cn
sqlindice = "Select TOP 1 num_indice form Tabla order by num_indice DESC"
rs.open sqlindice

De esta forma siempre tienes en RS!num_indice el valor mayor, de esta forma cuando vayas a hacer la inserción haces referencia a RS!num_indice+1 y ya esta.

Espero que te sirva de algo... ya me comentas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar