You are on page 1of 145

INDICE

1. GENERALIDADES 1.1Titulo del proyecto 3 1.2Autores 3 2. CONTENIDO PRINCIPAL 2.1. Planteamiento del problema 3 2.1.1Definicin del problema principal 3 2.1.2Justificacin de la necesidad de desarrollo 3 2.1.3Antecedentes 4 2.1.4Estudio de factibilidad del proyecto 4 2.2. Plan general de desarrollo de proyecto 4 2.2.1. Definir panorama del proyecto 4 2.2.2. Diagramas 5 2.2.2.1. Diagramas grantt con asignacin de recursos (fig.1y fig.2) 5 2.2.2.2. Diagrama de Pert 6 Creacin de la red Pert 7 Diagrama de la red Pert (fig.3) 8 Caminos y sus respectivos tiempos 8 2.2.2.3. Calendarizacion del proyecto (fig.4a, fig.4b y fig 4c) 9 2.2.3. Estimacin del proyecto 12 2.2.3.1Estimar los LDC y KLDC 12 2.2.3.2Estimar los esfuerzos (PM) y TDP (tiempo de desarrollo del Proyecto) en base a KLDC 14 2.2.3.3. Estimar la productividad, calidad, costo y produccin en base a LDC 15 2.3. Modelo del negocio 17 2.3.1. Modelo de los casos de uso 17 2.3.2. Diagramas de actividad 22 2.3.3. Diagramas de secuencia 27 2.3.4. Diagrama de clases 42 2.4. Diseo del sistema 43 2.4.1. Generacin de los Modelos Lgico y Fsico. 44 2.4.2. Descripcin de entidades, atributos y relaciones 46 2.4.3. Descripcin breve del funcionamiento del software 49 2.5. Instalacin 50 2.6. Acceso al sistema 50 2.6.1. Interfaz inicial (sistema de control de pacientes) 53 3. CONCLUSIONES Y RECOMENDACIONES 143 4. ANEXOS 145

Encabezado

INTRODUCCIN
En el presente Plan de Desarrollo del Software mostraremos como se realizar el Proyecto sobre la implementacin de un Sistema de base de datos, real, para la atencin en un negocio. El Sistema de Administracin que se desarrollara para la veterinaria ANIMAL CENTER, nos permitir agilizar y facilitar el ingreso de registros de pacientes y la atencin que se les de, logrando con esto la optimizacin de la veterinaria, debido a que poseer un sistema de gestin de datos ms eficiente. Para llevar el control de este sistema no es necesario que el operador sea un experto en informtica ya que ser muy sencillo su manejo. Se incluir un manual de usuario para prevenir errores.

2 - 145

Encabezado PROYECTO DE SISTEMA 1. GENERALIDADES: 1.1. TITULO DEL PROYECTO: Sistema de Administracin Sistema Delfin1 para la Veterinaria: ANIMAL CENTER 1.2. AUTORES:

2. CONTENIDO PRINCIPAL: 2.1. PLANTEAMIENTO DEL PROBLEMA: Autor 1 Autor 2 2.1.1. Definicin del problema principal: La veterinaria Animal Center cuenta con un software que no es del agrado del administrador, dicho sistema no cuenta con algunos servicios y algunos de estos no funcionan correctamente. La mayora de las veterinarias en la actualidad no cuentan con un software para la administracin de dicho establecimiento por lo que el manejo de gran cantidad de datos se hace difcil y casi inmanejable, esto vindose claramente al momento de buscar datos referentes a algn cliente. 2.1.2. Justificacin de la necesidad del desarrollo: Algunas veces la felicidad de las personas depende en parte del bienestar de sus mascotas, por esta razn es que el cuidado de las mascotas lleva hacia un mdico veterinario y, en consecuencia a una veterinaria. En este caso a la veterinaria ANIMAL CENTER. Es normal q se utilicen historiales para almacenar los datos generales de los clientes, estos se reutilizaran varias veces, y en consecuencia estos historiales tienden a deteriorarse con el tiempo o perderse, ocupa espacio y a la vez causa demora de tiempo al redactarlos y/o buscarlos. El enfoque de nuestro sistema que en este caso abarca ms de un campo, ser para el campo de Atencin de Mascotas.

3 - 145

Encabezado 2.1.3. Antecedentes: Actualmente la veterinaria ANIMAL CENTER cuenta con un sistema que segn nos informo el medico veterinario, gerente de la empresa, cumple con las necesidades mas bsicas de mantenimiento de registros de datos de los clientes, presentando a menudo cierto numero de errores, adems, este sistema de atencin trabaja aisladamente de otro sistema de almacn y inventario de productos. Haciendo casi imposible el hecho de pensar en unificar ambos. 2.1.4. Estudio de factibilidad del proyecto: 2.1.4.1. Factibilidad Tcnica: Hemos podido comprobar que en este caso, la veterinaria Animal Center cuenta con todo lo necesario para la implementacin de un sistema de administracin de datos, teniendo los programas necesarios a disponibilidad de nosotros los creadores, y del usuario para su ejecucin. Se podr utilizar tanto una como dos computadoras. . 2.1.4.2. Factibilidad Operativa: Efectivamente, los empleados estn completamente de acuerdo con que se ponga en marcha el desarrollo del sistema, para su posterior utilizacin. 2.1.4.3. Factibilidad Econmica: La empresa, ha establecido un presupuesto ms que suficiente, como para iniciar la labor de anlisis del proyecto de sistema, tambin estar presto para implementar el equipo que sea necesario para la puesta en marcha del sistema.

2.2. PLAN GENERAL DE DESARROLLO DEL PROYECTO: 2.2.1. Definir panorama del proyecto: Este Proyecto fue realizado basndose en la actualidad de la Veterinaria Animal Center, por lo cual se trata de un sistema simple pero eficaz que cubre las necesidades del usuario, cabe anotar tambin que solo se implementara un Sistema de Atencin sin entrar en lo que es un Sistema de Facturacin, venta de productos para las mascotas, que dicha veterinaria hace en la actualidad.

4 - 145

Encabezado 2.2.2. Diagramas: 2.2.2.1. Diagrama Grantt con asignacin de recursos:

Figura 1: Diagrama de Grantt con asignacin de recursos.

5 - 145

Encabezado

Figura 2: Esquema de duracin del desarrollo del proyecto (das)

6 - 145

Encabezado 2.2.2.2. Diagrama de Pert: CREACION DE LA RED PERT PROYECTO: Sistema de informacin para la Veterinaria Animal Center # Actividades Descripcin 1 A Identificacin Problema, Oportunidad, Objetivo 2 B Modelamiento del Negocio 3 C Modelamiento de los Casos de Uso 4 D Anlisis 5 E Diseo 6 F Cdigo 7 G Prueba 8 H Distribucin Presentado Por: Fecha: Daniel Glvez /07/2006 Briseida Chura Wilber Phocco Carmen Mamani Tiempo de Actividades Predecesoras A AB C D DE F G Aprobado por: a 3 1 1.5 m 5 2 3 b 7 3 4.5 E 5 2 3

1 2 3 2 3.5 4 10.5 5 21 43 50 41 3 6 9 6 0.5 1 2 1 Fecha: Hoja 1 de 1 /07/2006

Tabla 1: Descripcin de datos del diagrama de Pert.

7 - 145

Encabezado

Diagrama de Pert

Figura 3: Diagrama de la Red Pert. Caminos y sus respectivos tiempos: C1= {A, B, C, D, E, F, G, H} T (C1)= 5+2+3+2+5+41+6+1=65 C2= {A, C, D, E, F, G, H} T (C2) = 5+3+2+5+41+6+1=63 C3= {A, C, D, F, G, H} T (C3) =5+3+2+41+6+1=58 C4= {A, B, C, D, F, G, H} T (C4) =5+3+3+2+41+6+1=61 TP = Max {64, 63, 58, 61} = 65

8 - 145

Encabezado

2.2.2.3. Calendarizacion del proyecto (Calendario):

Figura 4a: Establecimiento de la canlendarisacin del proyecto.

9 - 145

Encabezado

Figura 4b: Establecimiento de la canlendarisacin del proyecto.

10 - 145

Encabezado

Figura 4c: Establecimiento de la canlendarisacin del proyecto.

11 - 145

Encabezado 2.2.3. Estimacin del proyecto: 2.2.3.1. ESTIMAR LOS LDC Y KLDC a) Puntos de Funcin
Parmetros de Medida Cuenta Simple Factor de Peso Medio Complejo Total

N de entradas de usuario N de salidas de usuario N de archivos N de Interfaces externas N de peticiones de usuarios

28 8 35 10 23

3 4 3 7 5

4 5 4 10 7

6 7 6 15 10 TOTAL

112 32 140 100 115 499

b) De las Preguntas: 0 Sin influencia 1 2 3 4 5 6 7 8 9 1 Incidental 2 Moderada 3 Medio 4 5 3 2 3 1 5 4 2 2 1 2

Significativo Esencial

Requiere el sistema copias de seguridad y recuperacin fiables. Se requiere comunicaciones de datos. Existen funciones del procesamiento distribuido. Es crtico al rendimiento. Ser ejecutado el sistema en un entorno operativo el existente y fuertemente utilizado. Requiere el sistema de entrada de datos interactiva. Requiere de entrado de datos interactiva que las transacciones de entrada se llevan sobre mltiples pantallas o variadas operaciones. Se actualiza los archivos maestros en forma interactiva. Son complejas las entradas, las salidas, los archivos o las peticiones.

10 Es complejo el procesamiento interno.

12 - 145

Encabezado 11 Ser diseado el cdigo para ser reutilizable. 12 Estn incluidas en el diseo la conversin y la instalacin. 13 Se ha diseado el sistema para soportar mltiples instalaciones en diferentes organizaciones. 14 Se a diseado la aplicacin para facilitar los cambios para hacer fcilmente utilizado por el usuario. TOTAL 42 Sum (fi) = 42 5 4 4 4

28 x 4 8x4 35 x 4 23 x 5

= 112 = 32 = 140 = 115

10 x 10 = 100 TOTAL 499

c)

Hallando Punto de Funcin (PF) PF = Cuenta total x [0.65 + 0.01 x Sum (fi)] PF = 499 x [0.65 + 0.01 x 42] PF = 499 x [0.65 + 0.42] PF = 533.93

13 - 145

Encabezado d) Hallando Lneas de Cdigo (LDC) Donde: PF = 533.93

LDC = PF 32
LDC = 32 * 533.93

LDC = 17085.76
e) Hallando KLDC

KLDC = LDC 1000 17085.76 1000

Donde: LDC = 17085.76

KLDC =

KLDC = 17.086

2.2.3.2. ESTIMAR LOS ESFUERZOS (PM) Y TDP (TIEMPO DE DESARROLLO DEL PROYECTO) EN BASE A KLDC

Esfuerzo = A * (Tamao) B Duracion = C * ( Esfuerzo) D

Modos

Modo Orgnico Modo Semilibre Modo Rgido

2,4 3,0 1,2

1,05 1,12 1,2

2,5 2,5 2,5

0,38 0,35 0,82

14 - 145

Encabezado
Segn el modo Semilibre:
Esfuerzo = A * (Tamao ) B Esfuerzo = 3.0 * (17.086)1.12

Esfuerzo = 72.057 persona _ mes

Duracion = C * ( Esfuerzo) D

Duracion = 2.5 * (72.057)0.35

Duracion = 11.17 mes

Nro personas = Esfuerzo Duracion Nro personas = 72.057 / 11.17 Nro personas = 6.5 7

Costo = Nro personas * NroMeses * Costo _ mes _ persona


Costo = 7 * 11.17 * 100

Costo = $.7819.00
2.2.3.3. ESTIMAR LA PRODUCTIVIDAD, CALIDAD, COSTO Y PRODUCCIN EN BASE A LDC. a) Produccin en base a LDC: Productividad = LDC / Personas _ mes

15 - 145

Encabezado

Productividad = 17085.76/ 72.057 Productividad = 237.11 b) Calidad: Calidad = errores /KLDC Calidad = 150 / 17.086 Calidad = 8.39
errores por c/mil lneas de cdigo

c) Costo: Costo = Dlares / KLDC Costo = 7819 / 17.086 Costo = 457.63 dlares por cada mil lneas de cdigo

d) Produccin en base a LDC: Documentacin = Pg. Doc. / KLDC Documentacin = 50 / 17.086 Documentacin = 2.93 por cada mil lneas de cdigo

16 - 145

Encabezado

2.3. MODELO DEL NEGOCIO: 2.3.1. Modelo de los casos de uso: Casos de Uso sin Implementacin del sistema Caso de uso Prestacin de servicios:

Ficha
(f rom Curriculum)

Cliente

Comenta el estado actual del Paciente

Mascota

Atencion General Veterinario


<<extend>>

Ayuda en la atencion

Asistente

Figura 5: Diagrama de Caso de Uso Prestacin de servicio. Caso de Uso: Objetivo: Actores: Precondiciones: Pasos: Extensiones:
Prestacin de Servicio Establecer la atencin a la mascota Cliente, Medico Veterinario, Asistente, Mascota Disponibilidad del Medico Veterinario 1 El cliente entrega informacin de su mascota al veterinario 2 El veterinario atiende a la mascota. 3 El asistente ayuda en la atencin si el veterinario lo necesita La informacin de la mascota incluye la ficha con sus datos y algn comentario referente al animal.

Tabla 2: Descripcin del diagrama de casos de uso Prestacin de Servicio.


17 - 145

Encabezado

Caso de Uso Pago:

Pago en dolares

Pago en soles

Hacer Pago Cliente Asistente

Entregar Boleta

Figura 6: Diagrama de Caso de Uso Pago Caso de Uso: Objetivo: Actores: Precondiciones: Pasos:
Pago Dejar constancia de efectuar el pago por los servicios Cliente, Asistente Cliente ya atendido, datos del cliente ya obtenidos. 1 El cliente realiza el pago. 2 El asistente registra los datos en la boleta (servicio prestado, monto total, etc.). 3 El asistente entrega boleta al cliente. Se elige el tipo de moneda (cambio), para efectuar la transaccin.

Extensiones:

Tabla 3: Descripcin del diagrama de casos de uso Pago.

18 - 145

Encabezado

Caso de Uso Pedir Cita:

Separa hora de cita

Cliente Solicitar Cita

Asistente

Confirmar cita

Registro de citas

Figura 7: Diagrama de Caso de Uso Pedir Cita Caso de Uso: Objetivo: Actores: Precondiciones: Pasos:
Pedir Cita Dejar constancia de la solicitud de la cita Cliente, Asistente Cliente Identificado 1 Solicita una cita al Asistente. Cliente separa cita 2 Se establece hora de cita adecuada, entre el cliente y el asistente. 3 Asistente registra datos personales del cliente, DNI, Nombre completo. E1 4 Asistente confirma cita E1: el asistente confirma la cita.

Extensiones:

Tabla 4: Descripcin del diagrama de casos de uso Pedir Cita.

19 - 145

Encabezado

Registrar Cliente:

datos del clientes


<<extend>>

Rectifica Datos del cliente

Registrar datos cliente Cliente Veterinario

Registra datos de la mascota


<<extend>>

Datos de la mascota Rectificar datos de la mascota

Figura 5: Diagrama de Caso de Uso Registrar Cliente

Caso de Uso: Objetivo: Actores: Precondiciones: Pasos:

Extensiones:

Registrar cliente Almacenar los datos del nuevo cliente en un registro Cliente, Medico Veterinario Cliente identificado, dueo de una mascota. 1 Cliente registra sus datos. 2 Medico Veterinario recibe los datos y los rectifica. 3 Cliente registra los datos de su mascota. Si el cliente tiene varias mascotas se procede al paso3 Si desea rectificar algn dato, proceder a registrar los datos a modificar.

Tabla 5: Descripcin del diagrama de casos de uso Registrar Cliente.

20 - 145

Encabezado

Solicitud y Registro de Empleado:

Curriculum

Registra Datos Personales


<<include>>

Persona

Presentar Solicitud

Veterinario

Verificar Solicitud

Informe de Resultado

<<include>>

Evaluar Solicitud

Figura 6: Diagrama de Caso de Uso Solicitud y Registro de Empleado

Solicitud y Registro de Empleado: Contratar nuevo asistente Tener la informacin almacenada del nuevo empleado. Persona , Medico Veterinario Actores: Precondiciones: La persona se presentara con documento de identidad y currculum, el veterinario deber estar disponible. Se debe haber llevado a cabo la solicitud de contrato Pasos: 1 Persona presenta solicitud al Medico veterinario 2 El Medico Veterinario registra los datos personales de pasar la solicitud lo necesario para el contrato 3 El Medico Veterinario verifica, evala la solicitud y decide. 4 Medico veterinario informa resultados de la evaluacin de solicitud.

