TUTORIAL DE LA APLICACIÓN

1. Base de Datos

IF  EXISTS (SELECT name FROM sys.databases 
            WHERE name = 'BD_Tutoriales')
   
DROP DATABASE BD_Tutoriales
GO
CREATE DATABASE BD_Tutoriales
GO
USE BD_Tutoriales
GO
SET LANGUAGE SPANISH
GO
SET DATEFORMAT DMY
GO
SET NOCOUNT ON
GO


CREATE TABLE Cliente (
       Cliente_ID           char(5) NOT NULL,
       Cli_Nombre           varchar(30) NULL,
       Cli_Apellidos        varchar(30) NULL,
       Cli_FechaNac         datetime NULL,
       Cli_Sexo             char(1) NULL,
       Cli_DNI              char(8) NULL,
       Cli_Direccion        varchar(30) NULL,
       Distrito_ID          char(5) NOT NULL,
       Cli_Telefono         varchar(10) NULL,
    Cli_EstadoCivil      varchar(30) NULL,
       Cli_Email            varchar(50) NULL,
       Cli_Password         char(6) NULL,
       Cli_NroCuenta        char(10) NULL,
       Cli_Estado           char(1) NULL
)

GO

ALTER TABLE Cliente
       ADD PRIMARY KEY (Cliente_ID ASC)

GO

-----------------------------CLIENTES------------------------------

INSERT INTO Cliente VALUES ('C0001','Juan ','Quispe Vallejos','21/06/1974','M','46791346','AV Javier Prado 233','DIS02','654-6689','CASADO','juanqui@hotmail.com','666666','1911250709','1')
INSERT INTO Cliente VALUES ('C0002','Lucho','Mamani Luque','12/05/1975','M','48591526','Av.las Alomos 560','DIS15','798-4598','CASADO','kj_@hotmail.com','794613','1921853100','1')
INSERT INTO Cliente VALUES ('C0003','Luis','Arias Castro','18/09/1974','M','45926132','AV la molina 269','DIS41','411-4562','SOLTERO','ahg_@hotmail.com','134679','1931382201','1')
INSERT INTO Cliente VALUES ('C0004','Alberto','Moreno Manco','16/06/1973','M','47948592','Jr. chalaca 598','DIS51','452-9654','CASADO','poi@hotmail.com','895623','1921305400','1')
INSERT INTO Cliente VALUES ('C0005','Mario','Hidalgo Condori','15/06/1975','M','45138841','av.arequipa 458','DIS31','456-8974','SOLTERO','jhg_45@hotmail.com','235689','1911939502','1')
INSERT INTO Cliente VALUES ('C0006','Manuel','Villalta Talaverano','01/04/1974','M','42968574','AV Inca Garcilazo','DIS45','564-9874','CASADO','fd14@hotmail.com','784512','1961651800','1')
INSERT INTO Cliente VALUES ('C0007','Daniel','Tarazona Panda','05/02/1974','M','48748565','AV Javier Prado 145','DIS16','855-6598','CASADO','dsa_154@hotmail.com','124578','1911891208','1')
INSERT INTO Cliente VALUES ('C0008','Monica','Yangua Pajuelo','12/06/1974','F','47437602','Jr.las cumbres 121','DIS15','798-4879','SOLTERO','auy_45@hotmail.com','741852','1951112209','1')
INSERT INTO Cliente VALUES ('C0009','Mario','Aguila Ramos','10/01/1974','M','44020877','AV Las palmeras 244','DIS12','456-9874','CASADO','aa_14@hotmail.com','963852','2004444508','1')
INSERT INTO Cliente VALUES ('C0010','Luisa','Quesada Blas','21/02/1975','F','43215487','AV Arequipa 452','DIS15','123-6542','CASADO','rosa_45@hotmail.com','666666','1982222308','1')

GO

2. VISUAL STUDIO 2005/2008/2010

2.1 DISEÑO DEL FORMULARIO



SOLO configurar las propiedades indicadas en cada uno de los controles del formulario(Ver Cuadro de Controles), lo que no se indica dejarlo tal como está.
Cuadro de Controles
Botones ContextMenuStrip DataGridView
Para el boton "Cargar Datos":
  • Name: btnCargarDatos
  • FlatStyle: Flat
  • Text: Cargar Datos
Para el ContextMenuStrip:
  • Name: cmsMenu
  • Items(Coleccion): Agregar MenuItem
Para el MenuItem:
  • Name: tsmiXls
  • Text: Exportar a Excel
