Los programadores de verdad no comentan su código. Si fue difícil escribirlo, debería ser difícil entenderlo, y más difícil de modificar.

Los programadores nunca mueren, tan sólo se pierden en el Proceso

Los programadores nunca mueren, tan sólo se pierden en el Proceso

domingo, 16 de junio de 2013

PASOS PARA EL USO DE SQL SERVER

Para el uso de SQL SERVER 2008, se debe realizar los siguientes pasos:

1.- Se debe ingresar a SQL SERVER, seleccionando el menú Inicio, ejecutar (tecla Windows + R) y digitar el ejecutable, como se muestra en la imagen:


2.- Luego se debe conectar al servidor, colocando el nombre del servidor, en este caso se coloca un punto, luego seleccionar el botón Conectar como se encuentra en la imagen.


3.- Luego se va a ingresar a SQL SERVER, y se visualizara el entorno de SQL SERVER 2008, se debe identificar al explorador de objetos. Ahora se va crear una base de datos utilizando el administrador corporativo. Se debe seleccionar, el explorador de objetos, carpeta base de datos, menú contextual y seleccionar nueva base de datos, como se encuentra en la imagen:


4.- Se debe colocar el nombre de la base de datos, en este caso se va a llamar facturación, luego se debe aceptar.


5.- Se va visualizar en el explorador e objeto la base de datos q se ha creado, ahora se debe seleccionar la base de datos Facturación, buscar la carpeta tablas, menú contextual, y luego seleccionar la opción nueva tabla, como se encuentra en el imagen.


6.- Luego se de crear la tablas necesarias, utilizando el tipo de datos, colocando la clave primaria, indicando cuales son los campos que acepten valores nulos, como se encuentra en el siguiente imagen.


Se debe colocar la clave primaria, se debe seleccionar el campo (Num_Factura), menú contextual y seleccionar la opción establecer clave principal. Luego se debe guardar con el nombre Factura.



7.- Luego se debe realizar el diagrama de base de datos, se debe seleccionar la carpeta diagrama de base de datos, en la base de datos facturación, seleccionar el menú contextual y la opción nuevo diagrama de base de datos, como se encuentra en el imagen.


8.- Luego se debe seleccionar, las tablas que se va a relacionar como en el imagen:


9.- Luego se debe realizar el siguiente diagrama y se debe guardar con el nombre diagrama_facturacion:


10.- Ahora se debe agregar registros de datos a las tablas, en el explorador de objetos, seleccionamos la tabla Clientes, seleccionar el menú contextual, opción abrir tabla, como en el imagen.


11.- Luego se debe ingresar 10 registros a cada tabla de la base de datos facturación, como en el ejemplo.


12. Ahora se puede utilizar script para la creación de base de datos, tablas y trabajar con las sentencias Transact –SQL, se debe seleccionar el icono de nueva consulta que se encuentra en el cuadro de herramientas.

13. Luego se debe colocar el siguiente código para crear una base de datos, luego seleccionar las líneas de código y presionar la tecla F5.

USE MASTER
GO
CREATE DATABASE FACTURACION_SCRIPT
GO

14. Ahora se va a crear las tablas utilizando el modelo anterior de la base de datos facturación que ya se ha creado, se debe seleccionar la base de datos Facturacion_script, como se muestra en el imagen.
El código para crear la tabla factura:

CREATE TABLE FACTURA (
Num_factura char(11) primary key not null,
id_cliente char(4) not null,
fecha datetime null,
id_vendedor nchar(4),
monto real)


Luego se debe seleccionar las líneas de código y luego presionar la tecla F5.

15. Ahora se va a utilizar las sentencias transact SQL para insertar datos a la Base de Datos Facturacion_script, se debe realizar las siguientes sentencias:

insert into clientes values ('c001','Tatiana','Alvarez Pinedo'. 'av pachacamac 123')

Para visualizar los datos:

Select * from clientes

Nota: Al ingresar los datos, se debe tener en cuenta cuales son los campos que admiten valores nulos, el tipo de dato de las columnas y las columnas que son claves primarias. Solo las columnas que tienen tipo de datos de cadena (nchar, nvarchar, varchar, char) utilizan apostrofe.

16.- Ahora luego de terminar de realizar las acciones indicadas en la clase, se debe llevar la base de datos, en lo cual se debe detener el servicio de SQL SERVER como se encuentra en la imagen.



Luego se debe ir a la siguiente dirección:

C:\Archivos de programa\Microsoft SQL Server\MSSQL.2\MSSQL\Data
Se debe copiar los dos archivos, de la base de datos facturación.