Caso de Uso: Objetivos:

21 - 145

Encabezado

1 El Medico Veterinario rectifica los datos personales 2 La Persona recibe la respuesta. 3 El Medico Veterinario registra a la persona como nuevo asistente.

Extensiones:

El pago y el tiempo del contrato ya estn establecidos desde un comienzo.

Tabla 6: Descripcin del diagrama de casos de uso Solicitud y Registro de Empleado.

2.3.2. Diagramas de actividad, documentacin CRC de los principales CDU Diagrama de Actividades: Pago

Figura 7: Diagrama de Actividad Pago

22 - 145

Encabezado

Pedir Cita

Figura 8: Diagrama de Actividad Pedir Cita

23 - 145

Encabezado

Prestacin de Servicios

Figura 9: Diagrama de Actividad Prestacin de Servicio

24 - 145

Encabezado

Registrar Cliente

Figura 10: Diagrama de Actividad Registrar Cliente

25 - 145

Encabezado

Solicitud y Registro de Empleado

Figura 11: Diagrama de Actividad Solicitud y Registro de Empleado

26 - 145

Encabezado

2.3.3. Diagramas de Secuencia: Pago

Cliente 1: Solicita cuenta

Asistente

Registro

2: Entrega informacion de cuenta 3: Paga

4: Ingresa datos 5: Guardar datos

6: Reporta comprobante 7: Entrega comprobante

Figura 12: Diagrama de Secuencia Pago

27 - 145

Encabezado

Pedir Cita
Cliente 1: Solicita consulta 2: Revisar carga horaria Asistente Agenda

3: Informar horarios disponibles 4: Elige horario 5: Anota hora de atencion

Figura 13: Diagrama de Secuencia Pedir Cita

28 - 145

Encabezado

Prestacin de Servicios

Cliente

Mascota

Medico Veterinario

Asistente

1: Entrega Inf ormacion de la Mascota 2: Rev isa la mascota 3: Ev alua serv icio necesario 4: Inf orma de la Atencion a Prestarse 5: Conf irma el tipo de Serv icio 6: Solicita ay uda si es necesario

7: Conf irma Asistencia 8: Presta atencion

9: Inf orma resultado

Figura 14: Diagrama de Secuencia Prestacin de Servicios

29 - 145

Encabezado

Registrar Cliente

Cliente

Medico Veterinario

Registro

1: Solicita datos personales 2: Entrega Datos Personales 3: Verifica Datos del Cliente 4: Llena Registro del Cliente

5: Solicita Datos de la Mascota

6: Entrega Datos de su Mascota 7: Verifica Datos de Mascota

8: Llena Registro de la Mascota

Figura 15: Diagrama de Secuencia Registrar Cliente

30 - 145

Encabezado

Solicitud y Registro de Empleado


Persona Medico Veterinario

1: Presenta Solicitud 2: Verifica Datos Personales

3: Registra Datos Personales

4: Entrega informe de Resultados

Figura 16: Diagrama de Secuencia Solicitud y Registro de Empleado

31 - 145

Encabezado

DIAGRAMAS DE CLASE DE USO DEL SISTEMA Caso de uso Prestacin de servicios (Sistema):

Cliente
(from Atencion..) .

Comenta el estado actual del Paciente


(f rom Atencion al Cliente)

Mascota
(from Atencion..) .

Atencion General
(f rom Atencion al Cliente)

Revisar antecedentes de la mascota


(f Veterinario rom Sistema de atencion Veterinaria Animal Center)

Sistema
(from Sistema ...)

(from Atencion al Cliente)

<<include>>

Ingresa la nueva atencion al historial


(f rom Sistema de atencion Veterinaria Animal Center)

Ayuda en la atencion
(f rom Atencion al Cliente)

Asistente
(from Atencion al Cliente)

Figura 17: Diagrama de Caso de Uso Prestacin de servicio (Sistema) Caso de Uso: Objetivo: Actores: Precondiciones: Pasos:
Prestacin de Servicio (Sistema) Establecer la atencin a la mascota Cliente, Medico Veterinario, Asistente, Mascota, Sistema Disponibilidad del Medico Veterinario 1 El cliente entrega informacin de su mascota al veterinario. 2 El veterinario revisa los antecedentes de la mascota. 3 El veterinario atiende a la mascota. 4 El asistente ayuda en la atencin si el veterinario lo necesita. 5 El veterinario ingresa atencin brindada al historial. La informacin de la mascota incluye algn comentario referente al animal.

Extensiones:

Tabla 7: Descripcin del diagrama de casos de uso Prestacin de Servicio (Sistema).

32 - 145

Encabezado

Caso de Uso Pago (Sistema):

Reportar cancelacion de Pago


(f rom Sistema de atencion Veterinaria Animal Center)

Hacer Pago
(f rom Atencion al Cliente)

Cliente
(from Atencion a ...)

Asistente
(from Atencion al Cliente)

Sistema
(from Sistema d...)

Entregar Boleta
(f rom Atencion al Cliente)

Figura 18: Diagrama de Caso de Uso Pago (Sistema) Caso de Uso: Objetivo: Actores: Precondiciones: Pasos:
Pago (Sistema) Dejar constancia de efectuar el pago por los servicios Cliente, Asistente, Sistema Cliente ya atendido, datos del cliente ya obtenidos. 1 El cliente realiza el pago. 2 El asistente registra los datos en la boleta (servicio prestado, monto total, etc.). 3 El asistente registra la transaccin en el sistema 4 El asistente entrega boleta al cliente. Se elige el tipo de moneda (cambio), para efectuar la transaccin.

Extensiones:

Tabla 8: Descripcin del diagrama de casos de uso Pago (Sistema).

33 - 145

Encabezado

Caso de Uso Pedir Cita (Sistema):

Cliente
(from Atencion...)

Solicitar Cita
(from Atencion al Cliente)

Separa hora de cita


(from Atencion al Cliente)

Consultar Horas disponibles Asistente


(from Atencion al Cliente)
(from Sistema de atencion Veterinaria Animal Center)

<<include>>

Confirmar cita
(from Atencion al Cliente)

Registrar nueva Cita


(from Sistema de atencion Veterinaria Animal Center)

Sistema
(from Sistema ...)

Figura 19: Diagrama de Caso de Uso Pedir Cita (Sistema) Caso de Uso: Objetivo: Actores: Precondiciones: Pasos:
Pedir Cita (Sistema) Dejar constancia de la solicitud de la cita Cliente, Asistente, Sistema Cliente Identificado 1 Solicita una cita al Asistente. Cliente separa cita 2 El asistente consulta horas disponibles en el sistema. 3 Se establece hora de cita adecuada, entre el cliente y el asistente. 4 Asistente confirma cita 5 Asistente registra datos personales del cliente, DNI, Nombre completo.

Extensiones: Tabla 9: Descripcin del diagrama de casos de uso Pedir Cita (Sistema).

34 - 145

Encabezado

Registrar Cliente (Sistema):

Rectificar los nuevos datos


(f rom Sistema de atencion Veterinaria Animal Cen...

<<extend>>

Entregar datos del cliente


(f rom Atencion al Cliente)

Cliente
(from Atencion...)

Registrar datos del cliente y mascota Veterinario


(f rom Sistema de atencion Veterinaria Animal Cen...

(from Atencion al Cliente)

Entregar datos de la mascota


(f rom Atencion al Cliente)

Sistema
(from Sistema ...)

Figura 20: Diagrama de Caso de Uso Registrar Cliente (Sistema)

Caso de Uso: Objetivo: Actores: Precondiciones: Pasos:

Extensiones:

Registrar cliente (Sistema) Almacenar los datos del nuevo cliente en un registro Cliente, Medico Veterinario, Sistema Cliente identificado, dueo de una mascota. 1 Cliente registra sus datos. 2 Medico Veterinario recibe los datos y los ingresa como nuevo registro al sistema. 3 Cliente registra los datos de su mascota. Si el cliente tiene varias mascotas se procede al paso 3 Si desea rectificar algn dato, proceder a registrar los datos a modificar.

Tabla 10: Descripcin del diagrama de casos de uso Registrar Cliente (Sistema).

35 - 145

Encabezado

Solicitud y Registro de Empleado (Sistema):

Curriculum
(from Atencion al Cliente)

Registrar los datos personales


(from Sistema de atencion Veterinaria Animal Center)

Persona
(from Atencion a ...)

Presentar Solicitud
(from Atencion al Cliente)

<<include>>

Verificar Solicitud Informe de Resultado


(from Atencion al Cliente)

Veterinario
(from Atencion al Cliente)

(from Atencion al Cliente)

<<include>>

Evaluar Solicitud Sistema


(from Sistema d ...)
(from Atencion al Cliente)

Figura 21: Diagrama de Caso de Uso Solicitud y Registro de Empleado (Sistema)

Solicitud y Registro de Empleado (Sistema): Contratar nuevo asistente Tener la informacin almacenada del nuevo empleado. Persona , Medico Veterinario, Sistema Actores: Precondiciones: La persona se presentara con documento de identidad y currculum, el veterinario deber estar disponible. Se debe haber llevado a cabo la solicitud de contrato 1 Persona presenta solicitud al Medico veterinario Pasos: 2 El Medico Veterinario registra al nuevo empleado de pasar este los requerimientos necesarios para el contrato. 3 El Medico Veterinario verifica y evala la solicitud 4 Medico veterinario informa resultados de la evaluacin de solicitud.

Caso de Uso: Objetivos:

36 - 145

Encabezado 1 El Medico Veterinario rectifica los datos personales 2 La Persona recibe la respuesta. 3 El Medico Veterinario registra a la persona como nuevo asistente. El pago y el tiempo del contrato ya estn establecidos desde un comienzo.

Extensiones:

Tabla 11: Descripcin del diagrama de casos de uso Solicitud y Registro de Empleado (Sistema).

Diagrama de Interaccin Pago

Cliente

Asistente

Teclado

Dispositivo de Visuaalizacion

Gestor de Base de Datos

1: Solicita cuenta 2: Pedir costo de servicios brindados 3: Envia el nombe del Servicio a Buscar 4: Muestra el costo del servicio

5: Verifica los precios de los servicios 6: Entrega cuenta 7: Paga importe total

Figura 22: Diagrama de Secuencia Pago

37 - 145

Encabezado

Pedir Cita

Cliente

Asistente

Teclado

Dispositivo de Visualizacion

Gestor de Base de Datos

1: Solicita consulta 2: Pedir horas disponibles 3: Enviar instrucciones 4: Realizar consulta 5: Muestra resultados 6: Ver horas accesibles

7: Entregar informe de disponibilidad 8: Elige la hora 9: Digita la hora 10: Se ingresa nueva hora ocupada 11: Se actualizan los datos

12: Enviar confirmacion de actualizacion 13: Verifica mensaje de actualizacion exitosa

Figura 23: Diagrama de Secuencia Pedir Cita

38 - 145

Encabezado

Prestacin de servicio:

Cliente

Mascota

Veterinario

Asistente

Teclado

Dispositivo de Visualizacion

Gestor de Base de Datos

1: Entrega informacion de la Mascota 2: Verifica Datos 3: Introduce codigo al Sistema 4: El codigo pasa a ser revisado 5: De haber, muestra informacion del paciente

6: Se verifica el historial 7: Osculta del paciente 8: Se evalua el servicio a prestarse 9: Informa del servicio que se brindara

10: Confirma Servicio 11: Solicita ayuda de ser necesario

12: Brinda ayuda 13: Presta servicio 14: Ingresa datos y resultados 15: Establece los nuevos datos en el historial 16: Muestra los datos actualizados por pantalla

17: Verifica los nuevos datos 18: Informa resultados del servicio prestado 19: Ok

Figura 24: Diagrama de Secuencia Prestacin de servicio


39 - 145

Encabezado

Registrar cliente:

Cliente

Medico Veterinario

Teclado

Dispositivo de Visualizacion

Gestor de Base de Datos

1: Solicita datos personales

2: Entrega datos personales 3: Verifica datos

4: Digita datos del cliente 5: Se ingresan los datos

6: Muestra la informacion 7: Verifica la correcta informacion

8: Solicita datos de la mascota

9: Entrega datos de la mascota

10: Digita datos de la mascota 11: Se ingresan los datos

12: Se guardan todos los datos nuevos

13: Muestra el historial 14: Verifica datos del historial 15: Ok

Figura 25: Diagrama de Secuencia Registrar Cliente.

40 - 145

Encabezado

Solicitud de registro de empleado

Persona

Medico Veterinario

Teclado

Dispositivo de Visualizacion

Gestor de Base de Datos

1: Presentar solicitud

2: Verificar los datos personales y curriculum 3: Digita los datos 4: Los datos ingresan a la Base de Datos 5: Guardar datos

6: Muestra notificacion 7: Verifica notificacion de transaccion correcta

8: Informa de operacion exitosa

Figura 26: Diagrama de Secuencia Solicitud de registro de empleado.

41 - 145

Encabezado

DIAGRAMA DE CLASES DEL SISTEMA

0..*

Boleta de Pago
Nro_Boleta : Integer DNI_Cliente : Integer Nombre_Cliente : String Apellido_Cliente : String Fecha_de_Emision : Date Total : Integer Agregar() Modificar() Buscar() 1..*

Detalle de Boleta
Nro_Boleta ID_Servicio 1..* Agregar() Modificar() Calcular_Total() Buscar() 1..*

Servicio
ID_Servicio Precio Descripcion Materiales Agregar() Modificar() Buscar() 1..*

1..*

1 1 1..* 1

Mascota Nombre : String Raza : String Especie : String 1 Propietario : String Sexo : Boolean Colores : String Fecha_Nacimiento : Date Observaciones : Long opname()

Cliente DNI : String 1 Apellido : String Nombre : String Direccion : String Telefono : String Sexo : Boolean Agregar() Modificar() Buscar()

Empleado ID_Empleado : Integer 1 DNI : String Nombre : String Apellido : String Grado_Titulo : String Direccion : String Telefono : Integer Borrar() Agregar() Modificar() Buscar()
1..*

0..1

Historial Clinico
Nro_Historial : Integer DNI_Cliente : String Nombre_Mascota : String Sexo_Mascota : Boolean Fecha_nac : Date Especie_Mascota : String Raza : String Color : String Observaciones : Long Dolencias : String Agregar() Modificar() Buscar()

Consulta
Fecha ID_Empleado Paciente Diagnostico Observaciones ID_Servicio Agregar() Modificar() Buscar()

1..*

1..*

Figura 27: Diagrama de Clases del Sistema.

42 - 145

Encabezado

2.4. DISEO DEL SISTEMA


El diseo es la principal fase de desarrollo del sistema y podra definirse como: El proceso de aplicar distintas tcnicas y principios con el propsito de definir un dispositivo, un proceso o un sistema con suficiente detalle como para permitir su realizacin fsica. La implantacin del sistema deber tener requerimientos: Requerimientos de Hardware Requerimientos de Software Proceso de Instalacin Acceso al sistema

2.4.1. Generacin de los modelos Lgico y Fsico


a) Modelo Lgico: Este modelo muestra la lgica del establecimiento de la base de datos. b) Modelo Fsico: En este modelo podemos visualizar cada tabla en forma estructural, muestra la estructura fsica de la base de datos, como ser instituida en un gestor de bases de datos.

43 - 145

Encabezado

Model Physical

44 - 145

Encabezado

Model Lgical

45 - 145

Encabezado

Descripcin de las entidades, atributos y relaciones


ATENCION

CLIENTE

RAZA

EMPLEADO

46 - 145

Encabezado

HISTORIAL

VACUNACION

PELUQUERIA

47 - 145

Encabezado

HOSPITALIZACION

HOSPEDAJE

DESPARACITACION

CONSULTORIO

48 - 145

Encabezado

2.4.3. Descripcin breve del funcionamiento del software


Explicaremos como es el funcionamiento del software del sistema de clnica Veterinaria. El sistema ha sido desarrollado en Microsoft Visual Studio.NET con una metodologa de Programacin Visual por Eventos. Y su base de datos se encuentra en SQL Server 2000. Funciona de la siguiente manera: Se tiene una interfaz de presentacin del sistema con el logotipo Sistema de administracin de la veterinaria Animal Center SAVET, para pasar a la ventana de acceso al sistema se debe hacer click en Bienvenidos al Sistema

