Vous êtes sur la page 1sur 78

Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.

com
Blog Personal: htt:!!marcelodata."logsot.com
Este tutorial expone de manera sencilla paso a paso la administracin de
una aplicacin usando MVC, el paradigma Model View Controller basndose
en tres capas: Presentacin, Aplicacin y Datos
!estiono lo bsico de una inter"ace MD# ya $ue tutoriales de %entanitas y
controles &ay &asta por gusto, $uise exponer la ar$uitectura de una
aplicacin basada en los paradigmas mencionados como es implementar la
lgica de programacin en la 'ase de Datos usando Procedimientos
almacenados y administrar esta lgica desde la aplicacin
(e cumple con el principio de independecia si es $ue se programa en la
'ase de Datos y no en la aplicacin, la aplicacin es una simple inter"ace o
medio de comunicacin entre el usuario y la base de datos, e%)tandonos as)
el recompilar la aplicacin y permiti*ndonos en su lugar "ocali+arnos en la
programacin en la misma 'ase de Datos sin tener $ue cambiar la
aplicacin
#a idea de este tutorial es la de "rindar al rogramador de so$t%are
li"re un conocimiento clave ara &ue cuando encuentre este
aradigma "asado en lata$ormas .'E( en alguna organi)aci*n
ueda entenderla + migrarla al so$t%are li"re.
Como mencion* me &e centrado en la ar$uitectura de la aplicacin, la
implementacin de controles bonitos es un traba,o $ue particularmente no
pienso &acer, para eso existen miles de tutoriales en la red
Programar usando MVC y CAPA( no es algo $ue se encuentre a diario, yo
mismo su"r) para implementar este tutorial, la parte di")cil por decirlo as)
est a$u), la ar$uitectura, lo dems $ue es una simple cuestin de dise-o lo
conoce cual$uiera
Este es mi .ltimo tutorial en plata"ormas pri%ati%as y lo &ago slo por dotar
de conocimiento sencillo a a$uellos amigos $ue $uieran entender las
ar$uitecturas /E0 en las empresas y puedan luego migrarlas al so"tware
libre
A&ora mi pasin son la programacin competiti%a y el (o"tware libre, el
&ec&o $ue uno culti%e (o"tware 1ibre no implica $ue uno no sea experto en
otras plata"ormas 2(oy Desarrollador 3 estrellas Platino DCE 45536,
precisamente la comprensin de esta plata"orma me lle% a $uerer y a amar
el so"tware libre
El Autor
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
A,M-'-.(/A/ 0'A BA.E ,E ,A(1. 0(-#-2A',1 M3C 4Model 3ie%
Controller5 + P/16/AMAC-7' P1/ CAPA.
(7809A:E /ECE(A:#7:
(;1 (E:VE: 455< 7 4553 Express $ue se instala por de"ecto con el
Visual (tudio
(i este es tu caso el Administrador de (;1 455< lo puedes descargar
de a$u):
&ttp:==wwwmicroso"tcom=download=en=detailsaspx>id?44@<3
(i usas el (;1 Express 4553 el administrador lo puedes descargar de
a$u):
&ttp:==wwwmicroso"tcom=downloads=esAes=detailsaspx>
8amily#D?C4BCA3AEAB'DDABECDA@B'<A3A58E4'8FF@E
Cual$uier otra %ersin de (;1 (E:VE: 455< 7 4553 2Ga %iene con la
inter"ace de administracin6
V#(HA1 (0HD#7 45D5 7 455<
C7/7C#M#E/07(:
AD7 /E0 'I(#C7
(;1 (E:VE: 'I(#C7
0 J (;1 'I(#C7
V#(HA1 'A(#C /E0 'I(#C7
8HE/0E(:
El cdigo 8uente de la aplicacin desarrollada en este tutorial lo puedes
descargar de a$u):
&ttps:==docsgooglecom=open>
id?5'KL@bnlCECgE0C&((mVmeEM0/!8LNC:&0OHwH,&C;;
El 'acOHp de la 'ase de Datos lo puedes encontrar a$u):
&ttps:==docsgooglecom=open>
id?5'KL@bnlCECgE0DNlMVp9N0N(998PN9:,N+VD1Hx,H;
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Ar&uitectura de A,1.'E(
0radicionalmente, el procesamiento de datos &a dependido principalmente de un
modelo de dos ni%eles basado en una conexin A medida $ue el procesamiento de
datos utili+a cada %e+ ms ar$uitecturas de %arios ni%eles, los programadores estn
pasando a un en"o$ue sin conexin con el "in de proporcionar una escalabilidad
me,or para sus aplicaciones
Comonentes de A,1.'E(
Existen dos componentes de AD7/E0 $ue se pueden utili+ar para obtener acceso a
datos y manipularlos:
Pro%eedores de datos de /E0 8rameworO
El Data(et
Proveedores de datos de .'E( 8rame%or9
1os pro%eedores de datos de /E0 8rameworO son componentes dise-ados
expl)citamente para la manipulacin de datos y el acceso rpido a datos de slo
lectura y slo a%ance El ob,eto Connection proporciona conecti%idad a un origen
de datos El ob,eto Command permite tener acceso a comandos de base de datos
para de%ol%er datos, modi"icar datos, e,ecutar procedimientos almacenados y
en%iar o recuperar in"ormacin sobre parmetros El
ob,eto,ata/eader proporciona una secuencia de datos de alto rendimiento desde
el origen de datos Por .ltimo, el ob,etoDataAdapter proporciona el puente entre el
ob,eto ,ata.et y el origen de datos El ,ataAdater utili+a
ob,etosCommand para e,ecutar comandos (;1 en el origen de datos tanto para
cargar el ,ata.et con datos como para reconciliar en el origen de datos los
cambios aplicados a los datos incluidos en el ,ata.et
,ata.et
El Data(et de AD7/E0 est expresamente dise-ado para el acceso a datos
independientemente del origen de datos Como resultado, se puede utili+ar con
m.ltiples y distintos or)genes de datos, con datos PM1 o para administrar datos
locales de la aplicacin El ,ata.et contiene una coleccin de uno o ms
ob,etos Data0able "ormados por "ilas y columnas de datos, as) como in"ormacin
sobre cla%es principales, cla%es externas, restricciones y relaciones relati%a a los
datos incluidos en los ob,etos ,ata(a"le
En el diagrama siguiente se ilustra la relacin entre un pro%eedor de datos de /E0
8rameworO y un ,ata.et
Ar&uitectura de A,1.'E(
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Elegir un ,ata/eader o un ,ata.et
A la &ora de decidir si su aplicacin debe utili+ar un ,ata/eader 2%ea :ecuperar
datos mediante Data:eader6 o un,ata.et 2%ea Htili+ar Data(ets en AD7/E06,
debe tener en cuenta el tipo de "uncionalidad $ue su aplicacin re$uiere Hse
un ,ata.et para &acer lo siguiente:
Almacene datos en la memoria cac&* de la aplicacin para poder
manipularlos (i solamente necesita leer los resultados de una consulta,
el ,ata/eader es la me,or eleccin
Htili+ar datos de "orma remota entre un ni%el y otro o desde un ser%icio 9eb
PM1
#nteractuar con datos dinmicamente, por e,emplo para enla+ar con un
control de "ormularios 9indows 8orms o para combinar y relacionar datos
procedentes de %arios or)genes
:eali+ar procesamientos ex&austi%os de datos sin necesidad de tener una
conexin abierta con el origen de datos, lo $ue libera la conexin para $ue la
utilicen otros clientes
(i no necesita la "uncionalidad proporcionada por el ,ata.et, puede me,orar el
rendimiento de su aplicacin si utili+a el ,ata/eader para de%ol%er sus datos de
slo a%ance y de slo lectura Aun$ue el ,ataAdater utili+a el ,ata/eaderpara
rellenar el contenido de un ,ata.et 2%ea 1lenar un Data(et desde un
DataAdapter6, al utili+ar el ,ata/eaderpuede me,orar el rendimiento por$ue no
usar la memoria $ue utili+ar)a el ,ata.et, adems de e%itar el procesamiento
necesario para crear y rellenar el contenido de ,ata.et
Modelo Vista Controlador
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Un diagrama sencillo que muestra la relacin entre el modelo, la vista y el controlador. Nota: las lneas slidas
indican una asociacin directa, y las punteadas una indirecta (por ejemplo, patrn !server".
Modelo Vista Controlador (MVC) es un patrn de arquitectura de so#t$are que separa los datos de
una aplicacin, la inter#a% de usuario, y la lgica de negocio en tres componentes distintos. &l patrn
de llamada y retorno MVC (seg'n CMU", se ve #recuentemente en aplicaciones $e!, donde la vista
es la p(gina )*M+ y el cdigo que provee de datos din(micos a la p(gina. &l modelo es el ,istema
de -estin de .ase de /atos y la +gica de negocio, y el controlador es el responsa!le de reci!ir los
eventos de entrada desde la vista.
Contenido

D Listoria
4 Descripcin
del patrn
C 8rameworOs
MVC
B V*ase tambi*n
3 :e"erencias
E Enlaces
externos
)istoria
&l estilo #ue descrito por primera ve% en 0121
0
por *rygve 3eens4aug, entonces tra!ajando
en ,malltal4 en la!oratorios de investigacin de5ero6. +a implementacin original est( descrita
en Programacin de Aplicaciones en Smalltalk-80(TM): Como utilizar Modelo ista Controlador.
7
/escripcin del patrn
Modelo: &sta es la representacin espec#ica de la in#ormacin con la cual el sistema
opera. &n resumen, el modelo se limita a lo relativo de la !ista y su controlador #acilitando las
presentaciones visuales complejas. &l sistema tam!i8n puede operar con m(s datos no relativos
a la presentacin, 9aciendo uso integrado de otras lgicas de negocio y de datos a#ines con el
sistema modelado.
Vista: &ste presenta el modelo en un #ormato adecuado para interactuar, usualmente
la inter#a% de usuario.
Controlador: &ste responde a eventos, usualmente acciones del usuario, e invoca
peticiones al modelo y, pro!a!lemente, a la vista.
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Muc9os de los sistemas in#orm(ticos utili%an un ,istema de -estin de .ase de /atos para
gestionar los datos: en lneas generales delMVC corresponde al modelo. +a unin entre capa de
presentacin y capa de negocio conocido en el paradigma de la :rogramacin por
capas representara la integracin entre Vista y su correspondiente Controlador de eventos y
acceso a datos, MVC no pretende discriminar entre capa de negocio y capa de presentacin pero si
pretende separar la capa !isual gr"#ica de su correspondiente programacin $ acceso a datos, algo
que mejora el desarrollo y mantenimiento de la ista y el Controlador en paralelo, ya que am!os
cumplen ciclos de vida muy distintos entre s.
;unque se pueden encontrar di#erentes implementaciones de MVC, el #lujo que sigue el control
generalmente es el siguiente:
D &l usuario interact'a con la inter#a% de usuario de alguna #orma (por ejemplo, el
usuario pulsa un !otn, enlace, etc."
4 &l controlador reci!e (por parte de los o!jetos de la inter#a%<vista" la noti#icacin de
la accin solicitada por el usuario. &l controlador gestiona el evento que llega,
#recuentemente a trav8s de un gestor de eventos (9andler" o call!ac4.
C &l controlador accede al modelo, actuali%(ndolo, posi!lemente modi#ic(ndolo de
#orma adecuada a la accin solicitada por el usuario (por ejemplo, el controlador actuali%a
el carro de la compra del usuario". +os controladores complejos est(n a menudo
estructurados usando un patrn de comando que encapsula las acciones y simpli#ica su
e6tensin.
B &l controlador delega a los o!jetos de la vista la tarea de desplegar la inter#a% de
usuario. +a vista o!tiene sus datos del modelo para generar la inter#a% apropiada para el
usuario donde se re#lejan los cam!ios en el modelo (por ejemplo, produce un listado del
contenido del carro de la compra". &l modelo no de!e tener conocimiento directo so!re la
vista. ,in em!argo, se podra utili%ar el patrn !servador para proveer cierta indireccin
entre el modelo y la vista, permitiendo al modelo noti#icar a los interesados de cualquier
cam!io. Un o!jeto vista puede registrarse con el modelo y esperar a los cam!ios, pero aun
as el modelo en s mismo sigue sin sa!er nada de la vista. &ste uso del
patrn !servador no es posi!le en las aplicaciones =e! puesto que las clases de la vista
est(n desconectadas del modelo y del controlador. &n general el controlador no pasa
o!jetos de dominio (el modelo" a la vista aunque puede dar la orden a la vista para que se
actualice. %ota: &n algunas implementaciones la !ista no tiene acceso directo al modelo'
de(ando )ue el controlador en!*e los datos del modelo a la !ista+ Por e(emplo en el MC
usado por Apple en su #rame,ork Cocoa+ Suele citarse como Modelo--nter#ace-Control'
una !ariacin del MC m"s puro
3 +a inter#a% de usuario espera nuevas interacciones del usuario, comen%ando el
ciclo nuevamente.
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
A LA'#1#0A/D7 E1 H(HA:#7 Q(AR E #/#C#7 DE (E(#7/ C7/
AH0E/0#CAC#S/ DE (;1 (E:VE:
D #nicio T 0odos los Programas T (;1Microso"t (;1 (er%er 455< T (;1
(er%er Management (tudio
4 AnticlicO T E,ecutar como administrador
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
C 1oguearnos con la instancia por de"ecto (i usas una %ersin di"erente
del (;1 Express reempla+a el QUs$lexpressR por el usuario $ue
de"iniste a la &ora de instalar tu M( (;1
B Conocemos la inter"a+ de Administracin del (;1
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
3 'uscamos al Administrador 2(A6
E Anticlic T Propiedades
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
F /os ubicamos en la pgina !eneral
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
< Escribimos la contrase-a $ue %amos a utili+ar
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
@ /os ubicamos en la pgina Estado
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
D5Labilitamos el #nicio de (esin T Aceptar
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
DDActuali+amos
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
D4Vemos $ue el usuario administrador sa est &abilitado
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
DCAnticlic T Propiedades
DB/os ubicamos en la pgina (eguridad
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
D3Labilitamos QModo de autenticacin de 9indows y (;1 (er%erR para
poder loguearnos con los usuarios $ue administramos en nuestro
ser%idor como el usuario QsaR
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
DEClic en Aceptar
DFAnticlic en la ra)+ T :einiciar
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
D<Clic en Q()R
D@Arc&i%o T Desconectar Explorador de ob,etos
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
45Estamos Desconectados
4DArc&i%o T Conectar Explorador de 7b,etos
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
44/os logueamos, pero esta %e+ Escogemos QAutenticacin de (;1
(er%erR
4CProbamos nuestro usuario QsaR $ue &emos &abilitado Clic en
Conectar
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
4BEstamos logueados con nuestro usuario QsaR
' C:EA/D7 70:7 H(HA:#7 (# DE(EAM7(
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
43(i $uisi*ramos crear un nue%o usuario di"erente al QsaR basta con
&acer anticlic en Q#nicios de (esinR
4EElegimos /ue%o #nicio de (esin
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
4FElegimos el nombre de nuestro usuario por e,emplo QpepitoR y
repetimos los pasos F al 4B, slo $ue en lugar del usuario QsaR
usamos el $ue &emos creado con su respecti%a contrase-a
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
4<Clic en /ue%a Consulta
C C:EA/D7 /HE(0:A 'A(E DE DA07( Q#/(0#0H07R, 0A'1A( G DA07(
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
4@Pegamos el (iguiente (cript para a&orrarnos el traba,o de crear la
'ase de Datos, 0ablas e ingresar los datos:
AAMuan Marcelo C&amorro A%enda-o
AAEAMail: ,marceloKdataV&otmailcom
AACreando la 'Ase de Datos Alumnos
C:EA0E DA0A'A(E #nstituto
!7
AACreando la 0abla Alumnos
H(E #nstituto
!7
C:EA0E 0A'1E Alumnos
2CodAlumno c&ar2B6 P:#MA:G WEG /70 /H11,
/ombre VarC&ar2356 /70 /H11,
Apellidos VarC&ar2356 /70 /H11,
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Especialidad VarC&ar2356 /70 /H11,
Curso VarC&ar2356 /70 /H11,
0urno VarC&ar2356 /70 /H11,
/ota #nt /70 /H116
!7
AACrear 0abla Password
C:EA0E 0A'1E Password
2#dCod int P:#MA:G WEG /70 /H11,
/ombre VarC&ar2356 /70 /H11,
Apellidos VarC&ar2356 /70 /H11,
Hsuario VarC&ar2356 /70 /H11,
Password VarC&ar2356 /70 /H11,
Cargo VarC&ar2356 /70 /H116
!7
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
AA#nsertando :egistros tabla Alumnos
#/(E:0 Alumnos
VA1HE(2XA55DX,XPatriciaX,X1o+ano 1lalicoX,XComputacinX,X7"imticaX,XDiurnoX,D36
#/(E:0 Alumnos
VA1HE(2XA554X,X0atianaX,X0orre
AlanyaX,X(ecretariadoX,X7"imticaX,XVespertinoX,D<6
#/(E:0 Alumnos
VA1HE(2XA55CX,X:ominaX,X1lac+a C&amorroX,XAdministracinX,XDise-oX,XDiurnoX,36
#/(E:0 Alumnos
VA1HE(2XA55BX,XDayanaX,X;uintanilla
Villa"uerteX,X(ecretariadoX,X#ngl*sX,X/oc&eX,DC6
#/(E:0 Alumnos
VA1HE(2XA553X,XWerlyX,XMos$uera DelgadoX,XComputacinX,XVisual 'asic
/E0X,XDiurnoX,@6
#/(E:0 Alumnos
VA1HE(2XA55EX,XAlondraX,X1en ParionaX,XComputacinX,XVisual 'asic
/E0X,XDiurnoX,<6
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
#/(E:0 Alumnos
VA1HE(2XA55FX,X!inoX,X!il%onio :i%eraX,XElectrnicaX,XCircuitosX,XVespertinoX,DE6
#/(E:0 Alumnos
VA1HE(2XA55<X,X8ranxX,XVelito 1abraX,XElectrnicaX,XCircuitosX,X/oc&eX,D46
#/(E:0 Alumnos
VA1HE(2XA55@X,X(androX,X!utarra
:aimondiX,XComputacinX,XEnsambla,eX,XVespertinoX,D46
#/(E:0 Alumnos
VA1HE(2XA5D5X,XMuanX,X(nc&e+ PradoX,XComputacinX,XEnsambla,eX,XDiurnoX,D36
!7
AA#nsertando :egistros tabla Password
#/(E:0 Password
VA1HE(2D,XAlbert&X,XPisao VenancioX,Xsa$uitoX,XsimiamorX,Xamo de casaX6
#/(E:0 Password
VA1HE(24,XMarceloX,XC&amorro A%enda-oX,XadminX,XD4CBX,XAdministradorX6
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
!7
AACrear Procedimientos Almacenados
C:EA0E P:7CEDH:E mostrarKtodo
as
(E1EC0 Y 8:7M A1HM/7(
!7
C:EA0E P:7CEDH:E mostrarKD4
as
(E1EC0 CodAlumno,/ombre,Apellidos,/ota 8:7M A1HM/7( 9LE:E /ota?D4
!7
C:EA0E P:7CEDH:E mostrarKsecretariado
as
(E1EC0 CodAlumno,/ombre,Apellidos,Curso 8:7M A1HM/7( 9LE:E
Curso?X(ecretariadoX
!7
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
C:EA0E P:7CEDH:E mostrarKg
as
(E1EC0 /ombre,Apellidos 8:7M A1HM/7( 9LE:E Apellidos 1#WE XgZX
!7
C:EA0E P:7CEDH:E mostrarKE
as
(E1EC0 /ombre,Apellidos 8:7M A1HM/7( 9LE:E Apellidos 1#WE XKKKKKKX
!7
C:EA0E P:7CEDH:E mostrarKa
as
(E1EC0 /ombre,Apellidos 8:7M A1HM/7( 9LE:E Apellidos 1#WE XKKKKKaX
!7
C:EA0E P:7CEDH:E mostrarKoperadores
as
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
(E1EC0 /ombre, Apellidos, /ota 8:7M A1HM/7( 9LE:E 2/ombre 1#WE XlZX6
A/D 2/ota [ DD6
!7
C:EA0E P:7CEDH:E mostrarKentre
as
(E1EC0 Y 8:7M A1HM/7( 9LE:E /ota 'E09EE/ DD A/D D3
!7
C:EA0E P:7CEDH:E mostrarKlista
as
(E1EC0 Y 8:7M A1HM/7( 9LE:E 0urno #/ 2X/oc&eX,XDiurnoX6
!7
AACrear Vistas
C:EA0E V#E9 M7(0:A:K/70A(
A(
(E1EC0 /ombre, Apellidos, /ota 8:7M Alumnos
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
!7
AA8in de (cript
AAMuan Marcelo C&amorro A%enda-o
AAEAMail: ,marceloKdataV&otmailcom
C5E,ecutar el (cript
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
CD/uestro (cript est e,ecutado y la 'ase de Datos con la $ue %amos a
traba,ar &a sido creada
C4Actuali+ar
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
CCAl expandir %emos /uestra 'ase de Datos Q#nstitutoR creada
CBVemos $ue &ay dos tablas $ue &an sido creadas por el script
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
C3Anticlic en la tabla Alumnos T Editar las 455 primeras "ilas
CEVemos $ue el (cript ya &a creado todos los datos
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
CFAnticlic en la 0abla QPasswordR T Editar las primeras 455 "ilas
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
C<Vemos $ue el script ya &a creado contenido
D C:EA/D7 1A( CAPA( DE P:E(E/0AC#S/, /E!7C#7( G DA07(:
C:EA/D7 1A CAPA DE P:E(E/0AC#S/ Q#/(0#0H07R
C@#niciamos el Visual (tudio 45D5 en Modo Administrador
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
B5Arc&i%o T /ue%o Proyecto
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
BDCreamos una Aplicacin de 9indows 8orm llamada Q#nstitutoR T
Aceptar
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
E C:EA/D7 E1 87:MH1A:#7 MD# C7/0E/ED7: 2PAD:E6
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
B41e damos las siguientes propiedades al 8ormD
Propiedad Valor
0ext "rmMain
9indow(tate Maximi+ed
#sMdiContain 0rue
BC1e agregamos un Control Menu(trip 2Arrastrar o &acer doble clic6
BB1a propiedad #sMdiContain con su %alor QtrueR la &a con%ertido en una
%entana contenedora
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
B3Vamos a agregar la %entana de logueo a&ora Anticlic en la ra)+
#nstituto T Agregar T 9indows 8orms
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
BE1e ponemos de nombre "rm1ogin
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
BFCon"iguramos el "orm "rm1ogin como %entana de inicio Proyecto T
Propiedades de #nstituto
B<(eleccionamos Q"rm1oginR Con esto cuando e,ecutemos el proyecto
la %entana "rm1ogin ser la primera en aparecer
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
8 C:EA/D7 1A( CAPA( DE P:E(E/0AC#S/, /E!7C#7( G DA07(:
C:EA/D7 1A CAPA DE /E!7C#7( Q/E!7C#7R
B@Agregar /ue%o Proyecto Arc&i%o T Agregar T /ue%o Proyecto
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
35(eleccionamos Q'iblioteca de ClasesR 1a llamamos Q/E!7C#7R T
ACEP0A:
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
El Explorador de (oluciones se %er)a as):
Cambiar el /ombre de la Clase por de"ecto a Q/K1ogin%bR, para eso
seleccionamos la clase y en Propiedades modi"icar:
/ombre de Arc&i%o: /K1ogin%b
C:EA/D7 1A( CAPA( DE P:E(E/0AC#S/, /E!7C#7( G DA07(: C:EA/D7 1A
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
CAPA DE DA07( QDA07(R
3D(e crea una (olucin automticamente Anticlic en la (olucin T
Agregar T /ue%o proyecto
#gual $ue en el paso 35 pero esta %e+ llamarlo Q,A(1.R
Cambiar el /ombre de la Clase por de"ecto a QDK1ogin%bR, para eso
seleccionamos la clase y en Propiedades modi"icar:
/ombre de Arc&i%o: DK1ogin%b
348inalmente nuestra solucin se %e as)
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
! C:EAM7( E1 P:7CED#M#E/07 A1MACE/AD7 QloginR ;ue (er
!estionado Desde 1a Aplicacin
3CCreamos un Procedimiento Almacenado al $ue %amos a llamar
QloginR En el Administrador de (;1 elegir Q/ue%a ConsultaR, a&)
crearemos el siguiente Procedimiento Almacenado
CREATE PROCEDURE login
@Usuario VARCHAR(50),
@Password VARCHAR(50),
@Res VARCHAR(40) OUTPUT
A
!E"#$
DEC%ARE @$U& A in'
E%ECT @$U& ( COU$T()) *RO& Password
+HERE
Usuario(@Usuario
#* @$U&(,
!E"#$
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
E%ECT @$U& ( COU$T()) *RO& Password
+HERE
Password(@Password
#* @$U&(,
!E"#$
ET @Res(-A..eso Per/i'ido0-
E$D
E%E
!E"#$
ET @Res(-Cla1e #n.orre.'a0-
E$D
E$D
E%E
!E"#$
ET @Res(-Usuario $o E2is'e0-
E$D
E$D
"O
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
3BE,ecutar la Consulta para crear el Procedimiento Almacenado
33(i todo &a sido correcto el administrador de (;1 nos de%uel%e el
mensa,e QComandos Completados CorrectamenteR
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
L C:EAM7( H/ A:CL#V7 DE C7/8#!H:AC#S/ QAPPC7/8#!R ;HE
A1MACE/A:I 17( PA:IME0:7( DE /HE(0:A CADE/A DE C7/EP#S/
3EEn el Visual (tudio Agregaremos un Arc&i%o de con"iguracin
conteniendo la Cadena de Conexin a la 'ase de Datos instituto
Anticlic en Q#nstitutoR T Agregar T /ue%o Elemento
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
3FEn Elementos Comunes (eleccionamos Q!eneralR y escogemos
QArc&i%o de Con"igracinR De,amos el nombre por de"ecto
Qappcon"igR T Agregar
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
3<Dentro de [Con"iguration\ [=Con"iguration\ colocamos la
con"iguracin de nuestra cadena de conexin usando la propiedad
[app(ettings\
[app(ettings\
[add Oey?]cn]
%alue?](er%er?Us$lexpress^
Data'ase?#nstituto^
Hser?sa^
Password?D4CB3E^]
=\
[=app(ettings\
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
3@8inalmente 0enemos nuestra solucin as):
# :E8E:E/C#AM7( 1A( CAPA(
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
E5:e"erenciamos la CAPA /E!7C#7 A 1A CAPA DA07( Anticlic en
/E!7C#7 T Agregar :e"erencia
ED(eleccionamos la CAPA DA07( T ACEP0A:
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
E4(eleccionamos la Capa de Aplicacin Q#nstitutoR T Anticlic T Agregar
:e"erencia Para re"erenciarla a la Capa /E!7C#7
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
EC(E1ECC#7/AM7( 1A CAPA /E!7C#7 T ACEP0A:
M C:EAM7( 1A( C1A(E( /ECE(A:#A( E/ 1A( CAPA DE DA07( G
/E!7C#7( C7/ (H( M_07D7( :E(PEC0#V7(, 1A( #/0E:8ACE( ;HE 1A(
VA/ A !E(0#7/A: G 17( P:7CED#M#E/07( A1MACE/AD7( A (E:
!E(0#7/AD7( P7: 1A CAPA DE DA07(
EBCodi"icar la clase DK1ogin como se indica:
#mports (ystemData
#mports (ystemData($lClient
#mports (ystemCon"iguration
Public Class DK1ogin
Pri%ate 8unction Conexion26 As ($lConnection
Dim strConn As (tring
Dim Con"App(et As /ew App(ettings:eader
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
strConn ? C(tr2Con"App(et!etValue2]cn], !et0ype2(tring666
Dim ConexionD' As /ew ($lConnection2strConn6
ConexionD'7pen26
:eturn ConexionD'
End 8unction
Public 8unction 'uscarHsuarioD2'yVal usu As (tring, 'yVal cla% As (tring6 As (tring
Dim cmd As /ew ($lCommand
cmdCommand0ext ? ]login]
cmdCommand0ype ? Command0ype(toredProcedure
cmdConnection ? Conexion26
cmdParametersAdd2]VHsuario], ($lDb0ypeVarC&ar, 356Value ? usu
cmdParametersAdd2]VPassword], ($lDb0ypeVarC&ar, 356Value ? cla%
cmdParametersAdd2]V:es], ($lDb0ypeVarC&ar, B56Direction ?
ParameterDirection7utput
cmdExecute/on;uery26
:eturn cmdParameters2]V:es]6Value
End 8unction
End Class
E3Codi"icar la Clase /K1ogin como se indica:
#mports DA07(
Public Class /K1ogin
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Public 8unction 'uscaHsuario/2'yVal usu/ As (tring, 'yVal cla%/ As (tring6 As (tring
Dim cls1ogin As /ew DKlogin
:eturn cls1ogin'uscarHsuarioD2usu/, cla%/6
End 8unction
End Class
EEDise-ar el "rm1ogin como se indica:
EFAgregar el Men. QMantenimientoR y dentro el (ubMen. QAlumnosR
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
E<Agregamos nuestro "ormulario de Mantenimiento Q"rmAlumnosR
dentro de la capa de presentacin #nstituto
E@Dise-ar como se indica
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
F5Dentro del cdigo del "ormulario "rmAlumnos agrego el m*todo
constructor (ub /ew26, una instancia "rm#nstance y una "uncin
#nstance26 como se %e en el cuadro y la imagen:
Public Class "rmAlumnos
Pri%ate (ub /ew26
X 1lamada necesaria para el dise-ador
#nitiali+eComponent26
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
X Agregue cual$uier iniciali+acin despu*s de la llamada a #nitiali+eComponent26
End (ub
Pri%ate (&ared "rm#nstance As "rmAlumnos ? /ot&ing
Public (&ared 8unction #nstance26 As "rmAlumnos
#" "rm#nstance #s /ot&ing 7rElse "rm#nstance#sDisposed ? 0rue 0&en
"rm#nstance ? /ew "rmAlumnos
End #"
"rm#nstance'ring0o8ront26
:eturn "rm#nstance
End 8unction
End Class
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Con esto logramos $ue se inicie una sola instancia de nuestro "ormulario
&i,o
FDDoble clic en el submenu Alumnos para generar su cdigo:
F4Agregarle el siguiente cdigo:
Dim Alumnos As "rmAlumnos ? "rmAlumnos#nstance
AlumnosMdiParent ? Me
Alumnos(&ow26
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
FCEn el (;1 (er%er Management abrimos una /ue%a Consulta y
creamos otro procedimiento Almacenado similar al paso 3C:
CREATE PROCEDURE lis'arAlu/nos
A
!E"#$
E%ECT ) *RO& Alu/nos
E$D
"O
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
FBE,ecutamos la consulta para crear el procedimiento almacenado
QlistarAlumnosR
F3Agregamos una nue%a clase dentro de la Capa DA07( llamada
DK1istar 1a codi"icamos como se indica:
#mports (ystemData
#mports (ystemData($lClient
#mports (ystemCon"iguration
Public Class DK1istar
Pri%ate 8unction Conexion26 As ($lConnection
Dim strConn As (tring
Dim Con"App(et As /ew App(ettings:eader
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
strConn ? C(tr2Con"App(et!etValue2]cn], !et0ype2(tring666
Dim ConexionD' As /ew ($lConnection2strConn6
ConexionD'7pen26
:eturn ConexionD'
End 8unction
Public 8unction 1istarD26 As Data(et
Dim cmd As /ew ($lCommand
cmdCommand0ext ? ]listarAlumnos]
cmdCommand0ype ? Command0ype(toredProcedure
cmdConnection ? Conexion26
Dim DA As /ew ($lDataAdapter
Dim D( As /ew Data(et
DA(electCommand ? cmd
DA8ill2D(6
:eturn D(
End 8unction
End Class
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
FEAgregamos una nue%a clase dentro de la capa /E!7C#7 llamada
/K1istar y la codi"icamos como se indica:
#mports DA07(
Public Class /K1istar
Public 8unction 1istar/26 As Data(et
Dim cls1ogin As /ew DK1istar
:eturn cls1ogin1istarD
End 8unction
End Class
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
FFCreamos el procedimiento almacenado #nsertarAlumno:
CREATE PROCEDURE #nser'arAlu/no
@CodAlu/no CHAR(4),
@$o/3re VARCHAR(50),
@A4ellidos VARCHAR(50),
@Es4e.ialidad VARCHAR(50),
@Curso VARCHAR(50),
@Turno VARCHAR(50),
@$o'a VARCHAR(50)
A
!E"#$
#$ERT #$TO Alu/nos
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
VA%UE
(
@CodAlu/no,
@$o/3re,
@A4ellidos,
@Es4e.ialidad,
@Curso,
@Turno,
@$o'a
)
E$D
"O
F<:enombramos las ca,as de texto como se indica en la "igura:
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
F@Agregamos una nue%a clase dentro de la capa DA07( llamada
DK#nsertary la codi"icamos como se indica:
#mports (ystemData
#mports (ystemData($lClient
#mports (ystemCon"iguration
Public Class DK#nsertar
Pri%ate 8unction Conexion26 As ($lConnection
Dim strConn As (tring
Dim Con"App(et As /ew App(ettings:eader
strConn ? C(tr2Con"App(et!etValue2]cn], !et0ype2(tring666
Dim ConexionD' As /ew ($lConnection2strConn6
ConexionD'7pen26
:eturn ConexionD'
End 8unction
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Public 8unction #nsertarD2'yVal CodAlumno As (tring, 'yVal /ombre As (tring, 'yVal
Apellidos As (tring, 'yVal Especialidad As (tring, 'yVal Curso As (tring, 'yVal 0urno As
(tring, 'yVal /ota As #nteger6 As #nteger
Dim cmd As /ew ($lCommand
cmdCommand0ext ? ]#nsertarAlumno]
cmdCommand0ype ? Command0ype(toredProcedure
cmdConnection ? Conexion26
cmdParametersAdd2]VCodAlumno], ($lDb0ypeC&ar, B6Value ? CodAlumno
cmdParametersAdd2]V/ombre], ($lDb0ypeVarC&ar, 356Value ? /ombre
cmdParametersAdd2]VApellidos], ($lDb0ypeVarC&ar, 356Value ? Apellidos
cmdParametersAdd2]VEspecialidad], ($lDb0ypeVarC&ar, 356Value ? Apellidos
cmdParametersAdd2]VCurso], ($lDb0ypeVarC&ar, 356Value ? Curso
cmdParametersAdd2]V0urno], ($lDb0ypeVarC&ar, 356Value ? 0urno
cmdParametersAdd2]V/ota], ($lDb0ype#nt6Value ? /ota
:eturn cmdExecute/on;uery
End 8unction
End Class
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
<5Agregamos una nue%a clase dentro de la capa /E!7C#7 llamada
/K#nsertar y la codi"icamos como se indica:
#mports DA07(
Public Class /K#nsertar
Public 8unction #nsertar/2'yVal CodAlumno As (tring, 'yVal /ombre As (tring, 'yVal
Apellidos As (tring, 'yVal Especialidad As (tring, 'yVal Curso As (tring, 'yVal 0urno As
(tring, 'yVal /ota As #nteger6 As #nteger
Dim cls1ogin As /ew DK#nsertar
:eturn cls1ogin#nsertarD2CodAlumno, /ombre, Apellidos, Especialidad, Curso, 0urno,
/ota6
End 8unction
End Class
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
<DCodi"icamos el e%ento 1oad del "ormulario "rmAlumnos para $ue
cargue los datos al iniciarse en el Data!ridViewD:
Pri%ate (ub "rmAlumnosK1oad2'yVal sender As (ystem7b,ect, 'yVal e As
(ystemE%entArgs6 Landles My'ase1oad
Dim cls/egocio As /ew /E!7C#7/K1istar
Data!ridViewDData(ource ? cls/egocio1istar/0ables256
End (ub
G codi"icamos el botn Qbtn#nsertarR del "ormulario "rmAlumnos:
Pri%ate (ub btn#nsertarKClicO2'yVal sender As (ystem7b,ect, 'yVal e As
(ystemE%entArgs6 Landles btn#nsertarClicO
Dim cls/egocio As /ew /E!7C#7/K#nsertar
Dim cls/egocio5D As /ew /E!7C#7/K1istar
cls/egocio#nsertar/2txtCodAlumno0ext, txt/ombre0ext, txtApellidos0ext,
txtEspecialidad0ext, txtCurso0ext, txt0urno0ext, C#nt2txt/ota0ext66
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
Data!ridViewDData(ource ? cls/egocio5D1istar/0ables256
End (ub
<4Al e,ecutar e insertar un /ue%o item se %er)a as):
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
"Porque el secreto del desarrollo de una nacin est en su educacin"
Autor: Juan Marcelo Chamorro Avendao E-mail: jmarcelo_data@hotmail.com
Blog Personal: htt:!!marcelodata."logsot.com
(e de,a como traba,o utili+ando todo lo aprendido implementar las
inter"aces y clases necesarias para $ue "uncionen los botones
Modi"icar y Eliminar
Adems "iltrar la aplicacin para mostrar a los alumnos por Cdigo,
/ombre, Apellidos, Especialidad, Curso, 0urno o /ota
#mplementar un e,emplo de b.s$ueda por Cdigo, /ombre, Apellidos,
Especialidad, Curso, 0urno o /ota
Encriptar la Cadena de Conexin 27pcional6
#n%estigar y generar un reporte para imprimir 27pcional6
"Porque el secreto del desarrollo de una nacin est en su educacin"

Vous aimerez peut-être aussi