proyecto
DESCRIPTION
proyecto de pagina web para titulacionTRANSCRIPT
PLAN DE PROYECTO
INTRODUCCINLa implementacin de un sub sistema de matrcula en una organizacin ayuda a mejorar la gestin del desarrollo de la institucin, y esto traer como consecuencia una disminucin de los problemas y errores, favoreciendo las relaciones y comunicacin entre las personas y grupos de organizacin, y de stos con los usuarios. Utilizar un subsistema de matrcula para el proceso de matrcula disminuye inicialmente los costos de de la tarea institucional, pero debe disminuir en mucha mayor medida los costos de su mantenimiento. Lo que se busca con este proyecto es en realidad solucionar una de los que la Institucin Educativa experimenta.
El presente proyecto se ha realizado en la Institucin Educativa Pablo Patrn de Chosica con el nombre de Subsistema de Matrcula, cuya finalidad es de beneficiar a toda la comunidad educativa para que puedan brindar un mejor servicio.
Este proyecto surgi con la necesidad de resolver los inconvenientes frecuentes que se presentaban al momento de efectuar la matrcula de los educandos, ya que se desarrollaba en forma manual y esto implicaba mucha demora en la atencin, adems almacenaba informacin desordenada lo que no permita generar reportes de educandos matrculados.Luego de una investigacin preliminar, recopilacin de la informacin necesaria para el desarrollo del software; se determin los requerimientos del sistema y se procedi a disearlo y posteriormente implementarlo en la Institucin Educativa Pablo Patrn de Chosica. 1. DATOS GENERALES:1.1. Titulo: Implementacin De Un Sub Sistema De Matrcula En La Institucin Educativa Pablo Patrn chosica1.2. Autor : CHVEZ CIEZA, Virgilio
1.3. Lugar de investigacin: Institucin Educativa Pablo Patrn chosica ubicado en el distrito de Lurigancho chosica.2. PLANEAMIENTO DEL PROBLEMA DE ESTUDIO:
El sistema actual de matrcula que la institucin maneja tiene algunas partes que son automticos (en Excel, Word) y otras que son manuales. El estudiante se presenta al rea de registraduria para recibir su matrcula. El registrador busca una libreta de informes hecho en Microsoft Word, del rea de recaudaciones quienes son los que tienen deuda, si tienen deuda el estudiante tiene que hacer los arreglos para pagar la deuda y certificar que se haya pagado para poder completar su proceso de matrcula. Los estudiantes que no tienen deuda le entregan un informe que contiene la matrcula del estudiante para el prximo Bimestre. Todo esto est en almacenes de datos aparte. Si el estudiante fracasa un curso que es primer requisito del siguiente ao nivel, el registrador tiene que fsicamente hablar con el estudiante para hacerle el cambio o darle de baja. El sistema actual no genera secciones automticamente, se le asigna seccin 001 a cursos que son diurno 011 los que son de noche. Si hay algn curso que se est asignando dos veces en el mismo trmino, se le asigna 002, 003, etc. La informacin de matrcula del estudiante est en un almacn de datos computarizado, el almacn de datos de profesores, cursos, estudiantes y secciones son almacenes manuales. 2.1. Formulacin del problema:Cmo se realiza el proceso de matricula en la Institucin Educativa Pablo Patrn?2.2. Justificacin:De acuerdo a los resultados obtenidos en las encuestas donde el 80% de los estudiantes y padres de familia aprueban la implementacin de un Subsistema de matrcula. Y entrevistas aplicadas a la comunidad educativa se hace ineludible automatizar el proceso de matrcula para optimizar la atencin a los estudiantes.3. FORMULACIN DE OBJETIVOS:3.1. Objetivo general:Implementar el Subsistema de Matrcula en la Institucin Eductiva Pablo Patrn de chosica para optimizar la atencin a los estudiantes.3.2. Objetivos especficos Llevar un control adecuado en el manejo de informacin. Optimizar el tiempo en el proceso de matrcula. Emitir reportes con informacin oportuna que permita la toma de decisiones.4. MARCO TERICO.4.1. Antecedentes del estudio:Como antecedente del presente estudio tenemos los siguientes trabajos de investigacin: 2009. CARHUAVILCA CAPCHA DANNY. Subsistema de Matrcula en el Centro de Educacin Tcnica Productiva Nicolas de Pierola se implement un Subsistema que permite optimizar el proceso de matrcula, y obtener una oportuna emisin de informacin de las matriculas de los estudiantes.
2006. LEN HICHIPOS Jorge Mateo. Subsistema de Matrcula para la Institucin Educativa Nicolas de Pierola se implement un Subsistema que permite optimizar el proceso de matrcula, y obtener una oportuna emisin de informacin de las matriculas de los estudiantes. 2005. COTERA SEGURA Mara Angelica. Subsistema de Matrcula realizado en la Institucin Educativa Felipe Huamn Poma de Ayala permiti automatizar el proceso de matrcula para lograr de esta forma un alcance total del 100% de la Institucin, personal administrativo, alumnos, profesores y usuarios en general. 2003. CARITAS QUISPE Martha. Subsistema de Matrcula realizado en la Institucin Educativa Inicial N 207 que permiti realizar reportes, mantener informado con exactitud a las reas de Direccin, personal docente y administrativo, acelerando el flujo de informacin y mensajes.4.2. Definicin de trminos: Sistema.- conjunto de partes o elementos organizados y relacionados que interactan entre s, para lograr un objetivo. Los sistemas reciben (entrada) datos, energa o materia de ambiente y proveen (salida) informacin, energa o materia. Un sistema puede ser fsico o concreto (una computadora, un televisor, un humano) o puede ser abstracto o conceptual (un software).Automatizar.- Convertir ciertos movimientos corporales en movimientos automaticos o indeliberados. Aplicar la automtica a un proceso, a un dispositivo, etc. Optimizar.- Buscar la mejor manera de realizar una actividad. Matrcula.- Lista o catlogo de los nombres de las personas, o especificcin de los bienes races que se acientan para un fin determinado por las leyes o reglamentos.4.3. Base terica Cientfica:4.3.1 Gestin administrativa:Conjunto de acciones mediante las cuales el directivo desarrolla sus actividades a travs del cumplimiento de las fases del proceso administrativo: Planear, organizar, dirigir, coordinar y controlar.
4.3.2 Gestin de proceso:El conjunto de actividades, desiciones, actividades y tareas que se encadenan en forma secuencial y ordenada para conseguir un resultado que satisfaga plenamente los requerimientos de los usuarios.
4.3.3. Sistemas de seguimiento y control de proyectos y planes operativos:Son herramientas agiles y fciles de usar, que permiten a los directores, profesores y personal responsable, implementar practicas para la gestin de objetivos en ambientes de trabajo en grupo. Estas herramientas permiten que el personal operativo trabaje estratgicamente aliniandose a los planes de ejecucin, documente los avances realizados, guarde archivos e ingrese indicadores BSC. De manera que por medio de estos indicadores rpidamente se tenga una visin precisa del estado de trabajo y si se desea, acceso al detalle de las actividades realizadas y los documentos guardados. 4.4 Base tecnolgica:En el proceso de desarrollo de este proyecto se utilizarn el software. Rational Rose, Microsoft Access y Visual Basic. Visual Basic 6.0 es un lenguaje de programacin desarrollado por Alan Cooper para Microsoft. El lenguaje de programacin es un dialecto de BASIC, con importantes aadidos. Su primera versin fue presentada en 1991 con la intencin de simplificar la programacin utilizando un ambiente de desarrollo completamente grfico que facilitara la creacin de interfaces grficas y en cierta medida tambin la programacin misma. En 2001 Microsoft propone abandonar el desarrollo basado en la API Win32 y pasar a trabajar sobre un framework o marco comn de libreras independiente de la version del sistema operativo, .NET Framework, a travs de fcil transicin de cdigo entre ellos) que presenta serias incompatibilidades con el cdigo Visual Basic existente.Visual Basic constituye un IDE (entorno de desarrollo integrado o en ingls Integrated Development Enviroment) que ha sido empaquetado como un programa de aplicacin, es decir, consiste en un editor de cdigo (programa donde se escribe el cdigo fuente), un depurador (programa que corrige errores en el cdigo fuente para que pueda ser bien compilado), un compilador (programa que traduce el cdigo fuente a lenguaje de mquina), y un constructor de interfaz grfica o GUI (es una forma de programar en la que no es necesario escribir el cdigo para la parte grfica del programa, sino que se puede hacer de forma visual).
Es un lenguaje de fcil aprendizaje pensado tanto para programadores principiantes como expertos, guiado por eventos, y centrado en un motor de formularios que facilita el rpido desarrollo de aplicaciones grficas. Su sintaxis, derivada del antiguo BASIC, ha sido ampliada con el tiempo al agregarse las caractersticas tpicas de los lenguajes estructurados modernos. Se ha agregado una implementacin limitada de la programacin orientada a objetos (los propios formularios y controles son objetos), aunque s admite el polimorfismo mediante el uso de los Interfaces, no admite la herencia. No requiere de manejo de punteros y posee un manejo muy sencillo de cadenas de caracteres. Posee varias bibliotecas para manejo de bases de datos, pudiendo conectar con cualquier base de datos a travs de ODBC (Informix, DBase, Access, MySQL, SQL Server, PostgreSQL ,etc) a travs de ADO.
Es utilizado principalmente para aplicaciones de gestin de empresas, debido a la rapidez con la que puede hacerse un programa que utilice una base de datos sencilla, adems de la abundancia de programadores en este lenguaje.
El compilador de Microsoft genera ejecutables que requieren una DLL para que funcionen, en algunos casos llamada MSVBVMxy.DLL (acrnimo de "MicroSoft Visual Basic Virtual Machine x.y", siendo x.y la versin) y en otros VBRUNXXX.DLL ("Visual Basic Runtime X.XX"), que provee todas las funciones implementadas en el lenguaje. Adems existen un gran nmero de bibliotecas (DLL) que facilitan el acceso a muchas funciones del sistema operativo y la integracin con otras aplicaciones. Sin embargo esto slo es una limitacin en sistemas obsoletos, ya que las bibliotecas necesarias para ejecutar programas en Visual Basic vienen de serie en todas las versiones de Windows desde Windows 2000. Microsof office Access: Microsoft Access es un programa sistema de gestin de base de datos relacional creado y modificado por Microsoft para uso personal en pequeas organizaciones. Es un componente de la suite Microsoft Office, aunque no se incluye en el paquete "bsico". UML.
UML es un popular lenguaje de modelado de sistemas de software.Se trata de un lenguaje grfico para construir, documentar, visualizar y especificar un sistema de software. Entre otras palabras, UML se utiliza para definir un sistema de software.Posee la riqueza suficiente como para crear un modelo del sistema, pudiendo modelar los procesos de negocios, funciones, esquemas de bases de datos, expresiones de lenguajes de programacin, etc. Para ello utiliza varios tipos diferentes de diagramas, por ejemplo, en UML 2.0 hay 13 tipos de diagramas. Estos diagramas se pueden diferenciar en tres categoras:Diagramas de estructura:Diagrama de clasesDiagrama de componentesDiagrama de objetosDiagrama de estructura compuesta (UML 2.0)Diagrama de despliegueDiagrama de paquetes
Diagramas de comportamiento:Diagrama de actividadesDiagrama de casos de usoDiagrama de estados
Diagramas de interaccin:Diagrama de secuenciaDiagrama de comunicacinDiagrama de tiempos (UML 2.0)Diagrama de vista de interaccin (UML 2.0) Rational Rose:Herramienta de desarrollo basada en modelos que se integra con las bases de datos y los IDE de las principales plataformas del sector...I. VENTAJAS:a. La forma que se almacena los datos se simplificara.b. Se facilitara la forma en cual se genera los informes.
c. La rapidez en cual el proceso de matricula se completa.
d. Mayor seguridad para el proceso y almacenamiento de datos.5. HIPTESIS DE INVESTIGACIN:5.1 Hiptesis general: Si se implementa el sub sistema de matrcula de la Institucin Educativa Pablo Patron entonces se optimizar la eficiencia del servicio de atencin a los estudiantes.5.1.1 Hiptesis especifica: Si se implementa el Subsistema de matrcula entonces se agilizar el proceso de matrcula de los estudiantes. Si se implementa el Subsistema de matricula entonces nos permitir obtener la ficha de matrcula de los estudiantes luego realizar la transaccin. Si se implementa el Subsistema de matrcula entonces nos permitir modificar o actualizar los datos de los estudiantes.6 METODOLOGA DE INVESTIGACIN:6.1 Tipo de investigacin: Aplicada y tcnica. 6.2 Mtodo de investigacin: Mtodo Experimental. 6.2.1. Investigacin preliminar:Datos Generales:
Denominacin: Institucin Educativa Nacional Pablo Patron
Domicilio: chosica.
Telfono Telefax: 361 - 1506
Constitucin e Inscripcin:
A. La Institucin Educativa Nacional Pablo Patrn fue fundado el 31 de octubre de 1994 promovida por la iglesia San Juan Bautista misionera, realmente inicia sus actividades a partir del ao 1996.Procesos Judiciales: No tieneB. Administracin:
La Institucin Educativa esta de la siguiente manera:
Administrativo
Secretara
Profesores
Personal de apoyo.6.2.1.1. Clarificacin de requerimientos: Misin: La Institucin Educativa PabloPatrn tiene como misin formar ciudadanos ntegros con direccin distinta a lo normal. Visin: Somos una institucin educativa Cristiana con principios y valores bblicos para la formacin de los lderes del futuro al servicio de nuestro pas. Desarrollo estratgico. Cuenta con desarrollo estratgico como: FODA e implementacin de metas estratgicos. Objetivos de la empresa: El objetivo de la empresa es alcanzar el grado de liderazgo en la Educacin peruana, es decir; lograr ser una Institucin Educativa prestigiosa en Educacin.
Otro objetivo es formar futuros ciudadanos lderes y con principios cristianos.
6.2.2 Determinacin de requerimientos:La Institucin Educativa requiere de un Subsistema de matrcula automatizado para dar solucin a sus dificultades. A) Determinacin del alcance del Subsistema:El Subsistema de matrcula de la Institucin Eductiva de Pablo Patrn comprende nicamente el proceso de matrcula con los siguientes alcances:
Control exacto de los estudiantes mediante cdigos en los diferentes grados y secciones, tanto de nivel primaria como secundaria.
Imagen 6.1 Alcance del Subsistema. 6.2.2 Anlis Estructurado: Para el anlisis estructurado de datos utilizaremos los siguientes modelos: diagrama de flujo de datos, modelo de entidad relacin, modelo relacional.
6.2.3 Diagrama de contexto o diagrama de flujo de datos:Muestran en forma visual slo el flujo de datos entre los distintos procesos, entidades externas y almacenes que conforman un sistema. Cuando los analistas de sistemas investigan sobre los requerimientos de informacin de los usuarios, deben ser capaces de concebir la manera en que los datos fluyen a travs del sistema u organizacin, los procesos que sufren estos datos y sus tipos de salida. Entidad externa, proceso, flujo de datos y almacen de datos.
Imagen 6.2. Diagrama de flujo del Subsistema de matrcula.6.2.3.2 Modelo entidad relacin (MER) El modelo de datos ms extendido es el denominado ENTIDAD/RELACIN (E/R) En el modelo E/R se parte de una situacin real a partir de la cual se definen entidades y relaciones entre dichas entidades:
Relacin.- Asociacin entre entidades, sin existencia propia en el mundo real que estamos modelando, pero necesaria para reflejar las interacciones existentes entre entidades. Las relaciones pueden ser de tres tipos: Relaciones 1-1.- Las entidades que intervienen en la relacin se asocian una a una. Relaciones 1-n.- Una ocurrencia de una entidad est asociada con muchas (n) de otra. Relaciones n-n.-Cada ocurrencia, en cualquiera de las dos entidades de la relacin, puede estar asociada con muchas (n) de la otra y viceversa.
Imagen 6.3. Modelo Entidad Relacin del Sub Sistema de matrculaDiseo Entidad Relacin.
Imagen 6.4. Diseo E R Sub Sistema de matrcula6.2.4 Anlisis orientado a objetos:
Rational Rose utiliza un proceso de desarrollo iterativo controlado (controlled iterative process development), donde el desarrollo se lleva a cabo en una secuencia de iteraciones. Cada iteracin comienza con una primera aproximacin del anlisis, diseo e implementacin para identificar los riesgos del diseo, los cuales se utilizan para conducir la iteracin, primero se identifican los riesgos y despus se prueba la aplicacin para que stos hagan minimos.
Cuando la implementacin pasa todas las pruebas que se determinan en el proceso, sta se revisa y se aaden los elementos modificados al modelo de anlisis y diseo. Una vez que la actualizacin del modelo se ha modificado, se realiza la siguiente iteracin.6.2.1.1.1 Modelo de negocio:
Para ser estudiante de la Institucin Educativa Pablo Patron se debe realizar lo siguiente:El padre de familia debe de realizar un pago por derecho de apafa la matricula es gratis para todos. 6.2.1.2 Modelamiento de proceso de negocio :
Identificacin de los procesos de negocio:
NProceso de Negocio
01Automatizar el proceso de matrcula
Diagrama de casos de usos del negocio:Institucin Educativa Pablo Patrn
Alumno Gestiona proceso de matrcula Diretor.
Imagen 6.10. Diagrama de Caso de Uso del Negocio:
Formato de identificacin de actores:NActorRoles/Responsabilidades
0102AlumnoDirector- Entrega la ficha nica de matrcula iniciando el proceso.- Selecciona el grado que va a estudiar.
- Canjea el voucher por un recibo.
- Evalua expedientes.
- Aprueba el proceso de matricula
6.2.1.3 Diagrama de casos de uso del Subsistema:
Imagen 6.11 Diagrama de casos de uso a nivel general del Subsistema de matrcula.
Diagrama de Clases:
Imagen 6.12. Diagrama de clases del Sub Sistema de matrcula.
Diagrama de Secuencia:
Imagen 6.13 Diagrama de Secuencia del Sub Sistema de matrcula.Diagrama de Colaboracin:
Imagen 6.14 Diagrama de Colaboracin del Sub Sistema de matricula.Diagrama de Componentes:
Imagen 6.15. Diagrama de Componentes del Sub Sistema de matrcula
Desarrollo del Software:
A continuacin presentamos todo el procedimiento que se realiz para el desarrollo de este proyecto, denominado Subsistema de matrcula.
Cdigo fuente:
Formularios:
Formulario de Presentacin:
Imagen 6.16. Formulario de presentacin.Codificacin 12.1. MDULO
Global Cn As ADODB.Connection 'conexion global del proyecto
Global Rs As ADODB.Recordset 'Variables de tipo tabla ulitizable en cualquier parte del proyecto
Global Ry As ADODB.Recordset 'Variables de tipo tabla ulitizable en cualquier parte del proyecto
Global Rx As ADODB.Recordset 'Variables de tipo tabla ulitizable en cualquier parte del proyecto
Global Rz As ADODB.Recordset 'Variables de tipo tabla ulitizable en cualquier parte del proyecto
Global R0 As ADODB.Recordset 'slo de busqueda de datos
Global R1 As ADODB.Recordset 'Solo de busqueda de datos
Public Ruta As String
Global Sq As String 'variable de tipo texto de alcance global
Public Opcion As Boolean 'sirve para verificar la tabla Derecho
Global Busca As String '
Global CoIE As String 'Sirve para almacenar Codigo del colegio de procedencia
Global NuIE As String 'Sirve para almacenar numero de colegio de procedencia
Global NoIE As String 'sirve para almacenar el nombre de colegio de procedencia
Global MoIE As String 'Sirve para almacenar el motivo de traslado
Global DNI As String 'Sirve para almacenar el Dni del apoderado
Sub Main()
Ruta = App.Path & "\Matricula.mdb"
Set Cn = New ADODB.Connection
With Cn
.Mode = adModeReadWrite
.CursorLocation = adUseClient
.ConnectionString = "Provider=microsoft.jet.oledb.4.0;data source=" & Ruta
.Open
End With
Menu.Show
Codificacin del formulario presentacin:Dim Con As Integer, Pun As String, Bar As Integer
Private Sub Form_Load()
Con = 1
Pun = ".........."
Bar = 0
End Sub
Private Sub Timer1_Timer()
Label1.ForeColor = QBColor(Int((10 - 0 + 0) * Rnd + 0))
Label2.ForeColor = QBColor(Int((10 - 0 + 0) * Rnd + 0))
End Sub
Private Sub Timer2_Timer()
ProgressBar1.Value = ProgressBar1.Value + 1
If ProgressBar1.Value >= 100 Then
Unload Me
Timer2.Enabled = False
End If
End Sub
Private Sub Timer3_Timer()
Label7.Visible = Not Label7.Visible
End Sub
Formulario de seguridad:
Codificacin del formulario de seguridad:Dim Rb As ADODB.Recordset
Private Sub CmdAceptar_Click()
Ejecutar
End Sub
Private Sub CmdAceptar_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
Ejecutar
End If
End Sub
Private Sub CmdCancelar_Click()
End
End Sub
Private Sub Combo1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
Ejecutar
End If
End Sub
Private Sub Form_Load()
Presentacion.Show vbModal
Cargar
Me.WindowState = 2
Combo1.Text = "Elija.."
Text1.Text = ""
End Sub
Sub Ejecutar()
Set Rb = New ADODB.Recordset
Rb.CursorLocation = adUseClient
Rb.Open "select U.*, D.* from Usuario U, Derecho D where U.CodUsu= D.CodUsu and D.CarDer='" & Combo1.Text & "' and D.ConDer='" & Text1.Text & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
If Rb.RecordCount > 0 Then
Menu.StatusBar1.Panels(8).Text = " Usuario: " & Rb!NomUsu & " " & Rb!ApeUsu
Unload Me
Else
MsgBox "Contrasea Incorrecta"
End If
End Sub
Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
Ejecutar
End If
End Sub
Sub Cargar()
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Rs.Open "select * from Derecho", Cn, adOpenStatic, adLockReadOnly, adCmdText
If Rs.RecordCount > 0 Then
Rs.MoveFirst
While Not Rs.EOF
Combo1.AddItem Rs!CarDer
Rs.MoveNext
Opcion = True
Wend
Else
Opcion = False
If MsgBox("An no se asign cargos a los usuarios." & vbNewLine & "Deseas Asginar cargos a los usuarios?", 36, "Confirme") = 6 Then
Usuario.Show vbModal
Else
End
End If
End IfMen principal:
Codificacin del men principal:
Private Declare Function ShellAbout Lib "shell32.dll" Alias "ShellAboutA" (ByVal hwnd As Long, ByVal szApp As String, ByVal szOtherStuff As String, ByVal hIcon As Long) As Long
Dim Rlec As ADODB.Recordset
Dim Rie As ADODB.Recordset
Private Sub MDIForm_Load()
Me.WindowState = 2
AgregarAoLectivo
Seguridad.Show vbModal
End Sub
Private Sub MDIForm_MouseDown(Button As Integer, Shift As Integer, X As Single, y As Single)
If Button = 2 Then
PopupMenu MnuMantenimiento, 4, , , MnuMat
End If
End Sub
Private Sub MnuAcerca_Click()
Call ShellAbout(Me.hwnd, "sistema de matrcula", "Copyright 2008, Dj_Dexter, Es una Aplicacion ", Me.Icon)
End Sub
Private Sub MnuAH_Click()
ConsultaPH.Show
End Sub
Private Sub MnuAlumno_Click()
Alumno.Show
End Sub
Private Sub MnuApoderado_Click()
Apoderado.Show
End Sub
Private Sub MnuBCargo_Click()
Dim Sql As String
Sql = "Delete from Derecho"
If MsgBox("Realmente desea eliminar?", 36, "Confirme") = 6 Then
Cn.Execute Sql
MsgBox "Se Borr con xito"
End If
End Sub
Private Sub MnuBorrar_Click()
Dim Sql As String
Sql = "delete from Usuario"
If MsgBox("Realmente desea eliminar?", 36, "Confirme") = 6 Then
Cn.Execute Sql
MsgBox "Se Borr con xito"
End If
End Sub
Private Sub MnuCalculadora_Click()
Shell "C:\WINDOWS\system32\calc.exe", 1
End Sub
Private Sub MnuCalendario_Click()
Calendario.Show
End Sub
Private Sub MnuCurricula_Click()
GRado.Show
End Sub
Private Sub MnuCPG_Click()
ConApoderado.Show
End Sub
Private Sub MnuCPS_Click()
ConApoSec.Show
End Sub
Private Sub MnuCur_Click()
ConCurso.Show
End Sub
Private Sub MnuCurso_Click()
Curso.Show
End Sub
Private Sub MnuGrado_Click()
GRado.Show
End Sub
Private Sub MnuHA_Click()
ConsultaHP.Show
End Sub
Private Sub MnuIE_Click()
IE.Show
End Sub
Private Sub MnuMat_Click()
Matricula1.Show
End Sub
Private Sub MnuNuevo_Click()
Matricula.Show
End Sub
Private Sub MnuPG_Click()
ConNomina1.Show
End Sub
Private Sub MnuPN_Click()
ConsultaApo.Show
End Sub
Private Sub MnuProfesor_Click()
Profesor.Show
End Sub
Private Sub MnuPS_Click()
ConNomina.Show
End Sub
Private Sub MnuRegular_Click()
Matricula1.Show
End Sub
Private Sub MnuRProfesor_Click()
RProfesor.Show
End Sub
Private Sub MnuSalir_Click()
If MsgBox("Realmente desea salir?", 36, "Confirme") = 6 Then
End
End If
End Sub
Private Sub MnuSistema_Click()
Ayuda Sistema.Show
End Sub
Private Sub MnuUsuario_Click()
Usuario.Show
End Sub
Private Sub MnuWord_Click()
On Error GoTo FALLA
Shell "C:\Archivos de programa\Microsoft Office\Office12\WINWORD.EXE", 1
Exit Sub
FALLA:
MsgBox "Error N: " & Err.Number & vbNewLine & "Descripcin de Error: " & Err.Description
End Sub
Private Sub StatusBar1_PanelClick(ByVal Panel As MSComctlLib.Panel)
Select Case Panel.Index
Case 1:
Case 2:
Case 3: Calendario.Show
Case 4:
On Error GoTo eee
Shell "C:\WINDOWS\system32\calc.exe", 1
Exit Sub
MsgBox "Error N: " & Err.Number & vbNewLine & "Descripcin de Error: " & Err.Description
Case 5:
Case 6:
Case 7:
End Select
End Sub
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Index
Case 2: PopupMenu MnuSeguridad
Case 7: PopupMenu MnuMatricula
Case 12: PopupMenu MnuMantenimiento
Case 21: PopupMenu MnuReporte
Case 26: 'PopupMenu MnuConsulta
Case 31: 'PopupMenu MnuPago
Case 34: PopupMenu MnuUtilitario
Case 39: PopupMenu MnuAyuda
Case 43: If MsgBox("Realmente desea salir?", 36, "Confirme") = 6 Then End
Case 46:
On Error GoTo Nopudo
Shell "C:\WINDOWS\system32\calc.exe", 1
Exit Sub
Nopudo:
MsgBox "Error N: " & Err.Number & vbNewLine & "Descripcin de Error: " & Err.Description
Case 49: Calendario.Show
Case 82: frmBrowser.Show
frmBrowser.WindowState = 2
End Select
End Sub
Sub AgregarAoLectivo()
Dim Sqa As String, Srr As String
Set Ry = Cn.Execute("SELECT CodIE from IE")
If Not Ry.RecordCount > 0 Then Exit Sub
Sqa = "select * from ALectivo where ALec='" & Year(Date) & "'"
Set Rlec = Cn.Execute(Sqa)
If Not Rlec.RecordCount > 0 Then
Sqa = "select CodIE from IE"
Set Rie = Cn.Execute(Sqa)
Srr = "insert into ALectivo (Alec,CodIE) values('" & Year(Date) & "','" & Rie!CodIE & "')"
Cn.Execute Srr
End If
Rlec.Requery
End Sub
Formulario del usuario:
Codificacin del formulario del usuario:Dim Ru As ADODB.Recordset, Rd As ADODB.Recordset
Dim a As Boolean 'sirve para verificar si los datos a guardar son nuevos o actualizacones
Dim w As Integer
Private Sub Cmd1_Click(Index As Integer)
Select Case Index
Case 0: Ru.MoveFirst
VerUsuario
HabilitarCmd1 False
Case 1: Ru.MovePrevious
If Ru.BOF Then
Ru.MoveFirst
HabilitarCmd1 False
Else
HabilitarCmd1Todo True
End If
VerUsuario
Case 2: Ru.MoveNext
If Ru.EOF Then
Ru.MoveLast
HabilitarCmd1 True
Else
HabilitarCmd1Todo True
End If
VerUsuario
Case 3: Ru.MoveLast
VerUsuario
HabilitarCmd1 True
End Select
End Sub
Private Sub Cmd2_Click(Index As Integer)
Select Case Index
Case 0: HabilitarTextos False
Text1(0).SetFocus
Nuevo
HabilitarCmd1Todo False
HabilitarCmd2 False
a = True
Case 1: HabilitarTextos False
HabilitarCmd1Todo False
HabilitarCmd2 False
Text1(0).SetFocus
a = False
Case 2:
If a = True Then
Grabar
ElseIf a = False Then
Actualizar
End If
HabilitarCmd1Todo True
HabilitarTextos True
HabilitarCmd2 True
Case 3: Buscar
VerUsuario
Case 4: EliminarU
VerUsuario
Case 5: HabilitarTextos True
'VerUsuario
Case 6:
If Opcion = True Then
Unload Me
ElseIf Opcion = False Then
Unload Me
Seguridad.Cargar
End If
End Select
End Sub
Private Sub CmdAsignar_Click()
For i = 0 To List1.ListCount - 1
If LCase(List1.List(i)) = LCase(Combo1(2).Text) Then
w = w + 1
End If
Next i
If w = 0 Then
List1.AddItem Combo1(2).Text
Else
MsgBox "El cargo seleccionado ya est en la lista", vbInformation
CmdAsignar.Enabled = False
End If
End Sub
Private Sub CmdEliminar_Click()
EliminarC
CmdEliminar.Enabled = False
End Sub
Private Sub Combo1_Click(Index As Integer)
Select Case Index
Case 2: CmdAsignar.Enabled = True
End Select
End Sub
Private Sub Form_Load()
Set Ru = New ADODB.Recordset
With Ru
.CursorLocation = adUseClient
.ActiveConnection = Cn
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open "select * from Usuario"
End With
Set Rd = New ADODB.Recordset
With Rd
.CursorLocation = adUseClient
.ActiveConnection = Cn
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open "select * from Derecho"
End With
If Ru.RecordCount > 0 Then
HabilitarCmd1Todo True
VerUsuario
Else
HabilitarCmd1Todo False
End If
Combo1(0).AddItem "M"
Combo1(0).AddItem "F"
Combo1(1).AddItem "Profesor"
Combo1(1).AddItem "Ingeniero"
Combo1(1).AddItem "Abogado"
Combo1(1).AddItem "Doctor"
Combo1(1).AddItem "Albail"
Combo1(1).AddItem "Obrero"
Combo1(1).AddItem "Ama de casa"
Combo1(1).AddItem "Enfermera"
Combo1(1).AddItem "Cosmtica"
Combo1(1).AddItem "Otro.."
Combo1(2).AddItem "Secretaria"
Combo1(2).AddItem "Mantenimiento"
Combo1(2).AddItem "Director"
Combo1(2).AddItem "Caja"
HabilitarTextos True
w = 0
CmdAsignar.Enabled = False
CmdEliminar.Enabled = False
HabilitarCmd2 True
End Sub
Sub HabilitarCmd1(Ok As Boolean)
Cmd1(0).Enabled = Ok
Cmd1(1).Enabled = Ok
Cmd1(2).Enabled = Not Ok
Cmd1(3).Enabled = Not Ok
End Sub
Sub HabilitarCmd1Todo(Ok As Boolean)
For i = 0 To 3
Cmd1(i).Enabled = Ok
Next i
End Sub
Sub VerUsuario()
With Ru
Text1(0) = !COdUsu
Text1(1) = !NomUsu
Text1(2) = !ApeUsu
DTPicker1.Value = !FechNacUsu
Combo1(0).Text = !GenUsu
Combo1(1).Text = !ProUsu
DTPicker2.Value = !FechIngUsu
End With
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Rs.Open "select CarDer,ConDer from Derecho where CodUsu='" & Text1(0) & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
If Rs.RecordCount > 0 Then
Rs.MoveFirst
Text1(3) = Rs!ConDer
List1.Clear
While Not Rs.EOF
List1.AddItem Rs!CarDer
Rs.MoveNext
Wend
End If
End Sub
Private Sub List1_Click()
Combo1(2).Text = List1.Text
CmdEliminar.Enabled = True
End Sub
Sub HabilitarCmd2(si As Boolean)
Cmd2(0).Enabled = si
Cmd2(1).Enabled = si
Cmd2(2).Enabled = Not si
Cmd2(3).Enabled = si
Cmd2(4).Enabled = si
End Sub
Sub Nuevo()
For i = 0 To 3
Text1(i).Text = ""
Next i
For i = 0 To 2
Combo1(i).Text = "Elija.."
Next i
DTPicker1.Value = Date
DTPicker2.Value = Date
List1.Clear
End Sub
Sub HabilitarTextos(Ya As Boolean)
For i = 0 To 3
Text1(i).Locked = Ya
Next i
For i = 0 To 2
Combo1(i).Locked = Ya
Next i
End Sub
Sub Grabar()
Dim Sql As String
Sql = "insert into Usuario (CodUsu,NomUsu,ApeUsu,FechNacUsu,GenUsu,ProUsu,FechIngUsu) values ('" & _
Text1(0) & "','" & Text1(1) & "','" & Text1(2) & "',#" & DTPicker1.Value & "#,'" & Combo1(0).Text & _
"','" & Combo1(1) & "',#" & DTPicker2.Value & "#)"
Cn.Execute Sql
Ru.Requery
For i = 0 To List1.ListCount - 1
Sql = "insert into Derecho (CodDer,CodUsu,CarDer,ConDer,FechDer) values ('" & _
Left(List1.List(i), 3) & Right("0000" & (Rd.RecordCount + 1), 3) & "','" & _
Text1(0) & "','" & List1.List(i) & "','" & Text1(3) & "',#" & Date & "#)"
Cn.Execute Sql
Rd.Requery
Next i
MsgBox "Los datos se grab con xito:"
End Sub
Sub Actualizar()
Dim Sql As String
Sql = "update Usuario set NomUsu='" & Text1(1) & "',ApeUsu='" & Text1(2) & "',FechNacUsu=#" & DTPicker1.Value & "#,GenUsu='" & _
Combo1(0).Text & "',ProUsu='" & Combo1(1).Text & "',FechIngUsu=#" & DTPicker2.Value & "# where CodUsu='" & Text1(0) & "'"
Cn.Execute Sql
Ru.Requery
For i = 0 To List1.ListCount - 1
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Rs.Open "select * from Derecho where CodUsu='" & Text1(0) & "' and CarDer='" & List1.List(i) & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
If Rs.RecordCount = 0 Then
Sql = "insert into Derecho (CodDer,CodUsu,CarDer,ConDer,FechDer) values ('" & _
Left(List1.List(i), 3) & Right("0000" & (Rd.RecordCount + 1), 3) & "','" & _
Text1(0) & "','" & List1.List(i) & "','" & Text1(3) & "',#" & Date & "#)"
Cn.Execute Sql
Rd.Requery
End If
Next i
End Sub
Sub EliminarC()
Dim Sql As String
Sql = "delete from Derecho where CodUsu='" & Text1(0) & "' and CarDer ='" & List1.List(List1.ListIndex) & "'"
Cn.Execute Sql
Rd.Requery
List1.RemoveItem List1.ListIndex
End Sub
Sub EliminarU()
Dim Sql As String
Sql = "Delete from Usuario where CodUsu='" & Text1(0) & "'"
Cn.Execute Sql
Ru.Requery
MsgBox "Usuario Eliminado"
End Sub
Sub Buscar()
Dim Bus As String
Bus = InputBox("Ingrese DNI del usuario", "Buscar")
Ru.MoveFirst
Ru.Find "CodUsu='" & Bus & "'"
If Ru.EOF Then
Ru.MoveLast
MsgBox "Usuario no encontrado"
End If
End Sub
Formulario de datos de la Institucin Educativa:
Codificacin del formulario de la Institucin Educativa:Dim Ri As ADODB.Recordset
Dim Cmdi As ADODB.Command
Dim B9 As Boolean ' sirve para detectar si la tabla IE tiene contenido
Sub AgregarCombo()
Combo1(0).AddItem "EBR"
Combo1(0).AddItem "EBA"
Combo1(0).AddItem "EDA"
Combo1(0).AddItem "EBE"
Combo1(0).AddItem "EAD"
Combo1(1).AddItem "Escolarizada"
Combo1(1).AddItem "No Escolarizada"
Combo1(1).AddItem "Escolarizada"
Combo1(1).AddItem "Presencial"
Combo1(1).AddItem "Semi Presencial"
Combo1(1).AddItem "A Distancia"
Combo1(2).AddItem "Unidocente"
Combo1(2).AddItem "Polidocente Multigrado"
Combo1(2).AddItem "Polidocente Completo"
Combo1(3).AddItem "Privado"
Combo1(3).AddItem "Pblico"
Combo1(4).AddItem "Primaria"
Combo1(4).AddItem "Secundaria"
End Sub
Private Sub Cmd2_Click(Index As Integer)
Select Case Index
Case 0: HabilitarTexto False
If Cmd2(0).Caption = "NUEVO" Then
Text1(2).Locked = False
ElseIf Cmd2(2).Caption = "EDITAR" Then
Text1(0).Locked = True
End If
HabilitarCmd2 False
Case 1:
If Cmd2(0).Caption = "NUEVO" Then
Grabar
Menu.AgregarAoLectivo
Cmd2(0).Caption = "EDITAR"
ElseIf Cmd2(0).Caption = "EDITAR" Then
Actualizar
End If
HabilitarTexto True
HabilitarCmd2 True
VerDatos
Case 2:
If MsgBox("La accin afectar a todos los registros relacionados." & vbNewLine & "Realmente deseas eliminar el registro?", 36, "Confirme") = 6 Then
Eliminar
Limpiar
Cmd2(0).Caption = "NUEVO"
End If
Case 3: HabilitarTexto True
HabilitarCmd2 True
Limpiar
VerDatos
Case 4:
Unload Me
End Select
End Sub
Private Sub Form_Load()
Me.Top = 100
Me.Left = 100
B9 = False
Set Cmdi = New ADODB.Command
Cmdi.ActiveConnection = Cn
Cmdi.CommandType = adCmdText
Cmdi.CommandText = "select * from IE"
Set Ri = Cmdi.Execute
If Ri.RecordCount > 0 Then
Cmd2(0).Caption = "EDITAR"
Else
Cmd2(0).Caption = "NUEVO"
End If
AgregarCombo
Limpiar
HabilitarTexto True
HabilitarCmd2 True
VerDatos
End Sub
Sub HabilitarTexto(Ok As Boolean)
For i = 0 To 8
Text1(i).Locked = Ok
If i < 8 Then
Combo1(i).Locked = Ok
End If
Next i
End Sub
Sub Limpiar()
For i = 0 To 8
Text1(i).Text = ""
If i < 8 Then
Combo1(i).Text = ""
End If
Next i
End Sub
Sub HabilitarCmd2(si As Boolean)
Cmd2(0).Enabled = si
Cmd2(1).Enabled = Not si
Cmd2(2).Enabled = si
End Sub
Sub Grabar()
Sq = "insert into IE (CodIE,CodUgel,NomUgel,ResCreIE,NumIE,NomIE,ModIE,ForIE,CarIE,ProgIE,GesIE,NivIE,DepIE,ProIE,DisIE,ComIE,DirIE,FechIngIE) values ('" & _
Trim(Text1(2)) & "','" & Trim(Text1(0)) & "','" & Trim(Text1(1)) & "','" & Trim(Text1(3)) & "','" & Trim(Text1(4)) & "','" & Trim(Text1(5)) & "','" & _
Trim(Combo1(0)) & "','" & Trim(Combo1(1)) & "','" & Trim(Combo1(2)) & "','" & Trim(Text1(6)) & "','" & Trim(Combo1(3)) & "','" & Trim(Combo1(4)) & "','" & _
Trim(Combo1(5)) & "','" & Trim(Combo1(6)) & "','" & Trim(Combo1(7)) & "','" & Trim(Text1(7)) & "','" & Trim(Text1(8)) & "',#" & Date & "#)"
Cn.Execute Sq
Ri.Requery
End Sub
Sub Actualizar()
Sq = "update IE set CodUgel='" & Trim(Text1(0)) & "',NomUgel='" & Trim(Text1(1)) & "',ResCreIE='" & Trim(Text1(3)) & "',NumIE='" & Trim(Text1(4)) & "',NomIE='" & Trim(Text1(5)) & "',ModIE='" & _
Trim(Combo1(0)) & "',ForIE='" & Trim(Combo1(1)) & "',CarIE='" & Trim(Combo1(2)) & "',ProgIE='" & Trim(Text1(6)) & "',GesIE='" & Trim(Combo1(3)) & "',NivIE='" & Trim(Combo1(4)) & "',DepIE='" & _
Trim(Combo1(5)) & "',ProIE='" & Trim(Combo1(6)) & "',DisIE='" & Trim(Combo1(7)) & "',ComIE='" & Trim(Text1(7)) & "',DirIE='" & Trim(Text1(8)) & "',FechIngIE=#" & Date & "# where CodIE='" & Trim(Text1(2)) & "'"
Cn.Execute Sq
Ri.Requery
End Sub
Sub Eliminar()
Cn.Execute "delete from IE"
Ri.Requery
End Sub
Sub VerDatos()
If Ri.EOF Then Exit Sub
If Ri.BOF Then Exit Sub
Text1(0) = Ri!CodUgel
Text1(1) = Ri!NomUgel
Text1(2) = Ri!CodIE
Text1(3) = Ri!ResCreIE
Text1(4) = Ri!NumIE
Text1(5) = Ri!NomIE
Combo1(0) = Ri!ModIE
Combo1(1) = Ri!ForIE
Combo1(2) = Ri!CarIE
Text1(6) = Ri!ProgIE
Combo1(3) = Ri!GesIE
Combo1(4) = Ri!NivIE
Combo1(5) = Ri!DepIE
Combo1(6) = Ri!ProIE
Combo1(7) = Ri!disIE
Text1(7) = Ri!ComIE
Text1(8) = Ri!DirIE
End Sub
Formulario de matricula de alumnos:
Codificacin del formulario matrcula de alumnos:Dim Ni As String 'Sirve para saber el nivel
Dim Docu As String 'Sirve para almacenar documento del padre del Estudiante
Dim Rss As ADODB.Recordset 'Sirve para abrir la tabla seccion
Dim JJ As Integer 'sirve para contar
Private Sub Check1_Click()
Procedencia.Show
Check1.Value = False
End Sub
Private Sub Cmd2_Click(Index As Integer)
Select Case Index
Case 0:
DNI = Trim(Text1.Text)
LimpiarApo
LimpiarAlu
LimpiarMat
HabilitarPadre False
HabilitarAlumno False
HabilitarMatricula False
SSTab1.Tab = 0
SSTab1.TabEnabled(1) = False
SSTab1.TabEnabled(2) = False
HabilitarCmd2 False
HabilitarComboMat
Text1.SetFocus
Case 1:
If Not Len(Trim(Text5(8).Text)) = 8 Then
MsgBox "El DNI del Padre no se Registr correctamente.!"
SSTab1.Tab = 0
Text1.SetFocus
Exit Sub
End If
If Not Len(Trim(Text5(0).Text)) = 14 Then
MsgBox "El Cdigo del Alumno no est registrado correctamente."
SSTab1.Tab = 1
Text5(0).SetFocus
Exit Sub
End If
If Not Len(Trim(Combo2(6).Text)) = 4 Then
MsgBox "El ao lectivo simplemente se tiene que seleccionar." & vbNewLine & "El ao lectivo es el ao cadmico."
SSTab1.Tab = 2
Combo2(6).SetFocus
Exit Sub
End If
If Not Len(Trim(Combo2(2).Text)) = 2 Then
MsgBox "El Grado simplemente se tiene que seleccionar"
SSTab1.Tab = 2
Combo2(2).SetFocus
Exit Sub
End If
If Not Len(Trim(Combo2(3))) = 1 Then
MsgBox "La seccin Simplemente se tiene que seleccionar."
Combo2(3).SetFocus
Exit Sub
End If
If Not Len(Trim(CoIE)) >= 7 And Not Len(Trim(NuIE)) >= 5 Then
MsgBox "Falta registrar el colegio de procedecia. El colegio de procedencia es el colegio donde estudi" & vbNewLine & "anteriormente el nio, ya sea Inicial, Primaria o secundaria."
Procedencia.Show
Procedencia.Text1(0).SetFocus
Exit Sub
End If
GrabarApoderadoAlumnoMatricula
HabilitarCmd2 True
Case 2:
Case 3: LimpiarApo
LimpiarAlu
LimpiarMat
HabilitarCmd2 True
HabilitarPadre True
HabilitarAlumno True
HabilitarMatricula True
DNI = ""
Case 4: Unload Me
End Select
End Sub
Private Sub CmdSigue_Click()
If Not Len(Trim(Text5(0).Text)) > 0 Then
MsgBox "Falta ingresar los datos del alumno."
Exit Sub
End If
Text4(0).Text = Text5(0).Text
Text4(1).Text = UCase(Text5(2)) & " " & UCase(Text5(3)) & ", " & StrConv(Text5(1), 3)
SSTab1.Tab = 2
SSTab1.TabEnabled(2) = True
End Sub
Private Sub CmdSiguiente_Click()
SSTab1.TabEnabled(1) = True
SSTab1.Tab = 1
If Len(Trim(Text1.Text)) = 8 Then
Text5(8).Text = Text1.Text
Else
Text5(8).Text = DNI
End If
End Sub
Private Sub Combo2_Click(Index As Integer)
Select Case Index
Case 0:
Combo2(2).Clear
Combo2(3).Clear
Combo2(4).Text = ""
Combo2(5).Text = ""
If Combo2(0).ListIndex = 0 Then
Ni = "P"
ElseIf Combo2(0).ListIndex = 1 Then
Ni = "S"
End If
Sq = "select * from Grado where CodGrad like '%" & Ni & "'"
Set Rs = Cn.Execute(Sq)
If Rs.RecordCount > 0 Then
Rs.MoveFirst
While Not Rs.EOF
Combo2(2).AddItem Rs!CodGrad
Rs.MoveNext
Wend
Else
MsgBox "No se encontr Ningn Grado registrado de: " & Combo2(0).Text & vbNewLine & "Antes de proseguir la operacin ser mejor" & vbNewLine & "que registre los grados."
Exit Sub
End If
Combo2(2).Locked = False
Case 2:
Combo2(3).Clear
Combo2(3).Text = ""
Combo2(4).Text = ""
Combo2(5).Text = ""
Sq = "select * from Seccion where CodGrad='" & Combo2(2).Text & "'"
Set Rs = Cn.Execute(Sq)
If Rs.RecordCount > 0 Then
Rs.MoveFirst
While Not Rs.EOF
Combo2(3).AddItem Rs!NomSec
Rs.MoveNext
Wend
Else
MsgBox "No hay ningn seccin Asignado al grado seleccionado." & vbNewLine & "Es necesario que asignes seccionados a los grados antes de proceguir esta operacin."
Exit Sub
End If
MostrarCurso
Combo2(3).Locked = False
Case 3:
Sq = " select AulSec,PisSec from Seccion where CodGrad='" & Combo2(2).Text & "' and NomSec='" & Combo2(3).Text & "'"
Set Rs = Cn.Execute(Sq)
Combo2(4).Text = Rs!AulSec
Combo2(5).Text = Rs!PisSec
Case 4:
Case 5:
End Select
End Sub
Private Sub Combo3_Click(Index As Integer)
Select Case Index
Case 2:
Select Case Combo3(2).Text
Case "Per"
Combo3(3).AddItem "Lima"
Combo3(3).AddItem "Tacna"
Combo3(3).AddItem "Apurmac"
Combo3(3).AddItem "Cuzco"
Combo3(3).AddItem "Lambayeque"
Combo3(3).AddItem "Piura"
Combo3(3).AddItem "Cajamarca"
Combo3(3).AddItem "Loreto"
Combo3(3).AddItem "Arequipa"
Combo3(3).AddItem "Calao"
Combo3(3).AddItem "Ayacucho"
Combo3(3).AddItem "Tumbes"
Combo3(3).AddItem "Junn"
End Select
End Select
End Sub
Private Sub Form_Load()
'Me.WindowState = 2
Me.Top = 100
Me.Left = 100
If IsEmpty(CoIE) = True Then
MsgBox "La variable est vaca"
End If
AgregarComboPad
AgregarComboAlu
AgregarComboMat
LimpiarApo
LimpiarAlu
LimpiarMat
HabilitarAlumno True
HabilitarPadre True
HabilitarMatricula True
HabilitarCmd2 True
AoLectivo
JJ = 0
End Sub
Sub LimpiarApo()
Text1.Text = ""
For i = 0 To 4
Text3(i).Text = ""
Next i
For i = 0 To 2
Combo1(i).Text = ""
Next i
End Sub
Sub LimpiarAlu()
For i = 0 To 14
Combo3(i).Text = ""
If i < 9 Then
Text5(i).Text = ""
End If
Next i
End Sub
Sub LimpiarMat()
Text4(0).Text = ""
Text4(1).Text = ""
For i = 0 To 6
Combo2(i).Text = ""
Next i
End Sub
Sub AgregarComboAlu()
Combo3(0).AddItem "M"
Combo3(0).AddItem "F"
For i = 1 To 10
Combo3(1).AddItem i
Combo3(13).AddItem i
Next i
Combo3(2).AddItem "Per"
Combo3(2).AddItem "Argentina"
Combo3(2).AddItem "Ecuador"
Combo3(2).AddItem "Brasil"
Combo3(2).AddItem "Bolivia"
Combo3(2).AddItem "Venezuela"
Combo3(2).AddItem "Uruguay"
Combo3(2).AddItem "Chile"
Combo3(2).AddItem "Colombia"
Combo3(2).AddItem "Paraguay"
Combo3(2).AddItem "Estados Unidos"
Combo3(2).AddItem "Mxico"
Combo3(2).AddItem "Espaa"
Combo3(6).AddItem "Si"
Combo3(6).AddItem "No"
For i = 0 To 12
Combo3(7).AddItem i
Next i
Combo3(8).AddItem "Espaol"
Combo3(8).AddItem "Quechua"
Combo3(8).AddItem "Aymara"
Combo3(8).AddItem "Ingls"
Combo3(8).AddItem "Portugus"
Combo3(8).AddItem "Mandarn"
Combo3(8).AddItem "Italiano"
Combo3(9).AddItem "Espaol"
Combo3(9).AddItem "Quechua"
Combo3(9).AddItem "Aymara"
Combo3(9).AddItem "Ingls"
Combo3(9).AddItem "Portugus"
Combo3(9).AddItem "Mandarn"
Combo3(9).AddItem "Italiano"
Combo3(10).AddItem "Si"
Combo3(10).AddItem "No"
Combo3(11).AddItem "Si"
Combo3(11).AddItem "No"
Combo3(12).AddItem "Si"
Combo3(12).AddItem "No"
Combo3(14).AddItem "Catlico"
Combo3(14).AddItem "Cristiano"
End Sub
Sub AgregarComboMat()
Combo2(1).AddItem "Maana"
Combo2(1).AddItem "Tarde"
Combo2(1).AddItem "Noche"
Combo2(0).AddItem "Primaria"
Combo2(0).AddItem "Secundaria"
End Sub
Sub AgregarComboPad()
Combo1(0).AddItem "M"
Combo1(0).AddItem "F"
Combo1(1).AddItem "Abogado"
Combo1(1).AddItem "Ingeniero"
Combo1(1).AddItem "Ingeniera"
Combo1(1).AddItem "Profesor"
Combo1(1).AddItem "Albail"
Combo1(1).AddItem "Mecnico"
Combo1(1).AddItem "Secretaria"
Combo1(1).AddItem "Otros.."
Combo1(2).AddItem "Estudiante"
Combo1(2).AddItem "Trabajo"
Combo1(2).AddItem "Trabaja y estudia"
Combo1(2).AddItem "Otro.."
End Sub
Sub HabilitarPadre(ZZZ As Boolean)
For i = 0 To 4
Text3(i).Locked = ZZZ
Next i
Text1.Locked = ZZZ
For i = 0 To 2
Combo1(i).Locked = ZZZ
Next i
DTPicker1.Enabled = Not ZZZ
End Sub
Sub HabilitarAlumno(AAA As Boolean)
For i = 0 To 8
Text5(i).Locked = AAA
Next i
For i = 0 To 14
Combo3(i).Locked = AAA
Next i
DTPicker2.Enabled = Not AAA
End Sub
Sub HabilitarMatricula(MMM As Boolean)
Text4(0).Locked = MMM
Text4(1).Locked = MMM
For i = 0 To 6
Combo2(i).Locked = MMM
Next i
End Sub
Sub HabilitarCmd2(si As Boolean)
Cmd2(0).Enabled = si
Cmd2(1).Enabled = Not si
Cmd2(2).Enabled = si
End Sub
Sub HabilitarComboMat()
Combo2(2).Locked = True
Combo2(3).Locked = True
Combo2(4).Locked = True
Combo2(5).Locked = True
End Sub
Sub AoLectivo()
Sq = "Select * from ALectivo"
Set Rs = Cn.Execute(Sq)
If Rs.RecordCount > 0 Then
Rs.MoveFirst
Do While Not Rs.EOF
Combo2(6).AddItem Rs!ALec
Rs.MoveNext
Loop
End If
End Sub
Sub GrabarApoderadoAlumnoMatricula()
Sq = "select * from Apoderado where CodApo='" & Trim(Text5(8).Text) & "'"
Set Rs = Cn.Execute(Sq)
If Rs.RecordCount List3.ListCount Then
List3.AddItem Combo1(4).Text
Else
MsgBox "Primero Asigne Seccin!"
End If
End Select
End Sub
Private Sub Form_Load()
Me.Top = 100
Me.Left = 100
Set Rg = New ADODB.Recordset
With Rg
.CursorLocation = adUseClient
.ActiveConnection = Cn
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open "select * from Grado"
End With
Set Rsec = New ADODB.Recordset
With Rsec
.CursorLocation = adUseClient
.ActiveConnection = Cn
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open "select * from Seccion"
End With
''/////////////////////////////////////////////////////////
Set Rx = New ADODB.Recordset
Rx.CursorLocation = adUseClient
Sq = "select Grado.* from Grado where CodGrad like '%S'"
Rx.Open Sq, Cn, adOpenStatic, adLockReadOnly, adCmdText
''//////////////////////////////////////////////////////////
If Rx.RecordCount > 0 Then
VerDatos
HabilitarCmd1Todo True
Else
HabilitarCmd1Todo False
End If
For i = 1 To 50
Combo1(3).AddItem i
If i < 10 Then
Combo1(2).AddItem Chr(64 + i)
Combo1(4).AddItem i
End If
Next i
Limpiar
HabilitarTexto True
'Option2.Value = True
B2 = False
Conta = 0
CmdEliminar.Enabled = False
HabilitarCmd2 True
End Sub
Private Sub List1_Click()
CmdEliminar.Enabled = True
List2.Selected(List1.ListIndex) = True
List3.Selected(List1.ListIndex) = True
End Sub
Private Sub List2_Click()
List1.Selected(List2.ListIndex) = True
List3.Selected(List2.ListIndex) = True
CmdEliminar.Enabled = True
End Sub
Private Sub List3_Click()
List1.Selected(List3.ListIndex) = True
List2.Selected(List3.ListIndex) = True
CmdEliminar.Enabled = True
End Sub
Private Sub Option1_Click()
List1.Clear
List2.Clear
List3.Clear
Combo1(1).Clear
For i = 1 To 6
Combo1(1).AddItem i
Next i
Baa = Left(Option1.Caption, 1)
Primaria
If B2 = False Then
If Rx.RecordCount > 0 Then
VerDatos
HabilitarCmd1Todo True
Else
HabilitarCmd1Todo False
End If
End If
End Sub
Private Sub Option2_Click()
List1.Clear
List2.Clear
List3.Clear
Combo1(1).Clear
For i = 1 To 5
Combo1(1).AddItem i
Next i
Baa = Left(Option2.Caption, 1)
Secundaria
If B2 = False Then
If Rx.RecordCount > 0 Then
VerDatos
HabilitarCmd1Todo True
Else
HabilitarCmd1Todo False
End If
End If
End Sub
Sub Limpiar()
For i = 1 To 4
Combo1(i).Text = "Elegir.."
Next i
List1.Clear
List2.Clear
List3.Clear
End Sub
Sub HabilitarCmd1(Ok As Boolean)
Cmd1(0).Enabled = Ok
Cmd1(1).Enabled = Ok
Cmd1(2).Enabled = Not Ok
Cmd1(3).Enabled = Not Ok
End Sub
Sub HabilitarCmd1Todo(Ok As Boolean)
For i = 0 To 3
Cmd1(i).Enabled = Ok
Next i
End Sub
Sub HabilitarCmd2(si As Boolean)
Cmd2(0).Enabled = si
Cmd2(1).Enabled = si
Cmd2(2).Enabled = Not si
Cmd2(3).Enabled = si
Cmd2(4).Enabled = si
End Sub
Sub HabilitarTexto(Ok As Boolean)
For i = 1 To 4
Combo1(i).Locked = Ok
Next i
End Sub
Sub VerDatos()
'Combo1(0).Text = Rx!CodCurr
'Text1.Text = Rx!DesCurr
Combo1(1).Text = Rx!CodGrad
Combo1(2).Text = ""
Combo1(3).Text = ""
Combo1(4).Text = ""
List1.Clear
List2.Clear
List3.Clear
Set Ry = New ADODB.Recordset
Ry.CursorLocation = adUseClient
Ry.Open "select * from Seccion where CodGrad='" & Combo1(1).Text & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
If Ry.RecordCount > 0 Then
Ry.MoveFirst
While Not Ry.EOF
List1.AddItem Ry!NomSec
List2.AddItem Ry!AulSec
List3.AddItem Ry!PisSec
Ry.MoveNext
Wend
End If
End Sub
Sub EliminarSec()
Dim Sql As String
Sql = "delete from Seccion where CodGrad='" & Combo1(1).Text & "' and NomSec ='" & List1.List(List1.ListIndex) & "'"
Cn.Execute Sql
Rsec.Requery
List1.RemoveItem List1.ListIndex
List2.RemoveItem List2.ListIndex
List3.RemoveItem List3.ListIndex
MsgBox "Se elimin con xito!!"
End Sub
Sub Grabar()
Dim Sql As String
If Rg.RecordCount > 0 Then
Rg.MoveFirst
Rg.Find "CodGrad='" & Combo1(1).Text & "'"
If Rg.EOF Then
Sql = "insert into Grado (CodGrad) values ('" & Combo1(1).Text & Baa & "')"
Cn.Execute Sql
Rg.Requery
Else
MsgBox "El grado que intenta registrar ya existe!"
Exit Sub
End If
Else
Sql = "insert into Grado (CodGrad) values ('" & Combo1(1).Text & Baa & "')"
Cn.Execute Sql
Rg.Requery
End If
For i = 0 To List1.ListCount - 1
Sql = "insert into Seccion (CodSec,CodGrad,NomSec,AulSec,PisSec) values ('" & Baa & Combo1(1).Text & List1.List(i) & Right("000" & Rsec.RecordCount + 1, 3) & _
"','" & Combo1(1).Text & Baa & "','" & List1.List(i) & "','" & List2.List(i) & "','" & List3.List(i) & "')"
Cn.Execute Sql
Rsec.Requery
Next i
MsgBox "Todos los datos se grab con xito!"
Rx.Requery
End Sub
Sub Actualizar()
Dim Sql As String
For i = 0 To List1.ListCount - 1
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Rs.Open "Select * from seccion where CodGrad='" & Combo1(1).Text & "' and NomSec='" & List1.List(i) & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
If Rs.RecordCount = 0 Then
Sql = "insert into Seccion (CodSec,CodGrad,NomSec,AulSec,PisSec) values ('" & StrReverse(Combo1(1).Text) & List1.List(i) & Right("000" & Rsec.RecordCount + 1, 3) & _
"','" & Combo1(1).Text & "','" & List1.List(i) & "','" & Str(List2.List(i)) & "','" & Str(List3.List(i)) & "')"
Cn.Execute Sql
Rsec.Requery
Rx.Requery
End If
Next i
MsgBox "los datos se actualiz con xito"
End Sub
Sub EliminarG()
Sq = "delete from Grado where CodGrad='" & Combo1(1).Text & "'"
Cn.Execute Sq
Rg.Requery
Rx.Requery
MsgBox "El grado se elimin con xito!"
End Sub
Sub Buscar()
Busca = InputBox("Ingrese el grado, Por ejemplo: 1P", "Ingrese")
Bk = Rx.Bookmark
Rx.MoveFirst
Rx.Find "CodGrad='" & Busca & "'"
If Rx.EOF Then
MsgBox "Grado no encontrado." & vbnewlinw & vbNewLine & "Verifique bien si estas en" & vbNewLine & "primaria o secundaria"
Rx.Bookmark = Bk
End If
VerDatos
End Sub
Sub Primaria()
Set Rx = New ADODB.Recordset
Rx.CursorLocation = adUseClient
Sq = "select Grado.* from Grado where CodGrad like '" & "%" & "P" & "'"
Rx.Open Sq, Cn, adOpenStatic, adLockReadOnly, adCmdText
End Sub
Sub Secundaria()
Set Rx = New ADODB.Recordset
Rx.CursorLocation = adUseClient
Sq = "select Grado.* from Grado where CodGrad like '%S'"
Rx.Open Sq, Cn, adOpenStatic, adLockReadOnly, adCmdText
End Sub
Formulario de curso:
Codificacin del formulario mantenimiento de curso:Dim Curi As String, Genera As String, Posicion As Integer
Dim Rco As ADODB.Recordset
Dim A1 As Boolean 'sirve para saber si es grabar o actualizar
Dim A2 As Boolean 'Sirve para saber si estn o no
Private Sub Cmd1_Click(Index As Integer)
Select Case Index
Case 0: Rz.MoveFirst
HabilitarCmd1 False
HabilitarTexto True
VerDatos
Case 1: Rz.MovePrevious
If Rz.BOF Then
Rz.MoveFirst
HabilitarCmd1 False
Else
HabilitarCmd1Todo True
End If
HabilitarTexto True
VerDatos
Case 2: Rz.MoveNext
If Rz.EOF Then
Rz.MoveLast
HabilitarCmd1 True
Else
HabilitarCmd1Todo True
End If
HabilitarTexto True
VerDatos
Case 3: Rz.MoveLast
HabilitarCmd1 True
HabilitarTexto True
VerDatos
End Select
End Sub
Private Sub Cmd2_Click(Index As Integer)
Select Case Index
Case 0: HabilitarTexto False
HabilitarCmd1Todo False
HabilitarCmd2 False
Text1(0).Locked = True
Limpiar
A1 = True
A2 = True
Timer1.Enabled = True
Case 1: HabilitarTexto False
HabilitarCmd1Todo False
HabilitarCmd2 False
Text1(1).Locked = False
A1 = False
Case 2:
If A1 = True Then
Grabar
ElseIf A1 = False Then
Actualizar
End If
HabilitarCmd2 True
HabilitarTexto True
HabilitarCmd1Todo True
Timer1.Enabled = False
Case 3: Buscar
VerDatos
Case 4: Eliminar
Case 5: HabilitarCmd1Todo True
HabilitarCmd2 True
HabilitarTexto True
Case 6: Unload Me
End Select
End Sub
Private Sub Form_Load()
Rs.Close
Set Rs = Nothing
Me.Top = 100
Me.Left = 100
Set Rco = New ADODB.Recordset
With Rco
.CursorLocation = adUseClient
.ActiveConnection = Cn
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open "select * from Curso"
End With
Curi = "S"
A2 = False
Timer1.Enabled = False
Nivel
NivelCurso
If Rz.RecordCount > 0 Then
VerDatos
Else
HabilitarCmd1Todo False
End If
HabilitarCmd2 True
Posicion = 1
HabilitarTexto True
End Sub
Sub HabilitarCmd2(si As Boolean)
Cmd2(0).Enabled = si
Cmd2(1).Enabled = si
Cmd2(2).Enabled = Not si
Cmd2(3).Enabled = si
Cmd2(4).Enabled = si
End Sub
Sub HabilitarCmd1(Ok As Boolean)
Cmd1(0).Enabled = Ok
Cmd1(1).Enabled = Ok
Cmd1(2).Enabled = Not Ok
Cmd1(3).Enabled = Not Ok
End Sub
Sub HabilitarCmd1Todo(Ok As Boolean)
For i = 0 To 3
Cmd1(i).Enabled = Ok
Next i
End Sub
Sub HabilitarTexto(HH As Boolean)
For i = 0 To 2
Text1(i).Locked = HH
Next i
Combo1.Locked = HH
End Sub
Private Sub Option1_Click()
Combo1.Clear
Curi = "P"
Nivel
NivelCurso
If A2 = False Then
If Rz.RecordCount > 0 Then
VerDatos
HabilitarCmd1Todo True
Else
HabilitarCmd1Todo False
End If
End If
End Sub
Private Sub Option2_Click()
Combo1.Clear
Curi = "S"
Nivel
NivelCurso
If A2 = False Then
If Rz.RecordCount > 0 Then
VerDatos
HabilitarCmd1Todo True
Else
HabilitarCmd1Todo False
End If
End If
End Sub
Sub NivelCurso()
Set Rz = New ADODB.Recordset
Rz.CursorLocation = adUseClient
Rz.Open "select * from Curso where CodGrad like '%" & Curi & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
End Sub
Sub VerDatos()
Text1(0).Text = Rz!CodCur
Combo1.Text = Rz!CodGrad
Text1(1).Text = Rz!NomCur
Text1(2).Text = Rz!DesCur
End Sub
Sub Nivel()
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Rs.Open "select * from Grado where CodGrad like '%" & Curi & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
If Rs.RecordCount > 0 Then
Rs.MoveFirst
While Not Rs.EOF
Combo1.AddItem Rs!CodGrad
Rs.MoveNext
Wend
End If
End Sub
Sub Grabar()
Sq = "insert into Curso (CodCur,CodGrad,NomCur,DesCur) values ('" & Text1(0).Text & "','" & Combo1.Text & "','" & _
Text1(1).Text & "','" & Text1(2).Text & "')"
Cn.Execute Sq
Rco.Requery
Rz.Requery
MsgBox "Los datos se grab con xito"
End Sub
Sub Actualizar()
Sq = "update Curso set CodGrad='" & Combo1.Text & "',NomCur='" & Text1(1).Text & "',DesCur='" & Text1(2).Text & "' where CodCur='" & Text1(0).Text & "'"
Cn.Execute Sq
Rco.Requery
Rz.Requery
MsgBox "Se actualiz con xito!"
End Sub
Sub Eliminar()
Sq = "delete from Curso where CodCur='" & Text1(0).Text & "'"
Cn.Execute Sq
Rco.Requery
Rz.Requery
MsgBox "Se elimin con xito!"
End Sub
Sub Buscar()
Busca = InputBox("Ingrese el cdgio del Curso", "Ingrese los datos")
Rz.MoveFirst
Rz.Find "CodCur='" & Busca & "'"
If Not Rz.EOF Then
VerDatos
Else
MsgBox "No se encontr ningn resgistro con dicho cdigo!" & vbNewLine & vbNewLine & "Verifique si ests en primaria o secundaria"
End If
End Sub
Private Sub Timer1_Timer()
GenerarCodigo
End Sub
Sub GenerarCodigo()
Posicion = InStr(Trim(Text1(1).Text), " ")
If Posicion > 1 Then
Genera = UCase(Left(Trim(Text1(1).Text), 2) & Mid(Trim(Text1(1).Text), Posicion + 1, 1)) & Combo1.Text & Right("000" & Rco.RecordCount + 1, 3)
Else
Genera = UCase(Left(Trim(Text1(1).Text), 3)) & Combo1.Text & Right("000" & Rco.RecordCount + 1, 3)
End If
Text1(0).Text = Genera
End Sub
Sub Limpiar()
For i = 0 To 2
Text1(i).Text = ""
Next i
End SubFormulario de profesores:
Codificacin del formulario de docentes:Dim B4 As Boolean
Dim Rp As ADODB.Recordset
Dim Bk As Variant 'sirve para saber la posicion del registro
Private Sub Cmd1_Click(Index As Integer)
Select Case Index
Case 0: Rp.MoveFirst
HabilitarCmd1 False
VerDatos
Case 1: Rp.MovePrevious
If Rp.BOF Then
Rp.MoveFirst
HabilitarCmd1 False
Else
HabilitarCmd1Todo True
End If
VerDatos
Case 2: Rp.MoveNext
If Rp.EOF Then
Rp.MoveLast
HabilitarCmd1 True
Else
HabilitarCmd1Todo True
End If
VerDatos
Case 3: Rp.MoveLast
HabilitarCmd1 True
VerDatos
End Select
End Sub
Private Sub Cmd2_Click(Index As Integer)
Select Case Index
Case 0: HabilitarTexto False
HabilitarCmd1Todo False
Limpiar
HabilitarCmd2 False
B4 = True
CmdEliminar.Caption = ""
Case 1: HabilitarTexto False
HabilitarCmd2 False
HabilitarCmd1Todo False
Text1(0).Locked = True
B4 = False
Text1(1).SetFocus
CmdEliminar.Caption = ""
Case 2:
If B4 = True Then
Grabar
ElseIf B4 = False Then
Actualizar
End If
HabilitarCmd2 True
HabilitarTexto True
HabilitarCmd1Todo True
Case 3:
Buscar
VerDatos
Case 4:
Eliminar
Limpiar
Case 5: HabilitarTexto True
If Rp.RecordCount > 0 Then
HabilitarCmd1Todo True
Else
HabilitarCmd1Todo False
End If
HabilitarCmd2 True
Case 6: Unload Me
End Select
End Sub
Private Sub CmdAsignar_Click()
AsignarCurso.Show
End Sub
Private Sub CmdEliminar_Click()
CmdEliminar.Caption = ""
EliminarCurso
CmdEliminar.Enabled = False
End Sub
Private Sub Form_Load()
Me.Top = 100
Me.Left = 100
Set Rp = New ADODB.Recordset
With Rp
.CursorLocation = adUseClient
.ActiveConnection = Cn
.CursorType = adOpenKeyset
.LockType = adLockOptimistic
.Open "select * from Profesor"
End With
Limpiar
HabilitarTexto True
If Rp.RecordCount > 0 Then
VerDatos
HabilitarCmd1Todo True
Else
HabilitarCmd1Todo False
End If
CmdEliminar.Enabled = False
Combo1.AddItem "M"
Combo1.AddItem "F"
HabilitarCmd2 True
End Sub
Sub HabilitarCmd1(Ok As Boolean)
Cmd1(0).Enabled = Ok
Cmd1(1).Enabled = Ok
Cmd1(2).Enabled = Not Ok
Cmd1(3).Enabled = Not Ok
End Sub
Sub HabilitarCmd1Todo(Ok As Boolean)
For i = 0 To 3
Cmd1(i).Enabled = Ok
Next i
End Sub
Sub HabilitarCmd2(si As Boolean)
Cmd2(0).Enabled = si
Cmd2(1).Enabled = si
Cmd2(2).Enabled = Not si
Cmd2(3).Enabled = si
Cmd2(4).Enabled = si
End Sub
Sub Limpiar()
For i = 0 To 6
Text1(i).Text = ""
Next i
Combo1.Text = "Select.."
List1.Clear
List2.Clear
End Sub
Sub HabilitarTexto(Ok As Boolean)
For i = 0 To 6
Text1(i).Locked = Ok
Next i
Combo1.Locked = Ok
List1.Enabled = Ok
CmdAsignar.Enabled = Not Ok
End Sub
Sub Grabar()
Sq = "insert into Profesor (CodPro,NomPro,ApePro,FechNacPro,GenPro,TitPro,DirPro,TelPro,EmailPro,FechIngPro) values ('" & Text1(0).Text & "','" & Text1(1).Text & "','" & Text1(2).Text & "',#" & _
DTPicker1.Value & "#,'" & Combo1.Text & "','" & Text1(3).Text & "','" & Text1(4).Text & "','" & Text1(5).Text & "','" & Text1(6).Text & "',#" & DTPicker2.Value & "#)"
Cn.Execute Sq
Rp.Requery
For i = 0 To List1.ListCount - 1
Set R1 = New ADODB.Recordset
R1.CursorLocation = adUseClient
R1.Open "select CodCur from Curso where CodGrad='" & List2.List(i) & "' and NomCur='" & List1.List(i) & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
Sq = "insert into CurPro (CodPro,CodCur) values ('" & Text1(0).Text & "','" & R1!CodCur & "')"
Cn.Execute Sq
Next i
MsgBox "Los datos se grab correctamente!"
End Sub
Sub Actualizar()
Sq = "update Profesor set NomPro='" & Text1(1).Text & "', ApePro='" & Text1(2).Text & "', FechNacPro=#" & DTPicker1.Value & "#, GenPro='" & Combo1.Text & "', TitPro= '" & Text1(3).Text & _
"', DirPro='" & Text1(4).Text & "', TelPro='" & Text1(5).Text & "', EmailPro='" & Text1(6).Text & "', FechIngPro=#" & DTPicker2.Value & _
"# where CodPro='" & Text1(0).Text & "'"
Cn.Execute Sq
Rp.Requery
For i = 0 To List1.ListCount - 1
Set R0 = New ADODB.Recordset
R0.CursorLocation = adUseClient
R0.Open "Select CodPro, CodCur from CurPro where CodPro='" & Text1(0).Text & "' and CodCur in (select CodCur from Curso where NomCur='" & List1.List(i) & "' and CodGrad='" & List2.List(i) & "')", Cn, adOpenStatic, adLockReadOnly, adCmdText
If R0.RecordCount = 0 Then
Set R1 = New ADODB.Recordset
R1.CursorLocation = adUseClient
R1.Open "Select CodCur from Curso where CodGrad='" & List2.List(i) & "' and NomCur='" & List1.List(i) & "'", Cn, adOpenStatic, adLockReadOnly, adCmdText
Sq = "insert into CurPro (CodPro,CodCur) values ('" & Text1(0).Text & "','" & R1!CodCur & "')"
Cn.Execute Sq
End If
Next i
MsgBox "Los datos se actualiz con xito!"
End Sub
Sub Eliminar()
Sq = "delete from Profesor where CodPro='" & Text1(0).Text & "'"
Cn.Execute Sq
Rp.Requery
MsgBox "El registro se elimin!"
End Sub
Sub Buscar()
Busca = InputBox("Ingrese el DNI de Profesor:", "Digite")
Bk = Rp.Bookmark
Rp.MoveFirst
Rp.Find "CodPro='" & Busca & "'"
If Rp.EOF Then
MsgBox "Registro no encontrado"
Rp.Bookmark = Bk
End If
VerDatos
End Sub
Sub VerDatos()
Text1(0) = Rp!CodPro
Text1(1) = Rp!NomPro
Text1(2) = Rp!ApePro
DTPicker1.Value = Rp!FechNacPro
Combo1.Text = Rp!GenPro
Text1(3) = Rp!TitPro
Text1(4) = Rp!DirPro
Text1(5) = Rp!TelPro
Text1(6) = Rp!EmailPro
DTPicker2.Value = Rp!FechIngPro
List1.Clear
List2.Clear
Set Rs = New ADODB.Recordset
Rs.CursorLocation = adUseClient
Sq = "select Curso.* from CurPro, Curso where CurPro.CodCur=Curso.CodCur and CurPro.CodPro='" & Text1(0).Text & "'"
Rs.Open Sq, Cn, adOpenStatic, adLockReadOnly, adCmdText
If Rs.RecordCount > 0 Then
Rs.MoveFirst
While Not Rs.EOF
List1.AddItem Rs!NomCur
List2.AddItem Rs!CodGrad
Rs.MoveNext
Wend
End If
End Sub
Private Sub List1_Click()
CmdEliminar.Enabled = True
CmdEliminar.Caption = "QUITAR CURSO"
List2.Selected(List1.ListIndex) = True
End Sub
Sub EliminarCurso()
Sq = "delete from CurPro where CodPro='" & Text1(0).Text & "' and CodCur in (select CodCur from Curso where NomCur='" & List1.List(List1.ListIndex) & "' and CodGrad='" & List2.List(List1.ListIndex) & "')"
Cn.Execute Sq
List1.RemoveItem List1.ListIndex
List2.RemoveItem List2.ListIndex
MsgBox "Se elimin correctamente!"
End SubFormulario de alumnos:
Codificacin del formulario de mantenimiento de alumnos:
Dim Ra As ADODB.Recordset
Dim Bk1 As Variant 'sirve para saber el indece del registro
Private Sub Cmd1_Click(Index As Integer)
Select Case Index
Case 0: Ra.MoveFirst
HabilitarCmd1 False
VerDatos
Case 1: Ra.MovePrevious
If Ra.BOF Then
Ra.MoveFirst
HabilitarCmd1 False
Else
HabilitarCmd1Todo True
End If
VerDatos
Case 2: Ra.MoveNext
If Ra.EOF Then
Ra.MoveLast
HabilitarCmd1 True
Else
HabilitarCmd1Todo True
End If
VerDatos
Case 3: Ra.MoveLast
HabilitarCmd1 True
VerDatos
End Select
End Sub
Private Sub Cmd2_Click(Index As Integer)
Select Case Index
Case 1:
HabilitarFrame True
HabilitarCmd1Todo False
Frame10.Enabled = False
HabilitarCmd2 False
Case 2: Actualizar
HabilitarFrame False
HabilitarCmd1Todo True
HabilitarCmd2 True
Case 3: Buscar
Case 4:
If MsgBox("Realmente desea eliminar el registro actual?", 36, "Confirme") = 6 Then
Eliminar
End If
Case 5: HabilitarFrame False
HabilitarCmd2 True
If Ra.RecordCount > 0 Then
HabilitarCmd1Todo True
Else
HabilitarCmd1Todo False
End If
Case 6: Unload Me
End Select
End Sub
Private Sub Form_Load()
Me.Top = 100
Me.Left = 100
LimpiarAlu
Set Ra = New ADODB.Recordset
Ra.CursorLocation = adUseClient
Ra.Open "select * from Alumno", Cn, adOpenStatic, adLockReadOnly, adCmdText
If Ra.RecordCount > 0 Then
VerDatos
HabilitarCmd1Todo True
Else
MsgBox "No hay nimgn alumno matriculado. Para tener acceso a esta opcin" & newline & "Primeramente tendr que matricular alumnos."
Exit Sub
End If
HabilitarCmd2 True
HabilitarFrame False
AgregarComboAlu
End Sub
Sub HabilitarCmd2(si As Boolean)
Cmd2(1).Enabled = si
Cmd2(2).Enabled = Not si
Cmd2(3).Enabled = si
Cmd2(4).Enabled = si
End Sub
Sub HabilitarCmd1(Ok As Boolean)
Cmd1(0).Enabled = Ok
Cmd1(1).Enabled = Ok
Cmd1(2).Enabled = Not Ok
Cmd1(3).Enabled = Not Ok
End Sub
Sub HabilitarCmd1Todo(Ok As Boolean)
For i = 0 To 3
Cmd1(i).Enabled = Ok
Next i
End Sub
Sub LimpiarAlu()
For i = 0 To 14
Combo3(i).Text = ""
If i < 9 Then
Text5(i).Text = ""
End If
Next i
End Sub
Sub AgregarComboAlu()
Combo3(0).AddItem "M"
Combo3(0).AddItem "F"
For i = 1 To 10
Combo3(1).AddItem i
Combo3(13).AddItem i
Next i
Combo3(2).AddItem "Per"
Combo3(2).AddItem "Argentina"
Combo3(2).AddItem "Ecuador"
Combo3(2).AddItem "Brasil"
Combo3(2).AddItem "Bolivia"
Combo3(2).AddItem "Venezuela"
Combo3(2).AddItem "Uruguay"
Combo3(2).AddItem "Chile"
Combo3(2).AddItem "Colombia"
Combo3(2).AddItem "Paraguay"
Combo3(2).AddItem "Estados Unidos"
Combo3(2).AddItem "Mxico"
Combo3(2).AddItem "Espaa"
Combo3(6).AddItem "Si"
Combo3(6).AddItem "No"
For i = 0 To 12
Combo3(7).AddItem i
Next i
Combo3(8).AddItem "Espaol"
Combo3(8).AddItem "Quechua"
Combo3(8).AddItem "Aymara"
Combo3(8).AddItem "Ingls"
Combo3(8).AddItem "Portugus"
Combo3(8).AddItem "Mandarn"
Combo3(8).AddItem "Italiano"
Combo3(9).AddItem "Espaol"
Combo3(9).AddItem "Quechua"
Combo3(9).AddItem "Aymara"
Combo3(9).AddItem "Ingls"
Combo3(9).AddItem "Portugus"
Combo3(9).AddItem "Mandarn"
Combo3(9).AddItem "Italiano"
Combo3(10).AddItem "Si"
Combo3(10).AddItem "No"
Combo3(11).AddItem "Si"
Combo3(11).AddItem "No"
Combo3(12).AddItem "Si"
Combo3(12).AddItem "No"
Combo3(14).AddItem "Catlico"
Combo3(14).AddItem "Cristiano"
End Sub
Sub HabilitarAlumno(AAA As Boolean)
For i = 0 To 8
Text5(i).Locked = AAA
Next i
For i = 0 To 14
Combo3(i).Locked = AAA
Next i
DTPicker2.Enabled = Not AAA
End Sub
Sub HabilitarFrame(Ya As Boolean)
Frame10.Enabled = Ya
Frame11.Enabled = Ya
Frame12.Enabled = Ya
Frame13.Enabled = Ya
Frame14.Enabled = Ya
Frame15.Enabled = Ya
Frame16.Enabled = Ya
End Sub
Sub VerDatos()
Text5(0).Text = Ra!CodAlum
Text5(8).Text = Ra!CodApo
Text5(1).Text = Ra!NomAlum
Text5(2).Text = Ra!ApePatAlum
Text5(3).Text = Ra!ApeMatAlum
Combo3(0).Text = Ra!GenAlum
Combo3(1).Text = Ra!HerAlum
Combo3(13).Text = Ra!LugOcuHerAlum
Combo3(6).Text = Ra!TraAlum
Combo3(7).Text = Ra!HTraAlum
Combo3(10).Text = Ra!VivPatAlum
Combo3(11).Text = Ra!VivMatAlum
Combo3(12).Text = Ra!VivPadAlum
DTPicker2.Value = Ra!FechNacAlum
Combo3(2).Text = Ra!PaisNacAlum
Combo3(3).Text = Ra!DepNacAlum
Combo3(4).Text = Ra!ProNacAlum
Combo3(5).Text = Ra!DisNacAlum
Text5(4).Text = Ra!LugNacAlum
Combo3(8).Text = Ra!Len1Alum
Combo3(9).Text = Ra!Len2Alum
Combo3(14).Text = Ra!RelAlum
Text5(6).Text = Ra!DirAlum
Text5(5).Text = Ra!TelAlum
Text5(7).Text = Ra!EmailAlum
End Sub
Sub Actualizar()
Sq = "update Alumno set NomAlum='" & Trim(Text5(1).Text) & "',ApePatAlum='" & Trim(Text5(2).Text) & "',ApeMatAlum='" & Trim(Text5(3).Text) & "',GenAlum='" & _
Trim(Combo3(0).Text) & "',HerAlum='" & Trim(Combo3(1).Text) & "',LugOcuHerAlum='" & Trim(Combo3(13).Text) & "',TraAlum='" & Trim(Combo3(6).Text) & "',HTraAlum='" & _
Trim(Combo3(7).Text) & "',VivPatAlum='" & Trim(Combo3(10).Text) & "',VivMatAlum='" & Trim(Combo3(11).Text) & "',VivPadAlum='" & Trim(Combo3(12).Text) & "',FechNacAlum=#" & _
DTPicker2.Value & "#,PaisNacAlum='" & Trim(Combo3(2).Text) & "',DepNacAlum='" & Trim(Combo3(3).Text) & "',ProNacAlum='" & Trim(Combo3(4).Text) & "',DisNacAlum='" & _
Trim(Combo3(5).Text) & "',LugNacAlum='" & Trim(Text5(4).Text) & "', Len1Alum='" & Trim(Combo3(8).Text) & "',Len2Alum='" & Trim(Combo3(9).Text) & "',RelAlum='" & _
Trim(Combo3(14).Text) & "',DirAlum='" & Trim(Text5(6).Text) & "',TelAlum='" & Trim(Text5(5).Text) & "',EmailAlum='" & Trim(Text5(7).Text) & "' where CodAlum='" & Ra!CodAlum & "'"
Cn.Execute Sq
Ra.Requery
MsgBox "Los datos del alumno se actualiz con xito!"
End Sub
Sub Eliminar()
Sq = "delete from Alumno where CodAlum='" & Ra!CodAlum & "'"
Cn.Execute Sq
Ra.Requery
If Not Ra.RecordCount > 0 Then
HabilitarCmd2Todo False
HabilitarCmd1Todo False
End If
MsgBox "El Registro se elimin con xito!"
End Sub
Sub Buscar()
Busca = InputBox("Ingrese el Cdigo del estudiante. Por ejemplo: 64541121117484", "Peticin")
Bk1 = Ra.Bookmark
Ra.MoveFirst
Ra.Find "CodAlum='" & Busca & "'"
If Ra.EOF Then
MsgBox "No se encontr el registro buscado de cdigo: " & Busca
Ra.Bookmark = Bk1
End If
VerDatos
End Sub
Sub HabilitarCmd2Todo(Ki As Boolean)
For i = 1 To 5
Cmd2(i).Enabled = Ki
Next i
End Sub
Formulario de apoderados:
Codificacin del formulario de datos del apoderado:Dim Bk As Variant 'sirve para guardar la posicin del registro
Private Sub Cmd1_Click(Index As Integer)
Select Case Index
Case 0: Rs.MoveFirst
HabilitarCmd1 False
VerDatos
Case 1: Rs.MovePrevious
If Rs.BOF Then
Rs.MoveFirst
HabilitarCmd1 False
Else
HabilitarCmd1Todo True
End If
VerDatos
Case 2: Rs.MoveNext
If Rs.EOF Then
Rs.MoveLast
HabilitarCmd1 True
Else
HabilitarCmd1Todo True
End If
VerDatos
Case 3: Rs.MoveLast
HabilitarCmd1 True
VerDatos
End Select
End Sub
Private Sub Cmd2_Click(Index As Integer)
Select Case Index
Case 1:
HabilitarCmd2 False
HabilitarFrame True
Text1.Locked = True
HabilitarCmd1Todo False
Case 2:
Actualizar
HabilitarCmd2 True
HabilitarCmd1Todo True
HabilitarFrame False
Case 3:
Buscar
Case 4:
If MsgBox("Realmente desea eliminar el registro?", 36, "Confirme") = 6 Then
Eliminar
End If
Case 5:
HabilitarFrame False
HabilitarCmd2 True
If Rs.RecordCount > 0 Then
HabilitarCmd1Todo True
End If
Case 6: Unload Me
End Select
End Sub
Private Sub Form_Load()
Me.Top = 100
Me.Left = 100
LimpiarApo
Set Rs = Cn.Execute("select * from Apoderado")
If Rs.RecordCount > 0 Then
VerDatos
HabilitarCmd1Todo True
Else
MsgBox "No hay registros an. Por favor registre los datos del " & newline & "apoderado al momento de matricular en nuevo o alumno de traslado!"
Exit Sub
HabilitarCmd1Todo False
End If
HabilitarCmd2 True
HabilitarFrame False
End Sub
Sub HabilitarCmd2(si As Boolean)
Cmd2(1).Enabled = si
Cmd2(2).Enabled = Not si
Cmd2(3).Enabled = si
Cmd2(4).Enabled = si
End Sub
Sub HabilitarCmd1(Ok As Boolean)
Cmd1(0).Enabled = Ok
Cmd1(1).Enabled = Ok
Cmd1(2).Enabled = Not Ok
Cmd1(3).Enabled = Not Ok
End Sub
Sub HabilitarCmd1Todo(Ok As Boolean)
For i = 0 To 3
Cmd1(i).Enabled = Ok
Next i
End Sub
Sub LimpiarApo()
Text1.Text = ""
For i = 0 To 4
Text3(i).Text = ""
Next i
For i = 0 To 2
Combo1(i).Text = ""
Next i
End Sub
Sub AgregarComboPad()
Combo1(0).AddItem "M"
Combo1(0).AddItem "F"
Combo1(1).AddItem "Abogado"
Combo1(1).AddItem "Ingeniero"
Combo1(1).AddItem "Ingeniera"
Combo1(1).AddItem "Profesor"
Combo1(1).AddItem "Albail"
Combo1(1).AddItem "Mecnico"
Combo1(1).AddItem "Secretaria"
Combo1(1).AddItem "Otros.."
Combo1(2).AddItem "Estudiante"
Combo1(2).AddItem "Trabajo"
Combo1(2).AddItem "Trabaja y estudia"
Combo1(2).AddItem "Otro.."
End Sub
Sub HabilitarPadre(ZZZ As Boolean)
For i = 0 To 4
Text3(i).Locked = ZZZ
Next i
Text1.Locked = ZZZ
For i = 0 To 2
Combo1(i).Locked = ZZZ
Next i
DTPicker1.Enabled = Not ZZZ
End Sub
Sub Actualizar()
Sq = "update Apoderado set NomApo='" & Trim(Text3(0).Text) & "',ApeApo='" & Trim(Text3(1).Text) & "',FechNacApo=#" & DTPicker1.Value & "#,GenApo='" & Trim(Combo1(0).Text) & "',ProApo='" & Trim(Combo1(1).Text) & "',OcuApo='" & _
Trim(Combo1(2).Text) & "',TelApo='" & Trim(Text3(2).Text) & "',DirApo='" & Trim(Text3(3).Text) & "',EmailApo='" & Trim(Text3(4).Text) & "' where CodApo='" & Trim(Text1.Text) & "'"
Cn.Execute Sq
Rs.Requery
MsgBox "Los datos se actualiz con xito!"
End Sub
Sub Eliminar()
Sq = "delete from Apoderado where CodApo='" & Rs!CodApo & "'"
Cn.Execute Sq
Rs.Requery
If Not Rs.RecordCount > 0 Then
HabilitarCmd2Todo False
MsgBox "No hay ni un Apoderado registrado!"
Exit Sub
Else
HabilitarCmd2 True
End If
MsgBox "El registro se elimin con xito!"
End Sub
Sub Buscar()
Bk = Rs.Bookmark
Busca = InputBox("Ingrese el DNI de Apoderado. Por ejemplo: 10471510", "Registre")
Rs.MoveFirst
Rs.Find "CodApo='" & Busca & "'"
If Rs.EOF Then
Rs.MoveLast
MsgBox "No se encontr los datos del apoderado con DNI: " & Busca
Rs.Bookmark = Bk
End If
VerDatos
End Sub
Sub VerDatos()
Text1.Text = Rs!CodApo
Text3(0).Text = Rs!NomApo
Text3(1).Text = Rs!ApeApo
DTPicker1.Value = Rs!FechNacApo
Combo1(0).Text = Rs!GenApo
Combo1(1).Text = Rs!ProApo
Combo1(2).Text = Rs!OcuApo
Text3(2).Text = Rs!TelApo
Text3(3).Text = Rs!DirApo
Text3(4).Text = Rs!EmailApo
End Sub
Sub HabilitarFrame(Ya As Boolean)
Frame3.Enabled = Ya
Frame4.Enabled = Ya
Frame5.Enabled = Ya
Frame6.Enabled = Ya
End Sub
Sub HabilitarCmd2Todo(Ki As Boolean)
For i = 1 To 5
Cmd2(i).Enabled = Ki
Next i
End Sub
Reporte de profesores:
Reporte de alumnos:
Reporte de apoderados:
Reporte de cursos:
Manual de Usuario:
Procedimientos:
A continuacin presentamos todos los procedimientos que se tiene que hacer para utilizar correctamente el Subsistema de matrcula.
Paso 1: Se hace clic en:
Botn inicio/Todos los programas/Sistema de matrcula y luego se le presenta el siguiente formulario de presentacin, a continuacin automticamente carga el formulario de seguridad.
Paso 2: Cuando se carga el formulario de seguridad se tiene que seleccionar o escribir el cargo de responsabilidad y luego se digita la contrasea en la caja de contrasea, finalmente presionar ENTER.
Paso 3: Finalmente, si los datos introducidos son correctos, nos muestra el formulario principal.
Paso 4: En el formulario principal hay una barra de Ttulo, una barra de Mens y una barra de herramientas. A continuacin detallaremos cada uno de ellos: Barra de Ttulo: En la barra de ttulo se muestra el nombre del sistema Barra de Mens: Esta barra es ms principal e importante, pues en esta barra se encuentra diversas opciones con los cuales interactuaremos