La Clave de Acceso al sistema se debe escribir en las dos cajas de texto que nos muestra, en este caso el nombre de usuario y clave del usuario luego aceptar de lo contrario no podr ingresar al sistema.
Mostramos los botones lo cual podemos explorar o examinar todo el sistema segn el usuario ingresado. Este botn permite el acceso a la actualizacin de registros como: historial, atencin, clientes, empleados, razas, reportes, calculadora, keyboard (teclado) y salir etc. En el botn Atencin se encuentran los seis servicios que brinda la veterinaria que son: consultorio, vacunacin, Hospedaje, peluquera, hospitalizacin y desparacitacion.

49 - 145

Encabezado

2.5. Instalacin
Se realizaran los pasos siguientes:
PASO 1:

Insertar el CD que contiene el Sistema de Clnica veterinaria.


PASO 2:

Ejecute el SETUP del CD, el cual nos permitir la instalacin del Sistema en la estacin cliente donde se ejecutar el programa.
PASO 3:

Haga clic en el botn Aceptar seleccione la direccin en donde se guardara y luego se comenzar a instalar el Sistema en su Computadora.
PASO 4:

Ejecucin del programa o Sistema de Clnica Veterinaria.

2.6 Acceso al sistema PUESTA EN MARCHA Se ejecuta el sistema y aparece la siguiente ventana de ejecucin:

50 - 145

Encabezado

En donde UD. Deber Hacer click en la parte inferior de la ventana donde aparece:

Para acceder al sistema se deber contar previamente con una contrasea y nombre de usuario quien va administrar este software.

Una vez ingresado el nombre del usuario y su contrasea proceda a hacer clic en el botn aceptar. En caso de que quiera salir del sistema hacer clic en el botn salir del sistema.
Codificacion de Ventana Login. Imports System.Data.SqlClient Public Class FrLogin Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter 'objeto Adaptador de datos Dim objDataset As DataSet 'objeto conjunto de datos Private Sub FrLogin_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load Dim frm As New FrPresentacion() frm.ShowDialog() MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("select * from empleado", MODCONEXION.conexion) objDataset = New DataSet() objDataAdapter.Fill(objDataset, "empleado") MODCONEXION.conexion.Close() End Sub

51 - 145

Encabezado

Private Sub btnAceptar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAceptar.Click Static cuenta As Integer Dim objDataView As New DataView() objDataView.Table = objDataset.Tables("empleado") objDataView.RowFilter = "nomempleado='" & Trim(Me.txtUsuario.Text) & "'" & " and " & "passempleado='" & Trim(Me.txtPassword.Text) & "'" If objDataView.Count > 0 Then Me.Dispose() MODCONEXION.act = True Else MsgBox("Asegurese de que el nombre y el password son correctos", 16, "clave incorrecta") End If End Sub Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnsalir.Click End End Sub End Class

52 - 145

Encabezado

2.6.1. INTERFAZ INICIAL (SISTEMA DE CONTROL DE PACIENTES)

Aqu se muestra las diversas opciones donde se podrn observar los formularios del Sistema como Historial, Atencin (Hospitalizacin, Hospedaje, Desparacitacion, vacunacin, Consultorio y peluquera), Clientes, Empleados, Razas y Reportes aparte tenemos tambin las dos opciones que son la calculadora y el keyboard (teclado) que ser indispensable para el administrador y la ultima opcin seria salir.
Codificacion de Ventana Principal. Imports System.Data.SqlClient Public Class frmPrincipal Inherits System.Windows.Forms.Form

53 - 145

Encabezado
Private Sub frmPrincipal_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load If act = False Then Me.Visible = False Dim frm As New frLogin() frm.ShowDialog() End If End Sub Private Sub ToolBar1_ButtonClick(ByVal sender As Object, ByVal e As System.Windows.Forms.ToolBarButtonClickEventArgs) Handles ToolBar1.ButtonClick Select Case Me.ToolBar1.Buttons.IndexOf(e.Button) Case 0 Me.mnuHistorial_Click(sender, e) Case 1 Me.mnuAtencion_Click(sender, e) Case 2 Me.mnuClientes_Click(sender, e) Case 3 Me.mnuEmpleado_Click(sender, e) Case 4 Me.mnuRazas_Click(sender, e) Case 5 Me.mnuReportes_Click(sender, e) Case 6 Me.mnuCalculadora_Click(sender, e) Case 7 Me.mnuKeyboard_Click(sender, e) Case 8 Me.mnuActSalir_Click(sender, e) End Select End Sub Private Sub mnuHistorial_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) If vistahistorial = False Then Dim frm As New FrHistorial() frm.MdiParent = Me frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub mnuAtencion_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) If vistaatencion = False Then Dim frm As New FrATENCION() frm.MdiParent = Me 'agregado frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub mnuClientes_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)

54 - 145

Encabezado
If vistacliente = False Then Dim frm As New FrCliente() frm.MdiParent = Me 'agregado frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub mnuEmpleado_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) If vistaempleado = False Then Dim frm As New FrEmpleado() frm.MdiParent = Me 'agregado frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub mnuBuscador_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) If vistabuscador = False Then Dim frm As New FrBuscador() frm.MdiParent = Me 'agregado frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub mnuReportes_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) If vistareportes = False Then Dim frm As New FrReportes() frm.MdiParent = Me 'agregado frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub mnuRazas_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) If vistaraza = False Then Dim frm As New FrRaza() frm.MdiParent = Me 'agregado frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub mnuCalculadora_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) System.Diagnostics.Process.Start("calc.exe") End Sub

55 - 145

Encabezado

Private Sub mnuKeyboard_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) System.Diagnostics.Process.Start("osk.exe") End Sub Private Sub mnuSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) End End Sub Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Me.StatusBar1.Panels(2).Text = DateString Me.StatusBar1.Panels(3).Text = TimeString End Sub Private Sub mnuActSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) End End Sub Private Sub frmPrincipal_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed End End Sub Private Sub Timer1_Tick_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick Me.StatusBar1.Panels(2).Text = DateString Me.StatusBar1.Panels(3).Text = TimeString End Sub End Class

56 - 145

Encabezado

Botn Historial (Ventana Historial): Permite llenar los datos del paciente.

Botn Nuevo: Permite un nuevo registro para el paciente. Botn Guardar: Guarda los datos del paciente. Botn Cancelar: Cancela alguna accin, antes realizada, como cancelar nuevo, guardar etc. Botn Editar: Permite modificar los datos de un determinado paciente. Botn Eliminar: Nos permite eliminar la fila seleccionada del registro de historiales. Botn Buscar: Busca el cdigo del historial. Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual. Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todo los atributos del registro de Historiales.

57 - 145

Encabezado

Codificacion de Ventana Atencion. Imports System.Data.SqlClient Public Class FrHistorial Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataAdapterC As SqlDataAdapter Dim objDataAdapterR As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer Private Sub FrHistorial_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistahistorial = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from historial", MODCONEXION.conexion) objDataAdapterC = New SqlDataAdapter("Select * from Cliente", MODCONEXION.conexion) objDataAdapterR = New SqlDataAdapter("Select * from Raza", MODCONEXION.conexion) objDataSet = New DataSet() objDataAdapter.Fill(objDataSet, "Historial") objDataAdapterC.Fill(objDataSet, "Cliente") objDataAdapterR.Fill(objDataSet, "Raza") MODCONEXION.conexion.Close() Me.cboCliente.DataBindings.Add("SelectedValue", objDataSet, "Historial.CodCliente") Me.cboCliente.DataSource = objDataSet.Tables("Cliente") Me.cboCliente.ValueMember = "CodCliente" Me.cboCliente.DisplayMember = "CodCliente" Me.cboRaza.DataBindings.Add("SelectedValue", objDataSet, "Historial.CodRaza") Me.cboRaza.DataSource = objDataSet.Tables("Raza") Me.cboRaza.ValueMember = "CodRaza" Me.cboRaza.DisplayMember = "CodRaza" 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "historial" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("historial").Rows.Count - 1) Me.DataGrid1.CaptionText = "Regitro de Historiales" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrHistorial_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed

58 - 145

Encabezado
vistahistorial = False End Sub ''''''''''''''''''Botones(Primarios)''''''''''''''' Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() txtCodigo.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Dim sql3 As String sql3 = "delete from historial where codhistorial=@codhistorial" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) Try objComando.Parameters.Add(New SqlParameter("@codHistorial", SqlDbType.VarChar)) objComando.Parameters("@codHistorial").Value = InputBox("Ingrese el codigo del historial a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() 'btnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False txtNombre.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String sql1 = "INSERT INTO Historial (NomMascota,Sexo,DesColor, FecNacimiento, Personalidad, FotoMascota, CodCliente, Peso,CodRaza) VALUES (@NomMascota,@Sexo,@DesColor, @FecNacimiento, @Personalidad, @FotoMascota,@CodCliente,@Peso,@CodRaza)"

59 - 145

Encabezado
Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@NomMascota", SqlDbType.VarChar)) objcomando.Parameters("@NomMascota").Value = txtNombre.Text objcomando.Parameters.Add(New SqlParameter("@Sexo", SqlDbType.Char)) objcomando.Parameters("@Sexo").Value = cboSexo.Text objcomando.Parameters.Add(New SqlParameter("@DesColor", SqlDbType.VarChar)) objcomando.Parameters("@DesColor").Value = txtColor.Text objcomando.Parameters.Add(New SqlParameter("@FecNacimiento", SqlDbType.DateTime)) objcomando.Parameters("@FecNacimiento").Value = dateFecha.Value objcomando.Parameters.Add(New SqlParameter("@Personalidad", SqlDbType.Char)) objcomando.Parameters("@Personalidad").Value = txtPersonalidad.Text objcomando.Parameters.Add(New SqlParameter("@FotoMascota", SqlDbType.VarChar)) objcomando.Parameters("@FotoMascota").Value = 1 'implementar posteriormente opcion de foto objcomando.Parameters.Add(New SqlParameter("@CodCliente", SqlDbType.Char)) objcomando.Parameters("@CodCliente").Value = cboCliente.Text objcomando.Parameters.Add(New SqlParameter("@Peso", SqlDbType.Char)) objcomando.Parameters("@Peso").Value = txtPeso.Text objcomando.Parameters.Add(New SqlParameter("@CodRaza", SqlDbType.Char)) objcomando.Parameters("@CodRaza").Value = cboRaza.Text MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Historial").Rows.Count 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else

60 - 145

Encabezado
Try

'-----------------------------------Dim Sql2 As String Sql2 = "Update Historial set NomMascota = @NomMascota, Sexo = @Sexo, DesColor=@DesColor, FecNacimiento=@FecNacimiento,Personalidad=@Personalidad, FotoMascota=@FotoMascota, CodCliente=@CodCliente, Peso=@Peso, CodRaza=@CodRaza WHERE CodHistorial = @CodHistorial" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) '-----------------------------------objcomandom.Parameters.Add(New SqlParameter("@CodHistorial", SqlDbType.VarChar)) objcomandom.Parameters("@CodHistorial").Value = txtCodigo.Text objcomandom.Parameters.Add(New SqlParameter("@NomMascota", SqlDbType.VarChar)) objcomandom.Parameters("@NomMascota").Value = txtNombre.Text objcomandom.Parameters.Add(New SqlParameter("@Sexo", SqlDbType.Char)) objcomandom.Parameters("@Sexo").Value = cboSexo.Text objcomandom.Parameters.Add(New SqlParameter("@DesColor", SqlDbType.VarChar)) objcomandom.Parameters("@DesColor").Value = txtColor.Text objcomandom.Parameters.Add(New SqlParameter("@FecNacimiento", SqlDbType.DateTime)) objcomandom.Parameters("@FecNacimiento").Value = dateFecha.Value objcomandom.Parameters.Add(New SqlParameter("@Personalidad", SqlDbType.Char)) objcomandom.Parameters("@Personalidad").Value = txtPersonalidad.Text objcomandom.Parameters.Add(New SqlParameter("@FotoMascota", SqlDbType.VarChar)) objcomandom.Parameters("@FotoMascota").Value = 1 objcomandom.Parameters.Add(New SqlParameter("@CodCliente", SqlDbType.Char)) objcomandom.Parameters("@CodCliente").Value = cboCliente.Text objcomandom.Parameters.Add(New SqlParameter("@Peso", SqlDbType.Char)) objcomandom.Parameters("@Peso").Value = txtPeso.Text objcomandom.Parameters.Add(New SqlParameter("@CodRaza", SqlDbType.Char)) objcomandom.Parameters("@CodRaza").Value = cboRaza.Text

61 - 145

Encabezado

1)

MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Historial").Rows.Count -

MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnNuevo_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() txtCodigo.Enabled = False txtNombre.Focus() End Sub Private Sub btnEliminar_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from historial where codhistorial=@codhistorial" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) objComando.Parameters.Add(New SqlParameter("@codhistorial", SqlDbType.VarChar)) objComando.Parameters("@codhistorial").Value = InputBox("Ingrese el codigo del historial a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Try

62 - 145

Encabezado
Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese codigo del historial", "Buscar") objDataView.Table = objDataSet.Tables("historial") objDataView.RowFilter = "codhistorial ='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.txtNombre.Text = Me.DataGrid1.Item(0, 1) Me.cboSexo.Text = Me.DataGrid1.Item(0, 2) Me.txtColor.Text = Me.DataGrid1.Item(0, 3) Me.dateFecha.Text = Me.DataGrid1.Item(0, 4) Me.txtPersonalidad.Text = Me.DataGrid1.Item(0, 5) Me.txtPeso.Text = Me.DataGrid1.Item(0, 8) Me.cboCliente.Text = Me.DataGrid1.Item(0, 7) Me.cboRaza.Text = Me.DataGrid1.Item(0, 9) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() 'BtnAnterior.PerformClick() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "Historial") objDataAdapterC.Fill(objDataSet, "Cliente") objDataAdapterR.Fill(objDataSet, "Raza") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "historial" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("historial").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub

63 - 145

Encabezado
''''''''''botones(navegacion)''''''''''''' Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("historial").Rows(posicion) txtCodigo.Text = objDataRow("CodHistorial") txtNombre.Text = objDataRow("NomMascota") cboSexo.Text = objDataRow("sexo") txtColor.Text = objDataRow("descolor") dateFecha.Text = objDataRow("FecNacimiento") txtPersonalidad.Text = objDataRow("Personalidad") txtPeso.Text = objDataRow("peso") cboCliente.SelectedValue = objDataRow("codCliente") cboRaza.SelectedValue = objDataRow("codRaza") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("historial").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos() End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos() End If End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("historial").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("historial").Rows.Count - 1) Call CargarDatos() End Sub

64 - 145

Encabezado

