Anda di halaman 1dari 30

Conectar Crystal Reports con MySQL Server 5.1 en VB.

NET

abril 26 201014 comentarios

Guardado en : Microsoft, Programación

Share

Una de las formas más comunes de conectar que eh encontrado acerca de como conectar
Crystal Reports con MySQL en VB.NET, es a través de conexiones ODBC.

Open DataBase Connectivity (ODBC) es un estándar de acceso a Bases de datos


desarrollado por Microsoft Corporation, el objetivo de ODBC es hacer posible el acceder a
cualquier dato desde cualquier aplicación, sin importar qué Sistema Gestor de Bases de
Datos (DBMS por sus siglas en inglés) almacene los datos, ODBC logra esto al insertar una
capa intermedia llamada manejador de Bases de Datos, entre la aplicación y el DBMS

A continuación explico un poco cómo hacer esta conexión.

Nota: Para este tutorial se están utilizando el sistema operativo Microsoft Windows 7,
Microsoft Visual Studio 2005 y MySQL Server 5.1, lo cual puede cambiar la apariencia de
las ventanas con respecto a versiones anteriores.

Instalar el controlador ODBC

Para realizar la conexión necesitamos el conector ODBC de MySQL el cual podemos


bajarnos de la siguiente dirección http://dev.mysql.com/downloads/connector/odbc/5.1.html

Crear la conexión ODBC en Windows

Una vez instalado el conector ODBC de MySQL realizamos lo siguiente.

Paso 1:

Nos dirigimos al panel de control de Windows (Inicio/ Panel de control) y seleccionamos la


opción de Sistema y seguridad.
Paso 2:

Seleccionamos la opción de Herramientas administrativas.


Paso 3:

Seleccionamos la opción Orígenes de datos ODBC.


Paso 4:

Nos muestra una ventana donde podemos elegir qué tipo de conexión queremos, para
nuestro caso seleccionaremos DNS de sistema y damos clic en Agregar.
Paso 5:

Nos pide el tipo de origen de datos, seleccionamos MySQL ODBC 5.1 Driver y damos clic
en Finalizar.
Paso 6:

Configuramos los parámetros de nuestra conexión, como son:

Nombre, descripción, servidor, puerto, usuario, contraseña y base de datos.


Paso 7:

Una vez configurada la conexión nos aparece de nuevo en la ventana de conexiones de


ODBC, la seleccionamos y damos clic en aceptar para crear por completo la conexión.
Configurar la conexión con Crystal Report en VB.NET

Paso 1:

Añadimos a nuestro formulario el elemento CrystalReporViewer ubicado en cuadro de


herramientas en la sección de Crystal Reports.
Paso 2:

Ya insertado en el formulario, daremos clic en la pestaña de la parte superior derecha del


mismo componente, se nos despliega una pestaña y damos clic en Crear un nuevo informe
de Crystal Reports.

Paso 3:
Nos pide el nombre que le daremos a nuestro reporte dentro de nuestro proyecto.

Paso 4:

Después de establecer el nombre al reporte, se nos abre una ventana donde podremos elegir
el tipo de documento que deseamos crear, para este caso seleccionamos la opción Usar el
asistente de informes y el tipo Estándar.

Paso 5:
Seguido se nos muestra una ventana donde seleccionaremos que tipo de conexión
estableceremos, como se menciono es de tipo ODBC, así que daremos un clic en el símbolo
de + que tiene el tipo ODBC (RDO).

Paso 6:

Nos muestra los orígenes de datos de tipo ODBC que tiene Windows, como vemos aparece
la que creamos previamente, la seleccionamos y damos clic en siguiente.
Paso 7:

Nos pide el nombre usuario y contraseña de nuestro MySQL, llenamos los campos y damos
clic en Finalizar.
Paso 8:

Regresamos a la pantalla de inicio donde se nos muestran las tablas que tiene nuestra base
de datos, la seleccionamos y damos clic en el botón de > para indicarle cual es la tabla que
deseamos usar y damos clic en finalizar.
Una vez configurada nuestra conexión, en el Explorador de campos se nos muestra las
tablas agregadas así como sus campos.

Lo único que resta es arrastras los campos a nuestro reporte según será nuestra
conveniencia.
Y listo! Solo nos queda ejecutar nuestra aplicación.