Para el DataGridView:
  • Name: dgvExportar
  • AllowUserToAddRows: False
  • AllowUserToDeleteRows: False
  • ReadOnly: True
  • ContextMenuStrip: cmsMenu
  • SelectionMode: FullRowSelect
  • AlternatingRowsDefaultCellStyle >> Backcolor: GradientInactiveCaption

2.2 Agregar Referencia Excel


Pasos:
  • Descargar Dll Aqui
  • Click derecho en "Referencias" y elegir la opcion "Agregar Referencia"
  • En la pestaña "Examinar" ubicar el Dll descargado previamente
  • Verificar que la referencia se haya agregado correctamente tal como se muestra en la siguiente imagen:


2.3 Codificación

Ingresar el siguiente código dentro del Formulario
Imports System.Data
Imports System.Data.SqlClient

Public Class Form1

    Dim dt As New DataTable

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Llamamos a la subrutina que crea el datatable
        CrearTabla()
    End Sub

    'Subrutina para Crear el DataTable
    Private Sub CrearTabla()
        If dgvExportar.Columns.Count = 0 Then
            With dt.Columns
                .Add("Cliente_Id")
                .Add("Cli_Nombres")
                .Add("Cli_FechaNac")
                .Add("Cli_Sexo")
                .Add("Cli_Dni")
            End With
            dgvExportar.DataSource = dt

            With dgvExportar
                .Columns(0).HeaderText = "Id"
                .Columns(0).Width = 70

                .Columns(1).HeaderText = "Nombres"
                .Columns(1).Width = 180

                .Columns(2).HeaderText = "Fecha Nacimiento"
                .Columns(2).Width = 75

                .Columns(3).HeaderText = "Sexo"
                .Columns(3).Width = 40

                .Columns(4).HeaderText = "Dni"
                .Columns(4).Width = 70
            End With

        End If
    End Sub

    Private Sub btnCargarDatos_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCargarDatos.Click
        'Cadena de conexion a la BD
        'Nota: Configurar password
        Dim cadconex As String = "server=.;database=Bd_Tutoriales;user id=sa; password=xxxx"
        Dim cn As New SqlConnection(cadconex)
        Dim cmd As New SqlCommand
        Dim da As New SqlDataAdapter

        Try
            With cmd
                .Connection = cn
                'Consultamos en la BD los campos necesarios que seran llenados en el DataTable 
                .CommandText = "select cliente_id,cli_nombre+' '+cli_apellidos as cli_nombres,cli_fechanac,cli_sexo,cli_dni from cliente"
                .CommandType = CommandType.Text
            End With
            da.SelectCommand = cmd
            'Llenamos el datatable
            da.Fill(dt)

        Catch ex As Exception
            MsgBox(ex.ToString)
        End Try

    End Sub

    'Funcion para Exportar a Excel
    Private Function Exportando_a_Excel(ByVal vDt As DataTable, ByVal vGrid As DataGridView) As Boolean
        Dim xls As New Excel.Application
        With xls
            .Visible = True
            .Workbooks.Add()
            Dim I, J, K As Integer

            For J = 0 To vGrid.Columns.Count - 1

                If vGrid.Columns(J).Visible = True Then            
                    Dim vHeader As String = vGrid.Columns.Item(J).HeaderText.ToString.Trim

                    If K = 0 Then
                        If vHeader <> "" Then
                            .Cells(1, J + 1).Value = vHeader
                        End If
                    Else
                        If vHeader <> "" Then
                            .Cells(1, K + 1).Value = vHeader
                            K = K + 1
                        End If
                    End If
                Else
                    If K = 0 Then

                        K = J
                    End If

                End If
            Next

            K = 0

            For I = 0 To vDt.Rows.Count - 1
                For J = 0 To vGrid.Columns.Count - 1

                    If vGrid.Columns(J).Visible = True Then

                        If K = 0 Then

                            If vGrid.Columns.Item(J).HeaderText.ToString.Trim <> "" Then
                                If IIf(vGrid.Columns(J).Name.ToString.Trim <> "", vGrid.Columns(J).Name.Substring(4, 1).ToUpper, "") = "C" Then
                                    .Cells(I + 2, J + 1).numberformat = "@"
                                End If
                                .Cells(I + 2, J + 1).Value = vGrid.Rows(I).Cells(J).Value.ToString.Trim  'Consulta.Rows(I)(J)
                            End If

                        Else


                            If vGrid.Columns.Item(J).HeaderText.ToString.Trim <> "" Then
                                If IIf(vGrid.Columns(J).Name.ToString.Trim <> "", vGrid.Columns(J).Name.Substring(4, 1).ToUpper, "") = "C" Then
                                    .Cells(I + 2, K + 1).numberformat = "@"
                                End If
                                .Cells(I + 2, K + 1).Value = vGrid.Rows(I).Cells(J).Value.ToString.Trim
                            End If

                            K = K + 1

                        End If

                    Else
                        If K = 0 Then
                            K = J
                        End If

                    End If
                Next
            Next


            .Rows("1:1").Select()
            .Selection.Font.Bold = True
            .Cells.Select()
            .Selection.ColumnWidth = 0
            .Cells.EntireColumn.AutoFit()
            .Range("A1").Select()

            .Sheets("Hoja1").name = "Data Exportada"
            .Sheets("Hoja2").delete()
            .Sheets("Hoja3").delete()

        End With
        Return True
    End Function

    'Evento Click del Menu Contextual "Exportar a Excel"
    Private Sub tsmiXls_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles tsmiXls.Click
        Exportando_a_Excel(dt, dgvExportar)
    End Sub