'''''''''''''''Funciones secundarias''''''''''''' Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "historial") ' Me.DataGrid1.CaptionText = "Listado de historial" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est cboCliente.Enabled = est cboRaza.Enabled = est cboSexo.Enabled = est dateFecha.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub '''''''''Funciones datagrid''''''''''''''''' Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer ' Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codhistorial", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("historial") dv.Sort = Trim(ifieldName)

65 - 145

Encabezado
fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class Botn Atencin (Ventana Atencin): Se registra la atencin que antecede a los servicios prestados al cliente.

Botn Nuevo: Permite un nuevo registro de atencin para el paciente. Botn Guardar: Guarda los datos de Atencin. Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos de Atencin. Botn Eliminar: Nos permite eliminar la fila seleccionada del listado de atenciones. Botn Buscar: Busca el cdigo de Atencin. Botn Salir: Permite salir de la Ventana actual. Botn Consultorio: Muestra el formulario de consultas donde el cliente consulta las dolencias de su mascota. Botn Desparacitacin: Muestra la ventana de control antiparsito para los pacientes.

66 - 145

Encabezado
Botn Hospitalizacin: Muestra la ventana de hospitalizacin donde se hacen operaciones, cirugas etc. Botn Hospedaje: Muestra la ventana de hospedaje donde se alojan los pacientes. Botn Vacunacin: Muestra la ventana de control de vacunas para los pacientes. Botn Peluquera: Muestra la ventana peluquera donde se retoca a los pacientes. Botn Mostrar: Muestra todo los atributos de registros de atenciones.

Codificacion de Ventana Atencion.


Imports System.Data.SqlClient Public Class FrATENCION Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataAdapterE As SqlDataAdapter Dim objDataAdapterH As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer Private Sub FrATENCION_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistaatencion = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from atencion", MODCONEXION.conexion) objDataAdapterE = New SqlDataAdapter("Select * from empleado", MODCONEXION.conexion) objDataAdapterH = New SqlDataAdapter("Select * from historial", MODCONEXION.conexion) objDataSet = New DataSet() objDataAdapter.Fill(objDataSet, "atencion") objDataAdapterE.Fill(objDataSet, "empleado") objDataAdapterH.Fill(objDataSet, "historial") MODCONEXION.conexion.Close() 'combo box del Personal Me.cboNomPersonal.DataBindings.Add("SelectedValue", objDataSet, "Atencion.CodEmpleado") Me.cboNomPersonal.DataSource = Me.objDataSet.Tables("empleado") Me.cboNomPersonal.DisplayMember = "CodEmpleado" Me.cboNomPersonal.ValueMember = "CodEmpleado" 'combo box del Personal Me.cboCodHistorial.DataBindings.Add("SelectedValue", objDataSet, "Atencion.CodHistorial") Me.cboCodHistorial.DataSource = objDataSet.Tables("Historial") Me.cboCodHistorial.ValueMember = "CodHistorial" Me.cboCodHistorial.DisplayMember = "CodHistorial" 'llenar la grilla

67 - 145

Encabezado
Me.DataGrid1.DataSource = Me.DataGrid1.DataSource = Me.DataGrid1.DataMember = 'Configurar la grilla con Me.DataGrid1.Refresh() Nothing objDataSet "Atencion" codigo

posicion = (objDataSet.Tables("Atencion").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado de Atenciones" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrATENCION_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistaatencion = False End Sub Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() dateFecha.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String sql1 = "INSERT INTO Atencion (fechaAtencion,HoraAtencion,CodEmpleado,CodHistorial) VALUES (@fechaAtencion,@HoraAtencion,@CodEmpleado,@CodHistorial)" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@FechaAtencion", SqlDbType.DateTime)) objcomando.Parameters("@FechaAtencion").Value = dateFecha.Text objcomando.Parameters.Add(New SqlParameter("@HoraAtencion", SqlDbType.DateTime)) objcomando.Parameters("@HoraAtencion").Value = dateHora.Text objcomando.Parameters.Add(New SqlParameter("@CodEmpleado", SqlDbType.VarChar)) objcomando.Parameters("@CodEmpleado").Value = cboNomPersonal.Text objcomando.Parameters.Add(New SqlParameter("@CodHistorial", SqlDbType.VarChar)) objcomando.Parameters("@CodHistorial").Value = cboCodHistorial.Text MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Atencion").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try

68 - 145

Encabezado
Else Try '-----------------------------------Dim Sql2 As String Sql2 = "Update Cliente set FechaAtencion = @FechaAtencion, HoraAtencion = @HoraAtencion, codEmpleado = @codEmpleado, codHistorial = @codHistorial where CodAtencion = @CodAtencion" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomandom.Parameters("@CodAtencion").Value = txtCodigo.Text objcomandom.Parameters.Add(New SqlParameter("@FechaAtencion", SqlDbType.DateTime)) objcomandom.Parameters("@FechaAtencion").Value = dateFecha.Text objcomandom.Parameters.Add(New SqlParameter("@HoraAtencion", SqlDbType.DateTime)) objcomandom.Parameters("@HoraAtencion").Value = dateHora.Text objcomandom.Parameters.Add(New SqlParameter("@CodEmpleado", SqlDbType.VarChar)) objcomandom.Parameters("@CodEmpleado").Value = cboNomPersonal.Text objcomandom.Parameters.Add(New SqlParameter("@CodHistorial", SqlDbType.VarChar)) objcomandom.Parameters("@CodHistorial").Value = cboCodHistorial.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Atencion").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarControles(False) Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False dateFecha.Focus() End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close()

69 - 145

Encabezado
'BtnAnterior.PerformClick() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from atencion where codatencion=@codatencion" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) objComando.Parameters.Add(New SqlParameter("@codatencion", SqlDbType.VarChar)) objComando.Parameters("@codatencion").Value = InputBox("Ingrese el codigo del atencion a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() 'BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese codigo de Atencion", "Buscar") objDataView.Table = objDataSet.Tables("atencion") objDataView.RowFilter = "codatencion='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.dateFecha.Text = Me.DataGrid1.Item(0, 1) Me.dateHora.Text = Me.DataGrid1.Item(0, 2) Me.cboNomPersonal.Text = Me.DataGrid1.Item(0, 3) Me.cboCodHistorial.Text = Me.DataGrid1.Item(0, 4) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "atencion") objDataAdapterE.Fill(objDataSet, "empleado") objDataAdapterH.Fill(objDataSet, "historial") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Try

70 - 145

Encabezado
Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "atencion" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("atencion").Rows.Count - 1) Me.DataGrid1.CaptionText = "Lista de Atenciones" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "atencion") ' Me.DataGrid1.CaptionText = "Lista de Atenciones" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est cboCodHistorial.Enabled = est cboNomPersonal.Enabled = est dateHora.Enabled = est dateFecha.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer ' Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codcliente", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView()

71 - 145

Encabezado
Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("cliente") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("Atencion").Rows(posicion) txtCodigo.Text = objDataRow("CodAtencion") dateFecha.Text = objDataRow("FechaAtencion") dateHora.Text = objDataRow("HoraAtencion") cboNomPersonal.SelectedValue = objDataRow("CodEmpleado") cboCodHistorial.SelectedValue = objDataRow("CodHistorial") Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub btnConsultorio_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConsultorio.Click If vistaconsultorio = False Then Dim frm As New frConsulta() frm.Show() Else 'MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub btnDesparacitacion_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDesparacitacion.Click If vistadesparacitacion = False Then Dim frm As New frDesparacitacion() frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub btnHospitalizacion_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHospitalizacion.Click If vistahospitalisacion = False Then Dim frm As New FrHospitalizacion() frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub btnHospedaje_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnHospedaje.Click If vistahospedaje = False Then Dim frm As New FrHospedaje() frm.Show() Else

72 - 145

Encabezado
MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub btnVacunacion_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnVacunacion.Click If vistavacunacion = False Then Dim frm As New FrVacunacion() frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub btnPeluqueria_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnPeluqueria.Click If vistapeluqueria = False Then Dim frm As New FrPeluqueria() frm.Show() Else ' MsgBox("El formulario ya esta cargado...") End If End Sub Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

a) Botn Consultorio (Ventana Consultorio): Ingresa un servicio de consulta.

73 - 145

Encabezado

Botn Nuevo: Permite un nuevo ingreso de datos del paciente. Botn Guardar: Guarda los datos llenados del paciente. Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos de la consulta. Botn Eliminar: Nos permite eliminar la fila seleccionada del listado de consultas. Botn Buscar: Busca el cdigo de la consulta. Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual. Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todo los atributos del registro de consultas. CodIficacion de Ventana Consultorio
Imports System.Data.SqlClient Public Class frConsulta Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataAdapterA As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer Private Sub frConsulta_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistaconsultorio = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from Consultorio", MODCONEXION.conexion) objDataAdapterA = New SqlDataAdapter("Select * from Atencion", MODCONEXION.conexion) objDataSet = New DataSet() objDataAdapter.Fill(objDataSet, "Consultorio") objDataAdapterA.Fill(objDataSet, "atencion") MODCONEXION.conexion.Close() Me.cboCodAtencion.DataBindings.Add("SelectedValue", objDataSet, "Consultorio.CodAtencion") Me.cboCodAtencion.DataSource = objDataSet.Tables("atencion") Me.cboCodAtencion.ValueMember = "CodAtencion" Me.cboCodAtencion.DisplayMember = "CodAtencion"

74 - 145

Encabezado

'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "consultorio" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("consultorio").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado de Consultas" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrConsulta_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistaconsultorio = False End Sub Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() 'txtcodigo.Enabled = False cboCodAtencion.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String sql1 = "INSERT INTO Consultorio (Temperatura,FrecCardiaca,Estado, Actitud, Peso, Sintomas, Diagnostico, Tratamiento,Mucosa, Costo, codAtencion) VALUES (@Temperatura,@FrecCardiaca,@Estado,@Actitud,@Peso,@Sintomas,@Diagnostico,@Tratam iento,@Mucosa,@Costo,@codAtencion)" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@Temperatura", SqlDbType.VarChar)) objcomando.Parameters("@Temperatura").Value = txtTemperatura.Text objcomando.Parameters.Add(New SqlParameter("@FrecCardiaca", SqlDbType.VarChar)) objcomando.Parameters("@FrecCardiaca").Value = txtFrecuencia.Text objcomando.Parameters.Add(New SqlParameter("@Estado", SqlDbType.VarChar)) objcomando.Parameters("@Estado").Value = txtEstado.Text objcomando.Parameters.Add(New SqlParameter("@Actitud", SqlDbType.VarChar)) objcomando.Parameters("@Actitud").Value = txtActitud.Text

75 - 145

Encabezado
objcomando.Parameters.Add(New SqlParameter("@Peso", objcomando.Parameters("@Peso").Value = txtPeso.Text objcomando.Parameters.Add(New SqlParameter("@Sintomas", SqlDbType.VarChar)) objcomando.Parameters("@Sintomas").Value = txtSintomas.Text objcomando.Parameters.Add(New SqlParameter("@Diagnostico", SqlDbType.VarChar)) objcomando.Parameters("@Diagnostico").Value = txtDiagnostico.Text objcomando.Parameters.Add(New SqlParameter("@Tratamiento", SqlDbType.VarChar)) objcomando.Parameters("@Tratamiento").Value = txtTratamiento.Text objcomando.Parameters.Add(New SqlParameter("@Mucosa", SqlDbType.VarChar)) objcomando.Parameters("@Mucosa").Value = txtMucosa.Text objcomando.Parameters.Add(New SqlParameter("@Costo", SqlDbType.VarChar)) objcomando.Parameters("@Costo").Value = txtCosto.Text objcomando.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomando.Parameters("@CodAtencion").Value = cboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Consultorio").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try '-----------------------------------Dim Sql2 As String Sql2 = "Update Consultorio set Temperatura = @Temperatura, FrecCardiaca = @FrecCardiaca, Estado=@Estado, Actitud=@Actitud, Peso=@Peso, Sintomas=@Sintomas, Diagnostico=@Diagnostico,Tratamiento=@Tratamiento,Mucosa=@Mucosa, Costo=@Costo where CodConsultorio = @CodConsultorio" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodConsultorio", SqlDbType.VarChar)) objcomandom.Parameters("@CodConsultorio").Value = txtcodigo.Text objcomandom.Parameters.Add(New SqlParameter("@Temperatura", SqlDbType.VarChar)) objcomandom.Parameters("@Temperatura").Value = txtTemperatura.Text objcomandom.Parameters.Add(New SqlParameter("@FrecCardiaca", SqlDbType.VarChar))

SqlDbType.Int))

76 - 145

Encabezado
objcomandom.Parameters("@FrecCardiaca").Value = txtFrecuencia.Text objcomandom.Parameters.Add(New SqlParameter("@Estado", SqlDbType.VarChar)) objcomandom.Parameters("@Estado").Value = txtEstado.Text objcomandom.Parameters.Add(New SqlParameter("@Actitud", SqlDbType.VarChar)) objcomandom.Parameters("@Actitud").Value = txtActitud.Text SqlDbType.Int)) objcomandom.Parameters.Add(New SqlParameter("@Peso", objcomandom.Parameters("@Peso").Value = txtPeso.Text

objcomandom.Parameters.Add(New SqlParameter("@Sintomas", SqlDbType.VarChar)) objcomandom.Parameters("@Sintomas").Value = txtSintomas.Text objcomandom.Parameters.Add(New SqlParameter("@Diagnostico", SqlDbType.VarChar)) objcomandom.Parameters("@Diagnostico").Value = txtDiagnostico.Text objcomandom.Parameters.Add(New SqlParameter("@Tratamiento", SqlDbType.VarChar)) objcomandom.Parameters("@Tratamiento").Value = txtTratamiento.Text objcomandom.Parameters.Add(New SqlParameter("@Mucosa", SqlDbType.VarChar)) objcomandom.Parameters("@Mucosa").Value = txtMucosa.Text objcomandom.Parameters.Add(New SqlParameter("@Costo", SqlDbType.VarChar)) objcomandom.Parameters("@Costo").Value = txtCosto.Text objcomandom.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomandom.Parameters("@CodAtencion").Value = cboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Consultorio").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarControles(False) Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True)

77 - 145

Encabezado
Call HabilitarBotones(False) txtcodigo.Enabled = False cboCodAtencion.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from consultorio where codConsultorio=@codConsultorio" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) objComando.Parameters.Add(New SqlParameter("@codConsultorio", SqlDbType.VarChar)) objComando.Parameters("@codConsultorio").Value = InputBox("Ingrese el codigo de la consulta a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese codigo de la Consulta", "Buscar") objDataView.Table = objDataSet.Tables("Consultorio") objDataView.RowFilter = "CodConsultorio ='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtcodigo.Text = Me.DataGrid1.Item(0, 0) Me.txtTemperatura.Text = Me.DataGrid1.Item(0, 1) Me.txtFrecuencia.Text = Me.DataGrid1.Item(0, 2) Me.txtEstado.Text = Me.DataGrid1.Item(0, 3) Me.txtActitud.Text = Me.DataGrid1.Item(0, 4) Me.txtPeso.Text = Me.DataGrid1.Item(0, 5) Me.txtSintomas.Text = Me.DataGrid1.Item(0, 6) Me.txtDiagnostico.Text = Me.DataGrid1.Item(0, 7) Me.txtTratamiento.Text = Me.DataGrid1.Item(0, 8) Me.txtMucosa.Text = Me.DataGrid1.Item(0, 9) Me.txtCosto.Text = Me.DataGrid1.Item(0, 10) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() Try

78 - 145

Encabezado
MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "Consultorio") objDataAdapterA.Fill(objDataSet, "atencion") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Consultorio" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("Consultorio").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("consultorio").Rows(posicion) txtcodigo.Text = objDataRow("CodConsultorio") txtTemperatura.Text = objDataRow("Temperatura") txtFrecuencia.Text = objDataRow("FrecCardiaca") txtEstado.Text = objDataRow("Estado") txtActitud.Text = objDataRow("Actitud") txtPeso.Text = objDataRow("Peso") txtSintomas.Text = objDataRow("Sintomas") txtDiagnostico.Text = objDataRow("Diagnostico") txtTratamiento.Text = objDataRow("Tratamiento") txtMucosa.Text = objDataRow("Mucosa") txtCosto.Text = objDataRow("Costo") cboCodAtencion.SelectedValue = objDataRow("CodAtencion") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("consultorio").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos() End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos() End If End Sub

79 - 145

Encabezado

Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("consultorio").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("consultorio").Rows.Count - 1) Call CargarDatos() End Sub Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "consultorio") ' Me.DataGrid1.CaptionText = "Listado de Consultas" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est cboCodAtencion.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer ' Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codConsultorio", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue

80 - 145

Encabezado
dv.Table = objDataSet.Tables("consultorio") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

b) Botn Desparacitacion (Ventana Control Antiparasitario): Ingresa un servicio de control antiparsito.

Botn Nuevo: Permite un nuevo llenado de datos. Botn Guardar: Guarda el llenado de datos. Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos del control antiparsito. Botn Eliminar: Nos permite eliminar la fila seleccionada del listado de desparacitacion. Botn Buscar: Busca el cdigo de desparacitacion.

81 - 145

Encabezado

Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual. Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todo los atributos del registro de desparacitacion. Codificacion de Ventana Control Antiparacitario.
Imports System.Data.SqlClient Public Class frDesparacitacion Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataAdapterA As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer

Private Sub frServicios_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistadesparacitacion = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from desparacitacion", MODCONEXION.conexion) objDataAdapterA = New SqlDataAdapter("Select * from Atencion", MODCONEXION.conexion) objDataSet = New DataSet() objDataAdapter.Fill(objDataSet, "Desparacitacion") objDataAdapterA.Fill(objDataSet, "atencion") MODCONEXION.conexion.Close() Me.CboCodAtencion.DataBindings.Add("SelectedValue", objDataSet, "Desparacitacion.CodAtencion") Me.CboCodAtencion.DataSource = objDataSet.Tables("atencion") Me.CboCodAtencion.ValueMember = "CodAtencion" Me.CboCodAtencion.DisplayMember = "CodAtencion" 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "desparacitacion" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("desparacitacion").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado registro de desparacitacion" Call CargarDatos() Call HabilitarControles(False)

82 - 145

Encabezado
Call HabilitarBotones(True) End Sub Private Sub FrServicios_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistadesparacitacion = False End Sub '''''''''''''''''''Botones Primarios''''''''''''''''''' Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() cboMedicamento.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String sql1 = "INSERT INTO Desparacitacion (Medicamento, Via, ProxCita, Observacion, Costo, Peso, Dosis, CodAtencion) VALUES (@Medicamento, @Via, @ProxCita,@Observacion, @Costo, @Peso, @Dosis, @CodAtencion)" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@Medicamento", SqlDbType.VarChar)) objcomando.Parameters("@Medicamento").Value = cboMedicamento.Text objcomando.Parameters.Add(New SqlParameter("@Via", SqlDbType.VarChar)) objcomando.Parameters("@Via").Value = cboVia.Text objcomando.Parameters.Add(New SqlParameter("@ProxCita", SqlDbType.DateTime)) objcomando.Parameters("@ProxCita").Value = dateProxCita.Text objcomando.Parameters.Add(New SqlParameter("@Observacion", SqlDbType.VarChar)) objcomando.Parameters("@Observacion").Value = txtObservacion.Text objcomando.Parameters.Add(New SqlParameter("@Costo", SqlDbType.VarChar)) objcomando.Parameters("@Costo").Value = txtCosto.Text objcomando.Parameters.Add(New SqlParameter("@Peso", SqlDbType.VarChar)) objcomando.Parameters("@Peso").Value = txtPeso.Text objcomando.Parameters.Add(New SqlParameter("@Dosis", SqlDbType.VarChar)) objcomando.Parameters("@Dosis").Value = txtDosis.Text objcomando.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomando.Parameters("@CodAtencion").Value = CboCodAtencion.Text MODCONEXION.conexion.Open()

83 - 145

Encabezado
resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Desparacitacion").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try Dim Sql2 As String Sql2 = "Update Desparacitacion set Medicamento = @Medicamento, via = @via, ProxCita = @ProxCita, Observacion=@Observacion, Costo=@Costo, Peso=@Peso, Dosis=@Dosis, CodAtencion=@CodAtencion where CodDesparacitacion = @CodDesparacitacion" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodDesparacitacion", SqlDbType.VarChar)) objcomandom.Parameters("@CodDesparacitacion").Value = txtCodigo.Text SqlDbType.Int)) objcomandom.Parameters.Add(New SqlParameter("@Medicamento",

objcomandom.Parameters("@Medicamento").Value = cboMedicamento.Text objcomandom.Parameters.Add(New SqlParameter("@Via", SqlDbType.VarChar)) objcomandom.Parameters("@Via").Value = cboVia.Text objcomandom.Parameters.Add(New SqlParameter("@ProxCita", SqlDbType.DateTime)) objcomandom.Parameters("@ProxCita").Value = dateProxCita.Text objcomandom.Parameters.Add(New SqlParameter("@Observacion", SqlDbType.VarChar)) objcomandom.Parameters("@Observacion").Value = txtObservacion.Text objcomandom.Parameters.Add(New SqlParameter("@Costo", SqlDbType.VarChar)) objcomandom.Parameters("@Costo").Value = txtCosto.Text objcomandom.Parameters.Add(New SqlParameter("@Peso", SqlDbType.VarChar)) objcomandom.Parameters("@Peso").Value = txtPeso.Text objcomandom.Parameters.Add(New SqlParameter("@Dosis", SqlDbType.VarChar)) objcomandom.Parameters("@Dosis").Value = txtDosis.Text objcomandom.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomandom.Parameters("@CodAtencion").Value = CboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion

84 - 145

Encabezado

posicion = (objDataSet.Tables("Desparacitacion").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarControles(False) Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False cboMedicamento.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from desparacitacion where codDesparacitacion=@codDesparacitacion" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) Try objComando.Parameters.Add(New SqlParameter("@codDesparacitacion", SqlDbType.VarChar)) objComando.Parameters("@codDesparacitacion").Value = InputBox("Ingrese el codigo del registro de desparacitacion a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese el codigo del registro de Desparacitacion", "Buscar") objDataView.Table = objDataSet.Tables("Desparacitacion") objDataView.RowFilter = "CodDesparacitacion='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh()

85 - 145

Encabezado
Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.cboMedicamento.Text = Me.DataGrid1.Item(0, 1) Me.cboVia.Text = Me.DataGrid1.Item(0, 2) Me.dateProxCita.Text = Me.DataGrid1.Item(0, 3) Me.txtObservacion.Text = Me.DataGrid1.Item(0, 4) Me.txtCosto.Text = Me.DataGrid1.Item(0, 5) Me.txtPeso.Text = Me.DataGrid1.Item(0, 6) Me.txtDosis.Text = Me.DataGrid1.Item(0, 7) Me.CboCodAtencion.Text = Me.DataGrid1.Item(0, 8) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() 'BtnAnterior.PerformClick() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "Desparacitacion") objDataAdapterA.Fill(objDataSet, "atencion") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "desparacitacion" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("desparacitacion").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub ''''''''''''''''''Funciones secundarias'''''''''''''''''''''''''' Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "desparacitacion") ' Me.DataGrid1.CaptionText = "Lista de Registro Desparacitacion" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est CboCodAtencion.Enabled = est cboMedicamento.Enabled = est cboVia.Enabled = est dateProxCita.Enabled = est Next End Sub Private Sub LimpiarControles()

86 - 145

Encabezado
Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("desparacitacion").Rows(posicion) txtCodigo.Text = objDataRow("CodDesparacitacion") cboMedicamento.Text = objDataRow("Medicamento") cboVia.Text = objDataRow("Via") dateProxCita.Text = objDataRow("ProxCita") txtObservacion.Text = objDataRow("Observacion") txtCosto.Text = objDataRow("Costo") txtPeso.Text = objDataRow("Peso") txtDosis.Text = objDataRow("Dosis") CboCodAtencion.SelectedValue = objDataRow("codAtencion") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("desparacitacion").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos() End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos() End If End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("desparacitacion").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("desparacitacion").Rows.Count - 1) Call CargarDatos() End Sub

87 - 145

Encabezado
Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer 'Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codDesparacitacion", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("Desparacitacion") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

88 - 145

Encabezado

c) Botn Hospitalizacin (Ventana Hospitalizacin):

Ingresa un servicio de Hospitalizacin. Botn Nuevo: Permite un nuevo llenado de datos. Botn Guardar: Guarda el llenado de datos. Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos insertados. Botn Eliminar: permite eliminar la fila seleccionada del listado de Hospitalizacin. Botn Buscar: Busca el cdigo de la lista de Hospitalizacin. Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual. Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todo los atributos del registro de hospitalizacin.

89 - 145

Encabezado
Codificacion de Ventana Hospitalizacion.
Imports System.Data.SqlClient Public Class FrHospitalizacion Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataAdapterA As SqlDataAdapter Dim objDataSet As New DataSet() Dim Objdatarow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer

Private Sub FrHospitalizacion_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistahospitalisacion = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from Hospitalizacion", MODCONEXION.conexion) objDataAdapterA = New SqlDataAdapter("Select * from Atencion", MODCONEXION.conexion) objDataSet = New DataSet() objDataAdapter.Fill(objDataSet, "Hospitalizacion") objDataAdapterA.Fill(objDataSet, "atencion") MODCONEXION.conexion.Close() Me.cboCodAtencion.DataBindings.Add("SelectedValue", objDataSet, "Hospitalizacion.CodAtencion") Me.cboCodAtencion.DataSource = objDataSet.Tables("atencion") Me.cboCodAtencion.ValueMember = "CodAtencion" Me.cboCodAtencion.DisplayMember = "CodAtencion" 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "hospitalizacion" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("hospitalizacion").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado registro de desparacitacion" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrHospitalizacion_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistahospitalisacion = False End Sub '''''''''''''''''''''''''''''Botones Primarios''''''''''''''''''''''''''''''''' Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1

90 - 145

Encabezado
Call HabilitarBotones(False) Call LimpiarControles() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String sql1 = "insert into hospitalizacion(temperatura, sed, vomitos, frecCardiaca, Pronostico, hora, colormucosa, estadoAnimo, ProdOrina, FrecRespiratoria, costo, apetito, materiaFecal, Hidratacion, CodAtencion)Values(@temperatura, @sed, @vomitos, @frecCardiaca, @Pronostico, @hora, @colormucosa, @estadoAnimo, @ProdOrina, @FrecRespiratoria, @costo, @apetito, @materiaFecal, @Hidratacion, @CodAtencion)" 'Crear comando Dim objcomand As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomand.Parameters.Add(New SqlParameter("@temperatura", SqlDbType.VarChar)) objcomand.Parameters("@temperatura").Value = txtTemperatura.Text objcomand.Parameters.Add(New SqlParameter("@sed", SqlDbType.VarChar)) objcomand.Parameters("@sed").Value = txtSed.Text objcomand.Parameters.Add(New SqlParameter("@vomitos", SqlDbType.VarChar)) objcomand.Parameters("@vomitos").Value = txtVomitos.Text objcomand.Parameters.Add(New SqlParameter("@frecCardiaca", SqlDbType.VarChar)) objcomand.Parameters("@frecCardiaca").Value = txtFreCardiaca.Text objcomand.Parameters.Add(New SqlParameter("@Pronostico", SqlDbType.VarChar)) objcomand.Parameters("@Pronostico").Value = txtPronostico.Text objcomand.Parameters.Add(New SqlParameter("@hora", SqlDbType.DateTime)) objcomand.Parameters("@hora").Value = DateHora.Text objcomand.Parameters.Add(New SqlParameter("@colormucosa", SqlDbType.VarChar)) objcomand.Parameters("@colormucosa").Value = txtColorMucosa.Text objcomand.Parameters.Add(New SqlParameter("@estadoAnimo", SqlDbType.VarChar)) objcomand.Parameters("@estadoAnimo").Value = txtAnimo.Text objcomand.Parameters.Add(New SqlParameter("@ProdOrina", SqlDbType.VarChar)) objcomand.Parameters("@ProdOrina").Value = txtProdOrina.Text objcomand.Parameters.Add(New SqlParameter("@FrecRespiratoria", SqlDbType.VarChar)) objcomand.Parameters("@FrecRespiratoria").Value = txtFreRespiratoria.Text objcomand.Parameters.Add(New SqlParameter("@costo", SqlDbType.VarChar)) objcomand.Parameters("@costo").Value = txtCosto.Text

91 - 145

Encabezado

objcomand.Parameters.Add(New SqlParameter("@apetito", SqlDbType.VarChar)) objcomand.Parameters("@apetito").Value = txtApetito.Text objcomand.Parameters.Add(New SqlParameter("@materiaFecal", SqlDbType.VarChar)) objcomand.Parameters("@materiaFecal").Value = txtMateriaFecal.Text objcomand.Parameters.Add(New SqlParameter("@Hidratacion", SqlDbType.VarChar)) objcomand.Parameters("@Hidratacion").Value = txtHidratacion.Text objcomand.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomand.Parameters("@CodAtencion").Value = cboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomand.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Hospitalizacion").Rows.Count - 1) MessageBox.Show("Registros Insertados:" & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try Dim Sql2 As String Sql2 = "Update Hospitalizacion set Temperatura=@Temperatura, Sed=@Sed, Vomitos=@Vomitos, FrecCardiaca=@FrecCardiaca, Pronostico=@Pronostico, Hora=@Hora, ColorMucosa=@ColorMucosa, EstadoAnimo=@EstadoAnimo, ProdOrina=ProdOrina, FrecRespiratoria=@FrecRespiratoria, Costo=@Costo, Apetito=Apetito, MateriaFecal=@MateriaFecal,Hidratacion=@Hidratacion, CodAtencion=@CodAtencion where CodHospitalizacion=@CodHospitalizacion" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@Codhospitalizacion", SqlDbType.VarChar)) objcomandom.Parameters("@Codhospitalizacion").Value = txtCodigo.Text objcomandom.Parameters.Add(New SqlParameter("@temperatura", SqlDbType.VarChar)) objcomandom.Parameters("@temperatura").Value = txtTemperatura.Text objcomandom.Parameters.Add(New SqlParameter("@sed", SqlDbType.VarChar)) objcomandom.Parameters("@sed").Value = txtSed.Text objcomandom.Parameters.Add(New SqlParameter("@vomitos", SqlDbType.VarChar)) objcomandom.Parameters("@vomitos").Value = txtVomitos.Text objcomandom.Parameters.Add(New SqlParameter("@frecCardiaca", SqlDbType.VarChar)) objcomandom.Parameters("@frecCardiaca").Value = txtFreCardiaca.Text

92 - 145

Encabezado
objcomandom.Parameters.Add(New SqlParameter("@Pronostico", SqlDbType.VarChar)) objcomandom.Parameters("@Pronostico").Value = txtPronostico.Text objcomandom.Parameters.Add(New SqlParameter("@hora", SqlDbType.DateTime)) objcomandom.Parameters("@hora").Value = DateHora.Text objcomandom.Parameters.Add(New SqlParameter("@colormucosa", SqlDbType.VarChar)) objcomandom.Parameters("@colormucosa").Value = txtColorMucosa.Text objcomandom.Parameters.Add(New SqlParameter("@estadoAnimo", SqlDbType.VarChar)) objcomandom.Parameters("@estadoAnimo").Value = txtAnimo.Text objcomandom.Parameters.Add(New SqlParameter("@ProdOrina", SqlDbType.VarChar)) objcomandom.Parameters("@ProdOrina").Value = txtProdOrina.Text objcomandom.Parameters.Add(New SqlParameter("@FrecRespiratoria", SqlDbType.VarChar)) objcomandom.Parameters("@FrecRespiratoria").Value = txtFreRespiratoria.Text objcomandom.Parameters.Add(New SqlParameter("@costo", SqlDbType.VarChar)) objcomandom.Parameters("@costo").Value = txtCosto.Text objcomandom.Parameters.Add(New SqlParameter("@apetito", SqlDbType.VarChar)) objcomandom.Parameters("@apetito").Value = txtApetito.Text objcomandom.Parameters.Add(New SqlParameter("@materiaFecal", SqlDbType.VarChar)) objcomandom.Parameters("@materiaFecal").Value = txtMateriaFecal.Text objcomandom.Parameters.Add(New SqlParameter("@Hidratacion", SqlDbType.VarChar)) objcomandom.Parameters("@Hidratacion").Value = txtHidratacion.Text objcomandom.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomandom.Parameters("@CodAtencion").Value = cboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Hospitalizacion").Rows.Count - 1) MessageBox.Show("Registro Modificados:" & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarBotones(True) MODCONEXION.conexion.Close()

93 - 145

Encabezado
End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False DateHora.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from hospitalizacion where codhospitalizacion = @codhospitalizacion" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) Try objComando.Parameters.Add(New SqlParameter("@codhospitalizacion", SqlDbType.VarChar)) objComando.Parameters("@codhospitalizacion").Value = InputBox("Ingrese el codigo del registro de hospitalizacion a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese Codigo del registro de hospitalizacion ", "Buscar") objDataView.Table = objDataSet.Tables("hospitalizacion") objDataView.RowFilter = "CodHospitalizacion='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() Call HabilitarBotones(True) End Sub

94 - 145

Encabezado
Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "hospitalizacion") objDataAdapterA.Fill(objDataSet, "atencion") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "hospitalizacion" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("hospitalizacion").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub '''''''''''''''''''Funciones secundarias'''''''''''''''' Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "hospitalizacion") ' Me.DataGrid1.CaptionText = "Lista de registro de hospitalizacion" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est cboCodAtencion.Enabled = est DateHora.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub Private Sub CargarDatos() Try Objdatarow = objDataSet.Tables("Hospitalizacion").Rows(posicion) txtCodigo.Text = Objdatarow("CodHospitalizacion") txtTemperatura.Text = Objdatarow("Temperatura") txtSed.Text = Objdatarow("Sed") txtVomitos.Text = Objdatarow("Vomitos")