El reporte lo podemos diseñar con imágenes, líneas, graficas, etc… Eso depende del tipo de
reporte o del gusto del usuario.
Crear una libreria (DLL) en VB.NET

abril 12 20109 comentarios

Guardado en : General, Microsoft, Programación

Share4

Crear una Librería .dll

La creación de una librería .dll en VB.NET es relativamente fácil, para ello lo haremos
como se muestra a continuación.

Para este caso se está utilizando Visual Studio 2005..

Lo primero que debemos hacer es abrir el Visual Studio y crear un nuevo proyecto
(Archivo/Nuevo/Proyecto…).

Seguido de esto se nos muestra un cuadro de dialogo donde nos pide el tipo, plantilla,
nombre y ubiación del proyecto:

Tipo de proyecto: Windows.

Plantilla: Biblioteca de controles de Windows.

Nombre: Nombre de la aplicación.

Ubicación: Ruta donde guardaremos nuestro proyecto.


Una vez creado el proyecto, éste nos crea una clase por default llamada UserControl1 la
cual le cambiaremos el nombre, para nuestro caso la llamaremos ClasePrueba.

Abrimos el Explorador de soluciones (Ver/Explorador de Soluciones), damos clic derecho


sobre la clase UserControl1 y seleccionamos Cambiar nombre.
Establecemos el nuevo nombre..

Ahora accedemos al codigo de la clase (clic derecho Ver código).


Lo que esta clase se encargará de hacer, es imprimir un mensaje en pantalla, algo así como
“MessageBox.Show”. Para ello dentro de la clase, crearemos un método llamado
“mensaje” el cual recibirá como parámetro un cadena de tipo de String que será la que
imprimir’a el programa.

Con las etiquetas <summary> establecemos una descripción para el método, y con <param
name=”"> establecemos una descripción para el parámetro de nuestro método.

Ya escrito nuestro código, lo que harémos es volver a generar nuestro proyecto.

Clic derecho sobre nuestra clase y seleccionamos Volver a generar.


Listo!, dentro de la carpeta de nuestro proyecto, en la ruta /bin/Debug, se habrá creado un
archivo .dll con el nombre de nuestra aplicación, para nuestro ejemplo se llama
LibreriaDLL.dll, la cual es portable.

Usando la librería

Si queremos utilizar nuestra librería en algún otro proyecto de VB.NET, lo único que
debemos hacer es lo siguiente.

Primero necesitamos agregar como referencia la librería a nuestro proyecto, para ello
realizamos lo siguente.

Clic derecho a nuestro proyecto y seleccionamos Agregar referencia…


Seguido de esto se nos muestra un cuadro de dialogo donde buscaremos nuestra librería.
Nos ubicamos en la pestaña Examinar y buscamos nuestra librería en el lugar que la
tengamos guardada.
Ya agregada la referencia, nos dirijimos al código donde utilizaremos nuestra librería (en
este caso utilizaré un formulario de prueba) e importaremos el name space de nuestra
libreria con el siguiente comando.

Imports LibreriaDLL

Solo nos resta crear un objeto de tipo ClassPrueba que se encuenta en la libreria y mandar
a llamar a nuestro metodo.

Creamos el objeto de tipo ClassPrueba


Invocamos nuestro metodo de la clase ClassPrueba.

Pasamos como parámetro el mensaje a mostrar.


Ejecutamos nuestra aplicación.

Listo!!, nos muestra nuestro mensaje en pantalla.

Podemos crear librerías a nuestro antojo, muchas veces esto nos ayuda a facilitarnos la vida
como programadores.

Espero sea de grán ayuda, no duden en comentar.

Saludos!!
338 - Hacer lista desplegable en combo usando
un ListView
Ejemplo para hacer que un combo permita desplegar un control Listview en forma de
reporte

Este ejemplo puede ser útil si se quiere ver un listado de datos en forma de reporte y con
varias columnas, y que la misma no ocupe espacio

Si bien el ejemplo se puede depurar y agregar funcionalidades, sirve para sacar una idea

El combobox, al hacer clic en el botón de la lista desplegable, ejecuta el evento DropDown


para mostrar el control Listview, posicionándolo en la posición de la lista desplegable

