Visual Basic.NET - generar codigo automaticamente

   
Vista:

generar codigo automaticamente

Publicado por jorge (5 intervenciones) el 22/12/2009 16:38:06
hola a todos
he estado tratando de generar codigo automaticamente extrayendo el dato de una bd access
lo que quiero es que busque si ay un numero y si no hay le cargue un 1 a un texbox, si ubiera uno lo estraiga y lo sume + 1
este es el codigo en vb 6.0

rs.Open "select * from estudiante ", db
If rs.BOF = True Then
text1 = 1
Else
rs.Close
rs.Open "select * from estudiante ", db
rs.MoveLast
text1 = rs!codigo
text1 = (CInt(text1) + 1)
End If
rs.Close

he tratado de acerlo en vb2008 pero todavia no lo consigo
si pudieran ayudarme se los agradeceria mucho atte jorge_Jqa@hotmai.com
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:generar codigo automaticamente

Publicado por Jordi (5 intervenciones) el 23/12/2009 09:28:07
Hola Jorge,

Para lo que quieres hacer yo te recomiendo que utilices la función MAX de SQL que te evitará tener que moverte por el Recordset. La consulta te quedaría así:

rs.Open "Select MAX(Codigo) AS UltimoCodigo From estudiante ", db

Ahora sólo tienes que mirar si la columna rs!UltimoCodigo es Nothing, en ese caso text1 = 1 y en caso contrario text1 = CInt(rs!UltimoCodigo)+1. Ya no es necesario que vuelvas a realizar la consulta y el rs.MoveLast.

¡Espero que te sea útil!
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:generar codigo automaticamente

Publicado por jorge (5 intervenciones) el 23/12/2009 15:21:29
hola muchas gracias por tu tiempo pero que necesito es hacer eso pero en codigo para visual estudio 2008 ese esquema funciona en vb 6.0, ese no es mi problema, el problema es que quiero hacer eso pero en el formato que acepte vb 2008 espero aberme explicado un poco mejor en esta ocacion.
entonces como lo aria en vb2008
gracias por su ayuda
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:generar codigo automaticamente

Publicado por Jordi (5 intervenciones) el 24/12/2009 12:55:28
¿Cómo estas accediendo a los datos en VB.NET?
Imagino que estarás utilizando ADO.NET con lo cual el código que necesitas se pareceria a algo así:

Dim Sql AS String = "Select MAX(Codigo) AS UltimoCodigo From estudiante"
Dim CadenaConexion As String = "Provider=Microsoft Jet 4.0 OLE DB Provider; Data Source=MiBaseDeDatos.MDB"
Dim cnn As OleDbConnection
Dim cmd As OleDbCommand

cnn = New OleDbConnection(CadenaConexion)
cnn.Open()
cmd = New OleDbCommand(sql, cnn)

Dim UltimoCodigo As Integer = Convert.ToInt32(command.ExecuteScalar()) + 1

cmd.Dispose()
cnn.Close()

Este ejemplo es para Access pero fácilmente aplicable a otras bases de datos.
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:generar codigo automaticamente

Publicado por jorge (5 intervenciones) el 24/12/2009 14:57:42
hola muchas gracias por tu ayuda eso es lo que necesito boy a probar espero no tener problemas
muchas gracias y asta la proxima
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:generar codigo automaticamente

Publicado por Rafael randybit64@hotmail.com (1 intervención) el 22/08/2012 08:27:34
como puedo llevar este codigo a una funcion para despues llamarla cuando la necesite

Dim Sql AS String = "Select MAX(Codigo) AS UltimoCodigo From estudiante"
Dim CadenaConexion As String = "Provider=Microsoft Jet 4.0 OLE DB Provider; Data Source=MiBaseDeDatos.MDB"
Dim cnn As OleDbConnection
Dim cmd As OleDbCommand

cnn = New OleDbConnection(CadenaConexion)
cnn.Open()
cmd = New OleDbCommand(sql, cnn)

Dim UltimoCodigo As Integer = Convert.ToInt32(command.ExecuteScalar()) + 1

cmd.Dispose()
cnn.Close()
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:Error al generar un ODBC en .Net

Publicado por apacheco (78 intervenciones) el 24/12/2009 13:19:12
Buenos dias (al menos en España).

Estoy migrando una aplicacion de VB6 a 2008.Net en Windows XP, en la que creaba unas entradas en el registro de Windows XP, con datos relativos a ala direccion de la BD. ...etc.

Los pasos realizados son :
Crear en el registro (HKEY_CURRENT_USER\Software\VB and VBA Program Settings\) las entradas Textilnet y dentro de esta TExistencias. Lo hace bien

Consigo, con el OpenFileDialog localizar la ubicacion del a BD, pero al utilizar la API (SQLConfigDataSource....) que genera el ODBC me da un error diciendo :

Intento de leer o escribir en la memoria protegida. A menudo, esto indica que hay otra memoria dañada.

He testado la memoria y no me ha indicado ninguna incidencia.

¿Podeis decirme algo?...... algun otro metodo de crear dinamicamente un OBDC.

Si ejecuto el programa original en VB6 FUNCIONA CORRECTAMENTE
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