95 - 145

Encabezado
txtFreCardiaca.Text = Objdatarow("FrecCardiaca") txtPronostico.Text = Objdatarow("Pronostico") DateHora.Text = Objdatarow("Hora") txtColorMucosa.Text = Objdatarow("ColorMucosa") txtAnimo.Text = Objdatarow("EstadoAnimo") txtProdOrina.Text = Objdatarow("ProdOrina") txtFreRespiratoria.Text = Objdatarow("FrecRespiratoria") txtCosto.Text = Objdatarow("Costo") txtApetito.Text = Objdatarow("Apetito") txtMateriaFecal.Text = Objdatarow("MateriaFecal") txtHidratacion.Text = Objdatarow("Hidratacion") cboCodAtencion.SelectedValue = Objdatarow("CodAtencion") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("hospitalizacion").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos() End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos() End If End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("Hospitalizacion").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("Hospitalizacion").Rows.Count - 1) Call CargarDatos() End Sub Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer 'Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codHospitalizacion", Str(cod)) End Sub

96 - 145

Encabezado
Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("Hospitalizacion") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

d) Botn Hospedaje (Ventana Hospedaje): Ingresa un servicio de Hospedajes y Guardera.

Botn Nuevo: Permite un nuevo llenado de datos. Botn Guardar: Guarda el llenado de datos. Botn Cancelar: Cancela alguna accin.

97 - 145

