Códigos Automáticos VB.Net y Sql Server



En este post aprendernos a crear códigos automáticos para nuestros registros de nuestra base de datos hecha en Sql Server totalmente personalizables en Visual Studio.Net.

El Formato de entrada a la función es:

Dim cod As String 
cod= nuevocod("NOMBRETABLA","TABLA_ID","IDENTIFICADOR")
Ejm
El Formato de salida que tendremos es el siguiente
Ejemplo: 

TABLA CLIENTES
CLI000001       

TABLA USUARIOS
USU000001       

TABLA PROVEEDORES
PRV000001       

TABLA PRODUCTO
PRD000001       

TABLA X
X000001       
Creamos una tabla en Sql Server


Código SQL SERVER 2008


use master
go
CREATE TABLE dbo.Products
   (Product_ID varchar(10) PRIMARY KEY NOT NULL,
    Product_Name varchar(25) NOT NULL,
    Product_Price money NULL,
    Product_Description varchar(50) NULL)
GO



Bueno, tenemos la base de datos hecha en sql server para poder probar nuestro código.
Abrimos Visual Studio y creamos un nuevo proyecto de Windows Form


Agregamos un modulo al proyecto


Para VB.Net
Si creamos el proyecto en VB.NET pegamos el siguiente código en el modulo :

Función para nuevo código
...................................................................................................................
 Public Function nuevocod(ByVal tabla As String, ByVal id As String, ByVal IDEN As String) As String
            Dim m As Integer, w, clave As String, nuevo As String
            Dim const1 As String

            Try
                Conexion()

                Dim SQLbuscar As String
                SQLbuscar = "select top 1* from " + tabla + " order by " + id + " desc "
                OCmd = New SqlCommand(SQLbuscar, oCnn)
                ''  oDtr = OCmd.ExecuteReader
                Dim lectura As SqlDataReader = OCmd.ExecuteReader
                If lectura.Read = True Then
                    clave = lectura(0).ToString()
                    clave = UCase(clave)
                    w = Replace(clave, IDEN, "")
                    m = CInt(w)
                    m = m + 1
                    Select Case m
                        Case 1 To 9
                            const1 = "00000"
                        Case 10 To 99
                            const1 = "0000"
                        Case 100 To 999
                            const1 = "000"
                        Case 1000 To 9999
                            const1 = "00"
                        Case 100000 To 999999
                            const1 = ""
                    End Select
                    nuevo = IDEN + const1 + m.ToString
                Else
                    nuevo = IDEN + "000001"
                End If
                lectura.Close()
                'cnx.Close()
            Catch ex As Exception
                MessageBox.Show("Error: " & Err.Description, "Se ha producido un error", MessageBoxButtons.OK, MessageBoxIcon.Warning)
            End Try
            Return nuevo
        End Function

..............................................................................................................................................

Descargalo aqui:

Pulsa aquí para descargar


..............................................................................................................................................
Sígueme en Facebook: facebook/juANnoPP
Sigueme en Twitter: @CuencaVega


CONVERSATION

0 Comentarios:

Back
to top