sábado, 15 de junio de 2013

SQL SERVER CONCEPTOS BASICOS

BASE DE DATOS RELACIONAL

Una base de datos se puede definir como un conjunto de información que pertenece al mismo contexto, que se encuentra agrupada ó almacenada para su uso posterior.
En este sentido, una biblioteca puede considerarse una base de datos compuesta en su mayoría por documentos y textos impresos en papel e indexados para su consulta.

Sistema Administradora de Base de Datos (SGBD)

Los Sistemas de gestión de base de datos son un tipo de software muy específico, dedicado a servir de interfaz entre la base de datos, el usuario y las aplicaciones que la utilizan.
Se compone de un lenguaje de definición de datos, de un lenguaje de manipulación de datos y de un lenguaje de consulta.
En los textos que tratan este tema, o temas relacionados, se mencionan los términos SGBD y DBMS, siendo ambos equivalentes, y acrónimos, respectivamente, de Sistema Gestor de Bases de Datos y DataBase Management System.

SQL SERVER

Concepto: SQL SERVER es un sistema administrador de Base de Datos Relacional, Cliente – Servidor, que permite una mayor escalabilidad de explorar objetos de Base de Datos y la integración de secuencias de los comandos en la base de Datos OLTP y OLAP. Contiene las versiones 2000, 2005, 2008, 2008 R2 y 2012, esta última versión fue presentada en este año.
En sus últimas dos versiones SQL SERVER facilita una plataforma integral empresarial con procedimientos analíticos integrados en la cual se incluye:

 El procesamiento Analítico en Línea (OLAP).
 Minería de Datos (OLAP).
 Las Herramientas de gestión y administración.
 El almacenamiento de datos y desarrollo de informes.
SQL SERVER facilitara a las empresas a construir y desarrollar sin complicaciones
aplicaciones de inteligencia empresarial robustas y controlar el costo en el
desarrollo de estas aplicaciones. Permite a realizar los siguientes aspectos:
 Desarrollar e innovar aplicaciones empresariales.
 Optimizar la productividad de los TI, reduce la complejidad en la creación y administración de la aplicación de base de datos.
 Aumentar las capacidades de los programadores con un entorno de desarrollo Flexible y actual.
 Compartir datos a través de múltiples plataformas y aplicaciones.



Principales características de SQL SERVER 2008:

 Comprensión de datos.
 Paralelismo de tablas particionada.
 Optimización de Star Join Query.
 Integración optimizada con el sistema Office.
 Reporting Services Mejorado.
 Las consultas distribuidas en el motor de base de datos.
 Los altos niveles de seguridad, encriptación de datos.
 Programabilidad en el motor de Base de Datos.
 Desarrollo de base de datos espejos.
 Integracion en XML de datos Relacionados.
 Arquitectura de interfaz virtual.
 Etc.

CREACION DE BASE DE DATOS

Puede utilizar SQL Server para realizar procesamiento de transacciones, almacenar y analizar datos, y generar nuevas aplicaciones de base de datos.



SQL Server es una familia de productos y tecnologías que cumple los requisitos de almacenamiento de datos de los entornos de procesamiento de transacciones en línea (OLTP) y procesamiento analítico en línea (OLAP). SQL Server es un sistema de administración de bases de datos relacionales (RDBMS) que:

 Administra el almacenamiento de datos para las transacciones y los análisis.
 Almacena datos en una amplia gama de tipos de datos, incluyendo texto, numérico, lenguaje de marcado extensible (XML) y objetos grandes.
 Responde a las solicitudes de las aplicaciones cliente.
 Utiliza Transact-SQL, XML u otros comandos de SQL Server para enviar solicitudes entre una aplicación cliente y SQL Server.
El componente RDBMS de SQL Server es responsable de lo siguiente:
 Mantener las relaciones existentes entre los datos de una base de datos.
 Garantizar que los datos se almacenan correctamente y que no se infringen las reglas que definen las relaciones entre los datos.
 Recuperar todos los datos hasta un punto de coherencia conocida, en caso de que se produzca un error del sistema.

BASES DE DATOS OLTP

Las tablas relacionales organizan los datos de una base de datos OLTP para reducir la información redundante y aumentar la velocidad de las actualizaciones. SQL Server permite que un número elevado de usuarios realicen transacciones y modifiquen simultáneamente datos en tiempo real en bases de datos OLTP.

BASES DE DATOS OLAP