Encabezado
Botn Editar: Permite modificar los datos insertados. Botn Eliminar: permite eliminar la fila seleccionada del listado de registro de hospedajes. Botn Buscar: Busca el cdigo de la lista de registro de Hospedaje. Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual. Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todo los atributos del registro de Hospedajes. Codificacion de Ventana Guarderia.
Imports System.Data.SqlClient Public Class FrHospedaje Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataAdapterA As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer

Private Sub FrHospedaje_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistahospedaje = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from hospedaje", MODCONEXION.conexion) objDataAdapterA = New SqlDataAdapter("Select * from Atencion", MODCONEXION.conexion) objDataSet = New DataSet() ' objDataAdapter.Fill(objDataSet, "hospedaje") objDataAdapterA.Fill(objDataSet, "atencion") Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "hospedaje" Me.DataGrid1.Refresh() MODCONEXION.conexion.Close() Me.CboCodAtencion.DataBindings.Add("SelectedValue", objDataSet, "Hospedaje.CodAtencion") Me.CboCodAtencion.DataSource = objDataSet.Tables("atencion") Me.CboCodAtencion.ValueMember = "CodAtencion" Me.CboCodAtencion.DisplayMember = "CodAtencion" Me.DataGrid1.DataSource = Nothing

98 - 145

Encabezado
Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Hospedaje" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("hospedaje").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado de registro de Hospedajes" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrHospedaje_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistahospedaje = False End Sub '''''''''''''''''''''''''Botones(Primarios)''''''''''''''''''''''''''''''''''' Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() txtCodigo.Enabled = False txtCodigo.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String '-----------------------------------sql1 = "INSERT INTO Hospedaje (FechIngreso,FechSalida,Costo, Observaciones, CodAtencion ) VALUES (@FechIngreso, @FechSalida, @Costo, @Observaciones, @CodAtencion )" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@FechIngreso", SqlDbType.DateTime)) objcomando.Parameters("@FechIngreso").Value = DateIngreso.Text objcomando.Parameters.Add(New SqlParameter("@FechSalida", SqlDbType.DateTime)) objcomando.Parameters("@FechSalida").Value = DateSalida.Text objcomando.Parameters.Add(New SqlParameter("@Costo", SqlDbType.VarChar)) objcomando.Parameters("@Costo").Value = txtCosto.Text objcomando.Parameters.Add(New SqlParameter("@Observaciones", SqlDbType.VarChar)) objcomando.Parameters("@Observaciones").Value = txtObservaciones.Text objcomando.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar))

99 - 145

Encabezado
objcomando.Parameters("@CodAtencion").Value = CboCodAtencion.Text

MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Hospedaje").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try '-----------------------------------Dim Sql2 As String Sql2 = "Update hospedaje set fechIngreso = @fechIngreso, fechSalida = @fechSalida, Costo = @Costo, Observaciones = @Observaciones,codatencion = @codatencion where CodHospedaje = @CodHospedaje" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodHospedaje", SqlDbType.VarChar)) objcomandom.Parameters("@CodHospedaje").Value = txtCodigo.Text objcomandom.Parameters.Add(New SqlParameter("@FechIngreso", SqlDbType.DateTime)) objcomandom.Parameters("@FechIngreso").Value = DateIngreso.Text objcomandom.Parameters.Add(New SqlParameter("@FechSalida", SqlDbType.DateTime)) objcomandom.Parameters("@FechSalida").Value = DateSalida.Text objcomandom.Parameters.Add(New SqlParameter("@Costo", SqlDbType.VarChar)) objcomandom.Parameters("@Costo").Value = txtCosto.Text objcomandom.Parameters.Add(New SqlParameter("@Observaciones", SqlDbType.VarChar)) objcomandom.Parameters("@Observaciones").Value = txtObservaciones.Text objcomandom.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomandom.Parameters("@CodAtencion").Value = CboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Hospedaje").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarControles(False)

100 - 145

Encabezado
Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False CboCodAtencion.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from Hospedaje where codHospedaje=@codHospedaje" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) objComando.Parameters.Add(New SqlParameter("@codHospedaje", SqlDbType.VarChar)) objComando.Parameters("@codHospedaje").Value = InputBox("Ingrese el codigo del paciente a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese Nombre del paciente", "Buscar") objDataView.Table = objDataSet.Tables("Hospedaje") objDataView.RowFilter = "codHospedaje ='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.DateIngreso.Text = Me.DataGrid1.Item(0, 1) Me.DateSalida.Text = Me.DataGrid1.Item(0, 2) Me.txtCosto.Text = Me.DataGrid1.Item(0, 3) Me.txtObservaciones.Text = Me.DataGrid1.Item(0, 4) Me.CboCodAtencion.Text = Me.DataGrid1.Item(0, 5) Else MsgBox("Registro no encontrado") End If End Sub Try

101 - 145

Encabezado
Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "Hospedaje") objDataAdapterA.Fill(objDataSet, "Atencion") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Hospedaje" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("Hospedaje").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub ''''''''''''''''Funciones secundarias''''''''''''''''''''''''''''''''' Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "Hospedaje") ' Me.DataGrid1.CaptionText = "Listado de Hospedajes" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est CboCodAtencion.Enabled = est DateIngreso.Enabled = est DateSalida.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est

102 - 145

Encabezado
btnCancelar.Enabled = Not est End Sub Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer ' Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codHospedaje", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("Hospedaje") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("Hospedaje").Rows(posicion) txtCodigo.Text = objDataRow("CodHospedaje") DateIngreso.Text = objDataRow("FechIngreso") DateSalida.Text = objDataRow("FechSalida") txtCosto.Text = objDataRow("Costo") txtObservaciones.Text = objDataRow("Observaciones") CboCodAtencion.SelectedValue = objDataRow("CodAtencion") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("Hospedaje").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos() End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos()

103 - 145

Encabezado
End If End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("hospedaje").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("hospedaje").Rows.Count - 1) Call CargarDatos() End Sub Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

e) Botn Vacunacin (Ventana Vacunacin): Ingresa un servicio de Vacunacin.

Botn Nuevo: Permite un nuevo llenado de datos. Botn Guardar: Guarda el llenado de datos.

104 - 145

Encabezado
Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos insertados. Botn Eliminar: permite eliminar la fila seleccionada del listado de registro de vacunacin. Botn Buscar: Busca el cdigo de la lista de registro de Vacunacin. Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual. Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todos los atributos del registro de vacunacin Codificacion de Ventana Vacunacion
Imports System.Data.SqlClient Public Class FrVacunacion Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataAdapterA As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer

Private Sub FrVacunacion_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistavacunacion = True 'Llenado del cboTipiVacuna Me.cboTipoVacuna.Items.Add("Parvovirus") Me.cboTipoVacuna.Items.Add("Coronavirus") Me.cboTipoVacuna.Items.Add("Distemper") Me.cboTipoVacuna.Items.Add("Hepatitis") Me.cboTipoVacuna.Items.Add("Leptospirosis") Me.cboTipoVacuna.Items.Add("Parainfluenza") Me.cboTipoVacuna.Items.Add("Rabia") Me.cboTipoVacuna.Items.Add("Rinotraqueitis") Me.cboTipoVacuna.Items.Add("Panleucopenia") Me.cboTipoVacuna.Items.Add("Calcivirus") Me.cboTipoVacuna.Items.Add("Traqueobronquitis") Me.cboTipoVacuna.Items.Add("Parvovirus") MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from Vacunacion", MODCONEXION.conexion) objDataAdapterA = New SqlDataAdapter("Select * from Atencion", MODCONEXION.conexion) objDataSet = New DataSet()

105 - 145

Encabezado

objDataAdapter.Fill(objDataSet, "Vacunacion") objDataAdapterA.Fill(objDataSet, "Atencion") MODCONEXION.conexion.Close() Me.cboCodAtencion.DataBindings.Add("SelectedValue", objDataSet, "Vacunacion.CodAtencion") Me.cboCodAtencion.DataSource = objDataSet.Tables("atencion") Me.cboCodAtencion.ValueMember = "CodAtencion" Me.cboCodAtencion.DisplayMember = "CodAtencion" 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Vacunacion" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("Vacunacion").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado de Vacunacion" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrVacunacion_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistavacunacion = False End Sub

'''''''''''''''''''''''''''''''''''''Botones(Primarios)'''''''''''''''''''''''''' ''''''''' Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() txtCodigo.Enabled = False txtCodigo.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String '-----------------------------------sql1 = "INSERT INTO Vacunacion (FechVacunacion,ProxCita,Vacuna, Hora,Costo,Observaciones, CodAtencion) VALUES (@FechVacunacion,@ProxCita,@Vacuna, @Hora,@Costo,@Observaciones, @CodAtencion)" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@FechVacunacion", SqlDbType.DateTime)) objcomando.Parameters("@FechVacunacion").Value = DtFechVacunacion.Text

106 - 145

Encabezado

objcomando.Parameters.Add(New SqlParameter("@ProxCita", SqlDbType.DateTime)) objcomando.Parameters("@ProxCita").Value = DtProxCita.Text objcomando.Parameters.Add(New SqlParameter("@Vacuna", SqlDbType.VarChar)) objcomando.Parameters("@Vacuna").Value = cboTipoVacuna.Text objcomando.Parameters.Add(New SqlParameter("@Hora", SqlDbType.DateTime)) objcomando.Parameters("@Hora").Value = DtHora.Text objcomando.Parameters.Add(New SqlParameter("@Costo", SqlDbType.VarChar)) objcomando.Parameters("@Costo").Value = txtCosto.Text objcomando.Parameters.Add(New SqlParameter("@Observaciones", SqlDbType.VarChar)) objcomando.Parameters("@Observaciones").Value = txtObservacion.Text objcomando.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomando.Parameters("@CodAtencion").Value = cboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Vacunacion").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try '-----------------------------------Dim Sql2 As String Sql2 = "Update Vacunacion set FechVacunacion = @FechVacunacion, ProxCita = @ProxCita, Vacuna=@Vacuna, Hora=@Hora, Costo=@Costo, Observaciones=@Observaciones, CodAtencion=@CodAtencion where CodVacunacion = @CodVacunacion" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodVacunacion", SqlDbType.VarChar)) objcomandom.Parameters("@CodVacunacion").Value = txtCodigo.Text '''''''''''''''''''''' objcomandom.Parameters.Add(New SqlParameter("@FechVacunacion", SqlDbType.DateTime)) objcomandom.Parameters("@FechVacunacion").Value = DtFechVacunacion.Text objcomandom.Parameters.Add(New SqlParameter("@ProxCita", SqlDbType.DateTime)) objcomandom.Parameters("@ProxCita").Value = DtProxCita.Text objcomandom.Parameters.Add(New SqlParameter("@Vacuna", SqlDbType.VarChar)) objcomandom.Parameters("@Vacuna").Value = cboTipoVacuna.Text

107 - 145

Encabezado

objcomandom.Parameters.Add(New SqlParameter("@Hora", SqlDbType.DateTime)) objcomandom.Parameters("@Hora").Value = DtHora.Text objcomandom.Parameters.Add(New SqlParameter("@Costo", SqlDbType.VarChar)) objcomandom.Parameters("@Costo").Value = txtCosto.Text objcomandom.Parameters.Add(New SqlParameter("@Observaciones", SqlDbType.VarChar)) objcomandom.Parameters("@Observaciones").Value = txtObservacion.Text objcomandom.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomandom.Parameters("@CodAtencion").Value = cboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Vacunacion").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarControles(False) Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False cboTipoVacuna.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from Vacunacion where codVacunacion=@codVacunacion" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) objComando.Parameters.Add(New SqlParameter("@codVacunacion", SqlDbType.VarChar)) objComando.Parameters("@codVacunacion").Value = InputBox("Ingrese el codigo del registro de Vacunacion a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception Try

108 - 145

Encabezado
MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese codigo del registro de Vacunacion", "Buscar") objDataView.Table = objDataSet.Tables("Vacunacion") objDataView.RowFilter = "codVacunacion ='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.DtFechVacunacion.Text = Me.DataGrid1.Item(0, 1) Me.DtProxCita.Text = Me.DataGrid1.Item(0, 2) Me.cboTipoVacuna.Text = Me.DataGrid1.Item(0, 3) Me.DtHora.Text = Me.DataGrid1.Item(0, 4) Me.txtCosto.Text = Me.DataGrid1.Item(0, 5) Me.txtObservacion.Text = Me.DataGrid1.Item(0, 6) Me.cboCodAtencion.Text = Me.DataGrid1.Item(0, 7) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() 'BtnAnterior.PerformClick() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "Vacunacion") objDataAdapterA.Fill(objDataSet, "Atencion") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Vacunacion" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("Vacunacion").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub

109 - 145

Encabezado

'''''''''''''''''''''''''''''''botones(navegacion)''''''''''''''''''''''''''''''' Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("Vacunacion").Rows(posicion) txtCodigo.Text = objDataRow("CodVacunacion") '''''''' DtFechVacunacion.Text = objDataRow("FechVacunacion") DtProxCita.Text = objDataRow("ProxCita") cboTipoVacuna.Text = objDataRow("Vacuna") DtHora.Text = objDataRow("Hora") txtCosto.Text = objDataRow("Costo") txtObservacion.Text = objDataRow("Observaciones") cboCodAtencion.SelectedValue = objDataRow("CodAtencion") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("vacunacion").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos() End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos() End If End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("vacunacion").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("vacunacion").Rows.Count - 1) Call CargarDatos() End Sub '''''''''''''''Funciones secundarias'''''''''''''''''''''''''' Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "vacunacion") ' Me.DataGrid1.CaptionText = "Lista de registro de Vacunacion" ' End Sub

110 - 145

