Graficando con Microsoft Chart Control y Sql Compact 4.0
Un saludo programadores ya en 2021 y aún conviviendo con el COVID-19 un cordial abrazo sentido a todos los que han perdido familiares, e invitar a que se protejan y lleven las normas de bioseguridad como su prioridad.
Desde ya comprometido en mi hogar y en mi localidad para solventar de alguna manera esta pandemia. Entrando en tema, he preparado esta pequeña publicación para aquellos que tienen la idea o quieren aplicar graficas , ya sea estadisticas o tecnicas para cualquier ambito, es asi que el siguiente ejemplo he usado el comunmente control:Microsoft Chart Control, asi es amigos, ya que se hizo presente si mal no recuerdo para la version framework 3.0 en adelante, corríjanme si me equivoco. Ok!. Bueno el punto es que he usado la base de datos Northwind.sdf que venia por defecto en sqlcompact para demostrar un ejemplo sencillo como usar y enlazar para presentar los datos en la grafica.
Primero que debemos hacer es realizar un nuevo proyecto y colocar un control Chart como lo muestro en la imagen:
luego de aqui lo que debemos hacer es configurar las propiedades del chart control para que quede como les guste
Una vez configurado con lo requerido, le muestro el codigo(modulo) de conexion
Imports System.Data.SqlServerCe
Module conex
Public path As String = My.Application.Info.DirectoryPath & "\Northwind.sdf"
'----------------------------------------
Public conn As New SqlCeConnection("Data Source=" & path)
' Public sql As String
'Public cmd As New SqlCeCommand(sql, conn)
Public Sub conectarse()
Try
conn.Open()
' MsgBox("Conexion exitosa")
Catch ex As Exception
MsgBox(ex.ToString())
End Try
' conn.Close()
End Sub
End Module
Luego lo que va dentro del formulario 1
'-------------------------------------------------------------------------------
' Proyecto realizado por José Luis Masache feb 2021
'------------------------------------------------------------------------------------
Public Class Form1
Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
lbldir.Text = conex.path ' para verificar por donde anda la base de datos
cargar_COMBO_CATEGORY() ' cargo al combobox las categorias
End Sub
Sub Graficar()
Try
Dim ds As New DataSet
Dim dt As New DataTable
Dim strSql As String
strSql = "SELECT * FROM PRODUCTS WHERE [CATEGORY ID]='" & cbo_CATEGORY.Text & " ' "
Dim adp As New SqlServerCe.SqlCeDataAdapter(strSql, conn)
adp.Fill(dt)
' asignando parámetros para graficar
Chart1.DataSource = dt ' conectar la data a MSChart
Chart1.Name = " Nortwind"
Chart1.Series("Series1").XValueMember = "Product Name"
Chart1.Series("Series1").YValueMembers = "Units In Stock"
Chart1.Update() 'Actualizar
Chart1.DataBind()
Catch ex As Exception
Finally
conn.Close()
End Try
End Sub
Sub cargar_COMBO_CATEGORY()
Try
conectarse()
Dim dt As New DataTable
Dim strSql As String = "SELECT * FROM PRODUCTS"
Dim adp As New SqlServerCe.SqlCeDataAdapter(strSql, conn)
adp.Fill(dt)
With cbo_CATEGORY
.DataSource = dt
.DisplayMember = dt.Columns(2).ColumnName
End With
Catch ex As Exception
ex.ToString()
End Try
conn.Close()
End Sub
Private Sub cbo_CATEGORY_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cbo_CATEGORY.SelectedIndexChanged
Try
'llamada a la subrutina
Graficar()
Catch ex As Exception
End Try
End Sub
End Class
Como pueden ver se puede filtrar por categoria y el grafico me muestra el producto vs la cantidad en stock.
Y eso es todo, asi de sencillo, espero poderles seguir induciendo más en este proyecto en una segunda parte. nos vemos y les dejo el link de descarga del proyecto
Link de mi ejemplo:https://mega.nz/file/ZAl1BSAD#XBdAm9DjRFAu8XqDm2vpjywMw-vg1xcNJtG7E5mRcBo




Comentarios
Publicar un comentario