La tecnología OLAP se utiliza para organizar y resumir grandes cantidades de datos de manera que un analista pueda evaluar los datos rápidamente y en tiempo real. Microsoft SQL Server Analysis Services organiza estos datos para admitir una amplia variedad de soluciones empresariales, desde informes y análisis corporativo hasta modelado de datos y ayuda a la toma de decisiones.

GUARDAR LAS BD EN SQL SERVER

Al crear una base de datos, es importante entender cómo SQL Server 2008 almacena los datos para que pueda calcular y especificar la cantidad de espacio en disco que debe asignar a los archivos de datos y registros de transacciones. Considere los datos e instrucciones siguientes sobre el almacenamiento de datos:

 Todas las bases de datos tienen un archivo de datos principal (.mdf) y uno o más archivos de registro de transacciones (.ldf). Una base de datos también puede tener archivos secundarios de datos (.ndf). Estos archivos físicos tienen los nombres de los archivos del sistema operativo y los nombres de los archivos lógicos que se pueden usar en las instrucciones Transact-SQL. La ubicación predeterminada para todos los archivos de datos y los registros de transacciones es C:\Archivos de programas\ Microsoft SQL Server \MSSQL10_50.MSSQLSERVER \MSSQL\DATA
 Al crear una base de datos, una copia de la base de datos model, donde se incluyen las tablas del sistema, se copia en la base de datos y el resto de la base de datos se rellena con páginas vacías.
 Los datos se almacenan en bloques de 8 kilobytes (KB) de espacio en disco contiguo llamado páginas. Esto significa que una base de datos puede almacenar 128 páginas por megabyte (MB).

Consideraciones a utilizar antes de crear una Base de Datos:

A la hora de planear una nueva base de datos, debe tener en cuenta varios aspectos. Ellos incluyen, pero sin limitarse a, los siguientes:

 Propósito del almacenamiento de datos. Las bases de datos OLTP y OLAP tienen propósitos diferentes y, por tanto, tienen distintos requisitos de diseño.
 Rendimiento de transacciones. Las bases de datos OLTP suelen tener un requisito alto en cuanto al número de transacciones que se pueden procesar por minuto, hora o día. Un diseño eficiente con un nivel adecuado de normalización, índices y particiones de datos puede lograr un rendimiento de transacciones muy alto.
 Crecimiento potencial del almacenamiento físico de datos. Unas cantidades de datos elevadas requieren un hardware adecuado en cuanto a memoria, espacio en disco duro y capacidad de la unidad central de procesamiento (CPU). Una estimación de la cantidad de datos que su base de datos almacenará durante los meses y años venideros ayudará a garantizar que la base de datos siga funcionando eficazmente. Puede configurar las bases de datos para que los archivos crezcan automáticamente hasta alcanzar un tamaño máximo especificado. Sin embargo, el crecimiento automático de los archivos puede afectar el rendimiento. En la mayoría de las soluciones de bases de datos basadas en servidor, debe crear la base de datos con unos archivos correctamente dimensionados, supervisar el uso del espacio y reasignar más espacio sólo cuando sea necesario.
 Ubicación de los archivos. El lugar donde coloca los archivos de base de datos puede afectar el rendimiento. Si tiene la posibilidad de utilizar varias unidades de disco, puede repartir los archivos de base de datos en más de un disco. Esto permite a SQL Server aprovechar varias conexiones y varios cabezales de disco para lograr una lectura y una escritura eficientes de los datos.

PROCEDIMIENTOS ALMACENADOS

PROCEDIMIENTOS ALMACENADOS

Es un conjunto de instrucciones de Transact – SQL, en donde SQL SERVER compila en un único plan de ejecución, cuyo plan es almacenado en el área de cache de procedimientos de la memoria y que al momento de ejecutar SQL SERVER no tiene que recompilar al Procedimiento Almacenado.
Es una colección con nombres de instrucciones de transact-SQL, que se almacena en el servidor, también se define como un método para encapsular tareas repetitivas, además admiten variables declaradas por el usuario, sentencias condicionales, etc.
Los procedimientos almacenados inician con el procesamiento de datos de la siguiente forma:



Luego cuando se ejecuta se trabaja internamente de la siguiente forma:



Sus principales características de los Procedimientos Almacenados locales en equipos clientes son:

a) Permiten la programación modular.
b) Permite la ejecución más rápida del código.
c) Permite la reducción en el tráfico de red.
d) Pueden utilizarse como mecanismo de seguridad.

Los tipos de Procedimientos son:

a. Procedimientos almacenados del sistema.
b. Procedimientos Almacenados Locales.
c. Procedimientos Almacenados Temporales.
d. Procedimientos Almacenados Remotos.
e. Procedimientos Almacenados Extendidos