End Class


Video Demostrativo

TUTORIAL DE LA APLICACIÓN

1. Diseño del Formulario



SOLO configurar las propiedades indicadas en cada uno de los controles del formulario(Ver Cuadro de Controles), lo que no se indica dejarlo tal como está.
Cuadro de Controles
Botones TextFields DataGridViews
Para el boton "XLS":
  • Name: btnXLS
  • FlatStyle: Flat
Para el campo "Ruta XLS":
  • Name: txtRutaXLS
  • BorderStyle: FixedSingle
  • ReadOnly: True
Para el DataGridView:
  • Name: dgvImportacion
  • AllowUserToAddRows: False
  • AllowUserToDeleteRows: False
  • ReadOnly: True
  • SelectionMode: FullRowSelect

2. Codificación

Ingresar el siguiente código dentro del Formulario
Imports System.Data.OleDb 'Importacion necesaria para trabajar con ficheros excel

Public Class FrmImportacionDatos
    'EVENTO CLICK DEL BOTON XLS
    Private Sub btnXLS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnXLS.Click
        'Instanciamos nuestro cuadro de dialogo
        Dim openFileDialog1 As New OpenFileDialog
        'Directorio Predeterminado
        openFileDialog1.InitialDirectory = "C:\"
        'Filtramos solo archivos con extension *.xls
        openFileDialog1.Filter = "Archivos de Microsoft Office Excel (*.xls)|*.xls"

        'Si se presiona abrir entonces...
        If openFileDialog1.ShowDialog() = Windows.Forms.DialogResult.OK Then
            'Asignamos la ruta donde se almacena el fichero excel que se va a importar
            txtRutaXLS.Text = openFileDialog1.FileName

            'Instanciamos nuestra cadena de conexion especial para excel,indicando la ruta del fichero
            Dim cadconex As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Me.txtRutaXLS.Text.Trim & ";Extended Properties=""Excel 8.0;HDR=Yes;IMEX=1"""
            Dim cn As New OleDb.OleDbConnection(cadconex)
            Dim cmd As New OleDbCommand
            Dim da As New OleDb.OleDbDataAdapter
            Dim dt As New DataTable

            cmd.Connection = cn
            'Consultamos la hoja llamada Clientes de nuestro archivo *.xls
            cmd.CommandText = "select * from [Clientes$]"
            cmd.CommandType = CommandType.Text

            da.SelectCommand = cmd
            'Llenamos el datatable
            da.Fill(dt)
            'Llenamos el Datagridview
            dgvImportacion.DataSource = dt
            'Ajustamos las columnas del DataGridView
            dgvImportacion.AutoSizeColumnsMode = 6
        End If
    End Sub
End Class


Video Demostrativo

1. ¿Qué es JQuery?

JQuery es un framework de Javascript, con la que podemos:
  • Manipular el arbol DOM
  • Manejar eventos
  • Desarrollar animaciones
  • Agregar interacción con la tecnología AJAX a páginas web.
  • Manipulación de la hojas de estilos CSS.

2. WIDGETS CON JQUERY

2.1 Datepicker Simple por Defecto

El datepicker esta vinculado a un textfield. Se debe enfocar en el campo de entrada para abrir un calendario interactivo. Finalmente se elige la fecha y listo!.
Nota: Click en el textbox para que pueda probarlo!



2.2 Datepicker con Lista de Desplegable para el Mes y el Año

Muestra el mes y año en la cabecera del combo del mes y el año para facilitar la navegación a través de calendarios de gran tamaño. Finalmente se elige la fecha y listo!.
Nota: Click en el textbox para que pueda probarlo!