Encabezado

Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est DtFechVacunacion.Enabled = est DtProxCita.Enabled = est cboTipoVacuna.Enabled = est DtHora.Enabled = est cboCodAtencion.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub '''''''''''''''''''''Funciones datagrid'''''''''''''''''''''''''''''''' Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codvacunacion", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("vacunacion") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

111 - 145

Encabezado

f)

Botn Peluquera (Ventana Peluquera): Ingresa un servicio de Peluquera y Esttica.

Botn Nuevo: Permite un nuevo llenado de datos. Botn Guardar: Guarda el llenado de datos. Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos insertados. Botn Eliminar: permite eliminar la fila seleccionada del listado de registro de Peluquera. Botn Buscar: Busca el cdigo de la Peluquera del listado de registro de peluquera. Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual. Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todo los atributos en el registro de peluquera.

112 - 145

Encabezado
Codificacion de Ventana Peluqueria.
Imports System.Data.SqlClient Public Class FrPeluqueria Inherits System.Windows.Forms.Form Dim flag As Integer Dim objDataAdapter As SqlDataAdapter Dim objDataAdapterA As SqlDataAdapter Dim objDataAdapterR As SqlDataAdapter Dim objDataSet As New DataSet() Dim posicion As Integer Dim objDataRow As DataRow Dim resultado As Integer Private Sub FrPeluqueria_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistapeluqueria = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from Peluqueria", MODCONEXION.conexion) objDataAdapterA = New SqlDataAdapter("Select * from Atencion", MODCONEXION.conexion) objDataAdapterR = New SqlDataAdapter("Select * from Raza", MODCONEXION.conexion) objDataSet = New DataSet() objDataAdapter.Fill(objDataSet, "Peluqueria") objDataAdapterA.Fill(objDataSet, "atencion") objDataAdapterR.Fill(objDataSet, "Raza") MODCONEXION.conexion.Close() 'Combo de atencion Me.CboCodAtencion.DataBindings.Add("SelectedValue", objDataSet, "Peluqueria.CodAtencion") Me.CboCodAtencion.DataSource = objDataSet.Tables("atencion") Me.CboCodAtencion.ValueMember = "CodAtencion" Me.CboCodAtencion.DisplayMember = "CodAtencion" 'Combo de raza Me.cboRaza.DataBindings.Add("SelectedValue", objDataSet, "Peluqueria.CodRaza") Me.cboRaza.DataSource = objDataSet.Tables("Raza") Me.cboRaza.ValueMember = "CodRaza" Me.cboRaza.DisplayMember = "CodRaza" 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Peluqueria" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("Peluqueria").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado de registro de Peluqueria" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrPeluqueria_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed

113 - 145

Encabezado
vistapeluqueria = False End Sub Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() txtCorte.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String sql1 = "INSERT INTO Peluqueria (TipoCorte, Observaciones, CodRaza, CodAtencion) VALUES (@tipoCorte, @Observaciones, @CodRaza, @CodAtencion)" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@CodPeluqueria", SqlDbType.VarChar)) objcomando.Parameters("@CodPeluqueria").Value = txtCodigo.Text objcomando.Parameters.Add(New SqlParameter("@TipoCorte", SqlDbType.VarChar)) objcomando.Parameters("@TipoCorte").Value = txtCorte.Text objcomando.Parameters.Add(New SqlParameter("@Observaciones", SqlDbType.VarChar)) objcomando.Parameters("@Observaciones").Value = txtObservaciones.Text objcomando.Parameters.Add(New SqlParameter("@codRaza", SqlDbType.VarChar)) objcomando.Parameters("@codRaza").Value = cboRaza.Text objcomando.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomando.Parameters("@CodAtencion").Value = CboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Peluqueria").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try '-----------------------------------Dim Sql2 As String

114 - 145

Encabezado
Sql2 = "Update Peluqueria set TipoCorte = @TipoCorte, Observaciones = @Observaciones, CodRaza = @CodRaza, CodAtencion=@CodAtencion where CodPeluqueria = @CodPeluqueria" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodPeluqueria", SqlDbType.VarChar)) objcomandom.Parameters("@CodPeluqueria").Value = txtCodigo.Text objcomandom.Parameters.Add(New SqlParameter("@TipoCorte", SqlDbType.VarChar)) objcomandom.Parameters("@TipoCorte").Value = txtCorte.Text objcomandom.Parameters.Add(New SqlParameter("@Observaciones", SqlDbType.VarChar)) objcomandom.Parameters("@Observaciones").Value = txtObservaciones.Text objcomandom.Parameters.Add(New SqlParameter("@codRaza", SqlDbType.VarChar)) objcomandom.Parameters("@codRaza").Value = cboRaza.Text objcomandom.Parameters.Add(New SqlParameter("@CodAtencion", SqlDbType.VarChar)) objcomandom.Parameters("@CodAtencion").Value = CboCodAtencion.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Peluqueria").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarControles(False) Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False txtCorte.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from peluqueria where codpeluqueria=@codpeluqueria" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) Try

115 - 145

Encabezado
objComando.Parameters.Add(New SqlParameter("@codpeluqueria", SqlDbType.VarChar)) objComando.Parameters("@codpeluqueria").Value = InputBox("Ingrese el codigo del registro a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese el codigo del Registro de Peluqueria", "Buscar") objDataView.Table = objDataSet.Tables("Peluqueria") objDataView.RowFilter = "codPeluqueria ='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.txtCorte.Text = Me.DataGrid1.Item(0, 1) Me.txtObservaciones.Text = Me.DataGrid1.Item(0, 2) Me.cboRaza.Text = Me.DataGrid1.Item(0, 3) Me.CboCodAtencion.Text = Me.DataGrid1.Item(0, 4) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() 'BtnAnterior.PerformClick() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "Peluqueria") objDataAdapterA.Fill(objDataSet, "atencion") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Peluqueria"

116 - 145

Encabezado
''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("Peluqueria").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("peluqueria").Rows(posicion) txtCodigo.Text = objDataRow("CodPeluqueria") txtCorte.Text = objDataRow("TipoCorte") txtObservaciones.Text = objDataRow("Observaciones") cboRaza.SelectedValue = objDataRow("CodRaza") CboCodAtencion.SelectedValue = objDataRow("CodAtencion") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("peluqueria").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos() End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos() End If End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("peluqueria").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("peluqueria").Rows.Count - 1) Call CargarDatos() End Sub Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "peluqueria") '

117 - 145

Encabezado
Me.DataGrid1.CaptionText = "Lista de registro de Peluqueria" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est CboCodAtencion.Enabled = est cboRaza.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer ' Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codpeluqueria", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("peluqueria") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

118 - 145

Encabezado

Botn clientes (Ventana de Control de Clientes): Permite el control de informacin y el registro de nuevos clientes.

Botn Nuevo: Permite un nuevo llenado de datos. Botn Guardar: Guarda el llenado de datos. Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos insertados. Botn Eliminar: permite eliminar la fila seleccionada del listado del cliente. Botn Buscar: Busca el nombre del cliente. Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual. Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todo los atributos en el registro de clientes.

119 - 145

Encabezado

Codificacion de Ventana Cliente.


Imports System.Data.SqlClient Public Class FrCliente Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer

Private Sub FrCliente_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistacliente = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from cliente", MODCONEXION.conexion) objDataAdapter.Fill(objDataSet, "cliente") Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "cliente" Me.DataGrid1.Refresh() MODCONEXION.conexion.Close() posicion = (objDataSet.Tables("cliente").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado de Clientes" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrCliente_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistacliente = False End Sub Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() txtCodigo.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String '-----------------------------------sql1 = "INSERT INTO Cliente (CodCliente,NomCliente,ApeCliente,DniCliente, DirecCliente, Fono1Cliente, Fono2Cliente, EmailCliente ) VALUES (@CodCliente,@NomCliente,@ApeCliente,@DniCliente, @DirecCliente, @Fono1Cliente, @Fono2Cliente, @EmailCliente)" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion)

120 - 145

Encabezado

objcomando.Parameters.Add(New SqlParameter("@CodCliente", SqlDbType.VarChar)) objcomando.Parameters("@CodCliente").Value = txtCodigo.Text '''''''''''''''''''''' objcomando.Parameters.Add(New SqlParameter("@NomCliente", SqlDbType.VarChar)) objcomando.Parameters("@NomCliente").Value = txtNombre.Text objcomando.Parameters.Add(New SqlParameter("@ApeCliente", SqlDbType.VarChar)) objcomando.Parameters("@ApeCliente").Value = txtApellido.Text objcomando.Parameters.Add(New SqlParameter("@DniCliente", SqlDbType.VarChar)) objcomando.Parameters("@DniCliente").Value = txtDNI.Text objcomando.Parameters.Add(New SqlParameter("@DirecCliente", SqlDbType.VarChar)) objcomando.Parameters("@DirecCliente").Value = txtDireccion.Text objcomando.Parameters.Add(New SqlParameter("@Fono1Cliente", SqlDbType.VarChar)) objcomando.Parameters("@Fono1Cliente").Value = txtFono1.Text objcomando.Parameters.Add(New SqlParameter("@Fono2Cliente", SqlDbType.VarChar)) objcomando.Parameters("@Fono2Cliente").Value = txtFono2.Text objcomando.Parameters.Add(New SqlParameter("@EmailCliente", SqlDbType.VarChar)) objcomando.Parameters("@EmailCliente").Value = txtEmail.Text MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Cliente").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try '-----------------------------------Dim Sql2 As String Sql2 = "Update Cliente set CodCliente = @CodCliente, NomCliente = @NomCliente, ApeCliente = @ApeCliente, DniCliente=@DniCliente, DirecCliente=@DirecCliente, Fono1Cliente=@Fono1Cliente, Fono2Cliente=@Fono2Cliente, EmailCliente=@EmailCliente where CodCliente = @CodCliente" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodCliente", objcomandom.Parameters("@CodCliente").Value = txtCodigo.Text

If flag = 1 Then Try

SqlDbType.Int))

121 - 145

Encabezado

objcomandom.Parameters.Add(New SqlParameter("@NomCliente", SqlDbType.VarChar)) objcomandom.Parameters("@NomCliente").Value = txtNombre.Text objcomandom.Parameters.Add(New SqlParameter("@ApeCliente", SqlDbType.VarChar)) objcomandom.Parameters("@ApeCliente").Value = txtApellido.Text objcomandom.Parameters.Add(New SqlParameter("@DniCliente", SqlDbType.VarChar)) objcomandom.Parameters("@DniCliente").Value = txtDNI.Text objcomandom.Parameters.Add(New SqlParameter("@DirecCliente", SqlDbType.VarChar)) objcomandom.Parameters("@DirecCliente").Value = txtDireccion.Text objcomandom.Parameters.Add(New SqlParameter("@Fono1Cliente", SqlDbType.VarChar)) objcomandom.Parameters("@Fono1Cliente").Value = txtFono1.Text objcomandom.Parameters.Add(New SqlParameter("@Fono2Cliente", SqlDbType.VarChar)) objcomandom.Parameters("@Fono2Cliente").Value = txtFono2.Text objcomandom.Parameters.Add(New SqlParameter("@EmailCliente", SqlDbType.VarChar)) objcomandom.Parameters("@EmailCliente").Value = txtEmail.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Cliente").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarControles(False) Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False txtNombre.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from cliente where codcliente=@codcliente" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) Try

122 - 145

Encabezado
objComando.Parameters.Add(New SqlParameter("@codcliente", SqlDbType.VarChar)) objComando.Parameters("@codcliente").Value = InputBox("Ingrese el codigo del cliente a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese Nombre del Cliente", "Buscar") objDataView.Table = objDataSet.Tables("cliente") objDataView.RowFilter = "nomCliente ='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.txtNombre.Text = Me.DataGrid1.Item(0, 1) Me.txtApellido.Text = Me.DataGrid1.Item(0, 2) Me.txtDNI.Text = Me.DataGrid1.Item(0, 3) Me.txtDireccion.Text = Me.DataGrid1.Item(0, 4) Me.txtFono1.Text = Me.DataGrid1.Item(0, 5) Me.txtFono2.Text = Me.DataGrid1.Item(0, 6) Me.txtEmail.Text = Me.DataGrid1.Item(0, 7) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() 'BtnAnterior.PerformClick() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "cliente") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet

123 - 145

Encabezado
Me.DataGrid1.DataMember = "cliente" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("cliente").Rows.Count - 1) 'Me.DataGrid1.CaptionText = "Lista de Clientes" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("cliente").Rows(posicion) txtCodigo.Text = objDataRow("CodCliente") '''''''' txtNombre.Text = objDataRow("NomCliente") txtApellido.Text = objDataRow("ApeCliente") txtDNI.Text = objDataRow("DNICliente") txtDireccion.Text = objDataRow("DirecCliente") txtFono1.Text = objDataRow("Fono1Cliente") txtFono2.Text = objDataRow("Fono2Cliente") txtEmail.Text = objDataRow("EmailCliente") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("cliente").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos() End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos() End If End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("cliente").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("cliente").Rows.Count - 1) Call CargarDatos() End Sub

124 - 145

Encabezado

Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "cliente") ' Me.DataGrid1.CaptionText = "Lista de Clientes" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub Private Sub DataGrid1_CurrentCellChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DataGrid1.CurrentCellChanged Dim i As Integer Dim cod As Integer ' Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codcliente", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("cliente") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function

125 - 145

Encabezado

Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

Botn Empleados (Ventana de Control de Empleados) : Permite el control de informacin de los empleados y la alteracin de sus registros.

Botn Nuevo: Permite un nuevo llenado de datos. Botn Guardar: Guarda el llenado de datos. Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos insertados. Botn Eliminar: permite eliminar la fila seleccionada del listado del Empleado. Botn Buscar: Busca el Cdigo del Empleado. Botn Salir: Permite salir de la Ventana actual. Botn Primero: Se posiciona en el Primer registro de la tabla. Botn Siguiente: Muestra el siguiente registro al actual.

126 - 145

Encabezado
Botn Anterior: Muestra el registro anterior de la tabla actual. Botn Ultimo: Muestra los datos del Ultimo registro de la tabla. Botn Mostrar: Muestra todo los atributos en el registro de Empleados. Codificacion de Ventana Empleados.
Imports System.Data.SqlClient Public Class FrEmpleado Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer Private Sub FrEmpleado_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistaempleado = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from Empleado", MODCONEXION.conexion) objDataAdapter.Fill(objDataSet, "Empleado") Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Empleado" Me.DataGrid1.Refresh() MODCONEXION.conexion.Close() posicion = (objDataSet.Tables("Empleado").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado de Empleados" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrEmpleado_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistaempleado = False End Sub Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() txtCodigo.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String '-----------------------------------sql1 = "INSERT INTO Empleado(CodEmpleado, NomEmpleado, ApeEmpleado, DirecEmpleado, DniEmpleado, GradoTitulo, CargoEmpleado, Fono1Empleado, Fono2Empleado, EmailEmpleado, PassEmpleado) VALUES (@CodEmpleado,@NomEmpleado,@ApeEmpleado,@DirecEmpleado,@DniEmpleado,@GradoTitulo, @CargoEmpleado,@Fono1Empleado,@Fono2Empleado,@EmailEmpleado,@PassEmpleado)" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion)

127 - 145

Encabezado

If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@CodEmpleado", SqlDbType.Int)) objcomando.Parameters("@CodEmpleado").Value = txtCodigo.Text objcomando.Parameters.Add(New SqlParameter("@NomEmpleado", SqlDbType.VarChar)) objcomando.Parameters("@NomEmpleado").Value = txtNombre.Text objcomando.Parameters.Add(New SqlParameter("@ApeEmpleado", SqlDbType.VarChar)) objcomando.Parameters("@ApeEmpleado").Value = txtApellido.Text objcomando.Parameters.Add(New SqlParameter("@DirecEmpleado", SqlDbType.VarChar)) objcomando.Parameters("@DirecEmpleado").Value = txtDireccion.Text objcomando.Parameters.Add(New SqlParameter("@DniEmpleado", SqlDbType.Char)) objcomando.Parameters("@DniEmpleado").Value = txtDNI.Text objcomando.Parameters.Add(New SqlParameter("@GradoTitulo", SqlDbType.VarChar)) objcomando.Parameters("@GradoTitulo").Value = txtGradTitulo.Text objcomando.Parameters.Add(New SqlParameter("@cargoempleado", SqlDbType.VarChar)) objcomando.Parameters("@cargoempleado").Value = cboCargo.Text objcomando.Parameters.Add(New SqlParameter("@Fono1Empleado", SqlDbType.VarChar)) objcomando.Parameters("@Fono1Empleado").Value = txtFono1.Text objcomando.Parameters.Add(New SqlParameter("@Fono2Empleado", SqlDbType.VarChar)) objcomando.Parameters("@Fono2Empleado").Value = txtfono2.Text objcomando.Parameters.Add(New SqlParameter("@EmailEmpleado", SqlDbType.VarChar)) objcomando.Parameters("@EmailEmpleado").Value = txtEmail.Text objcomando.Parameters.Add(New SqlParameter("@PassEmpleado", SqlDbType.VarChar)) objcomando.Parameters("@PassEmpleado").Value = txtPassword.Text MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Empleado").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try '-----------------------------------Dim Sql2 As String Sql2 = "Update Empleado set CodEmpleado = @CodEmpleado, NomEmpleado = @NomEmpleado, ApeEmpleado= @ApeEmpleado,

128 - 145

Encabezado
DirecEmpleado=@DirecEmpleado, DniEmpleado=@DniEmpleado, GradoTitulo = @GradoTitulo, CargoEmpleado=@CargoEmpleado, Fono1Empleado=@Fono1Empleado, Fono2Empleado=@Fono2Empleado, EmailEmpleado=@EmailEmpleado, passEmpleado=@passEmpleado where CodEmpleado = @CodEmpleado" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodEmpleado", SqlDbType.Char)) objcomandom.Parameters("@CodEmpleado").Value = txtCodigo.Text objcomandom.Parameters.Add(New SqlParameter("@NomEmpleado", SqlDbType.VarChar)) objcomandom.Parameters("@NomEmpleado").Value = txtNombre.Text objcomandom.Parameters.Add(New SqlParameter("@ApeEmpleado", SqlDbType.VarChar)) objcomandom.Parameters("@ApeEmpleado").Value = txtApellido.Text objcomandom.Parameters.Add(New SqlParameter("@DirecEmpleado", SqlDbType.VarChar)) objcomandom.Parameters("@DirecEmpleado").Value = txtDireccion.Text objcomandom.Parameters.Add(New SqlParameter("@DniEmpleado", SqlDbType.Char)) objcomandom.Parameters("@DniEmpleado").Value = txtDNI.Text objcomandom.Parameters.Add(New SqlParameter("@GradoTitulo", SqlDbType.VarChar)) objcomandom.Parameters("@GradoTitulo").Value = txtGradTitulo.Text objcomandom.Parameters.Add(New SqlParameter("@cargoempleado", SqlDbType.VarChar)) objcomandom.Parameters("@cargoempleado").Value = cboCargo.Text objcomandom.Parameters.Add(New SqlParameter("@Fono1Empleado", SqlDbType.VarChar)) objcomandom.Parameters("@Fono1Empleado").Value = txtFono1.Text objcomandom.Parameters.Add(New SqlParameter("@Fono2Empleado", SqlDbType.VarChar)) objcomandom.Parameters("@Fono2Empleado").Value = txtfono2.Text objcomandom.Parameters.Add(New SqlParameter("@EmailEmpleado", SqlDbType.VarChar)) objcomandom.Parameters("@EmailEmpleado").Value = txtEmail.Text objcomandom.Parameters.Add(New SqlParameter("@PassEmpleado", SqlDbType.VarChar)) objcomandom.Parameters("@PassEmpleado").Value = txtPassword.Text MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Empleado").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If