Para realizar los procedimientos almacenados en este caso usaremos la siguiente base de datos:




Ahora empezaremos creando un procedimiento almacenado:

create procedure ListaEmpleados
as
select * from Empleados

En el ejemplo anterior se esta creando un procedimiento almacenado que permite mostrar los datos de la tabla Empleados, para ejecutar realizaremos el siguiente codigo:

execute ListaEmpleados

Luego se va a mostrar la siguiente tabla:


Si deseamos modificar el procedimiento almacenado se usa ALTER.
En este ejemplo modificamos el procedimiento almacenado utilizando el siguiente código:

alter procedure ListaEmpleados
as
select * from Empleados
where ciudad = 'LONDRES'

Ahora ejecutamos el mismo procedimiento almacenado:

execute ListaEmpleados

Nos mostrara la siguiente tabla:


Observemos que ahora solo nos muestra a los empleados cuya ciudad es Londres esto pasa porque en la condición colocamos where ciudad = 'LONDRES'.












PROGRAMACIÓN EN SQL SERVER

En este caso vamos a crear una base de datos para una empresa que se dedica a la fabricación de joyas de fantasía fina, el propósito de este sistema es llevar un control exacto de los pedidos y los productos que se realizan en dicha empresa, además se desea saber porque áreas pasa cada producto durante el proceso de fabricación, cuantos productos ingresan y cuantos salen de cada área durante el proceso de fabricación.

PRIMERO CREAMOS LA BASE DE DATOS CON EL NOMBRE SISTEMA_JOYERIA

use master
go
create database Sistema_Joyeria
go
use Sistema_Joyeria
go

CREANDO TABLAS PARA LA BD SISTEMA JOYERIA

*Creamos la tabla Usuario:

create table Usuario (
Id_Usuario char(10) not null unique,
Usuario varchar(15) not null unique,
Contraseña varchar (15) not null,
)
go

AQUÍ INSERTAMOS ALGUNOS REGISTROS A LA TABLA USUARIO

insert into Usuario values ('USU0001','Roberth','12345')
insert into Usuario values ('USU0002','Henry','56789')
insert into Usuario values ('USU0003','Kevin','54321') 

*Creamos la tabla Orden_pedido:

create table Orden_pedido (

N_Orden char (10) primary key,
Fecha_ingreso varchar(25) not null,
Cantidad int not null,
Id_Producto char (10)foreign key references Producto (Id_Producto) not null,
Id_Empleado char(10) foreign key references Empleado(Id_Empleado)not null,
Id_Area char (10) foreign key references Area (Id_Area) not null
)
go

*Creamos la tabla Empleado:

create table Empleado (
Id_Empleado char (10) primary key,
Nom_Empleado varchar(25) not null,
Apellidos varchar (30)not null,
Edad int check (Edad >=18)not null,
Telefono char (11)unique,
Cod_Cargo char(10) foreign key references Cargo(Cod_Cargo)not null,
Id_Area char (10) foreign key references Area (Id_Area) not null
)
go

*Creamos la tabla Cargo:

create table Cargo (
Cod_Cargo char (10) primary key,
Nom_Cargo varchar (25)not null,
)
go

*Creamos la tabla Area:

create table Area (
Id_Area char (10) primary key,
Nom_Area varchar(25) not null unique ,
Id_Tproceso char (10) foreign key references Proceso (Id_Tproceso),
Id_Producto char (10) foreign key references Producto(Id_Producto),
)
Go

*Creamos la tabla Producto:

create table Producto (
Id_Producto char (10) primary key,
Nom_Producto varchar(25) not null,
Descripcion varchar (50),
Id_Categoria char(10) foreign key references Categoria(Id_Categoria) not null
)
go

*Creamos la tabla Categoria:

create table Categoria (
Id_Categoria char (10) primary key,
Nom_Categoria varchar(25) not null
)
go

*Creamos la tabla Proceso:

create table Proceso (
Id_Tproceso char (10) primary key,
Nom_Tproceso varchar(25)not null,
Descripcion varchar (100)
)
go

*Creamos la tabla Detalle_Orden_Pedido:

create table Detalle_Orden_Pedido (
N_Orden char (10) foreign key references Orden_pedido(N_Orden)not null,
Id_Producto char (10)foreign key references Producto (Id_Producto)not null,
Id_Area char (10)foreign key references Area (Id_Area)not null,
Id_Tproceso char (10)foreign key references Proceso (Id_Tproceso)not null,
Cant_Entrada int not null,
Cant_Salida int not null,
)
go

