1. INFORME TÉCNICO DE DISEÑO<br />DANIEL ACERO<br />DAVID GALEANO<br />DIANA VARGAS<br />JENNIFER PAOLA LEAL <br />ANDRES MORALES VILLA<br />MARTIN ORDOÑEZ<br />SENA<br />ADSI<br />Bogotá, 01 de noviembre de 2010<br />CONTENIDO<br />Introducción ……………………………………………………………………………………………. 3<br />Contexto …………………………………………………………………………………………………. 4<br />Justificación ……………………………………………………………………………………………. 5<br />Arquitectura de la aplicación …………………………………………………………………. 6<br />Modulisacion …………………………………………………………………………………………. 7<br />Diagrama de casos de uso ………………………………………………………………8-14<br />Diagrama de secuencias ………………………………………………………………… 15-20<br />Diagrama de estados ……………………………………………………………………… 21-24<br />Diagrama de actividades ……………………………………………………………….. 25-27<br />Diagrama de componentes …………………………………………………………………… 28<br />Diagrama de despliegue ………………………………………………………………………. 29<br />Algoritmos ………………………………………………………………………………………30-35<br />Descripción de interfaces ……………………………………………………………… 36-42<br />Código Interfaces …………………………………………………………………………. 43-<br />Bases de datos<br />14.1Normalización <br />14.2Diccionario de datos<br />Prototipo en Access<br />Explicación de Herramientas<br />INTRODUCCIÓN<br />En la ciudad de Bogotá y en general en todo el país se ha visto un gran problema al cual no se ha logrado dar una solución concreta: El índice de desconocimiento de un segundo idioma (Inglés) es bastante alto, y esto genera diversas problemáticas; a nivel laboral, muchas personas han perdido oportunidades importantes ya que para muchos cargos es necesario tener un buen manejo de este idioma. Por otro lado, a nivel social se han visto muchos casos de discriminación por parte de personas que manejan este ámbito, cuya intención es humillar a las personas que no lo han hecho. Para solucionar estas problemáticas se ha diseñado un software interactivo multimedia de inglés llamado IMES, con el cual se darán conocimientos pertinentes a los 4 ámbitos que maneja el inglés (habla, escucha, pronunciación y lectura) de una manera didáctica y entretenida para que genere mayor interés por parte de los usuarios en aprender, así solucionando de una manera eficaz las problemáticas <br />Mencionadas anteriormente.<br />CONTEXTO<br />La finalidad de la solución del problema es arreglar grandes problemáticas que ha generado el desconocimiento del inglés en ámbitos tan relevantes como el laboral y el social. La meta final de IMES es ayudar al desarrollo de la sociedad, y la manera más eficaz es con la implementación de este software a las personas más jóvenes, para que en un futuro haya un amplio margen de diferencia en los porcentajes de desconocimiento de una segunda lengua, aunque también este software tiene la capacidad de otorgar estos conocimientos a personas mayores, siendo usada como software de capacitación de empresas, así dando a la ciudad una solución cuya eficacia se da en la parte didáctica y llamativa la cual se encarga de <br />Generar mayor interés en el aprendizaje por parte de los usuarios.<br />3. JUSTIFICACIÓN<br />El proyecto pretende fomentar la enseñanza del habla inglés, dado que la mayoría de estudiantes egresados de colegios y personas residentes en el país poseen poca habilidad en cuanto al manejo de un segundo idioma ya que la enseñanza dada por las instituciones educativas tiende a ser retrograda y poco moderna, no se poseen herramientas ni motivación funcional suficiente como para garantizar el desarrollo de las habilidades de los alumnos y por lo tanto no presentan conocimientos suficientes en el idioma.<br />Favorece una metodología global, con actividades que conducen a la integración del lenguaje, destrezas y contenidos. La enseñanza se presentará con funciones comunicativas, gramática, vocabulario y pronunciación, fundamentales para un adecuado aprendizaje y el uso del idioma para desenvolverse en el ámbito laboral.<br />Primero que todo se entregará el producto que se instalará en un ordenador <br />Que posteriormente se realizará actualizaciones vía Internet. Por medio de la alcaldía de Bogotá se proveerá este producto a las instituciones educativas de una manera sencilla y eficaz, que lograra actualizar las herramientas usadas en la enseñanza de inglés, llevándola a la era digital, con situaciones llamativas que logren incrementar la experiencia con este idioma de una manera más refrescante, para que el inglés no dependa de un libro, de cartillas o demás herramientas monótonas.<br />ARQUITECTURA DE LA APLICACIÓN<br />Para realizar la codificación de un producto como lo es un software interactivo se necesitaran múltiples herramientas que faciliten la comunicación entre el programa y el usuario.<br />Se necesitaran conocimientos en codificación de páginas web y así mismo en la realización de animaciones.<br />El esquema básico del sistema estará constituido por módulos de la siguiente manera:<br />IMESRegistroIngresoActividadesEvaluacionesCalificacionesDiseño para el ingreso de datos requeridos para que se lleve a cabo el curso con usuario y contraseña.Consiste en el diseño de ingreso de usuario y contraseña para llevar a cabo las actividades correspondientes.Diseño de los tópicos del nivel, los cuales se pondrán en práctica por medio de tareas para que el estudiante adquiera manejo del tema.Consiste en el diseño de actividades, las cuales evalúan los temas vistos en el nivel de aprendizaje.Diseño de metodologías de calificación de actividades y evaluaciones realizadas durante el proceso de aprendizaje del usuario.Herramientas- Base de datos (SQL server)- Página web - PHP- Visual studio- FlashHerramientas- Base de datos (SQL server)- Página web - PHP- Visual studio- FlashHerramientas- Base de datos (SQL server)- Página web - PHP- Visual studio- FlashHerramientas- Base de datos (Access)- Página web - PHP- Visual studio- FlashHerramientas- Base de datos (SQL server)- Página web - PHP- Visual studio- FlashMODULISACION<br />MódulosDefiniciónHerramientasRegistroDiseño para el ingreso de datos requeridos para que se lleve a cabo el curso con usuario y contraseña.Base de datos (SQL server)Página web PHPVisual studioFlashIngresoConsiste en el diseño de ingreso de usuario y contraseña para llevar a cabo las actividades correspondientes.Base de datos (SQL server)Página web PHPVisual studioFlashActividadesDiseño de los tópicos del nivel, los cuales se pondrán en práctica por medio de tareas para que el estudiante adquiera manejo del tema.Base de datos (SQL server)Página web PHPVisual studioFlashEvaluacionesConsiste en el diseño de actividades, las cuales evalúan los temas vistos en el nivel de aprendizaje.Base de datos (SQL server)Página web PHPVisual studioFlashCalificacionesDiseño de metodologías de calificación de actividades y evaluaciones realizadas durante el proceso de aprendizaje del usuario.Base de datos (SQL server)Página web PHP Visual studioFlash<br />Se pretende que el usuario lleve un curso formal en el cual aprenda el idioma ingles, por lo cual debe haber básicamente en este programa una pantalla de ingreso, una de registro, múltiples pantallas de actividades y asimismo de evaluaciones, y además algunas pantallas de calificaciones. Se optara por tener una base de datos para que todos los datos que el usuario ingrese (notas, datos personales y demás) queden guardados para su posterior uso.<br />DIAGRAMA DE CASOS DE USO<br />Diagrama de Casos De Uso General:<br />El diagrama representa las actividades que realiza el usuario cuando ingresa al sistema.<br />Entre la interacción del usuario y el sistema el caso describe cuando ingresa por primera vez encontrara un menú el cual mostrara los diferentes destinos del sistema. El primer destino será el de registro en el cual el usuario debe ingresar todos sus datos personales y crear un usuario y contraseña, una vez realizado el registro procede a la etapa de ingreso en la cual llevara a cabo una evaluación en la cual el sistema define su nivel de ingles y le asignara un modulo con sus respectivos tópicos y actividades por cada uno; El desarrollo de habilidades (lectura, escucha, habla y escritura), el envío de actividades por cada tópico, la evaluación final del modulo y la consulta de notas .<br />En el sistema también interviene el profesor en la evaluación de nivelación estableciendo los diferentes niveles de acuerdo a los resultados del estudiante, el envío de actividades por tópico, las actividades por habilidad y la evaluación del modulo.<br />DIAGRAMA CASO DE USO REGISTRO NUEVO USUARIO<br />DIAGRAMA CASO DE USO TEST CONOCIMIENTOS PREVIOS<br />DIAGRAMA CASO DE USO VALIDACION DE DATOS<br />DIAGRAMA CASO DE USO DESARROLLO ACTIVIDADES<br />DIAGRAMA CASO DE USO CONSULTA DE NOTAS<br />DIAGRAMA CASO DE USO EVALUACION MODULO<br />DIAGRAMAS DE SECUENCIA<br />El diagrama de secuencias describe detalladamente la interacción entre el conjunto de objetos que coopera en la realización del sistema.<br />DIAGRAMA SECUENCIA NUEVO USUARIO<br />DIAGRAMA SECUENCIA DE USO TEST CONOCIMIENTOS PREVIOS<br />DIAGRAMA DE SECUENCIA VALIDACION DE DATOS<br />DIAGRAMADE SECUENCIA DESARROLLO ACTIVIDADES<br />DIAGRAMA DE SECUENCIA CONSULTA DE NOTAS<br />DIAGRAMA DE SECUENCIA EVALUACION MODULO<br />DIAGRAMA DE ESTADOS<br />El diagrama de estados muestra la funcionalidad del sistema y los estados de un objeto durante su vida.<br />ValidaciónAlmacenamiento de datosRepetición de datosIngreso de datosAbrir base de datosCerrar base de datosINTERFAZ REGISTRO<br />La interfaz de registro durante su vida almacena los datos del usuario y valida los datos del usuario para que este pueda ingresar al curso.<br />INTERFAZ INGRESO<br />Ingreso usuario Repetición de datos<br /> ValidaciónY contraseña<br /> Abrir BD<br /> Almacenamiento de ingreso<br />Cerrar base <br />La interfaz de ingreso durante su vida valida los datos de ingreso del usuario y valida el ingreso (valida si esta registrado).<br />INTERFAZ EVALUACIÓN <br />Desarrollo de <br /> Validación Evaluación <br /> Abrir base de datos<br />Almacenamiento de evaluación<br /> Asignación de nivel<br />Almacenamiento de nivel<br /> Cerrar base de datos<br />La interfaz de evaluación valida el desarrollo de evaluación (valida si esta registrado), almacena el resultado de la evaluación, asigna nivel y almacena el nivel del usuario para asignar módulo.<br />INTERFAZ ACTIVIDADES<br />Desarrollo de<br />Actividades<br /> Validación<br /> Abrir base de datos<br />Almacenamiento de actividades<br /> Cerrar base de datos<br />La interfaz de actividades durante su vida permite el ingreso a las actividades, permite al usuario desarrollar las actividades y registra las actividades para ser revisadas por el maestro.<br />INTERFAZ EVALUACIONES<br /> Desarrollo<br /> ValidaciónDe evaluación<br /> Abrir base datos<br />Almacenamiento de evaluación <br /> Cerrar base de datos<br />La interfaz evaluaciones permite al usuario ingresar a la evaluación de modulo, enviar la evaluación y registrar la evaluación para una revisión posterior. <br />INTERFAZ CONSULTA DE NOTAS<br />Validación Consulta de notas <br /> Abrir base de datos<br />Almacenamiento de consulta<br /> Cerrar base de datos<br />La interfaz consulta de notas permite al usuario revisar las notas de las actividades y las notas de la evaluación del modulo.<br />DIAGRAMA ACTIVIDADES<br />El diagrama de actividades describe la secuencia de procesos que realiza el sistema de una forma detallada y precisa.<br />Actividades del sistema<br />Registro de datos personales.<br />Crear usuario y contraseña.<br />Solución de evaluación para asignación de nivel.<br />Aceptar condiciones del curso.<br />Registro y asignación de nivel guardados.<br />DIAGRAMA DE SECUENCIA DESARROLLO INTEGRAL DE APRENDIZAJE<br />Ingreso con usuario y contraseña.<br />Ingreso al módulo.<br />Ver explicación del tema.<br />Desarrollar actividades del tema.<br />Envío de actividades.<br />Almacenamiento de actividades en el sistema.<br />DIAGRAMA DE SECUENCIA EVALUACION MODULO<br />Desarrollo de evaluación del modulo<br />Envío de evaluación.<br />Almacenamiento de evaluaciones en el sistema.<br />DIAGRAMA DE SECUENCIA CONSULTA DE NOTAS<br />Consulta de notas.<br />Consulta de notas de las actividades.<br />Consulta de actividades realizadas y no realizadas<br />DIAGRAMA DE COMPONENTES<br />El diagrama de componentes ilustra los elementos que componen el sistema, es decir, las herramientas que se utilizaran para el desarrollo del software.<br />DIAGRAMA DE COMPONENTESCodificación FlashConsulta de notasVisual StudioEvaluacionesVisual StudioActividadesVisual StudioIngresoVisual StudioRegistro Visual Studio<br />PHP, HTML yDreamweaver<br />DIAGRAMA DE DESPLIEGUE<br />DIAGRAMA DE DESPLIEGUE<br /> Conexión Internet<br />BDREGISTRO USUARIOACTIVIDADESSERVIDOR1 Para iniciar sesión<br />USUARIOConexión<br />Procesar datos usuario<br />INDICEACTIVIDADES CURRICULARESINDICEBUSQUEDA REGISTROSSERVIDOR 2 Proceso de registro<br />ALGORITMOS<br />INGRESOInicioUsuario, contrUsuario= string“usuario incorrecto”UsuarioNoContr= string“Contraseña incorrecta”ContrNoSiSiBD = AbrirRev= BD RowsIngreso = “no”For r = Rev to 0 step -1<br />NextR = 0SiR = 0“Contraseña incorrecta”“usuario inexistente”Ingreso = “si”SiNoNoSiDBrow(e).Contraseña = UsuarioDBrow(e).usuario = Usuario<br />1<br />FinContinuar al moduloIngreso= Si“si”<br />NoSi<br />Se tomaran dos datos de entrada los cuales son:<br />Usuario: se le pedirá al usuario su nombre según el registro que anteriormente realizo.<br />Contraseña: Se le pedirá al usuario según su anterior registro.<br />Se validaran esos datos para comprobar que el tipo de dato que se haya declarado sea el que el usuario haya ingresado.<br />Los siguientes son datos de proceso:<br />Rev: Cuenta las filas en la base de datos, proporcionando la cantidad de registros que existan.<br />Ingreso: determina si el usuario puede continuar al siguiente modulo.<br />No existen datos de salida, sin embargo se podría considerar como datos de salida la pantalla del modulo.<br />REGISTRO<br />DBRow = actualizarDB = CerrarContinuar al ingresoFinInicioNombre, apellidos, ciudad, edad, tipo_doc, documento, Nombre_usuario, contraseña, discapacidad, Validar camposDBRow(r+1).Nombre = nombreDBRow(r+1).Apellido= apellidosDBRow(r+1).Ciudad = ciudadDBRow(r+1).Edad = edadDBRow(r+1).Tipo_doc = tipo_docDBRow(r+1).Documento = documentoDBRow(r+1).Nombre_usuario = nombre_usuarioDBRow(r+1).Contraseña = contraseñaDBRow(r+1).Discapacidad = discapacidad DB = AbrirRev= DBRowsFor r = 1 to Rev step 1R= RevNextNoSi<br />Se tomaran los datos de entrada los cuales son:<br />Nombre: Nombre del usuario<br />Apellido: Apellidos del usuario<br />Ciudad: Ciudad donde reside el usuario<br />Edad: Edad del usuario<br />Tipo_doc: Tipo de documento que porta el usuario<br />Documento: Numero de documento que posee en su documento de identidad<br />Nombre_usuario: Nombre escogido por el usuario para su identificación dentro del aplicativo<br />Contraseña: Contraseña de seguridad para el ingreso del usuario al sistema<br />Discacidad: Discapacidad que posea el usuario para la presentación de las actividades<br />Se validaran esos datos para comprobar que el tipo de dato que se haya declarado sea el que el usuario haya ingresado.<br />Los siguientes son datos de proceso:<br />Rev: Cuenta las filas en la base de datos, proporcionando la cantidad de registros que existan.<br />No existen datos de salida mas aun así se desplegara un mensaje en el cual se le indicara al usuario si su registro fue exitoso o si le falto algún dato por completar.<br />CAMBIO DE CONTRASEÑA<br />InicioNombre_UsuarioDB = AbrirRev= 0Filas = DBRowsFor R = 1 to Filas step 1ValidacionNombre_usuario = DBrow(r).Nombre_usuarioRev = rNoSiNextContraseñaDBRow(rev).Contraseña = ContraseñaDB = cerrarFin<br />Se tomara estos datos de entrada los cuales son: <br />Nombre_usuario: Dato que ingreso en el registro, se utilizara para rectificar la contraseña<br />Contraseña: Dato que el usuario proporcionara para crear la nueva contraseña.<br />Se validaran estos datos para comprobar que el tipo de dato que se haya declarado sea el que el usuario haya ingresado.<br />Los siguientes son datos de proceso:<br />Rev: Proporcionara el numero de la fila de datos en la base de datos.<br />Filas: Cuenta las filas en la base de datos, proporcionando la cantidad de registros que existan.<br />No existen datos de salida mas aun así se desplegara un mensaje en el cual se le indicara al usuario si el cambio de contraseña fue exitoso.<br />DESCRIPCIÓN DE INTERFACES<br /> INGRESO<br />El actual proyecto, de nombre IMES (Interactive and Multimedia English Software) Es básicamente un software con algo diferente, su objetivo es revolucionar en materia de interactividad, por este motivo las interfaces que maneje este son muy relevantes dentro del desarrollo de IMES.<br />Dentro de las interfaces podemos observar lo importante que es tener en cuenta que la relación entre el programa y el usuario sea lo más confortable posible; en la sección de inicio el usuario encuentra un menú que tiene destino hacia los diferentes componentes del sistema. <br />Esta pantalla determina el ingreso del usuario al curso donde si ya esta registrado podrá ingresar a sus respectivo modulo, y si no podrá ingresar a registrarse. Dentro de la sección de registro el usuario tiene la comodidad de crear un usuario, escoger el nombre que considere más adecuado (teniendo en cuenta las condiciones de uso), crear una contraseña y realizar cambios de esta en caso de olvido o cuando lo desee. También se registran en la base de datos los nombres, apellidos y datos personales del usuario, son sus respectivas condiciones de uso y después de completados todos los datos, el usuario podrá ingresar al curso. <br />REGISTRO<br />En esta pantalla se podrá registrar un usuario, se tiene en cuenta los tipos de campos que están en la base de datos para que el usuario no pueda ingresar algunos tipos de caracteres.<br />Una vez realizado el registro el usuario ingresa por primera vez con su nombre y su respectiva contraseña, la cual obtuvo en la sección de registro; para poder realizar el registro satisfactoriamente aparecerá una pantalla de términos y condiciones de uso.<br />TÉRMINOS Y CONDICIONES DE USO<br />En esta pantalla se especifican las condiciones para no hacer un uso inadecuado de esta aplicativo y reglas generales de comportamiento social.<br />Después del registro, el usuario ingresara y aparecerá un examen de nivelación que solo se realizara en el primer ingreso ya que con este se determinara el nivel del usuario.<br />EXAMEN DE INGRESO<br />Esta dividido en dos partes donde el sistema evalúa los conocimientos para que el usuario no tenga que volver a repetir temas q ya ha visto o temas de los cuales ya tiene conocimiento, en el se realizaran preguntas desde los temas mas sencillos hasta los mas complejos para poder determinar una buena aprobación de nivel este examen, en cada examen se dará 10 minutos de tiempo para que se pueda realizar, si alcanza o no a terminar se guardaran la preguntas automáticamente y se asignara al modulo de acuerdo al resultado que hasta el momento llevaba, este examen se realiza solo una vez desde que entra al curso no habrán oportunidades de repetirlo. <br />Al almacenar el resultado de los dos exámenes de prueba se le asignara un nivel y un módulo, posteriormente el usuario ingresa al módulo donde encuentra un listado de los tópicos del nivel con sus respectivas habilidades a desarrollar y evaluaciones respectivas de cada modulo.<br />ACTIVIDADES<br /> El tema principal está basado en una historia llamada la travesía de Jimmy quien sin saber donde esta, se encuentra en un lugar muy extraño e irreal, ahora Jimmy debe saber cómo llego este lugar para saber cómo salir, y en el proceso conocerá nuevos y extraños amigos quienes ayudarán a que su viaje resulte un poco más sencillo... se desarrollaran también actividades basadas en (lectura, escritura, habla y escucha) que se habilitan posteriormente que el usuario ingresa y desarrollar un mayor nivel de aprendizaje para el usuario.<br />CALIFICACIONES Y SISTEMA DE EVALUACIÓN DEL USUARIO<br />Se almacena las notas que ha obtenido el usuario durante su proceso de aprendizaje en su respectiva base de datos que al momento en que el usuario ingresa al modulo registrara su ingreso y las actividades que ha realizado durante su proceso, la calificación se realiza por actividad el 20%, por examen un 40%, por examen de habla, escritura, audio y comprensión de textos un 20%, el resto es por decisión del instructor de como se haya comportado si registro asistencia en el curso, durante su proceso de aprendizaje.<br />CODIFICACIÓN INTERFACES<br />Procesoingreso<br />numregistro<-double; evaluated <-string; button_click<-object; textbox1 <-quot;
; textbox2 <-quot;
<br />me<-hide; registro<-show<br />regis<-regisrtro<br />ingreso<-string<br />Para a<-0 Hasta regis-1 Con Paso 1 hacer<br />Si registro <-textbox1 Entonces<br />Si reegistro<-textbox2 Entonces<br />numregistro<-a<br />me<-hide<br />Si registro <-regis Entonces<br />registro<-textbox1<br /> Sino<br />registro<-quot;
..................quot;
<br />FinSi<br />Sino<br />registro<-quot;
..................quot;
<br />FinSi<br />Sino<br />registro<-quot;
..................quot;
<br />FinSi<br />FinPara<br />FinProceso<br />Proceso registro<br />Label1 <- colornegro<br />Label2 <- colornegro<br />Label3 <- colornegro<br />Label4 <- colornegro<br />Label5 <- colornegro<br />Label6 <- colornegro<br />Label7 <- colornegro<br />Label8 <- colornegro<br />Label9 <- colornegro<br />Label10 <- colornegro<br />Label11 <- colornegro<br />accept<- string<br />si RadioButton1 <- Verdadero Entonces<br />siTextBox9 <- vacio entonces<br />Label11 <- colorrojo<br />FinSi<br />Finsi<br />Escribir por favor complete las casillas faltantes<br />si TextBox1 <- vacio Entonces<br />Label1 <- colorrojo<br />FinSi<br />si TextBox2 <- vacio Entonces<br />Label2 <- colorrojo<br />FinSi<br />si TextBox3 <- vacio Entonces<br />Label3 <- colorrojo<br />FinSi<br />si TextBox4 <- vacio Entonces<br />Label5 <- colorrojo<br />FinSi<br />si TextBox5 <- vacio Entonces<br />Label7 <- colorrojo<br />FinSi<br />si TextBox6 <- vacio Entonces<br />Label8 <- colorrojo<br />FinSi<br />si TextBox7 <- vacio Entonces<br />Label9 <- colorrojo<br />FinSi<br />si TextBox8 <- vacio Entonces<br />Label10 <- colorrojo<br />FinSi<br />si ComboBox1<- vacio Entonces<br />Label4 <- colorrojo<br />FinSi<br />si ComboBox2 <- vacio Entonces<br />Label6 <- colorrojo<br />FinSi<br />Sino<br />si RadioButton1 <- Verdadero Entonces<br />si TextBox9 <- vacio Entonces<br />Label11 <- colorrojo<br />Escribir por favor complete las casillas faltantes<br />Sino<br />si CheckBox1 <- Verdadero Entonces<br />si TextBox7 <- TextBox8 Entonces<br />Sino<br /> Escribir Las contraseñas no coinciden por favor repitalas<br />FinSi<br />FinSi<br /> TextBox7<br /> TextBox8<br /> Label9 <- colorrojo<br /> Label10 <- colorrojo<br />FinSi<br />Sino<br />si CheckBox1 <- Verdadero Entonces<br />si TextBox7 <- TextBox8 Entonces<br />si Registro <- 0 Entonces<br />Accept<- quot;
siquot;
<br />Sino<br />Para a<- 0 Hasta registro-1 Con 1 Paso 1 Hacer<br />nomb_usuario<- string<- registro<br />sinomb_usuario<- textbox6 Entonces<br />Escribir nombre de usuario ya existente ;Escribir<br />label8 <- colorrojo<br />textbox6 <- vacio<br />Sino<br />accept<- quot;
siquot;
<br />FinPara<br />FinSi<br />Sino<br />Escribir las contraseñas no coinciden por favor repitalas;<br />textbox7 <- vacio<br />textbox8 <- vacio<br />label9 <- colorrojo<br />label10 <- colorrojo<br />FinSi<br />Sino<br />Escribir complete las casillas condiciones y restricciones ;<br />FinSi<br />FinSi<br />FinSi<br />siaccept<- quot;
siquot;
Entonces<br />disc<- boolean<br />si radiobutton1 <- verdadero Entonces<br />textbox9 <- <br />Sino<br />disc<- Falso<br />FinSi<br />Para a<-0 Hasta registro Con Paso1 Hacer <br />registro tabla insertar (textbox1, textbox2, textbox3, combobox1,<br />textbox4, combobox2, textbox5, textbox6, textbox7, disc, textbox9, quot;
noquot;
)<br />FinPara<br />textbox1 <- vacio<br />textbox1 <- vacio<br />textbox1 <- vacio<br />textbox1 <- vacio<br />textbox1 <- vacio<br />textbox1 <- vacio<br />textbox1 <- vacio<br />textbox1 <- vacio<br />textbox1 <- vacio<br />combobox1 <- vacio<br />combobox2 <- vacio<br />radiobutton1 <- Falso<br />radiobutton2 <- Falso<br />Leer ingreso;<br />FinSi<br />FinPara<br />FinProceso<br />Codificación Ingreso<br />Se declaran las variables que se utilizaran en el form<br />Public numregistro AsDouble, evaluated AsString<br />Se muestra el form de registro en caso de resgistro <br />PrivateSub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br /> TextBox1.Text = quot;
quot;
<br /> TextBox2.Text = quot;
quot;
<br />Me.Hide()<br />registro.Show()<br />EndSub<br />Se hace la validacion de usuario y contraseña con la base de datos<br />PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />Dim regis = RegistroDataSet.Registro.Rows.Count<br />Dim ingreso AsString<br /> ingreso = quot;
noquot;
<br />For a = 0 To (regis - 1) Step 1<br />If RegistroDataSet.Registro.Rows(a).Item(8) = TextBox1.Text Then<br />If RegistroDataSet.Registro.Rows(a).Item(9) = TextBox2.Text Then<br /> numregistro = a<br />Me.Hide()<br />If RegistroDataSet.Examen1.Rows.Count = regis Then<br />Else<br /> RegistroDataSet.Examen1.Rows.Add(quot;
..................quot;
)<br />EndIf<br /> RegistroDataSet.Examen1.Rows(a).Item(0) = TextBox1.Text<br />If RegistroDataSet.Registro.Rows(a).Item(12) = quot;
Noquot;
Then<br /> Evaluacion_ingreso.Show()<br /> RegistroDataSet.Registro.Rows(a).Item(12) = quot;
siquot;
<br />Else<br /> Continuar.Show()<br />EndIf<br /> ingreso = quot;
siquot;
<br />EndIf<br />EndIf<br />Next<br />If ingreso = quot;
noquot;
Then<br /> MsgBox(quot;
usuario o contraseña incorrectosquot;
)<br />EndIf<br /> TextBox1.Text = Nothing<br /> TextBox2.Text = Nothing<br />EndSub<br />En caso de que el usuario salga se cerrara la conexion a la base de datos<br />PrivateSub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br />Me.Hide()<br /> RegistroTableAdapter.Connection.Close()<br />Application.Exit()<br />EndSub<br />En caso de que el usuario cierre forzozamente el form se cerrara la conexion a la base de datos <br />PrivateSub Ingreso_FormClosed(ByVal sender AsObject, ByVal e As System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed<br /> RegistroTableAdapter.Connection.Close()<br /> Application.Exit()<br />EndSub<br />Cuando el form carga, se abre la conexion a la base de datos<br />PrivateSub Ingreso_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load<br />Me.RegistroTableAdapter.Fill(Me.RegistroDataSet.Registro)<br />EndSub<br />Codificación Registro<br />Se crea el registro según las validaciones de los campos, y según si el registro ya exista no dejara que se guarden los datos en la base de datos<br />PrivateSub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br /> Label1.ForeColor = Color.Black<br /> Label2.ForeColor = Color.Black<br /> Label3.ForeColor = Color.Black<br /> Label4.ForeColor = Color.Black<br /> Label5.ForeColor = Color.Black<br /> Label6.ForeColor = Color.Black<br /> Label7.ForeColor = Color.Black<br /> Label8.ForeColor = Color.Black<br /> Label9.ForeColor = Color.Black<br /> Label10.ForeColor = Color.Black<br /> Label11.ForeColor = Color.Black<br />Dim Accept AsString = quot;
noquot;
<br />If TextBox1.Text = quot;
quot;
Or TextBox2.Text = quot;
quot;
Or TextBox3.Text = quot;
quot;
Or TextBox4.Text = quot;
quot;
Or TextBox5.Text = quot;
quot;
Or TextBox6.Text = quot;
quot;
Or TextBox7.Text = quot;
quot;
Or TextBox8.Text = quot;
quot;
Or ComboBox1.Text = quot;
quot;
Or ComboBox2.Text = quot;
quot;
Then<br />If RadioButton1.Checked = TrueThen<br />If TextBox9.Text = quot;
quot;
Then<br /> Label11.ForeColor = Color.Red<br />EndIf<br />EndIf<br /> MsgBox(quot;
Por favor complete las casillas faltantesquot;
)<br />If TextBox1.Text = quot;
quot;
Then<br /> Label1.ForeColor = Color.Red<br />EndIf<br />If TextBox2.Text = quot;
quot;
Then<br /> Label2.ForeColor = Color.Red<br />EndIf<br />If TextBox3.Text = quot;
quot;
Then<br /> Label3.ForeColor = Color.Red<br />EndIf<br />If TextBox4.Text = quot;
quot;
Then<br /> Label5.ForeColor = Color.Red<br />EndIf<br />If TextBox5.Text = quot;
quot;
Then<br /> Label7.ForeColor = Color.Red<br />EndIf<br />If TextBox6.Text = quot;
quot;
Then<br /> Label8.ForeColor = Color.Red<br />EndIf<br />If TextBox7.Text = quot;
quot;
Then<br /> Label9.ForeColor = Color.Red<br />EndIf<br />If TextBox8.Text = quot;
quot;
Then<br /> Label10.ForeColor = Color.Red<br />EndIf<br />If ComboBox1.Text = quot;
quot;
Then<br /> Label4.ForeColor = Color.Red<br />EndIf<br />If ComboBox2.Text = quot;
quot;
Then<br /> Label6.ForeColor = Color.Red<br />EndIf<br />Else<br />If RadioButton1.Checked = TrueThen<br />If TextBox9.Text = quot;
quot;
Then<br /> Label11.ForeColor = Color.Red<br />MsgBox(quot;
Por favor complete las casillas faltantesquot;
)<br />Else<br />If CheckBox1.Checked = TrueThen<br />If TextBox7.Text = TextBox8.Text Then<br />Else<br /> MsgBox(quot;
Las contraseñas no coinciden por favor repitalasquot;
)<br />TextBox7.Text = quot;
quot;
<br /> TextBox8.Text = quot;
quot;
<br /> Label9.ForeColor = Color.Red<br /> Label10.ForeColor = Color.Red<br />EndIf<br />Else<br /> MsgBox(quot;
Complete la casilla 'Condiciones y restricciones'quot;
)<br />EndIf<br />EndIf<br />Else<br />If CheckBox1.Checked = TrueThen<br />If TextBox7.Text = TextBox8.Text Then<br />If RegistroDataSet.Registro.Rows.Count = 0 Then<br /> Accept = quot;
siquot;
<br />Else<br />For a = 0 To (RegistroDataSet.Registro.Rows.Count - 1) Step 1<br />Dim nomb_usuario AsString = RegistroDataSet.Registro.Rows(a).Item(8)<br />If nomb_usuario = TextBox6.Text Then<br />MsgBox(quot;
Nombre de usuario ya existentequot;
)<br />Label8.ForeColor = Color.Red()<br /> TextBox6.Text = quot;
quot;
<br />Else<br /> Accept = quot;
siquot;
<br />EndIf<br />Next<br />EndIf<br />Else<br /> MsgBox(quot;
Las contraseñas no coinciden por favor repitalasquot;
)<br />TextBox7.Text = quot;
quot;
<br /> TextBox8.Text = quot;
quot;
<br /> Label9.ForeColor = Color.Red<br /> Label10.ForeColor = Color.Red<br />EndIf<br />Else<br /> MsgBox(quot;
Complete la casilla 'Condiciones y restricciones'quot;
)<br />EndIf<br />EndIf<br />EndIf<br />If Accept = quot;
siquot;
Then<br />Dim Disc AsBoolean<br />If RadioButton1.Checked = TrueThen<br /> Disc = True<br /> TextBox9.Text = quot;
Nonequot;
<br />Else<br /> Disc = False<br />EndIf<br />For a = 0 To RegistroDataSet.Registro.Rows.Count Step 1<br />Me.RegistroTableAdapter.Insert(TextBox1.Text, TextBox2.Text, TextBox3.Text, ComboBox1.Text, TextBox4.Text, ComboBox2.Text, TextBox5.Text, TextBox6.Text, TextBox7.Text, Disc, TextBox9.Text, quot;
Noquot;
)<br />Me.RegistroTableAdapter.Dispose()<br />Me.RegistroTableAdapter.Update(Me.RegistroDataSet)<br />Me.Validate()<br />Me.RegistroBindingSource.EndEdit()<br />Me.TableAdapterManager.UpdateAll(Me.RegistroDataSet)<br /> Application.Restart()<br />Next<br /> TextBox1.Text = quot;
quot;
<br /> TextBox2.Text = quot;
quot;
<br /> TextBox3.Text = quot;
quot;
<br /> TextBox4.Text = quot;
quot;
<br /> TextBox5.Text = quot;
quot;
<br /> TextBox6.Text = quot;
quot;
<br /> TextBox7.Text = quot;
quot;
<br /> TextBox8.Text = quot;
quot;
<br /> TextBox9.Text = quot;
quot;
<br /> ComboBox1.Text = quot;
quot;
<br /> ComboBox2.Text = quot;
quot;
<br /> RadioButton1.Checked = False<br /> RadioButton2.Checked = False<br /> CheckBox1.Checked = False<br /> CheckBox1.Enabled = False<br />Me.Hide()<br /> Ingreso.Show()<br />EndIf<br />EndSub<br />Muestra las condiciones de uso<br />PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />Terminos_y_condiciones_de_uso.Show()<br />CheckBox1.Enabled = True<br />EndSub<br />Limpia las casillas si el usuario decide salir y no hacer el registro<br />PrivateSub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click<br /> TextBox1.Text = quot;
quot;
<br /> TextBox2.Text = quot;
quot;
<br /> TextBox3.Text = quot;
quot;
<br /> TextBox4.Text = quot;
quot;
<br /> TextBox5.Text = quot;
quot;
<br /> TextBox6.Text = quot;
quot;
<br /> TextBox7.Text = quot;
quot;
<br /> TextBox8.Text = quot;
quot;
<br /> TextBox9.Text = quot;
quot;
<br /> ComboBox1.Text = quot;
quot;
<br /> ComboBox2.Text = quot;
quot;
<br /> RadioButton1.Checked = False<br /> RadioButton2.Checked = False<br /> CheckBox1.Checked = False<br /> CheckBox1.Enabled = False<br />Me.Hide()<br />Ingreso.Show()<br />EndSub<br />Limpia las casillas si el usuario cierra forzosamente el form<br />PrivateSub registro_FormClosed(ByVal sender AsObject, ByVal e As System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed<br /> TextBox1.Text = quot;
quot;
<br /> TextBox2.Text = quot;
quot;
<br /> TextBox3.Text = quot;
quot;
<br /> TextBox4.Text = quot;
quot;
<br /> TextBox5.Text = quot;
quot;
<br /> TextBox6.Text = quot;
quot;
<br /> TextBox7.Text = quot;
quot;
<br /> TextBox8.Text = quot;
quot;
<br /> TextBox9.Text = quot;
quot;
<br /> ComboBox1.Text = quot;
quot;
<br /> ComboBox2.Text = quot;
quot;
<br /> RadioButton1.Checked = False<br /> RadioButton2.Checked = False<br /> CheckBox1.Checked = False<br />Terminos_y_condiciones_de_uso.Hide()<br />Ingreso.Show()<br />EndSub<br />Carga los datos de la base de datos<br />PrivateSub registro_Load(ByVal sender AsObject, ByVal e As System.EventArgs) HandlesMe.Load<br />Me.RegistroTableAdapter.Fill(Me.RegistroDataSet.Registro)<br />For edad = 5 To 80<br /> ComboBox2.Items.Add(edad)<br />Next<br /> RadioButton2.Checked = True<br />EndSub<br />PrivateSub RadioButton1_CheckedChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles RadioButton1.CheckedChanged<br /> Label11.Visible = True<br /> TextBox9.Visible = True<br />EndSub<br />PrivateSub RadioButton2_CheckedChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles RadioButton2.CheckedChanged<br />Label11.Visible = False<br /> TextBox9.Visible = False<br />EndSub<br />Hace las vbalidaciones de las cajas de texto<br />PrivateSub TextBox1_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress<br />IfChar.IsLetter(e.KeyChar) OrChar.IsControl(e.KeyChar) Then<br /> e.Handled = False<br />Else<br /> e.Handled = True<br />EndIf<br />EndSub<br />PrivateSub TextBox2_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox2.KeyPress<br />IfChar.IsLetter(e.KeyChar) OrChar.IsControl(e.KeyChar) Then<br /> e.Handled = False<br />Else<br /> e.Handled = True<br />EndIf<br />EndSub<br />PrivateSub TextBox4_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox4.KeyPress<br />IfChar.IsNumber(e.KeyChar) Then<br /> e.Handled = False<br />Else<br /> e.Handled = True<br />EndIf<br />EndSub<br />PrivateSub ComboBox1_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox1.KeyPress<br /> e.Handled = True<br />EndSub<br />PrivateSub ComboBox2_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles ComboBox2.KeyPress<br /> e.Handled = True<br />EndSub<br />PrivateSub TextBox5_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox5.KeyPress<br />IfChar.IsLetter(e.KeyChar) OrChar.IsControl(e.KeyChar) Then<br /> e.Handled = False<br />Else<br /> e.Handled = True<br />EndIf<br />EndSub<br />PrivateSub TextBox6_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox6.KeyPress<br />IfChar.IsSymbol(e.KeyChar) OrChar.IsPunctuation(e.KeyChar) Then<br /> e.Handled = True<br />Else<br /> e.Handled = False<br />EndIf<br />EndSub<br />PrivateSub TextBox7_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox7.KeyPress<br />IfChar.IsSymbol(e.KeyChar) OrChar.IsPunctuation(e.KeyChar) Then<br /> e.Handled = True<br />Else<br /> e.Handled = False<br />EndIf<br />EndSub<br />PrivateSub TextBox8_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox8.KeyPress<br />IfChar.IsSymbol(e.KeyChar) OrChar.IsPunctuation(e.KeyChar) Then<br /> e.Handled = True<br />Else<br /> e.Handled = False<br />EndIf<br />EndSub<br />Codificación Términos y condiciones de uso<br />PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />Me.Hide()<br />EndSub<br />PrivateSub Terminos_y_condiciones_de_uso_FormClosed(ByVal sender AsObject, ByVal e As System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed<br />If registro.Visible = TrueThen<br /> registro.Show()<br />Else<br /> Ingreso.Show()<br />EndIf<br />EndSub<br />Codificación examen de ingreso<br />Parte 1<br />Public puntuacion AsInteger = 0<br />PrivateSub RadioButton9_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RadioButton9.CheckedChanged<br />EndSub<br />PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />Me.Hide()<br /> Ingreso.Show()<br />EndSub<br />Se asignan los primeros puntajes de la evaluacion<br />PrivateSub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />If RadioButton2.Checked = TrueThen<br /> puntuacion = puntuacion + 10<br />EndIf<br />If RadioButton6.Checked = TrueThen<br /> puntuacion = puntuacion + 10<br />EndIf<br />If RadioButton12.Checked = TrueThen<br /> puntuacion = puntuacion + 10<br />EndIf<br />If RadioButton16.Checked = TrueThen<br /> puntuacion = puntuacion + 10<br />EndIf<br />If RadioButton18.Checked = TrueThen<br />puntuacion = puntuacion + 10<br />EndIf<br />Me.Hide()<br /> Evaluacion_ingreso2.Show()<br />EndSub<br />PrivateSub Evaluacion_ingreso_FormClosed(ByVal sender AsObject, ByVal e As System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed<br />Ingreso.Show()<br />EndSub<br />Se cargan los datos del usuario en los label<br />PrivateSub Evaluacion_ingreso_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load<br />Dim numregistro AsDouble = Ingreso.numregistro<br /> Label3.Text = Ingreso.RegistroDataSet.Registro.Rows(numregistro).Item(8)<br /> Label4.Text = Ingreso.RegistroDataSet.Registro.Rows(numregistro).Item(2)<br />EndSub<br /> Parte 2<br />Dim numregistro AsDouble = Ingreso.numregistro<br />PrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click<br />Me.Hide()<br /> Ingreso.Show()<br />EndSub<br />Se asigna un nivel de acuerdo a los resultados anteriores y los de este form, y se hacen las validaciones respectivas<br />PrivateSub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click<br />If RadioButton1.Checked = TrueThen<br /> Evaluacion_ingreso.puntuacion = Evaluacion_ingreso.puntuacion + 10<br />EndIf<br />If RadioButton5.Checked = TrueThen<br />Evaluacion_ingreso.puntuacion = Evaluacion_ingreso.puntuacion + 10<br />EndIf<br />If RadioButton12.Checked = TrueThen<br />Evaluacion_ingreso.puntuacion = Evaluacion_ingreso.puntuacion + 10<br />EndIf<br />If RadioButton14.Checked = TrueThen<br /> Evaluacion_ingreso.puntuacion = Evaluacion_ingreso.puntuacion + 10<br />EndIf<br />If RadioButton20.Checked = TrueThen<br />Evaluacion_ingreso.puntuacion = Evaluacion_ingreso.puntuacion + 10<br />EndIf<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(0) = Label3.Text<br />If Evaluacion_ingreso.puntuacion <= 30 Then<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(1) = quot;
Basicoquot;
<br />SelectCase Evaluacion_ingreso.puntuacion<br />Case 0<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
1quot;
<br />Case 10<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
1quot;
<br />Case 20<br />Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
2quot;
<br />Case 30<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
3quot;
<br />EndSelect<br />Else<br />If Evaluacion_ingreso.puntuacion <= 60 Then<br />Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(1) = quot;
Medioquot;
<br />SelectCase Evaluacion_ingreso.puntuacion<br />Case 40<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
1quot;
<br />Case 50<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
2quot;
<br />Case 60<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
3quot;
<br />EndSelect<br />Else<br />If Evaluacion_ingreso.puntuacion <= 100 Then<br />Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(1) = quot;
Avanzadoquot;
<br />SelectCase Evaluacion_ingreso.puntuacion<br />Case 70<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
1quot;
<br />Case 80<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
2quot;
<br />Case 90<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
3quot;
<br />Case 100<br /> Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2) = quot;
3quot;
<br />EndSelect<br />EndIf<br />EndIf<br />EndIf<br />Me.Hide()<br /> Actividades.Show()<br />EndSub<br />PrivateSub Evaluacion_ingreso2_FormClosed(ByVal sender AsObject, ByVal e As System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed<br />Ingreso.Show()<br />EndSub<br />Se cargan los datos del usuario en los label<br />PrivateSub Evaluacion_ingreso2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load<br /> Label3.Text = Ingreso.RegistroDataSet.Registro.Rows(numregistro).Item(8)<br /> Label4.Text = Ingreso.RegistroDataSet.Registro.Rows(numregistro).Item(2)<br />EndSub<br />CODIFICACIÓN ACTIVIDADES<br />Dim numregistro AsDouble = Ingreso.numregistro<br />PrivateSub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click<br />Me.Hide()<br /> Informes.Show()<br />EndSub<br />PrivateSub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click<br />Me.Hide()<br /> Ingreso.Show()<br />EndSub<br />PrivateSub Actividades_FormClosed(ByVal sender AsObject, ByVal e As System.Windows.Forms.FormClosedEventArgs) HandlesMe.FormClosed<br />Ingreso.Show()<br />EndSub<br />Se cargan los datos del usuario en los label<br />PrivateSub Actividades_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.Load<br /> Label3.Text = Ingreso.RegistroDataSet.Registro.Rows(numregistro).Item(8)<br /> Label4.Text = Ingreso.RegistroDataSet.Registro.Rows(numregistro).Item(2)<br /> Label6.Text = Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(1)<br />Label5.Text = Ingreso.RegistroDataSet.Examen1.Rows(numregistro).Item(2)<br />EndSub<br />