129 - 145

Encabezado

Call HabilitarControles(False) Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False txtNombre.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from Empleado where CodEmpleado=@CodEmpleado" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) Try objComando.Parameters.Add(New SqlParameter("@CodEmpleado", SqlDbType.VarChar)) objComando.Parameters("@CodEmpleado").Value = InputBox("Ingrese el codigo del empleado a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese Codigo del Empleado", "Buscar") objDataView.Table = objDataSet.Tables("empleado") objDataView.RowFilter = "Codempleado = '" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.txtNombre.Text = Me.DataGrid1.Item(0, 1) Me.txtApellido.Text = Me.DataGrid1.Item(0, 2) Me.txtDireccion.Text = Me.DataGrid1.Item(0, 3) Me.txtDNI.Text = Me.DataGrid1.Item(0, 4) Me.txtGradTitulo.Text = Me.DataGrid1.Item(0, 5) Me.cboCargo.Text = Me.DataGrid1.Item(0, 6) Me.txtFono1.Text = Me.DataGrid1.Item(0, 7) Me.txtfono2.Text = Me.DataGrid1.Item(0, 8) Me.txtEmail.Text = Me.DataGrid1.Item(0, 9)

130 - 145

Encabezado
Me.txtPassword.Text = Me.DataGrid1.Item(0, 10) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() 'BtnAnterior.PerformClick() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "empleado") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "empleado" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("empleado").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("empleado").Rows(posicion) txtCodigo.Text = objDataRow("CodEmpleado") '''''''' txtNombre.Text = objDataRow("NomEmpleado") txtApellido.Text = objDataRow("ApeEmpleado") txtDireccion.Text = objDataRow("DirecEmpleado") txtDNI.Text = objDataRow("DNIEmpleado") txtGradTitulo.Text = objDataRow("GradoTitulo") cboCargo.Text = objDataRow("CargoEmpleado") txtFono1.Text = objDataRow("Fono1Empleado") txtfono2.Text = objDataRow("Fono2Empleado") txtEmail.Text = objDataRow("EmailEmpleado") txtPassword.Text = objDataRow("PassEmpleado") LblRegistro.Text = " Registros: " & (posicion + 1) & " de " & objDataSet.Tables("empleado").Rows.Count Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub BtnPrimero_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnPrimero.Click posicion = 0 Call CargarDatos()

131 - 145

Encabezado
End Sub Private Sub BtnAnterior_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnAnterior.Click If posicion = 0 Then MessageBox.Show("Primer Registro", "", 0, MessageBoxIcon.Information) Else posicion -= 1 Call CargarDatos() End If End Sub Private Sub btnSiguiente_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSiguiente.Click If posicion = (objDataSet.Tables("empleado").Rows.Count - 1) Then MessageBox.Show("Ultimo Registro", "", 0, MessageBoxIcon.Information) Else posicion += 1 Call CargarDatos() End If End Sub Private Sub btnUltimo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUltimo.Click posicion = (objDataSet.Tables("empleado").Rows.Count - 1) Call CargarDatos() End Sub Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "empleado") ' Me.DataGrid1.CaptionText = "Lista de Empleados" ' End Sub Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est cboCargo.Enabled = est Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub Private Sub DataGrid1_CurrentCellChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Dim i As Integer Dim cod As Integer

132 - 145

Encabezado
' Exit Sub i = DataGrid1.CurrentRowIndex() cod = DataGrid1.Item(i, 0) BuscarRegistro("codempleado", Str(cod)) End Sub Private Function BuscarRegistro(ByVal ifieldName As String, ByVal iFieldValue As String) As Boolean Dim dv As New DataView() Dim strDato As String Dim fila As Integer strDato = iFieldValue dv.Table = objDataSet.Tables("empleado") dv.Sort = Trim(ifieldName) fila = dv.Find(strDato) If fila = -1 Then Return False Else posicion = fila Call CargarDatos() Return True End If End Function Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

Botn Razas (Ventana Raza):

133 - 145

Encabezado

Botn Nuevo: Permite un nuevo llenado de datos. Botn Guardar: Guarda el llenado de datos. Botn Cancelar: Cancela alguna accin. Botn Editar: Permite modificar los datos insertados. Botn Eliminar: permite eliminar la fila seleccionada del listado de Raza. Botn Buscar: Busca el nombre de la Raza. Botn Salir: Permite salir de la Ventana actual. Botn Mostrar: Muestra todo los atributos en el registro de Raza. Codificacion de Ventana Raza.
Imports System.Data.SqlClient Public Class FrRaza Inherits System.Windows.Forms.Form Dim objDataAdapter As SqlDataAdapter Dim objDataSet As New DataSet() Dim objDataRow As DataRow Dim posicion As Integer Dim flag As Integer Dim resultado As Integer Private Sub FrRaza_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistaraza = True MODCONEXION.conexion.Open() objDataAdapter = New SqlDataAdapter("Select * from Raza", MODCONEXION.conexion) objDataAdapter.Fill(objDataSet, "Raza") Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Raza" Me.DataGrid1.Refresh() MODCONEXION.conexion.Close() posicion = (objDataSet.Tables("Raza").Rows.Count - 1) Me.DataGrid1.CaptionText = "Listado de Razas Conocidas" Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub FrRaza_close(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistaraza = False End Sub ''''''''' Private Sub btnNuevo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnNuevo.Click

134 - 145

Encabezado
flag = 1 Call HabilitarControles(True) Call HabilitarBotones(False) Call LimpiarControles() txtCodigo.Enabled = False txtNombre.Focus() End Sub Private Sub btnGuardar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnGuardar.Click Dim sql1 As String '-----------------------------------sql1 = "INSERT INTO Raza (NomRaza, DescripcionRaza, Imagen, tipo) VALUES (@NomRaza, @DescripcionRaza, @Imagen, @tipo)" 'Crear comando Dim objcomando As New SqlCommand(sql1, MODCONEXION.conexion) If flag = 1 Then Try objcomando.Parameters.Add(New SqlParameter("@NomRaza", SqlDbType.VarChar)) objcomando.Parameters("@NomRaza").Value = txtNombre.Text objcomando.Parameters.Add(New SqlParameter("@DescripcionRaza", SqlDbType.VarChar)) objcomando.Parameters("@DescripcionRaza").Value = txtDescripcion.Text objcomando.Parameters.Add(New SqlParameter("@tipo", SqlDbType.VarChar)) objcomando.Parameters("@tipo").Value = cboTipo.Text objcomando.Parameters.Add(New SqlParameter("@imagen", SqlDbType.VarChar)) objcomando.Parameters("@imagen").Value = 1 MODCONEXION.conexion.Open() resultado = objcomando.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Raza").Rows.Count - 1) MessageBox.Show("Registros Insertados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try Else Try '-----------------------------------Dim Sql2 As String Sql2 = "Update Raza set NomRaza = @NomRaza, DescripcionRaza = @DescripcionRaza, tipo=@tipo, imagen = @imagen where CodRaza = @CodRaza" Dim objcomandom As New SqlCommand(Sql2, MODCONEXION.conexion) objcomandom.Parameters.Add(New SqlParameter("@CodRaza", SqlDbType.VarChar)) objcomandom.Parameters("@CodRaza").Value = txtCodigo.Text objcomandom.Parameters.Add(New SqlParameter("@NomRaza", SqlDbType.VarChar)) objcomandom.Parameters("@NomRaza").Value = txtNombre.Text

135 - 145

Encabezado

objcomandom.Parameters.Add(New SqlParameter("@DescripcionRaza", SqlDbType.VarChar)) objcomandom.Parameters("@DescripcionRaza").Value = txtDescripcion.Text objcomandom.Parameters.Add(New SqlParameter("@tipo", SqlDbType.VarChar)) objcomandom.Parameters("@tipo").Value = cboTipo.Text objcomandom.Parameters.Add(New SqlParameter("@imagen", SqlDbType.VarChar)) objcomandom.Parameters("@imagen").Value = 1 MODCONEXION.conexion.Open() resultado = objcomandom.ExecuteNonQuery Call Actualizar() 'Para actualizar posicion posicion = (objDataSet.Tables("Raza").Rows.Count - 1) MessageBox.Show("Registros Modificados: " & resultado, "", 0, MessageBoxIcon.Information) Catch exc As Exception MessageBox.Show(exc.Message) End Try End If Call HabilitarControles(False) Call HabilitarBotones(True) MODCONEXION.conexion.Close() Call CargarDatos() End Sub Private Sub btnEditar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEditar.Click flag = 2 Call HabilitarControles(True) Call HabilitarBotones(False) txtCodigo.Enabled = False txtNombre.Focus() End Sub Private Sub btnEliminar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEliminar.Click Dim sql3 As String sql3 = "delete from Raza where codraza=@codraza" Dim objComando As New SqlCommand(sql3, MODCONEXION.conexion) objComando.Parameters.Add(New SqlParameter("@codRaza", SqlDbType.VarChar)) objComando.Parameters("@codRaza").Value = InputBox("Ingrese el codigo de la raza a eliminar:") MODCONEXION.conexion.Open() resultado = objComando.ExecuteNonQuery Call Actualizar() 'BtnAnterior.PerformClick() MessageBox.Show("Registros Eliminados:" & resultado, "", 0, MessageBoxIcon.Information) Catch ex As Exception MessageBox.Show(ex.Message) End Try MODCONEXION.conexion.Close() Call HabilitarControles(False) Try

136 - 145

Encabezado
Call HabilitarBotones(True) End Sub Private Sub btnBuscar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBuscar.Click Dim objDataView As New DataView() Dim buscar As String DataGrid1.DataSource = Nothing buscar = InputBox("Ingrese Nombre del Raza", "Buscar") objDataView.Table = objDataSet.Tables("Raza") objDataView.RowFilter = "nomRaza ='" & buscar & "'" If objDataView.Count > 0 Then Me.DataGrid1.DataSource = objDataView Me.DataGrid1.Refresh() Me.txtCodigo.Text = Me.DataGrid1.Item(0, 0) Me.txtDescripcion.Text = Me.DataGrid1.Item(0, 1) Me.txtNombre.Text = Me.DataGrid1.Item(0, 3) Me.cboTipo.Text = Me.DataGrid1.Item(0, 4) Else MsgBox("Registro no encontrado") End If End Sub Private Sub btnCancelar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancelar.Click MODCONEXION.conexion.Open() objDataSet.RejectChanges() MODCONEXION.conexion.Close() 'BtnAnterior.PerformClick() Call HabilitarControles(False) Call HabilitarBotones(True) Call CargarDatos() End Sub Private Sub btnMostrar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnMostrar.Click objDataSet.Clear() objDataAdapter.Fill(objDataSet, "Raza") 'llenar la grilla Me.DataGrid1.DataSource = Nothing Me.DataGrid1.DataSource = objDataSet Me.DataGrid1.DataMember = "Raza" ''Configurar la grilla con codigo Me.DataGrid1.Refresh() posicion = (objDataSet.Tables("Raza").Rows.Count - 1) Call CargarDatos() Call HabilitarControles(False) Call HabilitarBotones(True) End Sub Private Sub Actualizar() 'Para actualizar el Data Set objDataSet.Clear() objDataAdapter.Fill(objDataSet, "raza") ' Me.DataGrid1.CaptionText = "Listado de Razas Conocidas" ' End Sub

137 - 145

Encabezado
Private Sub HabilitarControles(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Enabled = est cboTipo.Enabled = est End If Next End Sub Private Sub LimpiarControles() Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is TextBox Then ctrl.Text = "" Next End Sub Private Sub HabilitarBotones(ByVal est As Boolean) Dim ctrl As Control For Each ctrl In Me.Controls If TypeOf ctrl Is Button Then ctrl.Enabled = est Next btnGuardar.Enabled = Not est btnCancelar.Enabled = Not est End Sub Private Sub CargarDatos() Try objDataRow = objDataSet.Tables("Raza").Rows(posicion) txtCodigo.Text = objDataRow("CodRaza") txtNombre.Text = objDataRow("NomRaza") txtDescripcion.Text = objDataRow("DescripcionRaza") cboTipo.Text = objDataRow("Tipo") Catch exc As Exception MessageBox.Show(exc.Message) End Try End Sub Private Sub btnSalir_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSalir.Click Me.Close() End Sub End Class

138 - 145

Encabezado
Botn Reporte (Ventana Reporte): Permitir una visualizacin del los datos necesarios en vista de informe.

Botn Seleccionar Reporte: Nos muestra una ventana donde seleccionamos un reporte, abrimos y muestra un listado de datos. Botn Ejecutar Reporte: Ejecuta el reporte seleccionado. Botn Salir: Permite salir de la ventana actual. Codificacion de VentanaReporte.
Public Class FrReportes Inherits System.Windows.Forms.Form Private Sub BtnSeleccionar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSeleccionar.Click OpenFileDialog1.Filter = "Crystal Reports|*.RPT" If OpenFileDialog1.ShowDialog() = DialogResult.OK Then CrystalReportViewer1.ReportSource = OpenFileDialog1.FileName End If End Sub Private Sub BtnEjecutar_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnEjecutar.Click If Me.rbtnClientes.Checked = True Then Me.CrystalReportViewer1.ReportSource = "D:\Documents and Settings\PC143\Escritorio\general, trabajado el viernes\VETERINARIA(cristal)\ReporteEmpleado.rpt" End If If Me.rbtnEmpleado.Checked = True Then Me.CrystalReportViewer1.ReportSource = "D:\Documents and Settings\PC143\Escritorio\general, trabajado el viernes\VETERINARIA(cristal)\crystalreport4.rpt" End If If Me.rbtnHistorial.Checked = True Then Me.CrystalReportViewer1.ReportSource = "D:\Documents and Settings\PC143\Escritorio\general, trabajado el viernes\VETERINARIA(cristal)\ReporteCliente.rpt" End If End Sub

139 - 145

Encabezado
Private Sub BtnSalir_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles BtnSalir.Click Me.Close() End Sub Private Sub ReporteDatos_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load vistareportes = True End Sub Private Sub FrReportes_Closed(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Closed vistareportes = False End Sub

End Class
Botn Calculadora: Nos muestra la calculadora que todo usuario conoce y sabe utilizarla para sacar sus cuentas como sumar, restar, multiplicar, dividir sacar porcentaje etc.

Botn KeyBoard: Muestra un teclado en pantalla controlado por un Mouse o dispositivo de entrada de interruptor.

Botn Salir: Nos permite salir de la ventana principal.

140 - 145

Encabezado

Codificacion de Modulo ModConexion: Imports System.Data.SqlClient Module MODCONEXION Public act As Boolean Public frmP As New frmPrincipal() Public conexion As SqlConnection = New SqlConnection("Data source=(local);user id=sa;password=;initial catalog=veterinaria;") End Module Codificacion de Modulo Variables: Module Variables Public vistacliente As Boolean Public vistaempleado As Boolean Public vistahistorial As Boolean Public vistaatencion As Boolean Public vistabuscador As Boolean Public vistaconsultorio As Boolean Public vistadesparacitacion As Boolean Public vistaespecie As Boolean Public vistahospitalisacion As Boolean Public vistahospedaje As Boolean Public vistapeluqueria As Boolean Public vistaraza As Boolean Public vistavacunacion As Boolean Public vistareportes As Boolean End Module

3. CONCLUSIONES Y RECOMENDACIONES
El sistema permitir llevar un adecuado control de pacientes por lo que el mdico veterinario podr tener un adecuado ingreso de datos y actualizacin. El Sistema es til para el control de pacientes solo en la Clnica veterinaria animal center ya que los requisitos de la veterinaria animal center nos fue de mucha ayuda para poder emprender nuestro sistema.

141 - 145

Encabezado

El Diseo y confeccin de diagramas que interpretan un proceso es verdaderamente tiles para la etapa de diseo del sistema. Se ha concluido el sistema dentro de los planos establecidos con el solicitante y dentro del presupuesto asignado. El personal no autorizado no podr ingresar al sistema ya que este esta protegido por una contrasea que slo el mdico lo sabr.

RECOMENDACIONES
Se recomienda que la persona autorizada al sistema forme nota de las limitaciones que pudiera tener el sistema en el proceso, para lograr mejorar el sistema.

Se recomienda que la persona autorizada al manejo del sistema tenga conocimientos bsicos en computacin.

4. ANEXOS

142 - 145

Encabezado

Figura 28a: Modelo de Ficha entregada al cliente.

143 - 145

Encabezado

Figura 28b: Modelo de Ficha entregada al cliente.

144 - 145

Encabezado

Figura 29: Tarjeta de presentacin entregada al cliente.

Figura 30: Boleta entregada al cliente.

145 - 145

You might also like