Hasta aqui tenemos todas las tablas ya creadas y relacionadas en nuestra base de datos Sistema_Joyeria.


viernes, 14 de junio de 2013

CODIGOS EN VISUAL BASIC

*Formulario Pantalla Completa:

Me.WindowState = FormWindowState.Maximized

*Abrir canciones:

OpenFileDialog1.ShowDialog()
        AxWindowsMediaPlayer1.URL = OpenFileDialog1.FileName

*Abrir páginas con un botón:

Try
System.Diagnostics.Process.Start("URL de la pagina")
Catch
'Code to handle the error.
End Try

*Códigos de login: (en este se deben usar un botón, 2 textbox y un formulario):

If TextBox1.Text = "Tu Usuario" And TextBox2.Text = "Tu Password" Then
            Form2.Show()

        Else
            MsgBox("Incorrecta User/Password", MsgBoxStyle.Critical, "Titulo del mensaje")
        End If

*Código para keygen: (en este caso se usa un textbox, un botón y un formulario):

TextBox1.Text = Int(Rnd() * 4)
        Select Case TextBox1.Text
            Case 0
                TextBox1.Text = "XMLWDD-QQEWOLOFSF-Q10PP"
            Case 1
                TextBox1.Text = "XMLWDD-QQEWOLOFSF-Q10PP"
            Case 2
                TextBox1.Text = "XMLWDD-QQEWOLOFSF-Q10PP"
            Case 3
                TextBox1.Text = "XMLWDD-QQEWOLOFSF-Q10PP"
        End Select

*Código para abrir archivos TXT: (este no estoy muy seguro que funcione):

Sub SaveTextBoxInFile(ByVal FileName As String, ByRef Text As TextBox)
On Error Resume Next
Close
Open FileName For Output As #1
If Err > 0 Then Exit Sub
Print #1, Text.Text
Close
End Sub
Sub GetFileToTextBox(ByVal FileName As String, ByRef Text As TextBox)
On Error Resume Next
Close
Open FileName For Input As #1
If Err > 0 Then Exit Sub
Text.Text = Input(LOF(1), 1)
Close
End Sub
Private Sub Command1_Click()
GetFileToTextBox "C:\Texto.txt", Text1
End Sub
Private Sub Command2_Click()
SaveTextBoxInFile "C:\Texto.txt", Text1
End Sub

*Reproducir un audio en un formulario:

My.Computer.Audio.Play("Directorio de la canción", AudioPlayMode.WaitToComplete)

*Códigos para crear un juego de Tic Tac Toe (estos códigos van separados por una raya larga, recuerden quitarla para que les funcione y asignar cada código con su respectivo lugar):

Form Code:
turn = 1
__________________________
Buttons Click X and O:
If turn = 1 Then
            Button1.Text = "O"
            Label2.Text = "X"
        Else
            Button1.Text = "X"
            Label2.Text = "O"
        End If
        turn += 1
        If turn > 2 Then
            turn = 1
        End If
        Call win()
        Button1.Enabled = False
____________________________________
Button Reset:
Button1.Text = ""
        Button1.Enabled = True
        Button2.Text = ""
        Button2.Enabled = True
        Button3.Text = ""
        Button3.Enabled = True
        Button4.Text = ""
        Button4.Enabled = True
        Button5.Text = ""
        Button5.Enabled = True
        Button6.Text = ""
        Button6.Enabled = True
        Button7.Text = ""
        Button7.Enabled = True
        Button8.Text = ""
        Button8.Enabled = True
        Button9.Text = ""
        Button9.Enabled = True