2.3 Datepicker habilitado desde un icono

Haga click en el icono junto al campo de entrada para mostrar el datepicker. Finalmente se elige la fecha y listo!.
Nota: Click en el icono para que pueda probarlo!



2.4 Datepicker localizado desde otros idiomas

Localice el lenguaje del calendario del datepicker (El Formato Español está por defecto). El datepicker incluye idiomas de español, francés, inglés, italiano y portugués. Finalmente se elige la fecha y listo!.
Nota: Seleccione un idioma y haga click en el textbox para que pueda probarlo!



3. ANIMACIONES

3.1 Cargar Contenido desde Menu

En este ejemplo se añade la funcionalidad de AJAX para que el contenido se cargue en el contenedor correspondiente, en lugar de que el usuario tenga que desplazarse a otra página. También se muestra la integración de algunos efectos de animación
Nota: Debajo de la imagen haga click en "VER DEMO" para que pueda probarlo!

3.2 Accordion Dropdown

Los acordeones puede ser muy útiles para mostrar muchas de secciones diferentes en una pequeña cantidad de espacio. En este ejemplo se abre y cierra el contenido por cada seccion del menu.
Nota: Debajo de la imagen haga click en "VER DEMO" para que pueda probarlo!

3.3 Mosaico Slideshow

En este ejemplo, el efecto de mosaico del slideshow se consigue dividiendo la imagen original en partes más pequeñas. Estos cuadros, que contienen partes de la imagen, se oculta a la vista de forma secuencial, lo que provoca el efecto.
Nota: Debajo de la imagen haga click en "VER DEMO" para que pueda probarlo!

TUTORIAL DE LA APLICACIÓN


1. Diseño del Formulario



SOLO configurar las propiedades indicadas en cada uno de los controles del formulario(Ver Cuadro de Controles), lo que no se indica dejarlo tal como está.

Cuadro de Controles
Botones TextFields
Para el boton "Encriptar":
  • Name: btnEncriptar
  • Text: Encriptar
  • FlatStyle: Flat
Para el boton "Desencriptar":
  • Name: btnDesencriptar
  • Text: Desencriptar
  • FlatStyle: Flat
Para el campo "Texto":
  • Name: txtTexto
  • BorderStyle: FixedSingle
Para el campo "Resultado":
  • Name: txtResultado
  • BorderStyle: FixedSingle

2. Codificación

Ingresar el siguiente código dentro del Formulario
'Importaciones necesarias
Imports System.Security.Cryptography
Imports System.Text

Public Class Form1

    Private des As New TripleDESCryptoServiceProvider'Algorithmo TripleDES
    Private hashmd5 As New MD5CryptoServiceProvider 'objeto md5
    Private myKey As String = "MyKey2012" 'Clave secreta(puede alterarse)

'Funcion para el Encriptado de Cadenas de Texto
Private Function Encriptar(ByVal texto As String) As String
        
        If Trim(texto) = "" Then
            Encriptar = ""
        Else
            des.Key = hashmd5.ComputeHash((New UnicodeEncoding).GetBytes(myKey))
            des.Mode = CipherMode.ECB
            Dim encrypt As ICryptoTransform = des.CreateEncryptor()
            Dim buff() As Byte = UnicodeEncoding.ASCII.GetBytes(texto)
            Encriptar = Convert.ToBase64String(encrypt.TransformFinalBlock(buff, 0, buff.Length))
        End If
        Return Encriptar
End Function


'Funcion para el Desencriptado de Cadenas de Texto
Private Function Desencriptar(ByVal texto As String) As String
        If Trim(texto) = "" Then
            Desencriptar = ""
        Else
            des.Key = hashmd5.ComputeHash((New UnicodeEncoding).GetBytes(myKey))
            des.Mode = CipherMode.ECB
            Dim desencrypta As ICryptoTransform = des.CreateDecryptor()
            Dim buff() As Byte = Convert.FromBase64String(texto)
            Desencriptar = UnicodeEncoding.ASCII.GetString(desencrypta.TransformFinalBlock(buff, 0, buff.Length))
        End If
        Return Desencriptar
End Function

'Eventos Click de los botones "Encriptar" y "Desencriptar"
Private Sub btnEncriptar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEncriptar.Click
        Me.txtResultado.Text = Encriptar(Me.txtTexto.Text.Trim)
End Sub

Private Sub btnDesencriptar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDesencriptar.Click
        Me.txtResultado.Text = Desencriptar(Me.txtTexto.Text.Trim)
End Sub

End Class



Video Demostrativo

Copyright © 2014 Trujillo - Perú