Vista del formulario

El ejemplo usa un módulo de clase. Este módulo tiene un método y tres


propiedades:

Método Init : este método es el que inicia , y se debe pasar como parámetro los
dos controles, es decir el control combobox a usar y el control Listview , por
ejemplo

Call Obj.Init (UnListview, UnCombo)

Propiedad AutoSizeColumnHeaders : Esta propiedad tiene tres valores y es para


auto ajustar los encabezados de columna: Si se pasa el valor "
AJUSTAR_POR_COLUMNA ", se ajusta el Column por el caption del encabezado.
Si se pasa el valor " AJUSTAR_POR_ITEM " la columna se autoajusta de acuerdo
al elemento mas largo de la columna . El valor NO_AJUSTAR, no hace nada y lo
deja como está, es decir sin ajustar

Propiedades WidthLista y HeightLista , se usan para establecer el alto y el ancho


de la lista desplegable, es decir del ListView. Si no se especifican estos valores,
por defecto se utiliza como ancho, el ancho que tenga el combobox, y como alto el
valor 250.

Nota: Ambos valores son en Pixels

Controles para el ejemplo

Añadir al proyecto un módulo de clase llamado Class1

En el formulario agregar un Listview y un Combo. Al combo colocarle la propiedad


Style en DropDown List - 2

________________________________________

Primero se lista el código del form, luego el código fuente del Class1

Código en Form1

________________________________________

Código fuente en el módulo de clase Class1

Este articulo describe un metodo que permite dar una mascara a un textbox para que tenga la
apariencia Numerica, Utilizando el simbolo de separacion de miles establecido en la
configuracion regional del Pc. Para el ejemplo vamos a usar los siguientes espacios de
nombres y crearemos un proyecto como aparece en la imagen.
Imports System
Imports System.Globa

El siguiente metodo recibe por refrerencia un object que en este caso sera nuestro TextBox1
y por valor un caracter en las linea 14 recibimos el formato numerico del Pc . 16 - validamos
que lo digitado sea un digito y no otro caracter. 17-18 agregamos el caracter entrante y
eliminamos todos los separadores del texto
convertimos a entero el nuevo numero y luego le damos el formato que definimos
inicialmente. Luego validamos el caracter de bakcspace para poder borrar y reposicionar los
puntos Por ultimo en el evento keyPress del TextBox1 introducimos el siguiente Código y
listo le damos Run....
e.Handled = Validar_

aquí les dejo el code completo para que le hagan Ctrl+c Ctrl+v y lo puedan probar mejor.....

Imports System
Imports System.Globa

Imports System

Imports System.Globalization

Public Class Form1

Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As


System.EventArgs) Handles MyBase.Load

TextBox1.MaxLength = 14

End Sub

Private Sub TextBox1_KeyPress(ByVal sender As System.Object, ByVal e As


System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
e.Handled = Validar_Moneda(TextBox1, e.KeyChar)
End Sub

Public Shared Function Validar_Moneda(ByRef cadena As Object, ByVal


key_char As Object) As Boolean
Dim nfi As NumberFormatInfo =
CultureInfo.CurrentCulture.NumberFormat
Dim entero As Int64
If IsNumeric(key_char) And cadena.Text.ToString.Length <=
cadena.MaxLength Then
cadena.AppendText(key_char)
Dim num As String =
cadena.Text.ToString().Replace(nfi.CurrencyGroupSeparator, "")
entero = Convert.ToInt64(num)
num = entero.ToString("N", nfi)
num = num.Substring(0, num.Length - nfi.CurrencyDecimalDigits - 1)
cadena.Text = ""
cadena.AppendText(num)
ElseIf CShort(Asc(key_char)) = 8 Then
Dim num As String =
cadena.Text.ToString().Replace(nfi.CurrencyGroupSeparator, "")
If num <> "" Then
num = num.Substring(0, num.Length - 1)
If num <> "" Then
entero = Convert.ToInt64(num)
num = entero.ToString("N", nfi)
num = num.Substring(0, num.Length - nfi.CurrencyDecimalDigits -
1)
End If
End If
cadena.Text = ""
cadena.AppendText(num)
End If
Return True
End Function
End Class

Anda mungkin juga menyukai