_______________________________
Control Turn:
Dim turn As Integer
_________________________________
Other Command:
Private Sub win()
        If Button1.Text = "X" And Button2.Text = "X" And Button3.Text = "X" Then
            MsgBox("Player X wins!")
            Label6.Text += 1
            Call disablebuttons()
        ElseIf Button4.Text = "X" And Button5.Text = "X" And Button6.Text = "X" Then
            MsgBox("Player X wins!")
            Label6.Text += 1
            Call disablebuttons()
        ElseIf Button7.Text = "X" And Button8.Text = "X" And Button9.Text = "X" Then
            MsgBox("Player X wins!")
            Label6.Text += 1
            Call disablebuttons()
        ElseIf Button1.Text = "X" And Button4.Text = "X" And Button7.Text = "X" Then
            MsgBox("Player X wins!")
            Label6.Text += 1
            Call disablebuttons()
        ElseIf Button2.Text = "X" And Button5.Text = "X" And Button8.Text = "X" Then
            MsgBox("Player X wins!")
            Label6.Text += 1
            Call disablebuttons()
        ElseIf Button3.Text = "X" And Button6.Text = "X" And Button9.Text = "X" Then
            MsgBox("Player X wins!")
            Label6.Text += 1
            Call disablebuttons()
        ElseIf Button1.Text = "X" And Button5.Text = "X" And Button9.Text = "X" Then
            MsgBox("Player X wins!")
            Label6.Text += 1
            Call disablebuttons()
        ElseIf Button3.Text = "X" And Button5.Text = "X" And Button7.Text = "X" Then
            MsgBox("Player X wins!")
            Label6.Text += 1
            Call disablebuttons()

            ''NOW FOR THE "O"!
            '' MAke a big space here for fun
            'so that we can see diff sides

        ElseIf Button1.Text = "O" And Button2.Text = "O" And Button3.Text = "O" Then
            MsgBox("Player O wins!")
            Label7.Text += 1
            Call disablebuttons()
        ElseIf Button4.Text = "O" And Button5.Text = "O" And Button6.Text = "O" Then
            MsgBox("Player O wins!")
            Label7.Text += 1
            Call disablebuttons()
        ElseIf Button7.Text = "O" And Button8.Text = "O" And Button9.Text = "O" Then
            MsgBox("Player O wins!")
            Label7.Text += 1
            Call disablebuttons()
        ElseIf Button1.Text = "O" And Button4.Text = "O" And Button7.Text = "O" Then
            MsgBox("Player O wins!")
            Label7.Text += 1
            Call disablebuttons()
        ElseIf Button2.Text = "O" And Button5.Text = "O" And Button8.Text = "O" Then
            MsgBox("Player O wins!")
            Label7.Text += 1
            Call disablebuttons()
        ElseIf Button3.Text = "O" And Button6.Text = "O" And Button9.Text = "O" Then
            MsgBox("Player O wins!")
            Label7.Text += 1
            Call disablebuttons()
        ElseIf Button1.Text = "O" And Button5.Text = "O" And Button9.Text = "O" Then
            MsgBox("Player O wins!")
            Label7.Text += 1
            Call disablebuttons()
        ElseIf Button3.Text = "O" And Button5.Text = "O" And Button7.Text = "O" Then
            MsgBox("Player O wins!")
            Label7.Text += 1
            Call disablebuttons()
        End If
_________________________________________________________________________________

Button Disable Other:
Private Sub disablebuttons()
        Button1.Enabled = False
        Button2.Enabled = False
        Button3.Enabled = False
        Button4.Enabled = False
        Button5.Enabled = False
        Button6.Enabled = False
        Button7.Enabled = False
        Button8.Enabled = False
        Button9.Enabled = False

*Códigos para crear un envío de mensajes a correos Gmail (estos códigos están separados por una larga raya, recuerda quitarlas y ponerlas en sus respectivos lugares, ahí dice donde va cada uno para no confundir):

Control Code:
Imports System.Net.Mail
_______________________________
Button Iniciar Sesion:
If ComboBox1.Text = "" Then
            MsgBox("No Se Pudo Conectar Con El Servidor, Compruebe Su Correo", , "Mensaje:")
        Else
            If TextBox1.Text = "" Then
                MsgBox("No Se Pudo Conectar Con El Servidor, Compruebe Su Contraseña", , "Mensaje:")
            Else
                MsgBox("Servidor: Gmail Mexico City: Conectado", , "Atencion!:")
                sender.Show()
                Me.Hide()
                Me.Visible = False
                Form2.Show()
            End If
        End If
________________________________________________________________________
Button Enviar:
Dim mail As New MailMessage()
        Dim SmtpServer As New SmtpClient
        SmtpServer.Credentials = New Net.NetworkCredential(Form1.ComboBox1.Text, Form1.TextBox1.Text)
        SmtpServer.Port = 587
        SmtpServer.Host = "smtp.gmail.com"
        SmtpServer.EnableSsl = True
        mail.To.Add(TextBox1.Text)
        mail.From = New MailAddress(Form1.ComboBox1.Text)
        mail.Subject = TextBox2.Text
        mail.Body = TextBox3.Text
        Try
            SmtpServer.Send(mail)
            MsgBox("Youre E-Mail Was Send", MsgBoxStyle.Information, "E-Mail Send")
            Me.Close()
            Form2.Show()
        Catch ex As Exception
            MsgBox("An Error Has Occured... Mail Did Not Send", MsgBoxStyle.Exclamation, "Error Please Retry")
            MsgBox("Trying To Send Mail Agin", MsgBoxStyle.Exclamation, "Trying Agin")
        End Try

jueves, 13 de junio de 2013

VISUAL BASIC

En el siguiente formulario se realiza un pequeño ejemplo de un mantenimiento con procedimientos almacenados realizados en sql server 2008.

 

Luego se realiza el siguiente código:

OBJETO: GENERAL                  EVENTO: DECLARACIONES 

Imports System.Data
Imports System.Data.SqlClient

OBJETO: Form1                 EVENTO: DECLARACIONES 

    Dim da As New SqlDataAdapter("select * from categoria", cn)

CREAR LA FUNCION LIMPIAR:

    Sub limpiar()
        Dim con As Control
        For Each con In Me.Panel1.Controls
            If TypeOf con Is TextBox Then con.Text = ""
        Next
    End Sub

CREAR LA FUNCION HABILITAR:

    Sub habilitar(ByVal dito As Boolean)
        Me.BTNNUEVO.Enabled = dito
        Me.BTNEDITAR.Enabled = dito
        Me.BTNGUARDAR.Enabled = Not dito
        Me.BTNBUSCAR.Enabled = dito
        Me.BTNCANCELAR.Enabled = Not dito
        Me.BTNSALIR.Enabled = dito
        Me.Panel1.Enabled = Not dito
    End Sub

CREAR LA FUNCION LIMPIAR:

    Sub cargardatos()
        Dim cmd As New SqlCommand("UspListarcat", cn)
        cmd.CommandType = CommandType.StoredProcedure
        Dim da As New SqlDataAdapter(cmd)
        Dim dt As New DataTable
        da.Fill(dt)
    End Sub
   
OBJETO: Form1                 EVENTO: LOAD

        habilitar(True)
        cargardatos()
        Me.Width = 382
        Me.TXTCOD.Enabled = False
        DataGridView1.EditMode = DataGridViewEditMode.EditProgrammatically

OBJETO: BTNNUEVO                EVENTO: CLICK

        TXTCOD.Text = generar("CATEGORIA", "COD_CAT")
        habilitar(False)
        limpiar()
        Me.TXTNOM.Focus()
OBJETO: BTNEDITAR               EVENTO: CLICK

        BTNGUARDAR.Text = "ACTUALIZAR"
        If Me.TXTCOD.Text.Trim = "" Then
            MessageBox.Show("seleccione la categoria a modificar", "SELECCIONE", MessageBoxButtons.OK, _
            MessageBoxIcon.Exclamation)
        Else
            habilitar(False)
        End If

OBJETO: BTNGUARDAR                EVENTO: CLICK

        If Me.BTNGUARDAR.Text.Length < 10 Then
            Try
                Dim cmd As New SqlCommand("uspGuardarcat", cn)
                cmd.CommandType = CommandType.StoredProcedure
                cmd.Parameters.Add(New SqlParameter("@cod_CAT", SqlDbType.Char, 10, ParameterDirection.Input)).Value = (TXTCOD.Text).ToUpper
                cmd.Parameters.Add(New SqlParameter("@NOM_CAT", SqlDbType.NVarChar, 50, ParameterDirection.Input)).Value = (TXTNOM.Text).ToUpper
                BTNGUARDAR.Text = "GUARDAR"
                cn.Open()
                cmd.ExecuteNonQuery()
                MessageBox.Show("La Categoria se Guardó con Éxito", "GUARDAR", MessageBoxButtons.OK, _
                MessageBoxIcon.Information)
            Catch ex As Exception
                MessageBox.Show("Error al Guardar la Categoria", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Finally
                cn.Close()
            End Try
        Else
            Try
                Dim cmd As New SqlCommand("USPMODIFICARCAT", cn)
                cmd.CommandType = CommandType.StoredProcedure
                cmd.Parameters.Add("@cod_cat", SqlDbType.Char, 10).Value = Me.TXTCOD.Text.ToUpper
                cmd.Parameters.Add("@Nom_cat", SqlDbType.NVarChar, 50).Value = Me.TXTNOM.Text.ToUpper
                If cn.State = ConnectionState.Open Then cn.Close()
                cn.Open()
                cmd.ExecuteNonQuery()
                MessageBox.Show("La Categoria se Modificó con Éxito", "MODIFICAR", MessageBoxButtons.OK, _
                MessageBoxIcon.Information)
                Me.BTNGUARDAR.Text = "GUARDAR"
            Catch ex As Exception
                MessageBox.Show("Error al Modificar la categoria", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error)
            Finally
                If cn.State = ConnectionState.Open Then cn.Close()
            End Try
        End If
        limpiar()
        habilitar(True)

OBJETO: BTNBUSCAR                EVENTO: CLICK

        Me.TXTBUSCAR_TextChanged(sender, e)
        Me.Width = 755
        Me.TXTBUSCAR.Focus()

OBJETO: BTNCANCELAR                EVENTO: CLICK

        habilitar(True)
        limpiar()
        TXTCOD.Text = ""

OBJETO: TXTBUSCAR               EVENTO: TEXTCHANGE

        Dim cmd As New SqlCommand("UspFiltrarprod", cn)
        cmd.CommandType = CommandType.StoredProcedure
        cmd.Parameters.Add("@nom_cat", SqlDbType.VarChar, 50).Value = Me.TXTBUSCAR.Text
        Dim da As New SqlDataAdapter(cmd)
        Dim dt As New DataTable
        da.Fill(dt)
        Me.DataGridView1.DataSource = dt
   
OBJETO: DataGridView1                EVENTO: CLICK

        Dim Pos As Integer
        Pos = DataGridView1.CurrentRow.Index
        DataGridView1.Rows(Pos).Selected = True
        Me.TXTCOD.Text = DataGridView1.Rows(Pos).Cells(0).Value
        Me.TXTNOM.Text = DataGridView1.Rows(Pos).Cells(1).Value
        Me.Width = 382
   
OBJETO: BTNSALIR                EVENTO: CLICK

            Close()

CREAR UN MODULO EN EL CUAL IRA LA CONEXION A LA BASE DE DATOS

Imports System.Data.SqlClient
Imports System.Data
Module Conexion
    Public daproductos As New SqlDataAdapter("select * from CLIENTE", cn)
    Public ds As New DataSet
    Public cn As New SqlConnection("data source=(local);integrated security=true;initial catalog=lavanderia")
Public Function generar(ByVal nombretabla As String, ByVal campogenera As String)
        Dim dagenerar As New SqlDataAdapter
        Dim dsge As New DataSet
        Dim codigogenerado As String = ""
        dagenerar.SelectCommand = New SqlCommand
        With dagenerar.SelectCommand
            .Connection = cn
            .CommandType = CommandType.Text
            .CommandText = "select max(" & campogenera & ") from " & nombretabla.Trim
        End With
        Try
            cn.Open()
            dagenerar.Fill(dsge, "codigo")
            cn.Close()
            codigogenerado = (dsge.Tables("codigo").Rows(0)(0)).ToString
            If codigogenerado <> "" Then
                codigogenerado = dsge.Tables("codigo").Rows(0)(0)
                codigogenerado = Left(codigogenerado, 7 - CStr(Val(Right(codigogenerado, 7) + 1)).Length) & CStr(Val(Right(codigogenerado, 7)) + 1)
            Else
                codigogenerado = CStr(Left(nombretabla, 3).ToUpper) & "0001"
            End If
        Catch EX As Exception
            MsgBox(EX.Message)
        End Try
        Return codigogenerado
    End Function
End Module

DISEÑAR EL SIGUIENTE FORMULARIO:



Este codigo sirve para programar la hora en la que deseas que se apague tu computadora.

OBJETO: BTNSALIR                EVENTO: CLICK

Imports System.Data.SqlClient
Public Class apagarcom
    Inherits System.Windows.Forms.Form
   
OBJETO: BTNSTART               EVENTO: CLICK

        Me.CmdStart.Enabled = False
        Me.CmdParar.Enabled = True
        Me.txtHora.Enabled = False
        Me.txtMinutos.Enabled = False
        Timer1.Enabled = True
        Timer1.Start()
   
OBJETO: BTNSTOP             EVENTO: CLICK

        If CType(Me.txtHora.Text, Int32) = CType(Date.Now.Hour, Int32) Then
            If CType(Me.txtMinutos.Text, Int32) = CType(Date.Now.Minute, Int32) Then
                Shutdown()
            End If
        End If
       
OBJETO: TIMER1                        EVENTO: TICK

        If CType(Me.txtHora.Text, Int32) = CType(Date.Now.Hour, Int32) Then
            If CType(Me.txtMinutos.Text, Int32) = CType(Date.Now.Minute, Int32) Then
                Shutdown()
            End If
        End If
       
OBJETO: FORM 2             EVENTO: LOAD

        Me.txtHora.Text = CStr(Date.Now.Hour.ToString)
        Me.txtMinutos.Text = CStr(Date.Now.Minute.ToString)

Espero que les haya servido en algo estos pequeños codigos