Tesis lavanderia
-
Author
sarita-condori -
Category
Documents
-
view
124 -
download
4
Embed Size (px)
Transcript of Tesis lavanderia

ESQUEMA DE PROYECTO DE FACTIBILIDAD DE LA CARRERA DE COMPUTACIÓN E INFORMÁTICA
Formato de Presentación: Caratula (Institución, Logotipo, Carrera Profesional, Nombre del proyecto, Integrantes,
Propósito, Asesor) Dedicatoria Presentación Índice General Índice de Tablas Índice de Ilustraciones
NOMBRE DEL PROYECTO: _________________
I. CAPITULO I (AREA DE ESTUDIO)1.1 Razón Social y Rubro
1.1.1 Razón Social: Nombre de la empresa para la cual se desarrolla el proyecto.
1.1.2 Rubro: Describir las actividades que realiza la empresa.
1.1.3 Visión: Visión que tiene la empresa.1.1.4 Misión: Misión que tiene la empresa.
1.2 Organización del Área de EstudioOrganigrama de la empresa.
1.3 Diagnóstico(Análisis del Entorno: FODA)1.3.1 Fortalezas1.3.2 Oportunidades1.3.3 Debilidades1.3.4 Amenazas1.3.5 Matriz FODA
1.4 Determinación del problema1.4.1 Descripción del proceso principal materia de
estudio1.4.2 Definición del problema1.4.3 Propuesta de solución
II. CAPÍTULO II (MARCO TEORICO)a. Bases Teóricas b. Hipótesis
III. CAPÍTULO IIIMARCO METODOLÓGICO1. Tipo de Investigación2. Diseño de Investigación3. Variables e Indicadores4. Técnicas e Instrumentos5. Análisis y procedimientos

IV. CAPÍTULO IV (INVESTIGACION PRELIMINAR)
4.1 Objetivos del Proyecto
4.1.1 Objetivos Generales
Automatizar el área de Administración, secretaria y servicios con
un sistema informático para el control de registro de personal,
clientes y usuarios, así como llevar el control de los servicios de
lavandería, costura y reteñidos.
4.1.2 Objetivos Específicos
Controlar el acceso de usuarios al sistema restringiendo el uso de
las funcionalidades de acuerdo con los permisos establecidos para
cada usuario.
Controlar el proceso de registro de Personal, Clientes,
Usuarios y Prendas.
Controlar minuciosamente la entrada, salida y utilización de
Insumos así como la devolución de los mismos.
Controlar el pago de pensiones por cada mes.
Controlar los Egresos que se pueden suscitar por cada
movimiento en lo que respecta a pagos que realiza la empresa.
Controlar el proceso de emisión de comprobantes como son
emisión de boletas y facturas.
Permitir el mantenimiento de la información ingresada de tal
manera que perita tener la información actualizada.
Proporcionar consultas y reportes según sea el caso.

4.2 Lista de Usuarios Participantes: Lista de personas
que utilizarán el sistema.
Usuario (Administrador)
Lleva el control de todo el sistema informático, en especial es el
único que registra y lleva el mantenimiento del personal y usuarios
del sistema.
Usuario (Secretaria)
Registrará a los Clientes, Egresos, Insumos, Entrada y Salida de
Insumos, uso y devolución de Insumos, así como la emisión de
Boletas y Facturas además de realizar consultas y reportes según
sea el caso.
Usuario (Empleado)
Se encarga de registrar los datos correspondientes al registro de
Prendas, Lavandería, Costuras y Reteñido y la obtención de
reportes según sea el caso.
4.3 Estudio de Factibilidad
4.3.1 Factibilidad Técnica:
Actualmente la Empresa dispone del hardware y software
requerido para la implantación del sistema.
A continuación se detalla una descripción del equipo con
que cuentan:
Computador Compatible
Procesador 0: Intel Cori 3
Velocidad de Proceso : 3 GHz por Núcleo
Placa Madre : Gigabyte 880GM-USB3
Memoria RAM : 3 Gb
Disco Duro : 500 GB Sata
Case : Avatec

Lector de DVD : LG
Tarjeta de Video : G-Force 256 Mb
Monitor : Pantalla LED de 18.5 ” LG
Teclado : Multimedia Genius
Mouse : Óptico Genius
Impresora
Impresora Matricial : HP Deskjet 3920
Software
Sistema Operativo
Microsoft Windows Seven Starter
ProgramasInstalados
Microsoft Visual Basic system 2010
Microsoft SQL Server 2008
Microsoft Office 2010
Personal encargado de desarrollo del sistema
Analista
Es el responsable de investigar, planear, coordinar y
recomendar opciones de software y sistemas para cumplir
los requerimientos de una empresa de negocios.
Diseñador
El diseñador realiza, con base en el análisis realizado, el
diseño de la solución, además de proporcionar interfaces de
usuario.
Desarrollador
Su función consiste en trasladar las especificaciones del
diseñador en código ejecutable por la computadora.

4.3.2 Factibilidad Operativa: Describir
detalladamente la manera de cómo se operará el
sistema en la empresa.
El sistema automatizara la realización de procesos y cálculos
permitiendo a los usuarios tener un acceso rápido y sencillo.
El sistema funcionara en una intranet y se almacenara junto a una
base de datos en el servidor central, al cual podrá acceder cada
Terminal o punto de Acceso a través de la aplicación cliente. La
plataforma para el servidor será Windows Seven Starter por su
seguridad y confiabilidad, el cual usara el motor de base de datos
SQL Server 2008 por facilitar la operación de comandos para
consultas, permitiendo que más de una Terminal pueda acceder a
la base de datos para ingresar datos y extraer información.
El sistema se desarrollara en Microsoft Visual Basic 2010 por su
fácil aplicación y porque este programa se adapta fácilmente con
el motor de SQL Server 2008 además contara con interfaces
graficas sencillas e intuitivas que facilitaran el acceso a las
operaciones del sistema logrando optimizar su funcionamiento.
4.3.3 Factibilidad Económica: Describir
detalladamente la inversión que se tendría
que realizar para el desarrollo del proyecto.
(Hardware, software y capital humano).
Costo del Personal
Analista S/. 2500.00
Diseñador S/.1200.00
Desarrollador S/. 1200.00
Total S/. 4900.00


Software
Microsoft Visual Basic 2010 S/. 0.00
Microsoft SQL Server 2008 S/. 0.00
Total S/. 0.00
Insumos
Papel Bon 500 hojas. S/.12.00
1 Caja de Lapiceros S/.21.00
Total S/. 0.00
Capacitación
Capacitación de Personal S/. 240.00
Total S/. 240.00
Inversión Total S/. 5173.00
4.4 Análisis costo beneficio: Detallar el costo inicial,
beneficios económicos y tiempo de recuperación
del proyecto.
El proyecto demandará un costo:
Costos Iníciales:
Costo PersonalS/. 4900.00
Software S/. 0.00
Insumos S/.33.00
Capacitación S/.240.00
Total S/. 5173.00

Beneficios del sistema mensual
a) Ahorro de tiempo h/hombre S/.200
¿Por qué? La secretaria gana S/. 1000 mensuales por 200 horas laboradas su carga
de trabajo se reduce en 100 horas. Un empleado se encargaba del Mantenimiento
de Insumos (Registro de Entradas, Registro de Salidas y Devolución de Insumos) y
se le pagaba S/. 500; Tarea que ahora se encarga La secretaria, lo cual muestra un
ahorro de S/. 500.
b) Ahorro de Papelería S/. 15
Tomando en cuenta que ya no se realizaran reportes diarios manuales ya que estos
son consultados directamente en el sistema, se reducirá el uso de medio millar de
papel por mes.
Se ha elaborado el siguiente cuadro:
GASTOS TOTALES MENSUALES
Descripción Gastos
Ahorro de tiempo S/. 500.00
Ahorro de papelería S/. 15.00
S/. 515.00
Si la inversión es de S/. 5,173.00 y el ahorro mensual es de S/. 515.00 mensuales, la
inversión se recupera en 10 meses, generando posteriormente una utilidad para la
empresa.

4.7 Cronograma de Actividades: Presentar el cronograma general y detallado de acuerdo al ciclo de vida para el
desarrollo de sistemas (Diagrama de Gantt).
Cronograma de Actividades Actividad Principal
ACTIVIDAD SEMANASNº CONCEPTO 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 Análisis P R
2 Diseño P R
3 Codificación P R
4 Pruebas P R
5Documentación P
R 6 Instalación P
R
P= TIEMPO PROGRAMADOR= TIEMPO REAL

Cronograma de Actividades para el Análisis
ACTIVIDAD DIAS
Nº CONCEPTO 1 2 3 4 5 6 7 8 910 11 12
13 14
15 16 17
18 19
20 21
22 23 24
25 26
27 28 29
30 31
32 33 34
35 36
1 Definicion del Problema
P R
2 Levantamiento de Datos
P R
2,1
EntrevistasP R
2,2
ObservacionesP R
3 Organización de Datos
P R
4 Modelamiento y normalización
P R
5 Creacion de Flujos de Datos
P R
6 Diccionario de datos
P R
P= TIEMPO PROGRAMADOR= TIEMPO REAL

Cronograma de Actividades para el Diseño
ACTIVIDAD DIAS
Nº CONCEPTO 1 2 3 4 5 6 7 8 9 1011 12 13
14 15 16
17 18 19
20 21 22
23 24 25
26 27 28
29 30
31 32 33
34 35 36
1UML
P R
1,1 Diagramas de Casos de uso
P R
1,2 Diagramas de Secuencia
P R
1,3 Diagramas de Clases
P R
1,4 Diagramas de Estados
P R
1,5 Diagramas de actividades
P R
1,6 Diagramas de colaboracion
P R
2Diseño de datos
P R
2,1 Modelo Entida Relación
P R
2,2Modelo Lógico
P R
2,3Modelo Físico
P R
2,4 Diccionario de Datos
P R
P= TIEMPO PROGRAMADO

R= TIEMPO REALCronograma de Actividades para la Codificación
ACTIVIDAD DIASNº CONCEPTO 1 2 3 4 5 6 7 8 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
1 Diseño de Formularios
P R
2 Codificación de
Procedimientos
P
R 3 Codificación
de formulariosP R
4 Codificación del Sistema
P R
P= TIEMPO PROGRAMADOR= TIEMPO REAL
Cronograma de Actividades para las Pruebas
ACTIVIDAD SEMANASNº CONCEPTO 1 2 3 4 5 6 71 Por formularios P
R 2 Por Procedimientos P
R 3 Prueba Integral del
sistemaP R

P= TIEMPO PROGRAMADOR= TIEMPO REAL
Cronograma de Actividades para la Documentación
ACTIVIDAD DIASNº CONCEPTO 1 2 3 4 5 6 7 8 9 10 11 12 15 16 17 18 19 20 21 22 23 241 Manual del Programador P
R 2 Manual del Usuario P
R
P= TIEMPO PROGRAMADOR= TIEMPO REAL
Cronograma de Actividades para la Instalación
ACTIVIDAD DIASNº CONCEPTO 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
1 Instalación del Software P R
2 Instalación del Sistema P R
P= TIEMPO PROGRAMADOR= TIEMPO REAL


V. CAPÍTULO V(ESPECIFICACION DE REQUERIMIENTOS DE SOFTWARE)
5.1 Modelado del Negocio5.1.1 Diagrama de casos de uso
Datos del Cliente
guarda Datos del Cliente
Sistema de trabajo
Genera Servicios
Registra InsumosRegistra Devoluciones
Genera Reporte de Clientes
Entrega de Prendas
Recibe Prendas
Sistema de Operaciones
Proceso de Lavanderia Proceso de Costuras
Proceso de Reteñidos
Datos Personales
Registra Datos del Personal
Administración
Crea Usuarios
Pago por Servicio
Boleta o Factura
Cliente
Empleados
Servicios Realizados
Secretaria

5.1.2 Especificación de los casos de uso
Registros de Datos
Proceso del Negocio: Registra Datos
Objetivo: Solicitar Datos del Cliente y del Personal
Descripción
La secretaria solicita información sobre el Cliente y luego
registra los datos.
El Administrador solicita los datos del Personal y luego
registra los datos.
El Administrador Genera los Usuarios del Sistema
Prioridad Básico
Riesgo Ninguno
Registro de Operaciones
Proceso del Negocio: Registro de Operaciones
Objetivo: Pago por Matricula y Pensión
Descripción
El Empleado solicita datos de la prenda y luego registra los
datos de la prenda
El Empleado registra los Datos de Lavandería
El Empleado registra los Datos de Costuras
El Empleado registra los Datos de Reteñidos
Se entrega Reporte de Operaciones a Secretaria.
Prioridad Básico
Riesgo Ninguno

Emisión de Comprobantes de Pago
Proceso del Negocio: Emitir Comprobante de Pago
Objetivo: Realizar el comprobante Boleta o Factura según sea el caso
DescripciónLa secretaria selecciona el Comprobante de Pago.
La secretaria registra los datos del Comprobante de Pago.
Se Emite el comprobante de Pago
Prioridad Básico
Riesgo Ninguno
5.2 Especificación de Requisitos5.2.1 Técnicas y Herramientas para la identificación de
requisitosPara la evaluación de requerimientos se ha realizado la entrevista al
personal encargado del registro de matrículas, pago de pensiones y pago al
personal
Entrevista
Personal de Administración
1. ¿Por qué Desea Usted un cambio de Sistema?
2. ¿Tiene Usted Conocimiento de lo que es Un sistema Informático?
3. ¿Cuáles son las Actividades Que Cree Usted que el Sistema Debe realizar?
4. ¿Cuáles son las personas que serían afectadas con el cambio?
5. ¿La Inversión es total o Parcial?
6. ¿Qué clase de sistema informático le gustaría que se le brindara?
Personal de Secretaria
1. ¿Está a gusto con el control que se lleva de forma manual actualmente en la
Empresa?
2. ¿Tiene Conocimientos en Computación e Informática?
3. ¿Usted qué proceso consideraría más favorable a la hora de realizar los registro
de datos?
4. ¿En los procesos manuales existen perdidas de información?

5. ¿Le gustaría contar con un sistema el cual automatice los procesos de registro y
mantenimiento de datos?
6. ¿Qué documentos emiten la Empresa?
7. ¿Estaría dispuesta a estudiar y analizar una propuesta para el mejoramiento del
ingreso y mantenimiento de datos en los que respecta a los clientes, Insumos y
egresos?
8. ¿Qué clase de sistema informático le gustaría que se le brindara?
9. ¿Podría darnos su opinión con respecto a las ventajas que nuestro sistema
propuesto le podría dar a la Empresa?
10. ¿Cómo ve usted a los empleados en cuanto a lo que se piensa implementar en la
Empresa?
Personal de Secretaria
1. ¿Aceptaría Usted un nuevo Sistema de trabajo?
2. ¿Tiene Conocimientos en Computación e Informática?
3. ¿Cuáles son los Documentos que Usted Maneja Actualmente?
4. ¿Está dispuesto a Aceptar el Cambio?

RESUMEN ESTADISTICO
Numero de Encuestados:
5.2.2 Especificación de requisitos funcionalesFunciones Principales:
Proceso de Registro de Clientes, Personal y Prendas
Proceso de Emisión de Comprobante de Pagos.
Proceso de Registro y mantenimiento de Insumos
Proceso de Registro de Servicios.
Control de Egresos por concepto de Pagos a Proveedores
Funciones Secundarias:
Emitir Reportes
5.2.3 Especificación de requisitos No funcionales
Control del personal
Control de Proveedores de insumos
5.2.4 Especificación de requisitos de información
Información personal de los clientes
Registro y declaración de Documentos Emitidos.
Información sobre egresos realizados por Fechas.
Mantenimiento de datos
Información de los empleados
Reportes de Información
Personas PorcentajeAdministración 1 9%Secretaría 1 9%Empleados 5 72%

VI. MODELADO DEL PROYECTO
6.1 Diagrama de Casos de uso
Inicio de Seción
Ingresar Usuario
Ingresar PasswordUsuario
Acceso al SistemaValidar Datos
<<extend>>
Inicio de SesiónDescripción Permite el ingreso al Sistema Secuencia Normal Ingreso de usuario del personal autorizado
Ingreso de password del personal autorizadoValidación de DatosIngresar al Sistema
Excepciones Si los datos no están bien registrados, No ingresa al SistemaFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se inicie sesión Actores Usuario
SistemaBase de Datos

Ingreso de Datos del Cliente
Genera Formulario
Ingresa Datos del Cliente Busca Datos del Cliente
<<extend>>
Valida Datos del Cliente
Secretaria
Imprime ReporteRegistra Datos del Cliente
<<extend>>
Genera Reporte<<extend>>
Ingreso de Datos del clienteDescripción Permite Ingresar los Datos del ClienteSecuencia Normal Buscar datos del Cliente
Ingreso de Datos del ClienteValidación de Datos del ClienteRegistra Datos del ClienteGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Nuevo ClienteActores Secretaria
SistemaBase de Datos

Ingreso de Datos de las Unidades
Genera Formulario de Unidades
Valida Datos de las Unidades
Ingresa Datos de las Unidades Busca Datosa de las Unidades
<<extend>>
Secretaria
Genera Reporte
Registra Datos de las Unidades
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos de las UnidadesDescripción Permite Ingresar los Datos de las UnidadesSecuencia Normal Buscar datos de las Unidades
Ingreso de Datos de las UnidadesValidación de Datos de las UnidadesRegistra Datos de las UnidadesGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de una
Nueva UnidadActores Secretaria
SistemaBase de Datos

Ingreso de Datos de los Servicios
Genera Formulario de Servicios
Valida Datos del Servicio
Ingresa Datos de los Servicios Busca Datos del Servicio
<<extend>>
Secretaria
Genera Reporte
Registra Datos del Servicio
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos de ServiciosDescripción Permite Ingresar los Datos de ServiciosSecuencia Normal Buscar datos de Servicios
Ingreso de Datos de ServiciosValidación de Datos de ServiciosRegistra Datos de ServiciosGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Nuevo ServicioActores Secretaria
SistemaBase de Datos

Ingreso de Datos de los Insumos
Genera Formulario de Insumos
Valida Datos de los Insumos
Ingresa Datos de los Insumos Busca Datos del Insumo
<<extend>>
Secretaria
Genera Reporte
Registra Datos de los Insumos
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos de InsumosDescripción Permite Ingresar los Datos de InsumosSecuencia Normal Buscar datos de Insumos
Ingreso de Datos de InsumosValidación de Datos de InsumosRegistra Datos de InsumosGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Nuevo InsumoActores Secretaria
SistemaBase de Datos

Ingreso de Datos de los Egresos
Genera Formulario de Egresos
Valida Datos de los Egresos
Ingresa Datos de los Egresos Busca Datos de los Egresos
Secretaria
Genera Reporte
Registra Datos de los Egresos
Imprime Reporte
Ingreso de Datos de los EgresosDescripción Permite Ingresar los Datos de los EgresosSecuencia Normal Buscar datos de los Egresos
Ingreso de Datos de los EgresosValidación de Datos de los EgresosRegistra Datos de los EgresosGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Nuevo Egreso de DineroActores Secretaria
SistemaBase de Datos

Ingreso de Datos de los Usuarios
Genera Formulario de Usuarios
Valida Datos del Usuario
Ingresa Datos del Usuario Buscar Datos del Usuario
<<extend>>
Administrador
Genera Reporte
Registra datos del Usuario
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos de los UsuariosDescripción Permite Ingresar los Datos de los UsuariosSecuencia Normal Buscar datos de los Usuarios
Ingreso de Datos de los UsuariosValidación de Datos de los UsuariosRegistra Datos de los UsuariosGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Nuevo UsuarioActores Administrador
SistemaBase de Datos

Ingreso de Datos del Personal
Genera Formulario de Personal
Valida Datos de Personal
Ingresa Datos de Personal Busca datos del Personal
Administrador
Genera Reporte
Registra Datos del Personal
Imprime Reporte
Ingreso de Datos del PersonalDescripción Permite Ingresar los Datos del PersonalSecuencia Normal Buscar datos del Personal
Ingreso de Datos del PersonalValidación de Datos del PersonalRegistra Datos del PersonalGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Nuevo PersonalActores Administrador
SistemaBase de Datos

Ingreso de Datos de la Prenda
Genera Formulario Prendas
Valida Datos de la Prenda
Buscar Datos del Cliente
Ingresa Datos de la Prenda
<<extend>>
Buscar Datos del Personal
<<extend>>
Empleado
Genera Reporte
Registra Datos de la Prenda
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos de la PrendaDescripción Permite el Ingreso de las PrendasSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos de la PrendaValidación de Datos de la PrendaRegistra Datos de la PrendaGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de una
Nueva PrendaActores Empleado
SistemaBase de Datos

Ingreso de Datos de Lavanderia
Genera Formulario de Lavanderia
Valida Datos de la Lavanderia
Busca datos de la Prenda
Ingresa Datos de la Lavanderia
Busca Datos del Personal
Empleado
Genera Reporte
Registra Datos de la Lavanderia
Imprime Reporte
Ingreso de Datos para LavanderíaDescripción Permite el Ingreso de Datos para LavanderíaSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos para lavanderíaValidación de Datos de la LavanderíaRegistra Datos de la LavanderíaGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Proceso de LavanderíaActores Empleado
SistemaBase de Datos

Ingreso de Datos de Costuras
Genera Formulario de Costuras
Valida Datos de la Costura
Busca datos de la Prenda
Ingresa de Datos de la Costura
<<extend>>
Busca Datos del Personal
<<extend>>
Empleado
Genera Reporte
Registra Datos de la Costura
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos para CosturaDescripción Permite el Ingreso de Datos de las CosturasSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos para CosturasValidación de Datos de las CosturasRegistra Datos de las costurasGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Proceso de CosturasActores Empleado
SistemaBase de Datos

Ingreso de Datos de Reteñidos
Genera Formulario Reteñidos
Validar Datos de Reteñidos
Busca datos de la Prenda
Ingreso de Datos de Reteñidos
<<extend>>
Busca Datos del Personal
<<extend>>
Empleado
Genera Reporte
Registrar Datos de Reteñidos
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos para ReteñidosDescripción Permite el Ingreso de Datos para ReteñidosSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos para ReteñidosValidación de Datos de ReteñidosRegistra Datos de ReteñidosGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de un
Proceso de ReteñidoActores Empleado
SistemaBase de Datos

Ingreso de Datos de la Entrada de Insumos
Genera Formulario Entrada Insumos
Valida Datos de la Entrada de Insumos
Busca Datos del Personal
Ingresa Datos de la Entrada de Insumos
<<extend>>
Busca datos del Insumo
<<extend>>
Secretaria
Genera Reporte
Registra Datos de la Entrada de Insumos
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos para Entrada de InsumosDescripción Permite el Ingreso de Datos para Entrada de InsumosSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos para Entrada de InsumosValidación de Datos de Entrada de InsumosRegistra Datos de Entrada de InsumosGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de una
Entrada de InsumosActores Empleado
SistemaBase de Datos

Ingreso de Datos de Salida de Insumos
Busca Datos del Personal
Busca datos del Insumo
Genera Formulario de Salida de Insumos
Ingreso de Datos de salida de Insumos
<<extend>>
<<extend>>
Valida Datos de Salida de Insumos
Genera Reporte
Imprime Reporte
Registra Datos de Salida de Insumos
<<extend>>
<<extend>>
Secretaria
Ingreso de Datos para Salida de InsumosDescripción Permite el Ingreso de Datos para Salida de InsumosSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos para Salida de InsumosValidación de Datos de Salida de InsumosRegistra Datos de Salida de InsumosGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de una
Salida de InsumosActores Empleado
SistemaBase de Datos

Ingreso de Datos de Uso de los Insumos
Genera Formulario de Uso de Insumos
Valida Datos de Uso de Insumos
Busca Datos del Personal
Ingreso de Datos de Uso de Insumos
<<extend>>
Busca datos del Insumo
<<extend>>
Secretaria
Genera Reporte
Registra Datos de uso de Insumos
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos para el Uso de InsumosDescripción Permite el Ingreso de Datos para el Uso de InsumosSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos para el Uso de InsumosValidación de Datos del Uso de InsumosRegistra Datos del Uso de InsumosGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos del Uso
de InsumosActores Empleado
SistemaBase de Datos

Ingreso de Datos de Devoluciones de los Insumos
Genera Formulario de Devoluciones de Insumos
Valida Datos de las Devoluciones
Busca Datos del Personal
Ingresa Datos de las Devoluciones de los Insumos
<<extend>>
Busca datos del Insumo
<<extend>>
Secretaria
Genera Reporte
Registra Datos de la Devoluciones
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos de las DevolucionesDescripción Permite el Ingreso de Datos para las devolucionesSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos de las DevolucionesValidación de Datos de las DevolucionesRegistra Datos de las DevolucionesGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de las
DevolucionesActores Empleado
SistemaBase de Datos

Creación de Boletas por Pago de Servicio
Genera Formulario de Boletas
Valida Datos de la Boleta
Busca Datos del Cliente
Ingresa datos de la Boleta
<<extend>>
Busca Datos del Personal
<<extend>>
Secretaria
Genera Boleta
Imprime Boleta
Genera Reporte
Registra Datos de la Boleta
<<extend>>
<<extend>>
<<extend>>
Imprime Reporte
<<extend>>
Ingreso de Datos de las BoletasDescripción Permite el Ingreso de Datos para las BoletasSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos de las BoletasValidación de Datos de las BoletasRegistra Datos de las BoletasGenera BoletaImprime BoletaGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de las
BoletasActores Secretaria
SistemaBase de Datos

Creación de Facturas por Pago de Servicio
Genera Formulario de Facturas
Valida Datos de la Factura
Genera Factura
Imprime Factura
Genera reporte de Factura
Registra Datos de la Factura
<<extend>>
<<extend>>
<<extend>>
Imprime Reporte de Factura
<<extend>>
Secretaria
Busca Datos del Cliente
Ingresa Datos de la Factura
<<extend>>
Busca Datos del Personal
<<extend>>
Ingreso de Datos de las FacturasDescripción Permite el Ingreso de Datos para las FacturasSecuencia Normal Buscar datos del Cliente
Buscar datos del PersonalIngreso de Datos de las FacturasValidación de Datos de las FacturasRegistra Datos de las FacturasGenera FacturaImprime FacturaGenera ReporteImprime Reporte
Excepciones Si los datos no están bien registrados, Ignora los DatosFrecuencia DiariaImportancia AltaUrgencia InmediataComentarios Este caso de uso se realiza cada vez que se Ingrese los datos de las
FacturasActores Secretaria
SistemaBase de Datos

6.2 Diagrama de Clases

6.3 Diagrama de Secuencia
Iniciar Sesión
USUARIO SISTEMA BASE DE DATOS
Ingresa Usuario y ContraseñaVerifica Usuario y Contraseña
Lee Tabla Usuario
Busca Usuario
Usuario Encontrado
Usuario Aceptado
Usuario no Encontrado
Cancela OperaciónUsuario no Aceptado
Ingreso de Datos de los Clientes
SECRETARIA SISTEMA BASDE DE DATOS
Ingresa Datos del ClienteValida Datos del cliente
Enviar datosGuardar Datos del Cliente
Datos Guardados
Msg. "Datos Guardados"
Genera ReporteLee tabla de Clientes
Busca Datos de los Clientes
Datos Encontrados
Muestra Datos de los Clientes
Imprime Datos de los Clientes
Busca Impresora
Impresión de Datos de los Clientes

Ingreso de Datos de los Egresos
SECRETARIA SISTEMA BASDE DE DATOS
Ingresa Datos de los EgresosValida Datos de los Egresos
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de los Egresos
Imprime Datos de los Egresos
Busca Impresora
Impresión de Datos de los Egresos
Enviar datosGuardar Datos de los Egresos
Datos Guardados
Lee tabla de los EgresosBusca Datos de Egresos
Datos Encontrados
Ingreso de Datos de los Insumos
SECRETARIA SISTEMA BASDE DE DATOS
Ingresa Datos de los InsumosValida Datos de los Insumos
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de los Insumos
Imprime Datos de los Insumos
Busca Impresora
Impresión de Datos de los Insumos
Enviar datosGuardar Datos de los Insumos
Datos Guardados
Lee tabla de los InsumosBusca Datos de Insumos
Datos Encontrados

Ingreso de Datos de los Servicios
SECRETARIA SISTEMA BASDE DE DATOS
Ingresa Datos de los ServiciosValida Datos de los Servicios
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de los Servicios
Imprime Datos de los Servicios
Busca Impresora
Impresión de Datos de los Servicios
Enviar datosGuardar Datos de los Servicios
Datos Guardados
Lee tabla de los ServiciosBusca Datos de Servicios
Datos Encontrados
Ingreso de Datos de las Unidades
SECRETARIA SISTEMA BASDE DE DATOS
Ingresa Datos de las UnidadesValida Datos de las Unidades
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de las Unidades
Imprime Datos de las Unidades
Busca Impresora
Impresión de Datos de las Unidades
Enviar datosGuardar Datos de las Unidades
Datos Guardados
Lee tabla de las UnidadesBusca Datos de las Unidades
Datos Encontrados

Ingreso de Datos del Personal
ADMINISTRADOR SISTEMA BASDE DE DATOS
Ingresa Datos del PersonalValida Datos del Personal
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos del Personal
Imprime Datos del Personal
Busca Impresora
Impresión de Datos del Personal
Enviar datosGuardar Datos del Personal
Datos Guardados
Lee tabla del PersonalBusca Datos del Personal
Datos Encontrados
Ingreso de Datos de los Usuarios
ADMINISTRADOR SISTEMA BASDE DE DATOS
Ingresa Datos de los UsuariosValida Datos de los Usuarios
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de los Usuarios
Imprime Datos de los Usuarios
Busca Impresora
Impresión de Datos de los Usuarios
Enviar datosGuardar Datos de los Usuarios
Datos Guardados
Lee tabla de los UsuariosBusca Datos de los Usuarios
Datos Encontrados

Ingreso de Datos de la Entrada de Insumos
SECRETARIA SISTEMA BASDE DE DATOS
Genera Código de Entrada
Valida Datos de la Entrada de insumos
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de Ent. de Insumos
Imprime Datos de Ent. de Insumos
Busca Impresora
Impresión de Datos de Ent. de Insumos
Enviar datos
Guardar Datos de Entrada de Insumos
Datos Guardados
Lee tabla de Entrada de InsumosBusca Datos de Entrada de Insumos
Datos Encontrados
Lee tabla Personal
Busca datos del personal
Lee Tabla Insumos
Busca Datos de Insumos
Datos Encontrados
Datos Endontrados
Ingresa Datos de la Entrada de insumos
Ingreso de Datos de la Salida de Insumos
SECRETARIA SISTEMA BASDE DE DATOS
Genera Código de Salida
Valida Datos de la Salida de insumos
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de Salida de Insumos
Imprime Datos de Salida de Insumos
Busca Impresora
Impresión de Datos de Salida de Insumos
Ingresa Datos de la Salida de insumos
Enviar datos
Guardar Datos de Salida de Insumos
Datos Guardados
Lee tabla de Salida de InsumosBusca Datos de Salida de Insumos
Datos Encontrados
Lee tabla Personal
Busca datos del personal
Lee Tabla Insumos
Busca Datos de Insumos
Datos Encontrados
Datos Endontrados

Ingreso de Datos del Uso de Insumos
SECRETARIA SISTEMA BASDE DE DATOS
Genera Código de Uso de Insumos
Valida Datos del Uso de insumos
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos del Uso de Insumos
Imprime Datos del Uso de Insumos
Busca Impresora
Impresión de Datos del Uso de Insumos
Ingresa Datos del Uso de insumos
Enviar datos
Guardar Datos del Uso de Insumos
Datos Guardados
Lee tabla del Uso de InsumosBusca Datos del Uso de Insumos
Datos Encontrados
Lee tabla Personal
Busca datos del personal
Lee Tabla Insumos
Busca Datos de Insumos
Datos Encontrados
Datos Endontrados
Ingreso de Datos de Devoluciones de Insumos
SECRETARIA SISTEMA BASDE DE DATOS
Genera Código de Devolución
Valida Datos de Devolución
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de Devolución
Imprime Datos de Devolución
Busca Impresora
Impresión de Datos de Devolución
Ingresa Datos de Devolución
Enviar datos
Guardar Datos de Devolución
Datos Guardados
Lee tabla de DevoluciónBusca Datos de Devolución
Datos Encontrados
Lee tabla Personal
Busca datos del personal
Lee Tabla Insumos
Busca Datos de Insumos
Datos Encontrados
Datos Endontrados

Ingreso de Datos de Lavanderia
EMPLEADO SISTEMA BASDE DE DATOS
Genera Código de Lavanderia
Valida Datos de Lavanderia
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de Lavanderia
Imprime Datos de Lavanderia
Busca Impresora
Impresión de Datos de Lavanderia
Ingresa Datos de Lavanderia
Enviar datos
Guardar Datos de Lavanderia
Datos Guardados
Lee tabla de LavanderiaBusca Datos de Lavanderia
Datos Encontrados
Lee tabla Prenda
Busca datos de la Prenda
Lee Tabla Personal
Busca Datos de Personal
Datos Encontrados
Datos Endontrados
Ingreso de Datos de Costuras
EMPLEADO SISTEMA BASDE DE DATOS
Genera Código de Costuras
Valida Datos de Costuras
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de Costuras
Imprime Datos de Costuras
Busca Impresora
Impresión de Datos de Costuras
Ingresa Datos de Costuras
Enviar datos
Guardar Datos de Costuras
Datos Guardados
Lee tabla de CosturasBusca Datos de Costuras
Datos Encontrados
Lee tabla Prenda
Busca datos de la Prenda
Lee Tabla Personal
Busca Datos de Personal
Datos Encontrados
Datos Endontrados

Ingreso de Datos de Reteñidos
EMPLEADO SISTEMA BASDE DE DATOS
Genera Código de Reteñido
Valida Datos de Reteñido
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de Reteñido
Imprime Datos de Reteñido
Busca Impresora
Impresión de Datos de Reteñido
Ingresa Datos de Reteñido
Enviar datos
Guardar Datos de Reteñido
Datos Guardados
Lee tabla de ReteñidoBusca Datos de Reteñido
Datos Encontrados
Lee tabla Prenda
Busca datos de la Prenda
Lee Tabla Personal
Busca Datos de Personal
Datos Encontrados
Datos Endontrados
Ingreso de Datos de las Prendas
EMPLEADO SISTEMA BASDE DE DATOS
Genera Código de Prenda
Valida Datos de la Prenda
Msg. "Datos Guardados"
Genera Reporte
Muestra Datos de las Prendas
Imprime Datos de las Prendas
Busca Impresora
Impresión de Datos de las Prendas
Ingresa Datos de la Prenda
Enviar datos
Guardar Datos de la Prenda
Datos Guardados
Lee tabla de la PrendaBusca Datos de las Prendas
Datos Encontrados
Lee tabla Clientes
Busca datos del Cliente
Lee Tabla Personal
Busca Datos de Personal
Datos Encontrados
Datos Endontrados

Ingreso de Datos de las Boletas
SECRETARIA SISTEMA BASDE DE DATOS
Ingresa Numero de Boleta
Valida Datos de la Boleta
Msg. "Datos Guardados"
Genera Boleta
Muestra Datos de la Boleta
Imprime Datos de la Boleta
Busca Impresora
Impresión de la Boleta
Ingresa Datos de la Boleta
Enviar datos
Guardar Datos de la Boleta
Datos Guardados
Lee tabla BoletaBusca Datos de la Boleta
Datos Encontrados
Lee tabla Clientes
Busca datos del Cliente
Lee Tabla Personal
Busca Datos de Personal
Datos Encontrados
Datos Endontrados
Genera Reporte Lee tabla BoletaBusca Datos de las Boletas
Datos EncontradosMuestra datos de las Boletas
Imprime Reporte de Boletas
Busca ImpresoraImprime Datos de las Boletas

Ingreso de Datos de las Facturas
SECRETARIA SISTEMA BASDE DE DATOS
Ingresa Numero de Factura
Valida Datos de la Factura
Msg. "Datos Guardados"
Genera Factura
Muestra Datos de la Factura
Imprime Datos de la Factura
Busca Impresora
Impresión de la Factura
Ingresa Datos de la Factura
Genera Reporte
Imprime Reporte de Facturas
Busca ImpresoraImprime Datos de las Facturas
Enviar datos
Guardar Datos de la Factura
Datos Guardados
Lee tabla FacturaBusca Datos de la Factura
Datos Encontrados
Lee tabla Clientes
Busca datos del Cliente
Lee Tabla Personal
Busca Datos de Personal
Datos Encontrados
Datos Endontrados
Lee tabla FacturaBusca Datos de las Factura
Datos EncontradosMuestra datos de las Facturas

6.4 Diagrama de Colaboración
USUARIO SISTEMA
BASE DE DATOS
2: Verifica Usuario y Contraseña
4: Busca Usuario
8: Cancela Operación
Iniciar Sesión
1: Ingresa Usuario y Contraseña
6: Usuario Aceptado9: Usuario no Aceptado
3: Lee Tabla Usuario
5: Usuario Encontrado7: Usuario no Encontrado
SECRETARIA SISTEMA
BASDE DE DATOS
2: Valida Datos del cliente
4: Guardar Datos del Cliente9: Busca Datos de los Clientes
13: Busca Impresora
Ingreso de Datos de los Clientes
1: Ingresa Datos del Cliente7: Genera Reporte
12: Imprime Datos de los Clientes
6: Msg. "Datos Guardados"11: Muestra Datos de los Clientes
14: Impresión de Datos de los Clientes
3: Enviar datos8: Lee tabla de Clientes
5: Datos Guardados10: Datos Encontrados

SECRETARIA SISTEMA
BASDE DE DATOS
2: Valida Datos del cliente
4: Guardar Datos del Cliente9: Busca Datos de los Clientes
13: Busca Impresora
Ingreso de Datos de los Clientes
1: Ingresa Datos del Cliente7: Genera Reporte
12: Imprime Datos de los Clientes
6: Msg. "Datos Guardados"11: Muestra Datos de los Clientes
14: Impresión de Datos de los Clientes
3: Enviar datos8: Lee tabla de Clientes
5: Datos Guardados10: Datos Encontrados
SECRETARIA SISTEMA
BASDE DE DATOS
2: Valida Datos de los Insumos
4: Guardar Datos de los Insumos9: Busca Datos de Insumos
13: Busca Impresora
Ingreso de Datos de los Insumos
1: Ingresa Datos de los Insumos7: Genera Reporte
12: Imprime Datos de los Insumos
6: Msg. "Datos Guardados"11: Muestra Datos de los Insumos
14: Impresión de Datos de los Insumos
3: Enviar datos8: Lee tabla de los Insumos
5: Datos Guardados10: Datos Encontrados

SECRETARIA SISTEMA
BASDE DE DATOS
2: Valida Datos de los Servicios
4: Guardar Datos de los Servicios9: Busca Datos de Servicios
13: Busca ImpresoraIngreso de Datos de los Servicios
1: Ingresa Datos de los Servicios7: Genera Reporte
12: Imprime Datos de los Servicios
6: Msg. "Datos Guardados"11: Muestra Datos de los Servicios
14: Impresión de Datos de los Servicios
3: Enviar datos8: Lee tabla de los Servicios
5: Datos Guardados10: Datos Encontrados
SECRETARIA SISTEMA
BASDE DE DATOS
2: Valida Datos de las Unidades
4: Guardar Datos de las Unidades9: Busca Datos de las Unidades
13: Busca Impresora
Ingreso de Datos de las Unidades
1: Ingresa Datos de las Unidades7: Genera Reporte
12: Imprime Datos de las Unidades
6: Msg. "Datos Guardados"11: Muestra Datos de las Unidades
14: Impresión de Datos de las Unidades
3: Enviar datos8: Lee tabla de las Unidades
5: Datos Guardados10: Datos Encontrados

ADMINISTRADOR SISTEMA
BASDE DE DATOS
2: Valida Datos del Personal
4: Guardar Datos del Personal9: Busca Datos del Personal
13: Busca Impresora
Ingreso de Datos del Personal
1: Ingresa Datos del Personal7: Genera Reporte
12: Imprime Datos del Personal
6: Msg. "Datos Guardados"11: Muestra Datos del Personal
14: Impresión de Datos del Personal
3: Enviar datos8: Lee tabla del Personal
5: Datos Guardados10: Datos Encontrados
ADMINISTRADOR SISTEMA
BASDE DE DATOS
2: Valida Datos de los Usuarios
4: Guardar Datos de los Usuarios9: Busca Datos de los Usuarios
13: Busca ImpresoraIngreso de Datos de los Usuarios
1: Ingresa Datos de los Usuarios7: Genera Reporte
12: Imprime Datos de los Usuarios
6: Msg. "Datos Guardados"11: Muestra Datos de los Usuarios
14: Impresión de Datos de los Usuarios
3: Enviar datos8: Lee tabla de los Usuarios
5: Datos Guardados10: Datos Encontrados

SECRETARIA SISTEMA
BASDE DE DATOS
3: Busca datos del personal6: Busca Datos de Insumos
9: Valida Datos de la Entrada de insumos
11: Guardar Datos de Entrada de Insumos16: Busca Datos de Entrada de Insumos
20: Busca Impresora
Ingreso de Datos de la Entrada de Insumos
1: Genera Código de Entrada8: Ingresa Datos de la Entrada de insumos
14: Genera Reporte19: Imprime Datos de Ent. de Insumos
13: Msg. "Datos Guardados"18: Muestra Datos de Ent. de Insumos
21: Impresión de Datos de Ent. de Insumos
2: Lee tabla Personal5: Lee Tabla Insumos
10: Enviar datos15: Lee tabla de Entrada de Insumos
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados
SECRETARIA SISTEMA
BASDE DE DATOS
3: Busca datos del personal6: Busca Datos de Insumos
9: Valida Datos de la Salida de insumos
11: Guardar Datos de Salida de Insumos16: Busca Datos de Salida de Insumos
20: Busca Impresora
Ingreso de Datos de la Salida de Insumos
1: Genera Código de Salida8: Ingresa Datos de la Salida de insumos
14: Genera Reporte19: Imprime Datos de Salida de Insumos
13: Msg. "Datos Guardados"18: Muestra Datos de Salida de Insumos
21: Impresión de Datos de Salida de Insumos
2: Lee tabla Personal5: Lee Tabla Insumos
10: Enviar datos15: Lee tabla de Salida de Insumos
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados

SECRETARIA SISTEMA
BASDE DE DATOS
3: Busca datos del personal6: Busca Datos de Insumos
9: Valida Datos del Uso de insumos
11: Guardar Datos del Uso de Insumos16: Busca Datos del Uso de Insumos
20: Busca ImpresoraIngreso de Datos del Uso de Insumos
1: Genera Código de Uso de Insumos8: Ingresa Datos del Uso de insumos
14: Genera Reporte19: Imprime Datos del Uso de Insumos
13: Msg. "Datos Guardados"18: Muestra Datos del Uso de Insumos
21: Impresión de Datos del Uso de Insumos
2: Lee tabla Personal5: Lee Tabla Insumos
10: Enviar datos15: Lee tabla del Uso de Insumos
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados
SECRETARIA SISTEMA
BASDE DE DATOS
3: Busca datos del personal6: Busca Datos de Insumos
9: Valida Datos de Devolución
11: Guardar Datos de Devolución16: Busca Datos de Devolución
20: Busca ImpresoraIngreso de Datos de Devoluciones de Insumos
1: Genera Código de Devolución8: Ingresa Datos de Devolución
14: Genera Reporte19: Imprime Datos de Devolución
13: Msg. "Datos Guardados"18: Muestra Datos de Devolución
21: Impresión de Datos de Devolución
2: Lee tabla Personal5: Lee Tabla Insumos
10: Enviar datos15: Lee tabla de Devolución
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados

EMPLEADO SISTEMA
BASDE DE DATOS
3: Busca datos de la Prenda6: Busca Datos de Personal
9: Valida Datos de Lavanderia
11: Guardar Datos de Lavanderia16: Busca Datos de Lavanderia
20: Busca ImpresoraIngreso de Datos de Lavanderia
1: Genera Código de Lavanderia8: Ingresa Datos de Lavanderia
14: Genera Reporte19: Imprime Datos de Lavanderia
13: Msg. "Datos Guardados"18: Muestra Datos de Lavanderia
21: Impresión de Datos de Lavanderia
2: Lee tabla Prenda5: Lee Tabla Personal
10: Enviar datos15: Lee tabla de Lavanderia
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados
EMPLEADO SISTEMA
BASDE DE DATOS
3: Busca datos de la Prenda6: Busca Datos de Personal
9: Valida Datos de Costuras
11: Guardar Datos de Costuras16: Busca Datos de Costuras
20: Busca ImpresoraIngreso de Datos de Costuras
1: Genera Código de Costuras8: Ingresa Datos de Costuras
14: Genera Reporte19: Imprime Datos de Costuras
13: Msg. "Datos Guardados"18: Muestra Datos de Costuras
21: Impresión de Datos de Costuras
2: Lee tabla Prenda5: Lee Tabla Personal
10: Enviar datos15: Lee tabla de Costuras
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados

EMPLEADO SISTEMA
BASDE DE DATOS
3: Busca datos de la Prenda6: Busca Datos de Personal
9: Valida Datos de Reteñido
11: Guardar Datos de Reteñido16: Busca Datos de Reteñido
20: Busca Impresora
Ingreso de Datos de Reteñidos
1: Genera Código de Reteñido8: Ingresa Datos de Reteñido
14: Genera Reporte19: Imprime Datos de Reteñido
13: Msg. "Datos Guardados"18: Muestra Datos de Reteñido
21: Impresión de Datos de Reteñido
2: Lee tabla Prenda5: Lee Tabla Personal
10: Enviar datos15: Lee tabla de Reteñido
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados
EMPLEADO SISTEMA
BASDE DE DATOS
3: Busca datos del Cliente6: Busca Datos de Personal
9: Valida Datos de la Prenda
11: Guardar Datos de la Prenda16: Busca Datos de las Prendas
20: Busca ImpresoraIngreso de Datos de las Prendas
1: Genera Código de Prenda8: Ingresa Datos de la Prenda
14: Genera Reporte19: Imprime Datos de las Prendas
13: Msg. "Datos Guardados"18: Muestra Datos de las Prendas
21: Impresión de Datos de las Prendas
2: Lee tabla Clientes5: Lee Tabla Personal
10: Enviar datos15: Lee tabla de la Prenda
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados

SECRETARIA SISTEMA
BASDE DE DATOS
3: Busca datos del Cliente6: Busca Datos de Personal
9: Valida Datos de la Boleta
11: Guardar Datos de la Boleta16: Busca Datos de la Boleta
20: Busca Impresora
24: Busca Datos de las Boletas
28: Busca Impresora
Ingreso de Datos de las Boletas
1: Ingresa Numero de Boleta8: Ingresa Datos de la Boleta
14: Genera Boleta19: Imprime Datos de la Boleta
22: Genera Reporte27: Imprime Reporte de Boletas
13: Msg. "Datos Guardados"18: Muestra Datos de la Boleta
21: Impresión de la Boleta26: Muestra datos de las Boletas29: Imprime Datos de las Boletas
2: Lee tabla Clientes5: Lee Tabla Personal
10: Enviar datos15: Lee tabla Boleta23: Lee tabla Boleta
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados25: Datos Encontrados

SECRETARIA SISTEMA
BASDE DE DATOS
3: Busca datos del Cliente6: Busca Datos de Personal
9: Valida Datos de la Factura
11: Guardar Datos de la Factura16: Busca Datos de la Factura
20: Busca Impresora
24: Busca Datos de las Factura
28: Busca Impresora
Ingreso de Datos de las Facturas
1: Ingresa Numero de Factura8: Ingresa Datos de la Factura
14: Genera Factura19: Imprime Datos de la Factura
22: Genera Reporte27: Imprime Reporte de Facturas
13: Msg. "Datos Guardados"18: Muestra Datos de la Factura
21: Impresión de la Factura26: Muestra datos de las Facturas29: Imprime Datos de las Facturas
2: Lee tabla Clientes5: Lee Tabla Personal
10: Enviar datos15: Lee tabla Factura23: Lee tabla Factura
4: Datos Encontrados7: Datos Endontrados12: Datos Guardados
17: Datos Encontrados25: Datos Encontrados

6.5 Diagrama de Estados
Ingresar Usuario y Clave
Acceso al Sistema
Seguridad de Datos
Acceso al Sistema
Validación de Datos
Registro de Clientes
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Ingreso de Datos del Cliente
Busca Datos del Cliente
Lee Tabla de Clientes
Imprime Reporte de Clientes

Registro de Egresos
Ingreso de datos de Egresos
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Busca Datos de Egresos
Lee Tabla Egresos
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Imprime Reporte de Egresos
Registro de Insumos
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Registro de Datos del Insumo
Busca Datosa del Insumo
Lee Tabla de Insumos
Imprime Reporte de Insumos

Registro de Servicios
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Registro de Datos del Servicio
Busca Datos del Servicio
Lee Tabla de Servicios
Imprime Reporte de Servicios
Registro de Unidades
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Registro de Datos de la Unidad
Busca Datos de la Unidad
Lee Tabla de Unidades
Imprime eporte de Unidades

Registro de Personal
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Registro de Datos del Personal
Busca Datos del Personal
Lee Tabla de Personal
Imprime Reporte de Personal
Registro de Usuarios
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Registro de Datos de Usuarios
Busca Datos de Usuarios
Lee Tabla de Usuarios
Imprime Reporte de Usuarios

Registro de Entrada de Insumos
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Genera Código de Entrada de Insumos
Busca Datos del Insumo
Lee Tabla de los Insumos
Selecciona Datos del Insumo
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Registro de Datos de Entrada De Insumos
B usca Catos de Entrada de Insumos
Lee Tabla de Entrada de Insumos
Imprime Reporte de Entrada de Insumos

Registro de Salida de Insumos
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Busca Datos del Insumo
Lee Tabla de los Insumos
Selecciona Datos del Insumo
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Genera Código de Salida de Insumos
Registro de Datos de Salida de Insumos
Busca Datos de Salida de Insumos
Lee Tabla de Salida de Insumos
Imprime Datos de Salida de Insumos

Registro de Uso de Insumos
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Busca Datos del Insumo
Lee Tabla de los Insumos
Selecciona Datos del Insumo
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Genera Código de Uso de Insumos
Registro de Datos de Uso de Insumos
Busca Datos de Uso de Insumos
Lee Tabla de Uso de Insumos
Imprime Datos de Uso de Insumos

Registro de Devoluciones
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Busca Datos del Insumo
Lee Tabla de los Insumos
Selecciona Datos del Insumo
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Genera Código de Devoluciones
Registro de Datos de Devoluciones
Busca Datos de Devoluciones
Lee Tabla de Devoluciones
Imprime Datos de Devoluciones

Registro de Prendas
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Genera Código de Prenda
Registro de Datos de la Prenda
Busca Datos de Cliente
Lee Tabla de los Cliente
Selecciona Datos de los Clientes
Busca Datos de la Prenda
Lee Tabla de Prendas
Imprime Datos de las Prendas

Registro de Costuras
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Genera Código de Costuras
Registro de Datos de Costuras
Buscar Datos de la Prenda
Lee Tabla de Prendas
Selecciona Datos de las Prendas
Busca Datos de las Costuras
Lee Tabla de Costuras
Imprime Datos de las Costuras

Registro de Lavanderia
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Buscar Datos de la Prenda
Lee Tabla de Prendas
Selecciona Datos de las Prendas
Genera Codigo de Lavanderia
Registro de Datos de Lavanderia
Busca Datos de Lavanderia
Lee Tabla de Lavanderia
Imprime Datos de la Lavanderia

Registro de Reteñidos
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Genera Reporte
Muestra Vista Preliminar de la Boleta
Imprime Reporte
Busca Impresora
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Buscar Datos de la Prenda
Lee Tabla de Prendas
Selecciona Datos de las Prendas
Genera Código de Reteñidos
Registra Datos de Reteñidos
Busca Datos de Reteñido
Lee Tabla de Reteñido
Imprime Datos de Reteñidos

Registro de Boletas
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Muestra Vista Preliminar de la Boleta
Busca Impresora
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Busca Datos de Cliente
Lee Tabla de los Cliente
Selecciona Datos de los Clientes
Ingresa Numero de Boleta
Registro de Datos de la Boleta
Busca Datos de la Boleta
Lee Tabla Boleta
Genera Boleta
Imprime Boleta
Imprime Datos de la Boleta
Genera Reporte
Busca los datos de las Boletas
Lee Tabla Boleta
Muestra Vista Preliminar de las Boletas
Imprime Reporte
Busca Impresora
Imprime Reporte de Boletas

Registro de Facturas
Validación e Integridad de Datos
Seguridad de Datos
Guardar Datos
Busca Impresora
Busca Los Datos del Personal
Lee la Tabla del Personal
Selecciona Datos del Personal
Busca Datos de Cliente
Lee Tabla de los Cliente
Selecciona Datos de los Clientes
Genera Reporte
Imprime Reporte
Busca Impresora
Ingresa Numero de Factura
Registra Datos de la Factura
Genera Factura
Busca Datos de la Factura
Lee Tabla Factura
Muestra Vista Preliminar de la Factura
Imprime Factura
Imprime Datos de la Factura
Busca Datos de las Facturas
Lee Tabla Factura
Muestra Vista Preliminar de las Facturas
Imprime Reporte de Facturas

6.6 Diagrama de ActividadACCESO AL SISTEMA
Ingresar Datos
Validacion e Integridad de Datos
Verificar Datos
Corregir Datos
Datos Incorrectos
Verificar Datos Ingresados
Ingresar al Sistema
Cerrar Proceso de Acceso al Sistema
Acceso al Sistema
Datos Correctos

INGRESOS DE DATOS
Ingresar Datos
Validacion e Integridad de Datos
Verificar Datos
Corregir Datos
Datos Incorrectos
Guardar Datos
Cerrar Proceso de Ingreso de Datos
Datos Correctos

CONSULTA DE DATOS
Ingresar Datos
Buscar Datos
Mostrar Datos
Datos Encontrados
No existe Datos
Datos no Encontrados
Imprimir Registro
Cerrar proceso de Busqueda de Datos

MODIFICACION DE DATOS
Ingresar Datos
Buscar Datos
Mostrar Datos
No existe Datos
Datos no EncontradosDatos Encontrados
Modificar Datos
Validacion e Integridad de Datos
Corregir Datos
Verificar Datos
Guardar Datos
Cerrar Proceso de Proceso de Datos
Datos Correctos Datos Incorrectos

ELIMINAR DATOS
Ingresar Datos
Buscar Datos
Mostrar Datos
No existe Datos
Datos Encontrados Datos no Encontrados
Eliminar Datos
Cerrar Proceso de Eliminacion de Datos

GENERAR REPORTE
Generar Reporte
Selecionar Datos
Mostrar Vista Preliminar de Datos
Cancelar
Cerrar proceso de Generar de Reporte
Datos Encontrados Datos no Encontrados

IMPRESIÓN DE REPORTE
Buscar Impresora
Imprimir Reporte Cancelar
Existe No existe
Imprimir Reportes
Cerrar Proceso de Impresion de Reportes

CIERRE DE SESIÓN
Cerrar Sesion
Cerrar Base de Datos
Sistema Cerrado
Cerrar Proceso de Cierre de Sesion

CLIENTES
BOLETAS
PRENDAS
INSUMOS
DEVOLUCIONE
LAVANDERI
COSTURAS
ENTRADA_INSUMO
RETENNIDO
FACTURAS
PERSONAL
DETALLE_BOLET
SALIDA_INSUMOS
USO_INSUMOS
DETALLE_FACTURA
TIENEREGISTRA
REGISTRA TIENE
TIENEATIENDE
ATIENDEATIENDE
TIENE
CONTROLA
CONTROLA CONTROLACONTROLATIENE
6.7 Diseño de datos6.7.1 Modelo Entidad Relación
N
1
N
1
1
1N
NN
1
1
1
11
11
1
11
N
N
N
N
NNN
N N

6.7.2 Modelo lógico

6.7.3 Modelo físico

6.7.4 Diccionario de DatosTablas de datosBOLETAGuarda los datos de las Boletas generadas por la empresa por los pagos que hace el Cliente.
CARGOSGuarda los datos de la descripción de los cargos que ocupan los empleados en la empresa.
CLIENTEGuarda los datos de los clientes registrados por la empresa.
COSTURASGuarda los datos de las costuras que se realizaron en las prendas.
DETALLE_BOLETAGuarda los datos del detalle da las boletas con respecto al servicio prestado.
DETALLE_FACTURAGuarda los datos del detalle da las facturas con respecto al servicio prestado.
DEVOLUCIONGuarda la descripción de los insumos devueltos después de su uso.
EGRESOSGuarda los datos de los egresos por cada salida de dinero.
ENTRADA_INSUMOSGuarda la entrada de los insumos adquiridos por la empresa.
EVENTUAL_BOLETAGuarda temporalmente los datos de los servicios prestados a los clientes, mientras se emite la boleta.
EVENTUAL_FACTURAGuarda temporalmente los datos de los servicios prestados a los clientes, mientras se emite la Factura.
FACTURA

Guarda los datos de las Facturas generadas por la empresa por los pagos que hace el Cliente.

INSUMOSGuarda los datos de los insumos que emplea la empresa para llevar a cabo los servicios que presta la empresa a sus clientes.
LAVANDERIAGuarda los datos de los servicios de lavandería que se realizaron a las prendas.
PERSONALGuarda los datos del personal que labora en la empresa.
PRENDAGuarda los datos de las prendas recepcionadas a los clientes para prestar el servicio solicitado.
RETENNIDOGuarda los datos de los servicios de Reteñido que se realizaron a las prendas.
SALIDA_INSUMOSGuarda los datos de la salida de los insumos para su respectivo uso en la prestación de servicios.
SERVICIOSGuarda la descripción de los servicios que presta la empresa.
UNIDADESGuarda la descripción de las unidades de los productos que emplea la empresa para los servicios.
USO_INSUMOSGuarda los datos de los insumos empleados en la prestación de servicios.

Estructura de las tablas






VII. DOCUMENTACIÓN TÉCNICA
7.1 Manual de Usuario
Formulario de Acceso al Sistema
USUARIO: Permite Ingresar el nombre asignado al usuario que empleara el sistema.
Contraseña: Se Ingresa la Clave o contraseña Asignado al Usuario
: Comprueba si el usuario y contraseña son los correctos.
Formulario de Control Principal del Sistema, en donde cada Intem tiene su menú de Acceso según el Usuario.

Controla las operaciones con los Clientes en tanto se refiere a los datos de los clientes, Emisión de Boletas y Facturas.
Permite dar mantenimiento a los servicios y unidades
Controla el registro y mantenimiento de prendas, en tanto se refiere a la lavandería, costuras y reteñidos
Controla el registro y mantenimiento de insumos, en tanto se refiere a la entrada, salida, Uso y devolución de Insumos.
Controla el registro y mantenimiento de personal, así como el de los Usuarios del Sistema.
Permite registrar los Egresos que tiene la empresa por pagos realizados.
Permite salir del sistema.

FORMULARIOS PARA LA OPERATIVIDAD DEL SISTEMA
FORMULARIO CLIENTES
CODIGO DEL CLIENTE: Se autogenera el Código del Cliente.
PERSONAL: Muestra el código del personal según la Selección.
Muestra y permite la Selección del personal que se muestra en la Grilla.
NOMBRES: Muestra y permite el registro de los nombres del cliente.
APELLIDOS: Muestra y permite el registro de los Apellidos del cliente.
DIRECCION:Muestra y permite el registro de la Dirección del cliente.
TELEFONO:Muestra y permite el registro del teléfono del cliente.
TIPO DE DOCUMENTO: Muestra y permite el registro del tipo de documento del cliente.
NRO. DOCUMENTO: Muestra y permite el registro del número de documento cliente.
NRO. RUC:Muestra y permite el registro del número de RUC del cliente.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.

Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO BOLETAS
NRO. BOLETA: Se autogenera el Número de Boleta
FECHA: Se agrega la fecha del sistema
NOMBRES: Muestra los Nombres del Cliente.
Muestra y Permite Seleccionar el cliente de una grilla de Datos del cliente.
APELLIDOS: Muestra los Apellidos del Cliente.
PER: Muestra el Código del personal.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal.
DIRECCION: Muestra la dirección del Cliente.
TELEFONO: Muestra el Teléfono del Cliente
RUC: Muestra el Ruc del Cliente

Muestra y permite seleccionar los servicios que ha recibido el cliente.
Agrega el servicio seleccionado al detalle de la boleta.
COD_PRE: Nuestra el código de la Prenda.
DESCRIPCION: Muestra la descripción de la Prenda
OBSERVACIONES: Muestra la observaciones registradas de la prenda.
DESTINO: Muestra el destino que ha tenido la prenda de acuerdo al servicio.
COSTO: Muestra el costo por el que se realizó el servicio.
Elimina uno de los servicios seleccionados.
Envía el foco al primer registro de la Tabla.
Envía el foco al registro anterior de la Tabla.
Envía el foco al siguiente registro de la Tabla.
Envía el foco al último registro de la Tabla.
Permite Crear una Nueva Boleta.
Cancela La Nueva Boleta.
Guarda los Datos de la Nueva Boleta.
Permite realizar una consulta de las boletas anteriores.
Genera una vista previa de la boleta
Genera una vista previa delas boletas emitidas
Imprime la boleta
Imprime las boletas emitidas
TOTAL: Muestra el total de la Boleta.
FORMULARIO FACTURAS

NRO. FACTURA:Se autogenera el Número de Factura
FECHA: Se agrega la fecha del sistema
NOMBRES: Muestra los Nombres del Cliente.
Muestra y Permite Seleccionar el cliente de una grilla de Datos del cliente.
APELLIDOS: Muestra los Apellidos del Cliente.
PER: Muestra el Código del personal.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos .
DIRECCION: Muestra la dirección del Cliente.
TELEFONO: Muestra el Teléfono del Cliente
RUC: Muestra el Ruc del Cliente
Muestra y permite seleccionar los servicios que ha recibido el cliente.

Agrega el servicio seleccionado al detalle de la factura.
COD_PRE: Nuestra el código de la Prenda.
DESCRIPCION: Muestra la descripción de la Prenda
OBSERVACIONES: Muestra la observaciones registradas de la prenda.
DESTINO: Muestra el destino que ha tenido la prenda de acuerdo al servicio.
COSTO: Muestra el costo por el que se realizó el servicio.
Elimina uno de los servicios seleccionados.
Envía el foco al primer registro de la Tabla.
Envía el foco al registro anterior de la Tabla.
Envía el foco al siguiente registro de la Tabla.
Envía el foco al último registro de la Tabla.
Permite Crear una Nueva Factura.
Cancela La Nueva Factura.
Guarda los Datos de la Nueva factura.
Permite realizar una consulta de las facturas anteriores.
Genera una vista previa de la factura.
Genera una vista previa delas facturas emitidas.
Imprime la factura.
Imprime las facturas emitidas.
TOTAL: Muestra el total de la factura
IGV: Muestra el Impuesto General a Las Ventas
IMPORTE: Muestra el Importe Total de la Venta

FORMULARIO SERVICIOS
CODIGO: Muestra o se autogenera el código del servicio.
TIPO DE SEREVICIO: Muestra o se Ingresa el tipo de servicio que brinda la empresa.
DESCRIPCION: Muestra o se ingresa la descripción de3l tipo de servicio.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee eliminar un registro de datos.

Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO UNIADADES
CODIGO: Muestra o se autogenera el código de las unidades.
TIPO DE UNIDAD: Muestra o se Ingresa el tipo de unidad de medida.
DESCRIPCION: Muestra o se ingresa la descripción del tipo de unidad.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee eliminar un registro de datos.

Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO PRENDAS
CODIGO DE PRENDA: Muestra o se autogenera el código de prenda.
CLIENTE: Muestra el Código del Cliente.
Muestra y Permite Seleccionar el cliente de una grilla de Datos del cliente.
PERSONAL: Muestra el Código del personal.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal.
DESCRIPCION: Permite hacer una descripción de la prenda.
OBSERVACION: Permite hacer una observación de la prenda en cuanto a su estado.
RECEPCION (FECHA): Registra la fecha de recepción de la prenda.
RECEPCION (HORA): Registra la hora de recepción de la prenda.
ENTREGA (FECHA): Registra la fecha de entrega de la prenda.
ENTREGA (HORA): Registra la hora de entrega de la prenda.
DESTINO: Se determina cual es el destino de la prenda.
COSTO: Se registra el costo por el servicio que se aplica a la prenda.

ESTADO: Se especifica el estado de la prenda (Recibido o entregado).
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO LAVANDERIA
CODIGO DE LAVADO: Muestra o se Autogenera el código del lavado.
PRENDA: Muestra el Código de la prenda.
Muestra y Permite Seleccionar la prenda de una grilla de Datos de las prendas.
PERSONAL: Muestra el Código del personal.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal que realizara el proceso de lavado.
TIPO DE SERVICIO: Muestra y se selecciona el tipo de lavado que tendrá la prenda.
FECHA DE ENTRADA: Se registra la fecha de entrada al proceso de lavado.
FECHA DE SALIDA: Se registra la fecha de salida del proceso de lavado.
OBSERVACION: Se escriben las observaciones que se puedan agregar antes o después del proceso de lavado.
ESTADO: Se selecciona el estado de la prenda en el proceso de lavado.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.

Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee eliminar un registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO COSTURAS
CODIGO DE COSTURA: Muestra o se Autogenera el código de costura.
PRENDA: Muestra el Código de la prenda.
Muestra y Permite Seleccionar la prenda de una grilla de Datos de las prendas.
PERSONAL: Muestra el Código del personal.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal que realizara el proceso de costura.
TIPO DE SERVICIO: Muestra y se selecciona el tipo de costura que tendrá la prenda.
FECHA DE ENTRADA: Se registra la fecha de entrada al proceso de costura.
FECHA DE SALIDA: Se registra la fecha de salida del proceso de costura.
OBSERVACION: Se escriben las observaciones que se puedan agregar antes o después del proceso de costura.
ESTADO: Se selecciona el estado de la prenda en el proceso de costura.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.

Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee eliminar un registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO RETEÑIDOS
CODIGO DE RETEÑIDO: Muestra o se Autogenera el código de reteñido.
PRENDA: Muestra el Código de la prenda.
Muestra y Permite Seleccionar la prenda de una grilla de Datos de las prendas.
PERSONAL: Muestra el Código del personal.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal que realizara el proceso de reteñido.
TIPO DE SERVICIO: Muestra y se selecciona el tipo de reteñido que tendrá la prenda.
FECHA DE ENTRADA: Se registra la fecha de entrada al proceso de reteñido.
FECHA DE SALIDA: Se registra la fecha de salida del proceso de reteñido.
OBSERVACION: Se escriben las observaciones que se puedan agregar antes o después del proceso de reteñido.
ESTADO: Se selecciona el estado de la prenda en el proceso de reteñido.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.

Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee eliminar un registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO INSUMOS
CODIGO: Muestra o se autogenera el código del insumo.
DESCRIPCION: Muestra o permite registrar una descripción del insumo que se utilizan en la empresa.
TIPO DE UNIDAD: Muestra o se Selecciona el tipo de unidad de medida del insumo.
STOCK: Muestra o se ingresa la cantidad del insumo que tiene la empresa para los servicios.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.

Poner clic cuando desee eliminar un registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO ENTRADA INSUMOS
COD DE ENTRADA: Muestra o se Autogenera el código de entrada cuando se adquiere un insumo que antes fue registrado en la tabla insumos.
PERSONAL: Muestra el Código del personal que registra la entrada.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal que registra la entrada de insumo.
COD INSUMO: Muestra el Código del insumo.
Muestra y Permite Seleccionar el código del insumo de una grilla de Datos de los insumos.
MARCA: Muestra o permite ingresar la marca del producto adquirido,
TIPO DE UNIDAD: Muestra o se Selecciona el tipo de unidad de medida del insumo.
CANTIDAD: Muestra o permite ingresar la cantidad del producto adquirido.
PRECIO: Muestra o se ingresa el precio del producto adquirido.
FECHA DE ENTRADA: Se registra la fecha de entrada del producto.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.

Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO SALIDA INSUMOS
COD DE SALIDA: Muestra o se Autogenera el código de salida cuando salen insumos para uno de los servicios.
PERSONAL: Muestra el Código del personal que registra la salida del insumo.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal que registra la salida del insumo.
COD INSUMO: Muestra el Código del insumo.
Muestra y Permite Seleccionar el código del insumo de una grilla de Datos de los insumos.
DESCRIPCION: Muestra o permite ingresar una descripción de la salida del insumo.
TIPO DE UNIDAD: Muestra o se Selecciona el tipo de unidad de medida del insumo.
CANTIDAD: Muestra o permite ingresar la cantidad del producto que sale para uno de los servicios.
FECHA DE SALIDA: Se registra la fecha de salida del producto.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.

Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO USO INSUMOS
COD DE USO: Muestra o se Autogenera el código de uso cuando se registra el uso de insumos para uno de los servicios.
PERSONAL: Muestra el Código del personal que registra el uso del insumo.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal que registra el uso del insumo.
COD INSUMO: Muestra el Código del insumo.
Muestra y Permite Seleccionar el código del insumo de una grilla de Datos de los insumos.
DESCRIPCION: Muestra o permite ingresar una descripción del uso del insumo.
TIPO DE UNIDAD: Muestra o se Selecciona el tipo de unidad de medida del insumo.
CANTIDAD: Muestra o permite ingresar la cantidad del producto que se usó en uno de los servicios.
FECHA DE SALIDA: Se registra la fecha de uso del producto.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.

Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO DEVOLUCIONES
COD DE DEVOLUCION: Muestra o se Autogenera el código de devolución, cuando se registra la devolución del insumo sobrante en uno de los servicios.
PERSONAL: Muestra el Código del personal que registra la devolución del insumo.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal que registra la devolución del insumo.
COD INSUMO: Muestra el Código del insumo.
Muestra y Permite Seleccionar el código del insumo de una grilla de Datos de los insumos.
DESCRIPCION: Muestra o permite ingresar una descripción de la devolución del insumo.
TIPO DE UNIDAD: Muestra o se Selecciona el tipo de unidad de medida del insumo.
CANTIDAD: Muestra o permite ingresar la cantidad del producto que se devuelve en uno de los servicios.
FECHA DE DEVOLUCION: Se registra la fecha de devolución del producto.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.

Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO PERSONAL
CODIGO: Muestra o autogenera el código del personal.
NOMBRES: Muestra y permite el ingreso de los nombres del personal.
APELLIDOS: Muestra y permite el ingreso de los apellidos del personal.
DNI:Muestra y permite el ingreso del DNI personal.
DIRECCION: Muestra y permite el ingreso de la dirección del personal.
TELEFONO: Muestra y permite el ingreso del teléfono personal.
CARGO: Muestra y permite la selección del cargo que desempeña el personal.
FECHA DE NACIMIENTO: Muestra y permite la selección de la fecha de nacimiento del personal.
SEXO: Muestra y permite elegir opcionalmente el sexo del personal.
ESTADO CIVIL:Muestra y permite elegir opcionalmente el estado civil del personal.
NRO. HIJOS:Muestra y permite ingresar el número de hijos del personal.

ESTADO:Muestra y permite seleccionar el estado (Activo – Inactivo) del personal en la empresa.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

FORMULARIO USUARIO
CODIGO USUARIO:Muestra o autogenera el código del usuario.
PERSONAL: Muestra el código del personal.
Muestra y Permite Seleccionar el código del Personal de una grilla de Datos del Personal que registra al nuevo Usuario.
USUARIO: Muestra y permite especificar el tipo de usuario que usara el sistema.
CLAVE: Muestra y permite asignar la clave de usuario.
ESTADO: Muestra y permite seleccionar el estado del usuario. (Activo – Inactivo)
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.
Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.

Poner clic cuando desee eliminar un registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.

FORMULARIO EGRESOS
CODIGO: Muestra o autogenera el código de egreso o salida de dinero.
TIPO DEDOCUMENTO: Muestra o permite seleccionar el tipo del documento que se registra para la salida de dinero.
NRO. DOCUMENTO: Muestra o permite ingresar el número del documento.
MOTIVO: Muestra o permite ingresar el motivo por el cual se realiza el egreso o salida de dinero.
IMPORTE: Muestra permite ingresar el importe de dinero según el total del documento registrado.
FECHA DE SALIDA: Muestra o permite seleccionar la fecha en que se realizó el egreso o salida de dinero.
Envía el control del foco al primer registro de la tabla.
Envía el control del foco al registro anterior de la tabla.
Envía el control del foco al siguiente registro de la tabla.
Envía el control del foco al último registro de la tabla.
Poner clic cuando desee ingresar un nuevo registro de datos.
Poner clic cuando desee modificar el registro de datos.

Poner clic cuando desee cancelar una operación de ingreso o modificación registro de datos.
Poner clic cuando desee guardar los datos modificados o un nuevo registro de datos.
Poner clic cuando desee eliminar un registro de datos.
Poner clic cuando desee realizar una consulta de datos de un registro específico. Ingresar el código respectivo y poner clic al botón Buscar según el cuadro.
Poner clic cuando desee tener una vista preliminar de los datos registrados en la tabla.
Poner clic cuando desee enviar a impresora los datos registrados en la tabla.

7.2 Manual de programadorFORMULARIOS DEL SISTEMA
ACCESO
FORM_PRINCIPAL
CLIENTES
BOLETAS
FACTURAS
SERVICIOS
UNIDADES
PRENDAS
LAVANDERIA
COSTURAS
RETENNIDOS
INSUMOS
ENTRADA_INSUMOS
SALIDA_INSUMOS
USO_INSUMOS
DEVOLUCIONES
PERSONAL
USUARIOS
EGRESOS
DESCRIPCION DE LOS FORMULARIOS
ACCESO
Formulario empleado para tener acceso al sistema, ingresando el usuario y su respectiva clave.
FORM_PRINCIPAL
Formulario que se emplea para el control principal del sistema, a través de este formulario podemos tener acceso a las operaciones del sistema según el usuario.

CLIENTES
Formulario que Muestra y permite llevar el mantenimiento de los clientes que forman parte de la empresa.
BOLETAS
Formulario que Muestra y permite registrar y las boletas emitidas por la empresa cuando el cliente realiza el pago por el servicio.
FACTURAS
Formulario que Muestra y permite registrar y las facturas emitidas por la empresa cuando el cliente realiza el pago por el servicio.
SERVICIOS
Formulario que Muestra y permite registrar los servicios que ofrece la empresa a sus clientes.
UNIDADES
Formulario que muestra y permite registrar las unidades de medida de los insumos.
PRENDAS
A través de este Formulario podemos mostrar y registrar las prendas que traen los usuarios para uno de los servicios que ofrecela empresa.
LAVANDERIA
Formulario que muestra y permite registrar los servicios de lavandería.
COSTURAS
Formulario que muestra y permite registrar los servicios de las costuras.
RETENNIDOS
Formulario que muestra y permite registrar los servicios de reteñidos.
INSUMOS
Formulario que muestra y permite registrar los insumos que la empresa emplea para los servicios que brinda al cliente.
ENTRADA_INSUMOS
Formulario que muestra y permite registrar la entrada de insumos a la empresa.
SALIDA_INSUMOS
Formulario que muestra y permite registrar la salida de insumos para las áreas correspondiente de acuerdo a los servicios que ofrece la empresa.

USO_INSUMOS
Formulario que muestra y permite registrar el uso de los insumos dentro de la empresa.
DEVOLUCIONES
Formulario que muestra y permite registrar las devoluciones de los insumos que quedaron después de cumplir con el servicio.
PERSONAL
Formulario que muestra y permite registrar al personal que forma parte de la empresa.
USUARIOS
Formulario que muestra y permite registrar los usuarios del sistema con sus respectivas claves.
EGRESOS
Formulario que muestra y permite registrar los egresos de dinero, cuando esta paga a sus proveedores o al personal que labora en la empresa
DESCRIPCIÓN DE LAS VARIABLES PÚBLICAS Y PRIVADAS QUE FORMAN PARTE DEL SISTEMA SEGÚN LOS FORMULARIOS DEL SISTEMA.
FORMULARIO ACCESO
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
iposicfilactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
Pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO CLIENTES
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.

reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO BOLETAS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
NROREG.-Variable Pública que permite mostrar el número de registros o servicios que tiene la boleta
CAD.- Variable Pública que permite guardar una cadena de datos de manera temporal.
CLI.- Variable Pública que permite guardar temporalmente el código del cliente.
TOTAL.-Variable Pública que permite hallar el total de la Boleta.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.

cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
fila.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO FACTURAS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
NROREG.-Variable Pública que permite mostrar el número de registros o servicios que tiene la FACTURA.
CAD.- Variable Pública que permite guardar una cadena de datos de manera temporal.
CLI.- Variable Pública que permite guardar temporalmente el código del cliente.
TOTAL.-Variable Pública que permite hallar el total de la factura.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.

fila.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO SERVICIOS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
Pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO UNIDADES
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas

Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO PRENDAS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.

FORMULARIO LAVANDERIA
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO COSTURAS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.

stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO RETENNIDO
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO INSUMOS
Variables Públicas

Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO ENTRADA INSUMOS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.

adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
DESINSU.- Variable privada que se emplea para guardar temporalmente una descripción del insumo.
UNINSU.- Variable privada que se emplea para guardar temporalmente la unidad de medida del insumo.
STOCINSU.- Variable privada que se emplea para guardar temporalmente el stock del insumo.
FORMULARIO SALIDA INSUMOS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.

pc.- Variable privada que se emplea para leer una cadena de caracteres.
DESINSU.- Variable privada que se emplea para guardar temporalmente una descripción del insumo.
UNINSU.- Variable privada que se emplea para guardar temporalmente la unidad de medida del insumo.
STOCINSU.- Variable privada que se emplea para guardar temporalmente el stock del insumo.
FORMULARIO USO INSUMOS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
DESINSU.- Variable privada que se emplea para guardar temporalmente una descripción del insumo.
UNINSU.- Variable privada que se emplea para guardar temporalmente la unidad de medida del insumo.
STOCINSU.- Variable privada que se emplea para guardar temporalmente el stock del insumo.

FORMULARIO DEVOLUCIONES
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
DESINSU.- Variable privada que se emplea para guardar temporalmente una descripción del insumo.
UNINSU.- Variable privada que se emplea para guardar temporalmente la unidad de medida del insumo.
STOCINSU.- Variable privada que se emplea para guardar temporalmente el stock del insumo.
FORMULARIO PERSONAL
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.

I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO USUARIOS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.

filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.
FORMULARIO EGRESOS
Variables Públicas
Class .- Variable Pública que permite establecer el objeto clase.
reg.- Variable Pública que permite obtener el resultado del proceso de guardar datos en la tabla.
I.-Variable Pública que permite crear un puntero para diferenciar, si se está guardando nuevos datos o Datos modificados.
B.-Variable Pública que permite guardar una cadena de datos.
Variables Privadas
Cn.- Variable privada que se emplea para establecer la conexión a la base de datos.
cmd.- Variable privada que se emplea para el uso de los comandos SQL.
stb.- Variable privada que se emplea para la concatenación de cadenas de datos.
adaptador.- Variable privada que se emplea para el ingreso, lectura, modificación y eliminación de datos.
data.- Variable privada que se emplea para hacer referencia a una tabla de datos.
dvw.- .- Variable privada que se emplea para tener una vista previa de los datos que se van a imprimir.
filactual.- Variable privada que se emplea para ubicar el puntero en un registro de datos.
pc.- Variable privada que se emplea para leer una cadena de caracteres.

CODIGO DEL SISTEMA
Imports System.DataImports System.Data.SqlClientImports System.TextImports System.IOPublicClassACCESOInherits System.Windows.Forms.FormPrivate Cn AsNewSqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=D:\LAVANDERIA\LAVADORET.MDF;integrated security=true;Connect Timeout=30;User instance=true")Private cmd AsNewSqlCommand("", Cn)Private stb AsNewStringBuilder()Private adaptador AsSqlDataAdapterPrivate data AsDataSetPrivate iPosicFilactual AsIntegerPrivate pc AsString
Sub CONTROLA() data = NewDataSet() Cn.Open() adaptador.Fill(data, "USUARIOS") Cn.Close()EndSubPrivateSub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.ClickDim X AsInteger iPosicFilactual = 0Dim oDataRow AsDataRowDoWhile iPosicFilactual <= (Data.Tables("USUARIOS").Rows.Count - 1)oDataRow = Data.Tables("USUARIOS").Rows(iPosicFilactual)If Trim(TextBox1.Text) = oDataRow("USUARIO") And Trim(TextBox2.Text) = oDataRow("CLAVE") Then X = 1Me.FindForm()FORM_PRINCIPAL.Show()If Trim(TextBox1.Text) = "ADMINISTRADOR"And Trim(TextBox2.Text) = "ADMIUS001"ThenExit DoEndIfIf Trim(TextBox1.Text) = "SECRETARIA"And Trim(TextBox2.Text) = "SECREUS001"Then FORM_PRINCIPAL.COSTURASToolStripMenuItem.Enabled = False FORM_PRINCIPAL.LAVANDERIAToolStripMenuItem.Enabled = False FORM_PRINCIPAL.PERSONALToolStripMenuItem.Enabled = False FORM_PRINCIPAL.PRENDASToolStripMenuItem.Enabled = False FORM_PRINCIPAL.RETEÑIDOSToolStripMenuItem.Enabled = False FORM_PRINCIPAL.USUARIOSToolStripMenuItem.Enabled = FalseExit DoEndIfIf Trim(TextBox1.Text) = "EMPLEADO"And Trim(TextBox2.Text) = "EMPLEUS001"Then FORM_PRINCIPAL.DEVOLUCIONESToolStripMenuItem.Enabled = False

FORM_PRINCIPAL.CLIENTESToolStripMenuItem.Enabled = False FORM_PRINCIPAL.BOLETASToolStripMenuItem.Enabled = False FORM_PRINCIPAL.EGRESOSToolStripMenuItem.Enabled = False FORM_PRINCIPAL.ENTRADAINSUMOSToolStripMenuItem.Enabled = False FORM_PRINCIPAL.FACTURASToolStripMenuItem.Enabled = False FORM_PRINCIPAL.PERSONALToolStripMenuItem.Enabled = False FORM_PRINCIPAL.INSUMOSToolStripMenuItem.Enabled = False FORM_PRINCIPAL.SALIDAINSUMOSToolStripMenuItem.Enabled = False FORM_PRINCIPAL.SERVICIOSToolStripMenuItem.Enabled = False FORM_PRINCIPAL.UNIDADESToolStripMenuItem.Enabled = False FORM_PRINCIPAL.USUARIOSToolStripMenuItem.Enabled = FalseExit DoEndIfEndIf iPosicFilactual += 1LoopIf X = 0 Then iPosicFilactual = 0MessageBox.Show("Incorrecto el Usuario o Password")EndIf Button1.Focus()EndSub
PrivateSub ACCESO_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.LoadDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM USUARIOS", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) TextBox1.Focus() CONTROLA()EndSub
PrivateSub ShowNewForm(ByVal sender AsObject, ByVal e AsEventArgs)ACCESO.Visible = False' Cree una nueva instancia del formulario secundario.Dim ChildForm AsNew System.Windows.Forms.Form' Conviértalo en un elemento secundario de este formulario MDI antes de mostrarlo.ChildForm.MdiParent = Me
m_ChildFormNumber += 1 ChildForm.Text = "Ventana "& m_ChildFormNumber
ChildForm.Show()EndSub
PrivateSub OpenFile(ByVal sender AsObject, ByVal e AsEventArgs)Dim OpenFileDialog AsNewOpenFileDialog OpenFileDialog.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocuments

OpenFileDialog.Filter = "Archivos de texto (*.txt)|*.txt|Todos los archivos (*.*)|*.*"If (OpenFileDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) ThenDim FileName AsString = OpenFileDialog.FileName' TODO: agregue código aquí para abrir el archivo.EndIfEndSub
PrivateSub SaveAsToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)Dim SaveFileDialog AsNewSaveFileDialog SaveFileDialog.InitialDirectory = My.Computer.FileSystem.SpecialDirectories.MyDocumentsSaveFileDialog.Filter = "Archivos de texto (*.txt)|*.txt|Todos los archivos (*.*)|*.*"
If (SaveFileDialog.ShowDialog(Me) = System.Windows.Forms.DialogResult.OK) ThenDim FileName AsString = SaveFileDialog.FileName' TODO: agregue código aquí para guardar el contenido actual del formulario en un archivo.EndIfEndSub
PrivateSub ExitToolsStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)Me.Close()EndSub
PrivateSub CutToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)' Utilice My.Computer.Clipboard para insertar el texto o las imágenes seleccionadas en el PortapapelesEndSub
PrivateSub CopyToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)' Utilice My.Computer.Clipboard para insertar el texto o las imágenes seleccionadas en el PortapapelesEndSub
PrivateSub PasteToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)'Utilice My.Computer.Clipboard.GetText() o My.Computer.Clipboard.GetData para recuperar la información del Portapapeles.EndSub
PrivateSub CascadeToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)Me.LayoutMdi(MdiLayout.Cascade)EndSub
PrivateSub TileVerticalToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)Me.LayoutMdi(MdiLayout.TileVertical)EndSub
PrivateSub TileHorizontalToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)

Me.LayoutMdi(MdiLayout.TileHorizontal)EndSub
PrivateSub ArrangeIconsToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)Me.LayoutMdi(MdiLayout.ArrangeIcons)EndSub
PrivateSub CloseAllToolStripMenuItem_Click(ByVal sender AsObject, ByVal e AsEventArgs)' Cierre todos los formularios secundarios del principal.ForEach ChildForm AsFormInMe.MdiChildren ChildForm.Close()NextEndSub
Private m_ChildFormNumber AsInteger
PrivateSub SALIRToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SALIRToolStripMenuItem.ClickEndEndSub
PrivateSub FACTURAToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)FACTURA.Show()EndSub
PrivateSub BOLETAToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)BOLETA.Show()EndSub
PrivateSub SERVICIOSToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SERVICIOSToolStripMenuItem1.ClickSERVICIOS.Show()EndSub
PrivateSub UNIDADESToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UNIDADESToolStripMenuItem.ClickUNIDADES.Show()EndSub
PrivateSub LAVANDERIAToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles LAVANDERIAToolStripMenuItem.ClickPRENDAS.Show()EndSub
PrivateSub COSTURASToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles COSTURASToolStripMenuItem.ClickLAVANDERIA.Show()EndSub
PrivateSub RETEÑIDOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RETEÑIDOSToolStripMenuItem.ClickCOSTURAS.Show()

EndSub
PrivateSub RETEÑIDOSToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RETEÑIDOSToolStripMenuItem1.ClickRETENNIDO.Show()EndSub
PrivateSub INSUMOSToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles INSUMOSToolStripMenuItem1.ClickINSUMOS.Show()EndSub
PrivateSub ENTRADAINSUMOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ENTRADAINSUMOSToolStripMenuItem.ClickENTRADA_INSUMOS.Show()EndSub
PrivateSub SALIDAINSUMOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SALIDAINSUMOSToolStripMenuItem.ClickSALIDA_INSUMOS.Show()EndSub
PrivateSub USOINSUMOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles USOINSUMOSToolStripMenuItem.ClickUSO_INSUMOS.Show()EndSub
PrivateSub DEVOLUCIONESToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DEVOLUCIONESToolStripMenuItem.ClickDEVOLUCIONES.Show()EndSub
PrivateSub PERSONALToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PERSONALToolStripMenuItem1.ClickPERSONAL.Show()EndSub
PrivateSub USUARIOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles USUARIOSToolStripMenuItem.ClickUSUARIOS.Show()EndSub
PrivateSub EGRESOSToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EGRESOSToolStripMenuItem.ClickEGRESOS.Show()EndSub
PrivateSub CLIENTESToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CLIENTESToolStripMenuItem1.ClickCLIENTES.Show()EndSub

PrivateSub BOLETASToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BOLETASToolStripMenuItem.ClickBOLETA.Show()EndSub
PrivateSub FACTURASToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles FACTURASToolStripMenuItem.ClickFACTURA.Show()EndSub
PrivateSub FORM_PRINCIPAL_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.LoadACCESO.Visible = FalseEndSubPrivateSub CLIENTES_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.LoadDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM CLIENTE", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) CONTROLA()Dim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext Filactual = 0CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndSub
PrivateSub BTNPRIMERO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPRIMERO.Click Filactual = 0 CARGARDATOS()EndSub
PrivateSub BTNANTERIOR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNANTERIOR.ClickIf Filactual = 0 ThenMessageBox.Show("Primer Registro")Else Filactual -= 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNSIGUIENTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNSIGUIENTE.ClickIf Filactual = (data.Tables("CLIENTE").Rows.Count - 1) ThenMessageBox.Show("Ultimo Registro")Else Filactual += 1 CARGARDATOS()EndIfEndSub

PrivateSub BTNULTIMO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNULTIMO.Click Filactual = (data.Tables("CLIENTE").Rows.Count - 1) CARGARDATOS()EndSub
PrivateSub BTNNUEVO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNNUEVO.ClickDim oDataRow AsDataRowDim NUM AsIntegerDim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext TXTCODCLI.Enabled = True Filactual = (data.Tables("CLIENTE").Rows.Count - 1) oDataRow = data.Tables("CLIENTE").Rows(Filactual) NUM = Val(oDataRow("COD_CLIENTE")) NUM = NUM + 1 TXTCODCLI.Text = NUM.ToString("000")TXTCODCLI.Enabled = False I = 1 CMBTIPODOC.Text = "Seleccione" ACTIVA() CUANDOINGRESA()BTNPERSONAL.Enabled = True BTNPERSONAL.Focus()EndSub
PrivateSub BTNCANCELAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCANCELAR.ClickFilactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() DTGPERSONAL.Visible = FalseBTNPERSONAL.Enabled = False BTNPRIMERO.Focus()EndSub
PrivateSub BTNMODIFICAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNMODIFICAR.ClickI = 2 ACTIVA() CUANDOINGRESA() TXTNOMBRES.Focus()EndSub
PrivateSub BTNGUARDAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNGUARDAR.ClickIf UCase(Mid(CMBTIPODOC.Text, 1, 1)) = "S"ThenMsgBox("Debe Selecionar Tipo de Documento")BTNGUARDAR.Focus()ElseIf I = 1 ThenIf TXTCODCLI.Text <>""And TXTPERSONAL.Text <>""And TXTAPELLIDOS.Text <>""And TXTNOMBRES.Text <>""And TXTTELEFONO.Text <>""And TXTNRODOC.Text <>""And TXTDIRECCION.Text <>""And CMBTIPODOC.Text <>""And TXTNRORUC.Text <>""ThenTry

stb.Length = 0 stb.Append("Insert Into CLIENTE (COD_CLIENTE,COD_PERSONAL,NOMBRES,APELLIDOS,DIRECCION,TELEFONO,TIPO_DOC,NRO_DOC,RUC) Values ('")stb.Append(TXTCODCLI.Text) stb.Append("','") stb.Append(TXTPERSONAL.Text) stb.Append("','") stb.Append(TXTNOMBRES.Text) stb.Append("','") stb.Append(TXTAPELLIDOS.Text) stb.Append("','") stb.Append(TXTDIRECCION.Text) stb.Append("','") stb.Append(TXTTELEFONO.Text) stb.Append("','") stb.Append(CMBTIPODOC.Text) stb.Append("','") stb.Append(TXTNRODOC.Text) stb.Append("','") stb.Append(TXTNRORUC.Text) stb.Append("')") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 ThenMsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos del Alumno")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfElseIf TXTCODCLI.Text <>""And TXTAPELLIDOS.Text <>""And TXTNOMBRES.Text <>""And TXTTELEFONO.Text <>""And TXTNRODOC.Text <>""And TXTDIRECCION.Text <>""And CMBTIPODOC.Text <>""And TXTNRORUC.Text <>""ThenTry stb.Length = 0 stb.Append("Update CLIENTE set COD_PERSONAL='") stb.Append(TXTPERSONAL.Text) stb.Append("',NOMBRES='") stb.Append(TXTNOMBRES.Text) stb.Append("',APELLIDOS='") stb.Append(TXTAPELLIDOS.Text) stb.Append("',DIRECCION='") stb.Append(TXTDIRECCION.Text) stb.Append("',TELEFONO='")

stb.Append(TXTTELEFONO.Text) stb.Append("',TIPO_DOC='") stb.Append(CMBTIPODOC.Text) stb.Append("',NRO_DOC='") stb.Append(TXTNRODOC.Text) stb.Append("',RUC='") stb.Append(TXTNRORUC.Text) stb.Append("'Where COD_CLIENTE='") stb.Append(TXTCODCLI.Text) stb.Append("'") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 ThenMsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos del Alumno")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfEndIfEndIfEndSub
PrivateSub BTNBUSCAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNBUSCAR.ClickDim X AsInteger Filactual = 0Dim oDataRow AsDataRowDoWhile Filactual <= (data.Tables("CLIENTE").Rows.Count - 1) oDataRow = data.Tables("CLIENTE").Rows(Filactual)If TXTBUSCAR.Text = oDataRow("COD_CLIENTE") ThenX = 1 CARGARDATOS() GRBCONSULTA.Visible = FalseExit DoEndIf Filactual += 1LoopIf X = 0 ThenMessageBox.Show("No Existe el Código Indicado")EndIf GRBCONSULTA.Visible = False BTNPRIMERO.Focus()EndSub

PrivateSub BTNIMPRIMIR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNIMPRIMIR.Click REPORTE.Print()EndSub
PrivateSub TXTNOMBRES_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTNOMBRES.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTNOMBRES.Text = ""Then MsgBox("Debe ingresar Datos") TXTNOMBRES.Focus()Else TXTAPELLIDOS.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 200 And a <= 250 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTAPELLIDOS_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTAPELLIDOS.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTAPELLIDOS.Text = ""Then MsgBox("Debe ingresar Datos") TXTAPELLIDOS.Focus()Else TXTDIRECCION.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 200 And a <= 250 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTDIRECCION_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTDIRECCION.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTDIRECCION.Text = ""Then MsgBox("Debe ingresar Datos") TXTDIRECCION.Focus()Else TXTTELEFONO.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 200 And a <= 250 Or a >= 48 And a <= 57 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub

PrivateSub TXTTELEFONO_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTTELEFONO.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTTELEFONO.Text = ""Then MsgBox("Debe ingresar Datos") TXTTELEFONO.Focus()Else CMBTIPODOC.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 8 Or a = 45) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub REPORTE_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles REPORTE.PrintPageDim J AsIntegerDim texto AsStringDim fuente AsNewFont("Courier New", 7) 'letra q menos consume tinta'para el color de letraDim brocha AsBrush = Brushes.Black'absisas y cordinadas para especificar la paginaDim x AsInteger = e.MarginBounds.Left = 10 'margen izquierdoDim y AsInteger = e.MarginBounds.Top = 10 'margen superior texto = " RELACION DE TODOS LOS CLIENTES DE LA EMPRESA" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "--------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "COD_CLI CODPER NOMBRES APELLIDOS DIRECCION TELEFONO TIPO_DOC NRO_DOC. NRO_RUC" e.Graphics.DrawString(texto, fuente, brocha, x, y) y = y + fuente.GetHeight stb.Length = 0 texto = "--------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y) y = y + fuente.GetHeight stb.Length = 0For J = 0 To dvw.Count - 1'el nro 5 representa el espacio del campo stb.Append(dvw(J)(0).ToString.PadRight(9)) 'anexar de derecha a izquierdastb.Append(dvw(J)(1).ToString.PadRight(9)) stb.Append(dvw(J)(2).ToString.PadRight(18)) stb.Append(dvw(J)(3).ToString.PadRight(20)) stb.Append(dvw(J)(4).ToString.PadRight(30)) stb.Append(dvw(J)(5).ToString.PadRight(12)) stb.Append(dvw(J)(6).ToString.PadRight(12))

stb.Append(dvw(J)(7).ToString.PadRight(12)) stb.Append(dvw(J)(8).ToString.PadRight(9))'devuleve todas las columnas a imprimir texto = stb.ToString'dibujar e imprimir e.Graphics.DrawString(texto, fuente, brocha, x, y)'controlar el interlineado y = y + fuente.GetHeight'q la cantidad de caracteres sea igual a cerostb.Length = 0NextEndSub
PrivateSub BTNCONSULTAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCONSULTAR.Click GRBCONSULTA.Visible = True TXTBUSCAR.Focus()EndSub
PrivateSub BTNVISTA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNVISTA.ClickDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM CLIENTE", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) data = NewDataSet() Cn.Open() adaptador.Fill(data, "CLIENTE") Cn.Close() dvw = data.Tables(0).DefaultView()Dim ppc AsNewPrintPreviewControl'vista preliminarppc.Document = REPORTE() 'REPORTE es el nombre del objeto ppc.Zoom = 1 'zoom tamaño normal ppc.Dock = DockStyle.Fill 'bordes de la paginaDim frmprevio AsNewFormWith frmprevio.Text = "VISTA PREVIA DEL REPORTE".WindowState = FormWindowState.Maximized .Controls.Add(ppc) .ShowDialog()EndWithEndSub
PrivateSub TXTNRODOC_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTNRODOC.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTNRODOC.Text = ""Then MsgBox("Debe ingresar Datos") TXTNRODOC.Focus()Else TXTNRORUC.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTNRORUC_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTNRORUC.KeyPress

Dim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTNRORUC.Text = ""Then MsgBox("Debe ingresar Datos") TXTNRORUC.Focus()Else BTNGUARDAR.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub CMBTIPODOC_GotFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles CMBTIPODOC.GotFocus CMBTIPODOC.Items.Clear() CMBTIPODOC.Items.Add("PASAPORTE") CMBTIPODOC.Items.Add("DNI") CMBTIPODOC.Items.Add("C. IDENTIDAD") CMBTIPODOC.Items.Add("**********")EndSub
PrivateSub BTNPERSONAL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPERSONAL.ClickDim oclientes AsNewSqlDataAdapter("SELECT * FROM PERSONAL", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "PERSONAL") DTGPERSONAL.DataSource = oDataSet DTGPERSONAL.DataMember = "PERSONAL" DTGPERSONAL.Visible = TrueEndSub
PrivateSub DTGPERSONAL_CurrentCellChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGPERSONAL.CurrentCellChanged TXTPERSONAL.Text = DTGPERSONAL.Item(DTGPERSONAL.CurrentRowIndex, 0) DTGPERSONAL.Visible = FalseEndSubSub TOTALES()Dim J AsInteger TOTAL = 0For J = 0 To DTGDETALLE_FAC.VisibleRowCount - 1 TOTAL = TOTAL + Val(DTGDETALLE_FAC.Item(J, 5))Next TXTIMPORTE.Text = Format(TOTAL, "## ### ##0.00") TXTIGV.Text = Format(TOTAL * 19 / 119, "## ### ##0.00") TXTTOTAL.Text = Format(TOTAL * 100 / 119, "## ### ##0.00")EndSubSub CONTROLA() data = NewDataSet() Cn.Open() adaptador.Fill(data, "FACTURA") Cn.Close()EndSubSub BUSCAR()'////// BUSCA FACTURADim lee AsSqlDataReaderDim tabla AsNewSqlCommand("select NRO_FACTURA, COD_CLIENTE, COD_PERSONAL, FECHA from FACTURA", Cn)

Cn.Open() lee = tabla.ExecuteReaderWhile lee.ReadIf Trim(lee.GetValue(0)) = Trim(CAD) Then TXTNRO_FAC.Text = lee.GetValue(0) CLI = lee.GetValue(1) TXTPERSONAL.Text = lee.GetValue(2) TXTFECHA.Text = lee.GetValue(3)Exit WhileEndIfEndWhile Cn.Close()'////// BUSCA CLIENTEDim lee1 AsSqlDataReaderDim tabla1 AsNewSqlCommand("select COD_CLIENTE, COD_PERSONAL, NOMBRES, APELLIDOS, DIRECCION, TELEFONO, TIPO_DOC, NRO_DOC, RUC from CLIENTE", Cn)Cn.Open() lee1 = tabla1.ExecuteReaderWhile lee1.ReadIf Trim(lee1.GetValue(0)) = Trim(CLI) Then TXTNOMBRES.Text = lee1.GetValue(2) TXTAPELLIDOS.Text = lee1.GetValue(3) TXTDIRECCION.Text = lee1.GetValue(4) TXTTELEFONO.Text = lee1.GetValue(5) TXTRUC.Text = lee1.GetValue(8)Exit WhileEndIfEndWhile Cn.Close()'////// LEE DETALLE stb.Length = 0stb.Append("SELECT NRO_FACTURA,COD_PRENDA,DESCRIPCION,OBSERVACION,DESTINO,COSTO,FECHA_RECEPCION,HORA_RECEPCION,ESTADO,FECHA_ENTREGA,HORA_ENTREGA from CONSULTADETAFAC ")stb.Append("WHERE NRO_FACTURA='") stb.Append(CAD) stb.Append("'")Dim oclientes AsNewSqlDataAdapter(stb.ToString, Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "CONSULTADETAFAC") DTGDETALLE_FAC.DataSource = oDataSet DTGDETALLE_FAC.DataMember = "CONSULTADETAFAC" TOTALES() NROREG = (oDataSet.Tables("CONSULTADETAFAC").Rows.Count - 1) TXTCANPRO.Text = NROREG + 1EndSubSub LEER()Dim oDataRow AsDataRow oDataRow = data.Tables("FACTURA").Rows(Fila) CAD = oDataRow("NRO_FACTURA")EndSubSub CUANDOINGRESA()
BTNNUEVO.Enabled = False BTNCLIENTES.Enabled = True BTNCANCELAR.Enabled = True BTNPERSONAL.Enabled = True BTNCONSULTA.Enabled = False BTNFACTURA.Enabled = False BTNREPORTE.Enabled = False

GRBDESPLAZAMIENTOS.Enabled = False GRBCONSULTA.Enabled = FalseEndSubSub CUANDOLEE()
BTNNUEVO.Enabled = True BTNCLIENTES.Enabled = False BTNCANCELAR.Enabled = False BTNPERSONAL.Enabled = False BTNGUARDAR.Enabled = False BTNCONSULTA.Enabled = True BTNFACTURA.Enabled = True BTNREPORTE.Enabled = True GRBDESPLAZAMIENTOS.Enabled = True GRBCONSULTA.Enabled = TrueEndSubPrivateSub BTNBUSCAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNBUSCAR.Click CAD = TXTCONS_FAC.Text Fila = Val(Mid(TXTCONS_FAC.Text, 3, 3)) - 1 BUSCAR() GRBCONSULTA.Visible = FalseEndSub
PrivateSub BTNCONSULTA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCONSULTA.Click GRBCONSULTA.Visible = TrueEndSub
PrivateSub BTNPRIMERO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPRIMERO.Click Fila = 0 LEER() BUSCAR()EndSub
PrivateSub BTNANTERIOR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNANTERIOR.ClickIf Fila = 0 ThenMessageBox.Show("Primer Registro")Else Fila -= 1 LEER() BUSCAR()EndIfEndSub
PrivateSub BTNSIGUIENTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNSIGUIENTE.Click
If Fila = (data.Tables("FACTURA").Rows.Count - 1) ThenMessageBox.Show("Ultimo Registro")Else Fila += 1 LEER() BUSCAR()EndIfEndSub
PrivateSub BTNULTIMO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNULTIMO.Click Fila = (data.Tables("FACTURA").Rows.Count - 1)

LEER() BUSCAR()EndSub
PrivateSub FACTURA_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.LoadDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM FACTURA", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) CONTROLA() CAD = "FAC-100-0001" Fila = Val(Mid(TXTCONS_FAC.Text, 3, 3)) BUSCAR() GRBCONSULTA.Visible = False BTNCLIENTES.Enabled = False BTNSERVICIOS.Enabled = False CUANDOLEE() BTNCONSULTA.Focus()EndSubPrivateSub BTNCLIENTES_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCLIENTES.ClickDim oclientes AsNewSqlDataAdapter("SELECT * FROM CLIENTE", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "CLIENTE") DTGCLIENTES.DataSource = oDataSet DTGCLIENTES.DataMember = "CLIENTE" DTGCLIENTES.Visible = TrueEndSub
PrivateSub DTGCLIENTES_CurrentCellChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGCLIENTES.CurrentCellChanged TXTNOMBRES.Text = DTGCLIENTES.Item(DTGCLIENTES.CurrentRowIndex, 1) TXTAPELLIDOS.Text = DTGCLIENTES.Item(DTGCLIENTES.CurrentRowIndex, 2) TXTDIRECCION.Text = DTGCLIENTES.Item(DTGCLIENTES.CurrentRowIndex, 3) TXTTELEFONO.Text = DTGCLIENTES.Item(DTGCLIENTES.CurrentRowIndex, 4) TXTRUC.Text = DTGCLIENTES.Item(DTGCLIENTES.CurrentRowIndex, 5) CLI = DTGCLIENTES.Item(DTGCLIENTES.CurrentRowIndex, 0) DTGCLIENTES.Visible = FalseEndSub
PrivateSub BTNNUEVO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNNUEVO.ClickDim oDataRow AsDataRowDim NUM AsIntegerDim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext Fila = (data.Tables("FACTURA").Rows.Count - 1) oDataRow = data.Tables("FACTURA").Rows(Fila) NUM = Val(Mid(oDataRow("NRO_FACTURA"), 9, 4)) NUM = NUM + 1 TXTNRO_FAC.Text = "FAC-100-" + NUM.ToString("0000") TXTFECHA.Text = DateTime.Today BTNCLIENTES.Enabled = True

BTNSERVICIOS.Enabled = TrueDim oclientes AsNewSqlDataAdapter("SELECT * FROM EVENTUAL_FACTURA", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "EVENTUAL_FACTURA") DTGDETALLE_FAC.DataSource = oDataSetDTGDETALLE_FAC.DataMember = "EVENTUAL_FACTURA" CUANDOINGRESA()NROREG = 0 BTNCLIENTES.Focus()
EndSub
PrivateSub BTNSERVICIOS_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNSERVICIOS.ClickTXTDESCRIPCION.Text = "" TXTOBSERVACIONES.Text = "" TXTDESTINO.Text = ""TXTCOD_PRE.Text = "" TXTCOSTO.Text = "" BTNAGREGAR.Enabled = TrueDim oclientes AsNewSqlDataAdapter("SELECT * FROM PRENDA", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "PRENDA") DTGPRENDAS.DataSource = oDataSet DTGPRENDAS.DataMember = "PRENDA" DTGPRENDAS.Visible = TrueEndSub
PrivateSub BTNCANCELAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCANCELAR.Click CAD = "FAC-100-0001" Fila = Val(Mid(TXTCONS_FAC.Text, 9, 4)) - 1BUSCAR() GRBCONSULTA.Visible = False BTNCLIENTES.Enabled = False BTNSERVICIOS.Enabled = False CUANDOLEE()BTNGUARDAR.Enabled = False BTNCANCELAR.Enabled = False DTGPRENDAS.Visible = False BTNAGREGAR.Enabled = False BTNCONSULTA.Focus()EndSub
PrivateSub DTGPRENDAS_Click(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGPRENDAS.Click BTNAGREGAR.Enabled = False DTGPRENDAS.Visible = FalseEndSub
PrivateSub DTGPRENDAS_CurrentCellChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGPRENDAS.CurrentCellChanged TXTCOD_PRE.Text = DTGPRENDAS.Item(DTGPRENDAS.CurrentRowIndex, 0) TXTDESCRIPCION.Text = DTGPRENDAS.Item(DTGPRENDAS.CurrentRowIndex, 3) TXTOBSERVACIONES.Text = DTGPRENDAS.Item(DTGPRENDAS.CurrentRowIndex, 4) TXTDESTINO.Text = DTGPRENDAS.Item(DTGPRENDAS.CurrentRowIndex, 5)

TXTCOSTO.Text = Format(DTGPRENDAS.Item(DTGPRENDAS.CurrentRowIndex, 6), "# ##0.00")DTGPRENDAS.Visible = False BTNAGREGAR.Focus()EndSub
PrivateSub BTNGUARDAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNGUARDAR.ClickIf TXTNOMBRES.Text <>""And TXTPERSONAL.Text <>""Then'////GUARDA DATOS DE LA FACTURATry stb.Length = 0 stb.Append("Insert Into FACTURA (NRO_FACTURA,COD_CLIENTE,COD_PERSONAL,FECHA) Values ('") stb.Append(TXTNRO_FAC.Text) stb.Append("','") stb.Append(CLI) stb.Append("','") stb.Append(TXTPERSONAL.Text) stb.Append("','") stb.Append(TXTFECHA.Text) stb.Append("')") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()Catch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA()EndTry
'////GUARDA DETALLE DE LA FACTURA'TryDim J AsIntegerFor J = 0 To 6If Trim(DTGDETALLE_FAC.Item(J, 0)) <>""Then stb.Length = 0 stb.Append("Insert Into DETALLE_FACTURA (NRO_FACTURA,COD_PRENDA,COSTO) Values ('") stb.Append(TXTNRO_FAC.Text) stb.Append("','") stb.Append(DTGDETALLE_FAC.Item(J, 1)) stb.Append("','") stb.Append(Val(DTGDETALLE_FAC.Item(J, 5))) stb.Append("')") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery() Cn.Close() stb.Length = 0 CONTROLA()EndIfNext J
'////// ACTUALIZA ESTADO EN LA TABLA PRENDADim H AsIntegerDim D1, D2, D3, D4, D5, D6, D8, D9, D10, D11, D12 AsStringDim V1 AsDoubleFor J = 0 To 9

If Trim(DTGDETALLE_FAC.Item(J, 1)) = ""ThenExit ForElseFor H = 0 To 32000If Trim(DTGDETALLE_FAC.Item(J, 1)) = Trim(DTGPRENDAS.Item(H, 0)) Then D1 = DTGPRENDAS.Item(H, 0) D2 = DTGPRENDAS.Item(H, 1) D3 = DTGPRENDAS.Item(H, 2) D4 = DTGPRENDAS.Item(H, 3) D5 = DTGPRENDAS.Item(H, 4) D6 = DTGPRENDAS.Item(H, 5) V1 = Val(DTGPRENDAS.Item(H, 6)) D8 = DTGPRENDAS.Item(H, 7) D9 = DTGPRENDAS.Item(H, 8) D10 = DTGPRENDAS.Item(H, 9) D11 = DTGPRENDAS.Item(H, 10) D12 = DTGPRENDAS.Item(H, 11) Fila += 1 D10 = "ENTREGADO" D11 = Date.Today D12 = Mid(TimeOfDay, 1, 5) Cn.Close() stb.Length = 0 stb.Append("Update PRENDA set COD_CLIENTE='") stb.Append(D2) stb.Append("',COD_PERSONAL='") stb.Append(D3) stb.Append("',DESCRIPCION='") stb.Append(D4) stb.Append("',OBSERVACION='") stb.Append(D5) stb.Append("',DESTINO='") stb.Append(D6) stb.Append("',COSTO='") stb.Append(V1) stb.Append("',FECHA_RECEPCION='") stb.Append(D8) stb.Append("',HORA_RECEPCION='") stb.Append(D9) stb.Append("',ESTADO='") stb.Append(D10) stb.Append("',FECHA_ENTREGA='") stb.Append(D11) stb.Append("',HORA_ENTREGA='") stb.Append(D12) stb.Append("'Where COD_PRENDA='") stb.Append(D1) stb.Append("'") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery() Cn.Close()Exit ForEndIfNext HEndIfNext J CUANDOLEE()BTNGUARDAR.Enabled = False BTNCANCELAR.Enabled = False BTNPRIMERO.Focus()

Else MsgBox("LOS DATOS DE LA FACTURA ESTAN INCOMPLETOS")EndIfEndSub
PrivateSub BTNAGREGAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNAGREGAR.Click DTGDETALLE_FAC.Item(NROREG, 0) = TXTNRO_FAC.Text DTGDETALLE_FAC.Item(NROREG, 1) = TXTCOD_PRE.Text DTGDETALLE_FAC.Item(NROREG, 2) = TXTDESCRIPCION.Text DTGDETALLE_FAC.Item(NROREG, 3) = TXTOBSERVACIONES.Text DTGDETALLE_FAC.Item(NROREG, 4) = TXTDESTINO.Text DTGDETALLE_FAC.Item(NROREG, 5) = Val(TXTCOSTO.Text) NROREG = NROREG + 1 TOTALES() BTNAGREGAR.Enabled = False BTNELIMINAR.Enabled = True BTNGUARDAR.Enabled = True BTNCANCELAR.Enabled = True BTNSERVICIOS.Focus()EndSub
PrivateSub BTNELIMINAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNELIMINAR.ClickDim J AsInteger DTGDETALLE_FAC.Item(DTGDETALLE_FAC.CurrentRowIndex, 0) = "" DTGDETALLE_FAC.Item(DTGDETALLE_FAC.CurrentRowIndex, 1) = "" DTGDETALLE_FAC.Item(DTGDETALLE_FAC.CurrentRowIndex, 2) = "" DTGDETALLE_FAC.Item(DTGDETALLE_FAC.CurrentRowIndex, 3) = "" DTGDETALLE_FAC.Item(DTGDETALLE_FAC.CurrentRowIndex, 4) = "" DTGDETALLE_FAC.Item(DTGDETALLE_FAC.CurrentRowIndex, 5) = 0For J = DTGDETALLE_FAC.CurrentRowIndex To 8 DTGDETALLE_FAC.Item(J, 0) = DTGDETALLE_FAC.Item(J + 1, 0) DTGDETALLE_FAC.Item(J, 1) = DTGDETALLE_FAC.Item(J + 1, 1) DTGDETALLE_FAC.Item(J, 2) = DTGDETALLE_FAC.Item(J + 1, 2) DTGDETALLE_FAC.Item(J, 3) = DTGDETALLE_FAC.Item(J + 1, 3) DTGDETALLE_FAC.Item(J, 4) = DTGDETALLE_FAC.Item(J + 1, 4) DTGDETALLE_FAC.Item(J, 5) = DTGDETALLE_FAC.Item(J + 1, 5)Next NROREG = NROREG - 1If NROREG < 0 Then NROREG = 0 BTNELIMINAR.Enabled = False BTNGUARDAR.Enabled = FalseEndIf TOTALES()EndSub
PrivateSub BTNPERSONAL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPERSONAL.ClickDim oclientes AsNewSqlDataAdapter("SELECT * FROM PERSONAL", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "PERSONAL") DTGPERSONAL.DataSource = oDataSet DTGPERSONAL.DataMember = "PERSONAL" DTGPERSONAL.Visible = TrueEndSub
PrivateSub DTGPERSONAL_CurrentCellChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGPERSONAL.CurrentCellChanged TXTPERSONAL.Text = DTGPERSONAL.Item(DTGPERSONAL.CurrentRowIndex, 0)

DTGPERSONAL.Visible = FalseEndSub
PrivateSub BTNREPORTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNREPORTE.ClickDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM REPORTEFAC ORDER BY FECHA", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) data = NewDataSet() Cn.Open() adaptador.Fill(data, "REPORTEFAC") Cn.Close() dvw = data.Tables(0).DefaultView()Dim ppc AsNewPrintPreviewControl'vista preliminarppc.Document = IMPRIMEFACTURA() 'print es el nombre del objeto ppc.Zoom = 1 'zoom tamaño normal ppc.Dock = DockStyle.Fill 'bordes de la paginaDim frmprevio AsNewFormWith frmprevio.Text = "VISTA PREVIA DEL REPORTE".WindowState = FormWindowState.Maximized .Controls.Add(ppc) .ShowDialog()EndWithEndSub
PrivateSub BTN_IMP_REP_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTN_IMP_REP.ClickIf dvw.Count > 1 Then IMPRIMEFACTURA.Print()Else MsgBox("Debe pulsar primero el Botón REPORTE o no hay Registros en la Tabla", MsgBoxStyle.Question)EndIfEndSub
PrivateSub BTNFACTURA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNFACTURA.ClickDim ppc AsNewPrintPreviewControl'vista preliminarppc.Document = MUESTRAFACTURA() 'print es el nombre del objeto ppc.Zoom = 1 'zoom tamaño normal ppc.Dock = DockStyle.Fill 'bordes de la paginaDim frmprevio AsNewFormWith frmprevio .WindowState = FormWindowState.Maximized .Controls.Add(ppc) .ShowDialog()EndWithEndSub
PrivateSub BTN_IMP_FAC_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTN_IMP_FAC.Click MUESTRAFACTURA.Print()EndSub
PrivateSub BTNREPORTE_LostFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles BTNREPORTE.LostFocusDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM FACTURA", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador)

CONTROLA()EndSub
PrivateSub IMPRIMEFACTURA_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles IMPRIMEFACTURA.PrintPageDim i AsIntegerDim texto AsStringDim fuente AsNewFont("Courier New", 12) 'letra q menos consume tinta'para el color de letraDim brocha AsBrush = Brushes.Black'absisas y cordinadas para especificar la paginaDim x AsInteger = e.MarginBounds.Left = 10 'margen izquierdoDim y AsInteger = e.MarginBounds.Top = 10 'margen superior texto = " LISTA DE LAS FACTURAS ORDENADAS POR FECHA" e.Graphics.DrawString(texto, fuente, brocha, x, y) y = y + fuente.GetHeight fuente = NewFont("Courier New", 7) 'letra q menos consume tinta stb.Length = 0 texto = "-------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "CCLI NOMBRES APELLIDOS NUMFAC FECHA COD_PRE DESCRIPCION DESTINO COSTO" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "-------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0For i = 0 To dvw.Count - 1'el nro 5 representa el espacio del campo stb.Append(dvw(i)(0).ToString.PadRight(5)) 'anexar de derecha a izquierdastb.Append(dvw(i)(1).ToString.PadRight(18)) stb.Append(dvw(i)(2).ToString.PadRight(18)) stb.Append(dvw(i)(3).ToString.PadRight(14)) stb.Append(dvw(i)(4).ToString.PadRight(12)) stb.Append(dvw(i)(5).ToString.PadRight(10)) stb.Append(dvw(i)(6).ToString.PadRight(35)) stb.Append(dvw(i)(7).ToString.PadRight(15)) stb.Append(dvw(i)(8).ToString.PadRight(8))'devuleve todas las columnas a imprimir texto = stb.ToString'dibujar e imprimir e.Graphics.DrawString(texto, fuente, brocha, x, y)'controlar el interlineado y = y + fuente.GetHeight'q la cantidad de caracteres sea igual a cerostb.Length = 0NextEndSub

PrivateSub MUESTRAFACTURA_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles MUESTRAFACTURA.PrintPageDim i AsIntegerDim texto AsStringDim fuente AsNewFont("Courier New", 24)Dim brocha AsBrush = Brushes.BlackDim x AsInteger = e.MarginBounds.Left = 10 'margen izquierdoDim y AsInteger = e.MarginBounds.Top = 10 'margen superior texto = " FACTURA "e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + 30 stb.Length = 0Dim fuente1 AsNewFont("Courier New", 10)texto = " " + Label9.Text + " FACURA NRO. " + TXTNRO_FAC.Text e.Graphics.DrawString(texto, fuente1, brocha, x, y) y = y + 12 stb.Length = 0 texto = " " + Label10.Text + " Fecha : " + TXTFECHA.Text e.Graphics.DrawString(texto, fuente1, brocha, x, y) y = y + 12 stb.Length = 0 texto = " " + Label11.Text e.Graphics.DrawString(texto, fuente1, brocha, x, y) y = y + 12 stb.Length = 0 texto = " " + Label12.Text e.Graphics.DrawString(texto, fuente1, brocha, x, y) y = y + 25 stb.Length = 0 texto = " NOMBRES APELLIDOS" e.Graphics.DrawString(texto, fuente1, brocha, x, y) y = y + 12 stb.Length = 0 texto = " " + TXTNOMBRES.Text + " " + TXTAPELLIDOS.Text e.Graphics.DrawString(texto, fuente1, brocha, x, y) y = y + 25 stb.Length = 0 texto = " DIRECCION TELEFONO RUC" e.Graphics.DrawString(texto, fuente1, brocha, x, y) y = y + 12 stb.Length = 0 texto = " " + TXTDIRECCION.Text + " " + TXTTELEFONO.Text + " " + TXTRUC.Text e.Graphics.DrawString(texto, fuente1, brocha, x, y)y = y + 25 stb.Length = 0Dim fuente2 AsNewFont("Courier New", 8)texto = " ---------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente2, brocha, x, y) y = y + 12 stb.Length = 0 texto = " NRO_FACTURA DESCRIPCION DESTINO COSTO ESTADO" e.Graphics.DrawString(texto, fuente2, brocha, x, y)

y = y + 12 stb.Length = 0 texto = " ---------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente2, brocha, x, y)y = y + 12 stb.Length = 0For i = 0 To NROREG stb.Append(" ") stb.Append(DTGDETALLE_FAC.Item(i, 0).ToString.PadRight(15)) stb.Append(DTGDETALLE_FAC.Item(i, 2).ToString.PadRight(40)) stb.Append(DTGDETALLE_FAC.Item(i, 4).ToString.PadRight(18)) stb.Append(DTGDETALLE_FAC.Item(i, 5).ToString.PadRight(10)) stb.Append(DTGDETALLE_FAC.Item(i, 8).ToString.PadRight(8))texto = stb.ToString e.Graphics.DrawString(texto, fuente2, brocha, x, y) y = y + 12stb.Length = 0Next texto = " " e.Graphics.DrawString(texto, fuente2, brocha, x, y)y = y + 12 stb.Length = 0 texto = " TOTAL : " + Format(TOTAL * 100 / 119, "##,###,##0.00") e.Graphics.DrawString(texto, fuente2, brocha, x, y) y = y + 12stb.Length = 0 texto = " IGV : " + Format(TOTAL * 19 / 119, "##,###,##0.00")e.Graphics.DrawString(texto, fuente2, brocha, x, y) y = y + 12 stb.Length = 0 texto = " NETO A PAGAR : " + Format(TOTAL, "##,###,##0.00") e.Graphics.DrawString(texto, fuente2, brocha, x, y)y = y + 12 stb.Length = 0EndSubSub CONTROLA() data = NewDataSet() Cn.Open() adaptador.Fill(data, "PRENDA") Cn.Close()EndSubSub CARGARDATOS()Dim oDataRow AsDataRow oDataRow = data.Tables("PRENDA").Rows(Filactual) TXTCODPRENDA.Text = oDataRow("COD_PRENDA") TXTCLIENTE.Text = oDataRow("COD_CLIENTE") TXTPERSONAL.Text = oDataRow("COD_PERSONAL") TXTDESCRIPCION.Text = oDataRow("DESCRIPCION") TXTOBSERVACION.Text = oDataRow("OBSERVACION") CMBDESTINO.Text = oDataRow("DESTINO") TXTCOSTO.Text = Format(oDataRow("COSTO"), "##,##0.00") DTPRECEP.Value = oDataRow("FECHA_RECEPCION")

TXTHORAREC.Text = oDataRow("HORA_RECEPCION") CMBESTADO.Text = oDataRow("ESTADO") DTPENTRE.Value = oDataRow("FECHA_ENTREGA") TXTHORAENT.Text = oDataRow("HORA_ENTREGA")EndSubSub ACTIVA() TXTDESCRIPCION.Enabled = True TXTOBSERVACION.Enabled = True CMBDESTINO.Enabled = True TXTCOSTO.Enabled = True DTPRECEP.Enabled = True TXTHORAREC.Enabled = True CMBESTADO.Enabled = True DTPENTRE.Enabled = True TXTHORAENT.Enabled = True BTNCLIENTE.Enabled = True BTNPERSONAL.Enabled = TrueEndSubSub DESACTIVA() TXTDESCRIPCION.Enabled = False TXTOBSERVACION.Enabled = False CMBDESTINO.Enabled = False TXTCOSTO.Enabled = False DTPRECEP.Enabled = False TXTHORAREC.Enabled = False CMBESTADO.Enabled = False DTPENTRE.Enabled = False TXTHORAENT.Enabled = False BTNCLIENTE.Enabled = False BTNPERSONAL.Enabled = FalseEndSubSub CUANDOLEE() GRBDESPLAZAR.Enabled = True BTNNUEVO.Enabled = True BTNCANCELAR.Enabled = False BTNMODIFICAR.Enabled = True BTNGUARDAR.Enabled = False BTNCONSULTAR.Enabled = True BTNVISTA.Enabled = True BTNIMPRIMIR.Enabled = TrueEndSubSub CUANDOINGRESA() GRBDESPLAZAR.Enabled = False BTNNUEVO.Enabled = False BTNCANCELAR.Enabled = True BTNMODIFICAR.Enabled = False BTNGUARDAR.Enabled = True BTNCONSULTAR.Enabled = False BTNVISTA.Enabled = False BTNIMPRIMIR.Enabled = FalseEndSubPrivateSub BTNCLIENTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCLIENTE.ClickDim oclientes AsNewSqlDataAdapter("SELECT * FROM CLIENTE", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "CLIENTE") DTGCLIENTES.DataSource = oDataSet DTGCLIENTES.DataMember = "CLIENTE" DTGCLIENTES.Visible = TrueEndSub

PrivateSub BTNPERSONAL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPERSONAL.ClickDim oclientes AsNewSqlDataAdapter("SELECT * FROM PERSONAL", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "PERSONAL") DTGPERSONAL.DataSource = oDataSet DTGPERSONAL.DataMember = "PERSONAL" DTGPERSONAL.Visible = TrueEndSub
PrivateSub PRENDAS_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.LoadDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM PRENDA", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) CONTROLA()Dim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext Filactual = 0CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndSub
PrivateSub BTNPRIMERO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPRIMERO.Click Filactual = 0 CARGARDATOS()EndSub
PrivateSub BTNANTERIOR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNANTERIOR.ClickIf Filactual = 0 ThenMessageBox.Show("Primer Registro")Else Filactual -= 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNSIGUIENTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNSIGUIENTE.ClickIf Filactual = (data.Tables("PRENDA").Rows.Count - 1) ThenMessageBox.Show("Ultimo Registro")Else Filactual += 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNULTIMO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNULTIMO.ClickFilactual = (data.Tables("PRENDA").Rows.Count - 1) CARGARDATOS()EndSub

PrivateSub BTNNUEVO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNNUEVO.ClickDim oDataRow AsDataRowDim NUM AsIntegerDim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext TXTHORAREC.Text = "" TXTHORAENT.Text = "" TXTCODPRENDA.Enabled = True Filactual = (data.Tables("PRENDA").Rows.Count - 1) oDataRow = data.Tables("PRENDA").Rows(Filactual) NUM = Val(oDataRow("COD_PRENDA")) NUM = NUM + 1 TXTCODPRENDA.Text = NUM.ToString("00000") TXTCODPRENDA.Enabled = False DTPENTRE.Value = Date.Now.Date DTPRECEP.Value = Date.Now.DateI = 1 CMBDESTINO.Text = "Seleccione" CMBESTADO.Text = "Seleccione" ACTIVA() CUANDOINGRESA() BTNCLIENTE.Focus()EndSub
PrivateSub BTNCANCELAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCANCELAR.ClickFilactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNCLIENTE.Enabled = FalseBTNPERSONAL.Enabled = False DTGCLIENTES.Visible = False DTGPERSONAL.Visible = False BTNPRIMERO.Focus()EndSub
PrivateSub BTNMODIFICAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNMODIFICAR.ClickI = 2 ACTIVA() CUANDOINGRESA() CMBESTADO.Focus()EndSub
PrivateSub BTNGUARDAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNGUARDAR.ClickDim REC, ENT AsString REC = DTPRECEP.Value.Date ENT = DTPENTRE.Value.DateIf I = 1 ThenIf TXTCODPRENDA.Text <>""And TXTCLIENTE.Text <>""And TXTPERSONAL.Text <>""And TXTDESCRIPCION.Text <>""And TXTOBSERVACION.Text <>""And TXTCOSTO.Text <>""And TXTHORAREC.Text <>""And TXTHORAENT.Text <>""And CMBDESTINO.Text <>""And CMBESTADO.Text <>""ThenTry stb.Length = 0

stb.Append("Insert Into PRENDA (COD_PRENDA,COD_CLIENTE,COD_PERSONAL,DESCRIPCION,OBSERVACION,DESTINO,COSTO,FECHA_RECEPCION,HORA_RECEPCION,ESTADO,FECHA_ENTREGA,HORA_ENTREGA) Values ('")stb.Append(TXTCODPRENDA.Text) stb.Append("','") stb.Append(TXTCLIENTE.Text) stb.Append("','") stb.Append(TXTPERSONAL.Text) stb.Append("','") stb.Append(TXTDESCRIPCION.Text) stb.Append("','") stb.Append(TXTOBSERVACION.Text) stb.Append("','") stb.Append(CMBDESTINO.Text) stb.Append("','") stb.Append(Val(TXTCOSTO.Text)) stb.Append("','") stb.Append(Trim(REC)) stb.Append("','") stb.Append(TXTHORAREC.Text) stb.Append("','") stb.Append(CMBESTADO.Text) stb.Append("','") stb.Append(Trim(ENT)) stb.Append("','") stb.Append(TXTHORAENT.Text) stb.Append("')") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 Then MsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos del Alumno")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfElseIf TXTCODPRENDA.Text <>""And TXTCLIENTE.Text <>""And TXTPERSONAL.Text <>""And TXTDESCRIPCION.Text <>""And TXTOBSERVACION.Text <>""And TXTCOSTO.Text <>""And TXTHORAREC.Text <>""And TXTHORAENT.Text <>""And CMBDESTINO.Text <>""And CMBESTADO.Text <>""ThenTry stb.Length = 0 stb.Append("Update PRENDA set COD_CLIENTE='") stb.Append(TXTCLIENTE.Text) stb.Append("',COD_PERSONAL='") stb.Append(TXTPERSONAL.Text)

stb.Append("',DESCRIPCION='") stb.Append(TXTDESCRIPCION.Text) stb.Append("',OBSERVACION='") stb.Append(TXTOBSERVACION.Text) stb.Append("',DESTINO='") stb.Append(CMBDESTINO.Text) stb.Append("',COSTO='") stb.Append(Val(TXTCOSTO.Text)) stb.Append("',FECHA_RECEPCION='") stb.Append(Trim(REC)) stb.Append("',HORA_RECEPCION='") stb.Append(TXTHORAREC.Text) stb.Append("',ESTADO='") stb.Append(CMBESTADO.Text)stb.Append("',FECHA_ENTREGA='")stb.Append(Trim(ENT)) stb.Append("',HORA_ENTREGA='") stb.Append(TXTHORAENT.Text) stb.Append("'Where COD_PRENDA='") stb.Append(TXTCODPRENDA.Text) stb.Append("'") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 ThenMsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos del Alumno")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfEndIfEndSub
PrivateSub BTNBUSCAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNBUSCAR.ClickDim X AsInteger Filactual = 0Dim oDataRow AsDataRowDoWhile Filactual <= (data.Tables("PRENDA").Rows.Count - 1) oDataRow = data.Tables("PRENDA").Rows(Filactual)If TXTBUSCAR.Text = oDataRow("COD_PRENDA") ThenX = 1 CARGARDATOS() GRBCONSULTA.Visible = FalseExit DoEndIf Filactual += 1Loop

If X = 0 ThenMessageBox.Show("No Existe el Código Indicado")EndIf GRBCONSULTA.Visible = False BTNPRIMERO.Focus()EndSub
PrivateSub REPORTE_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles REPORTE.PrintPageDim J AsIntegerDim texto AsStringDim fuente AsNewFont("Courier New", 7) 'letra q menos consume tinta'para el color de letraDim brocha AsBrush = Brushes.Black'absisas y cordinadas para especificar la paginaDim x AsInteger = e.MarginBounds.Left = 10 'margen izquierdoDim y AsInteger = e.MarginBounds.Top = 10 'margen superior texto = " LISTA DE PRENDAS RECIBIDAS, EN PROCESO Y ENTREGADAS" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "---------------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "COD_PRE COD_CLI COD_PER DESCRIPCION OBSERVACIONES DESTINO COSTO FECHA_REC HO_REC ESTADO FECHA_ENT HO_ENT" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "---------------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0For J = 0 To dvw.Count - 1'el nro 5 representa el espacio del campo stb.Append(dvw(J)(0).ToString.PadRight(8)) 'anexar de derecha a izquierdastb.Append(dvw(J)(1).ToString.PadRight(8)) stb.Append(dvw(J)(2).ToString.PadRight(9)) stb.Append(dvw(J)(3).ToString.PadRight(30)) stb.Append(dvw(J)(4).ToString.PadRight(20)) stb.Append(dvw(J)(5).ToString.PadRight(10)) stb.Append(dvw(J)(6).ToString.PadRight(7)) stb.Append(dvw(J)(7).ToString.PadRight(12)) stb.Append(dvw(J)(8).ToString.PadRight(7)) stb.Append(dvw(J)(9).ToString.PadRight(12)) stb.Append(dvw(J)(10).ToString.PadRight(12)) stb.Append(dvw(J)(11).ToString.PadRight(9))'devuleve todas las columnas a imprimir texto = stb.ToString'dibujar e imprimir e.Graphics.DrawString(texto, fuente, brocha, x, y)

'controlar el interlineado y = y + fuente.GetHeight'q la cantidad de caracteres sea igual a cerostb.Length = 0NextEndSub
PrivateSub BTNCONSULTAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCONSULTAR.Click GRBCONSULTA.Visible = True TXTBUSCAR.Focus()EndSub
PrivateSub BTNVISTA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNVISTA.ClickDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM PRENDA", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) data = NewDataSet() Cn.Open()adaptador.Fill(data, "PRENDA") Cn.Close() dvw = data.Tables(0).DefaultView()Dim ppc AsNewPrintPreviewControl'vista preliminar ppc.Document = REPORTE() 'REPORTE es el nombre del objeto ppc.Zoom = 1 'zoom tamaño normal ppc.Dock = DockStyle.Fill 'bordes de la paginaDim frmprevio AsNewFormWith frmprevio.Text = "VISTA PREVIA DEL REPORTE".WindowState = FormWindowState.Maximized .Controls.Add(ppc) .ShowDialog()EndWithEndSub
PrivateSub BTNIMPRIMIR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNIMPRIMIR.Click REPORTE.Print()EndSub
PrivateSub TXTDESCRIPCION_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTDESCRIPCION.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTDESCRIPCION.Text = ""Then MsgBox("Debe ingresar Datos") TXTDESCRIPCION.Focus()Else TXTOBSERVACION.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 48 And a <= 57 Or a >= 200 And a <= 250 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub

PrivateSub TXTOBSERVACION_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTOBSERVACION.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTOBSERVACION.Text = ""Then MsgBox("Debe ingresar Datos") TXTOBSERVACION.Focus()Else CMBDESTINO.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 48 And a <= 57 Or a >= 200 And a <= 250 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTCOSTO_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTCOSTO.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTCOSTO.Text = ""Then MsgBox("Debe ingresar Datos") TXTCOSTO.Focus()Else CMBESTADO.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 46 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub DTGPERSONAL_CurrentCellChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGPERSONAL.CurrentCellChanged TXTPERSONAL.Text = DTGPERSONAL.Item(DTGPERSONAL.CurrentRowIndex, 0) DTGPERSONAL.Visible = FalseEndSub
PrivateSub DTGCLIENTES_CurrentCellChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGCLIENTES.CurrentCellChanged TXTCLIENTE.Text = DTGCLIENTES.Item(DTGCLIENTES.CurrentRowIndex, 0) DTGCLIENTES.Visible = FalseEndSub
PrivateSub DTPRECEP_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DTPRECEP.ValueChangedDim RECEP AsString RECEP = TimeOfDay TXTHORAREC.Text = Mid(Trim(RECEP), 1, 5)EndSub
PrivateSub CMBESTADO_GotFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles CMBESTADO.GotFocusCMBESTADO.Items.Clear()

CMBESTADO.Items.Add("RECIBIDO") CMBESTADO.Items.Add("LAVANDERIA") CMBESTADO.Items.Add("RETEÑIDO") CMBESTADO.Items.Add("ENTREGAR") CMBESTADO.Items.Add("ENTREGADO")CMBESTADO.Items.Add("COSTURA")EndSub
PrivateSub DTPENTRE_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DTPENTRE.ValueChangedDim HORA AsInteger HORA = Val(Mid(TXTHORAREC.Text, 1, 2)) HORA = HORA + 6If HORA > 12 Then HORA = 12EndIf TXTHORAENT.Text = Trim(HORA.ToString) + ":" + Mid(TXTHORAREC.Text, 4, 2)
EndSub
PrivateSub CMBDESTINO_GotFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles CMBDESTINO.GotFocus CMBDESTINO.Items.Clear() CMBDESTINO.Items.Add("LAVANDERIA") CMBDESTINO.Items.Add("RETEÑIDO") CMBDESTINO.Items.Add("DESTINO")EndSubSub CONTROLA() data = NewDataSet() Cn.Open() adaptador.Fill(data, "PRENDA") Cn.Close()EndSubSub CARGARDATOS()Dim oDataRow AsDataRow oDataRow = data.Tables("PRENDA").Rows(Filactual) TXTCODPRENDA.Text = oDataRow("COD_PRENDA") TXTCLIENTE.Text = oDataRow("COD_CLIENTE") TXTPERSONAL.Text = oDataRow("COD_PERSONAL") TXTDESCRIPCION.Text = oDataRow("DESCRIPCION") TXTOBSERVACION.Text = oDataRow("OBSERVACION") CMBDESTINO.Text = oDataRow("DESTINO") TXTCOSTO.Text = Format(oDataRow("COSTO"), "##,##0.00") DTPRECEP.Value = oDataRow("FECHA_RECEPCION") TXTHORAREC.Text = oDataRow("HORA_RECEPCION") CMBESTADO.Text = oDataRow("ESTADO") DTPENTRE.Value = oDataRow("FECHA_ENTREGA") TXTHORAENT.Text = oDataRow("HORA_ENTREGA")EndSubSub ACTIVA() TXTDESCRIPCION.Enabled = True TXTOBSERVACION.Enabled = True CMBDESTINO.Enabled = True TXTCOSTO.Enabled = True DTPRECEP.Enabled = True TXTHORAREC.Enabled = True CMBESTADO.Enabled = True DTPENTRE.Enabled = True TXTHORAENT.Enabled = True BTNCLIENTE.Enabled = True BTNPERSONAL.Enabled = True

EndSubSub DESACTIVA() TXTDESCRIPCION.Enabled = False TXTOBSERVACION.Enabled = False CMBDESTINO.Enabled = False TXTCOSTO.Enabled = False DTPRECEP.Enabled = False TXTHORAREC.Enabled = False CMBESTADO.Enabled = False DTPENTRE.Enabled = False TXTHORAENT.Enabled = False BTNCLIENTE.Enabled = False BTNPERSONAL.Enabled = FalseEndSubSub CUANDOLEE() GRBDESPLAZAR.Enabled = True BTNNUEVO.Enabled = True BTNCANCELAR.Enabled = False BTNMODIFICAR.Enabled = True BTNGUARDAR.Enabled = False BTNCONSULTAR.Enabled = True BTNVISTA.Enabled = True BTNIMPRIMIR.Enabled = TrueEndSubSub CUANDOINGRESA() GRBDESPLAZAR.Enabled = False BTNNUEVO.Enabled = False BTNCANCELAR.Enabled = True BTNMODIFICAR.Enabled = False BTNGUARDAR.Enabled = True BTNCONSULTAR.Enabled = False BTNVISTA.Enabled = False BTNIMPRIMIR.Enabled = FalseEndSubPrivateSub BTNCLIENTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCLIENTE.ClickDim oclientes AsNewSqlDataAdapter("SELECT * FROM CLIENTE", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "CLIENTE") DTGCLIENTES.DataSource = oDataSet DTGCLIENTES.DataMember = "CLIENTE" DTGCLIENTES.Visible = TrueEndSub
PrivateSub BTNPERSONAL_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPERSONAL.ClickDim oclientes AsNewSqlDataAdapter("SELECT * FROM PERSONAL", Cn)Dim oDataSet AsNewDataSet() oclientes.Fill(oDataSet, "PERSONAL") DTGPERSONAL.DataSource = oDataSet DTGPERSONAL.DataMember = "PERSONAL" DTGPERSONAL.Visible = TrueEndSub
PrivateSub PRENDAS_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.LoadDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM PRENDA", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) CONTROLA()Dim X AsControlForEach X In Controls

IfTypeOf X IsTextBoxThen X.Text = ""EndIfNext Filactual = 0CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndSub
PrivateSub BTNPRIMERO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPRIMERO.Click Filactual = 0 CARGARDATOS()EndSub
PrivateSub BTNANTERIOR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNANTERIOR.ClickIf Filactual = 0 ThenMessageBox.Show("Primer Registro")Else Filactual -= 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNSIGUIENTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNSIGUIENTE.ClickIf Filactual = (data.Tables("PRENDA").Rows.Count - 1) ThenMessageBox.Show("Ultimo Registro")Else Filactual += 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNULTIMO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNULTIMO.ClickFilactual = (data.Tables("PRENDA").Rows.Count - 1) CARGARDATOS()EndSub
PrivateSub BTNNUEVO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNNUEVO.ClickDim oDataRow AsDataRowDim NUM AsIntegerDim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext TXTHORAREC.Text = "" TXTHORAENT.Text = "" TXTCODPRENDA.Enabled = True Filactual = (data.Tables("PRENDA").Rows.Count - 1) oDataRow = data.Tables("PRENDA").Rows(Filactual) NUM = Val(oDataRow("COD_PRENDA")) NUM = NUM + 1 TXTCODPRENDA.Text = NUM.ToString("00000") TXTCODPRENDA.Enabled = False

DTPENTRE.Value = Date.Now.Date DTPRECEP.Value = Date.Now.DateI = 1 CMBDESTINO.Text = "Seleccione" CMBESTADO.Text = "Seleccione" ACTIVA() CUANDOINGRESA() BTNCLIENTE.Focus()EndSub
PrivateSub BTNCANCELAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCANCELAR.ClickFilactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNCLIENTE.Enabled = FalseBTNPERSONAL.Enabled = False DTGCLIENTES.Visible = False DTGPERSONAL.Visible = False BTNPRIMERO.Focus()EndSub
PrivateSub BTNMODIFICAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNMODIFICAR.ClickI = 2 ACTIVA() CUANDOINGRESA() CMBESTADO.Focus()EndSub
PrivateSub BTNGUARDAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNGUARDAR.ClickDim REC, ENT AsString REC = DTPRECEP.Value.Date ENT = DTPENTRE.Value.DateIf I = 1 ThenIf TXTCODPRENDA.Text <>""And TXTCLIENTE.Text <>""And TXTPERSONAL.Text <>""And TXTDESCRIPCION.Text <>""And TXTOBSERVACION.Text <>""And TXTCOSTO.Text <>""And TXTHORAREC.Text <>""And TXTHORAENT.Text <>""And CMBDESTINO.Text <>""And CMBESTADO.Text <>""ThenTry stb.Length = 0 stb.Append("Insert Into PRENDA (COD_PRENDA,COD_CLIENTE,COD_PERSONAL,DESCRIPCION,OBSERVACION,DESTINO,COSTO,FECHA_RECEPCION,HORA_RECEPCION,ESTADO,FECHA_ENTREGA,HORA_ENTREGA) Values ('")stb.Append(TXTCODPRENDA.Text) stb.Append("','") stb.Append(TXTCLIENTE.Text) stb.Append("','") stb.Append(TXTPERSONAL.Text) stb.Append("','") stb.Append(TXTDESCRIPCION.Text) stb.Append("','") stb.Append(TXTOBSERVACION.Text) stb.Append("','") stb.Append(CMBDESTINO.Text) stb.Append("','") stb.Append(Val(TXTCOSTO.Text)) stb.Append("','") stb.Append(Trim(REC))

stb.Append("','") stb.Append(TXTHORAREC.Text) stb.Append("','") stb.Append(CMBESTADO.Text) stb.Append("','") stb.Append(Trim(ENT)) stb.Append("','") stb.Append(TXTHORAENT.Text) stb.Append("')") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 Then MsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos del Alumno")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfElseIf TXTCODPRENDA.Text <>""And TXTCLIENTE.Text <>""And TXTPERSONAL.Text <>""And TXTDESCRIPCION.Text <>""And TXTOBSERVACION.Text <>""And TXTCOSTO.Text <>""And TXTHORAREC.Text <>""And TXTHORAENT.Text <>""And CMBDESTINO.Text <>""And CMBESTADO.Text <>""ThenTry stb.Length = 0 stb.Append("Update PRENDA set COD_CLIENTE='") stb.Append(TXTCLIENTE.Text) stb.Append("',COD_PERSONAL='") stb.Append(TXTPERSONAL.Text) stb.Append("',DESCRIPCION='") stb.Append(TXTDESCRIPCION.Text) stb.Append("',OBSERVACION='") stb.Append(TXTOBSERVACION.Text) stb.Append("',DESTINO='") stb.Append(CMBDESTINO.Text) stb.Append("',COSTO='") stb.Append(Val(TXTCOSTO.Text)) stb.Append("',FECHA_RECEPCION='") stb.Append(Trim(REC)) stb.Append("',HORA_RECEPCION='") stb.Append(TXTHORAREC.Text) stb.Append("',ESTADO='") stb.Append(CMBESTADO.Text)stb.Append("',FECHA_ENTREGA='")stb.Append(Trim(ENT)) stb.Append("',HORA_ENTREGA='") stb.Append(TXTHORAENT.Text) stb.Append("'Where COD_PRENDA='")

stb.Append(TXTCODPRENDA.Text) stb.Append("'") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 ThenMsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos del Alumno")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfEndIfEndSub
PrivateSub BTNBUSCAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNBUSCAR.ClickDim X AsInteger Filactual = 0Dim oDataRow AsDataRowDoWhile Filactual <= (data.Tables("PRENDA").Rows.Count - 1) oDataRow = data.Tables("PRENDA").Rows(Filactual)If TXTBUSCAR.Text = oDataRow("COD_PRENDA") ThenX = 1 CARGARDATOS() GRBCONSULTA.Visible = FalseExit DoEndIf Filactual += 1LoopIf X = 0 ThenMessageBox.Show("No Existe el Código Indicado")EndIf GRBCONSULTA.Visible = False BTNPRIMERO.Focus()EndSub
PrivateSub REPORTE_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles REPORTE.PrintPageDim J AsIntegerDim texto AsStringDim fuente AsNewFont("Courier New", 7) 'letra q menos consume tinta'para el color de letraDim brocha AsBrush = Brushes.Black'absisas y cordinadas para especificar la paginaDim x AsInteger = e.MarginBounds.Left = 10 'margen izquierdoDim y AsInteger = e.MarginBounds.Top = 10 'margen superior

texto = " LISTA DE PRENDAS RECIBIDAS, EN PROCESO Y ENTREGADAS" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "---------------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "COD_PRE COD_CLI COD_PER DESCRIPCION OBSERVACIONES DESTINO COSTO FECHA_REC HO_REC ESTADO FECHA_ENT HO_ENT" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "---------------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0For J = 0 To dvw.Count - 1'el nro 5 representa el espacio del campo stb.Append(dvw(J)(0).ToString.PadRight(8)) 'anexar de derecha a izquierdastb.Append(dvw(J)(1).ToString.PadRight(8)) stb.Append(dvw(J)(2).ToString.PadRight(9)) stb.Append(dvw(J)(3).ToString.PadRight(30)) stb.Append(dvw(J)(4).ToString.PadRight(20)) stb.Append(dvw(J)(5).ToString.PadRight(10)) stb.Append(dvw(J)(6).ToString.PadRight(7)) stb.Append(dvw(J)(7).ToString.PadRight(12)) stb.Append(dvw(J)(8).ToString.PadRight(7)) stb.Append(dvw(J)(9).ToString.PadRight(12)) stb.Append(dvw(J)(10).ToString.PadRight(12)) stb.Append(dvw(J)(11).ToString.PadRight(9))'devuleve todas las columnas a imprimir texto = stb.ToString'dibujar e imprimir e.Graphics.DrawString(texto, fuente, brocha, x, y)'controlar el interlineado y = y + fuente.GetHeight'q la cantidad de caracteres sea igual a cerostb.Length = 0NextEndSub
PrivateSub BTNCONSULTAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCONSULTAR.Click GRBCONSULTA.Visible = True TXTBUSCAR.Focus()EndSub
PrivateSub BTNVISTA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNVISTA.ClickDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM PRENDA", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador)

data = NewDataSet() Cn.Open()adaptador.Fill(data, "PRENDA") Cn.Close() dvw = data.Tables(0).DefaultView()Dim ppc AsNewPrintPreviewControl'vista preliminar ppc.Document = REPORTE() 'REPORTE es el nombre del objeto ppc.Zoom = 1 'zoom tamaño normal ppc.Dock = DockStyle.Fill 'bordes de la paginaDim frmprevio AsNewFormWith frmprevio.Text = "VISTA PREVIA DEL REPORTE".WindowState = FormWindowState.Maximized .Controls.Add(ppc) .ShowDialog()EndWithEndSub
PrivateSub BTNIMPRIMIR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNIMPRIMIR.Click REPORTE.Print()EndSub
PrivateSub TXTDESCRIPCION_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTDESCRIPCION.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTDESCRIPCION.Text = ""Then MsgBox("Debe ingresar Datos") TXTDESCRIPCION.Focus()Else TXTOBSERVACION.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 48 And a <= 57 Or a >= 200 And a <= 250 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTOBSERVACION_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTOBSERVACION.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTOBSERVACION.Text = ""Then MsgBox("Debe ingresar Datos") TXTOBSERVACION.Focus()Else CMBDESTINO.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 48 And a <= 57 Or a >= 200 And a <= 250 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub

PrivateSub TXTCOSTO_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTCOSTO.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTCOSTO.Text = ""Then MsgBox("Debe ingresar Datos") TXTCOSTO.Focus()Else CMBESTADO.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 46 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub DTGPERSONAL_CurrentCellChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGPERSONAL.CurrentCellChanged TXTPERSONAL.Text = DTGPERSONAL.Item(DTGPERSONAL.CurrentRowIndex, 0) DTGPERSONAL.Visible = FalseEndSub
PrivateSub DTGCLIENTES_CurrentCellChanged(ByVal sender AsObject, ByVal e As System.EventArgs) Handles DTGCLIENTES.CurrentCellChanged TXTCLIENTE.Text = DTGCLIENTES.Item(DTGCLIENTES.CurrentRowIndex, 0) DTGCLIENTES.Visible = FalseEndSub
PrivateSub DTPRECEP_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DTPRECEP.ValueChangedDim RECEP AsString RECEP = TimeOfDay TXTHORAREC.Text = Mid(Trim(RECEP), 1, 5)EndSub
PrivateSub CMBESTADO_GotFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles CMBESTADO.GotFocusCMBESTADO.Items.Clear() CMBESTADO.Items.Add("RECIBIDO") CMBESTADO.Items.Add("LAVANDERIA") CMBESTADO.Items.Add("RETEÑIDO") CMBESTADO.Items.Add("ENTREGAR") CMBESTADO.Items.Add("ENTREGADO")CMBESTADO.Items.Add("COSTURA")EndSub
PrivateSub DTPENTRE_ValueChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DTPENTRE.ValueChangedDim HORA AsInteger HORA = Val(Mid(TXTHORAREC.Text, 1, 2)) HORA = HORA + 6If HORA > 12 Then HORA = 12EndIf TXTHORAENT.Text = Trim(HORA.ToString) + ":" + Mid(TXTHORAREC.Text, 4, 2)

EndSub
PrivateSub CMBDESTINO_GotFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles CMBDESTINO.GotFocus CMBDESTINO.Items.Clear() CMBDESTINO.Items.Add("LAVANDERIA") CMBDESTINO.Items.Add("RETEÑIDO") CMBDESTINO.Items.Add("DESTINO")EndSubSub CONTROLA() data = NewDataSet() Cn.Open() adaptador.Fill(data, "PERSONAL") Cn.Close()EndSubSub CARGARDATOS()Dim oDataRow AsDataRow oDataRow = data.Tables("PERSONAL").Rows(Filactual) TXTCODPER.Text = oDataRow("COD_PERSONAL") TXTAPELLIDOS.Text = oDataRow("APELLIDOS") TXTNOMBRES.Text = oDataRow("NOMBRES") TXTDNI.Text = oDataRow("DNI") TXTDIRECCION.Text = oDataRow("DIRECCION") TXTTELEFONO.Text = oDataRow("TELEFONO") CMBCARGO.Text = oDataRow("CARGO") DTPFECHANAC.Value = oDataRow("FECHA_NAC")If oDataRow("SEXO") = "M"Then RDBMASCULINO.Checked = TrueElse RDBFEMENINO.Checked = TrueEndIfIf oDataRow("ESTADO_CIVIL") = "S"Then RDBSOLTERO.Checked = TrueElse RDBCASADO.Checked = TrueEndIf TXTHIJOS.Text = oDataRow("NRO_HIJOS") CMBESTADO.Text = oDataRow("ESTADO")EndSubSub ACTIVA() TXTNOMBRES.Enabled = True TXTAPELLIDOS.Enabled = True TXTDNI.Enabled = True TXTDIRECCION.Enabled = True TXTTELEFONO.Enabled = True CMBCARGO.Enabled = True DTPFECHANAC.Enabled = True GRBSEXO.Enabled = True GRBESTA_CIV.Enabled = True TXTHIJOS.Enabled = True CMBESTADO.Enabled = TrueEndSubSub DESACTIVA() TXTNOMBRES.Enabled = False TXTAPELLIDOS.Enabled = False TXTDNI.Enabled = False TXTDIRECCION.Enabled = False TXTTELEFONO.Enabled = False CMBCARGO.Enabled = False DTPFECHANAC.Enabled = False GRBSEXO.Enabled = False GRBESTA_CIV.Enabled = False

TXTHIJOS.Enabled = False CMBESTADO.Enabled = FalseEndSubSub CUANDOLEE() GRBDESPLAZAR.Enabled = True BTNNUEVO.Enabled = True BTNCANCELAR.Enabled = False BTNMODIFICAR.Enabled = True BTNGUARDAR.Enabled = False BTNCONSULTAR.Enabled = True BTNVISTA.Enabled = True BTNIMPRIMIR.Enabled = TrueEndSubSub CUANDOINGRESA() GRBDESPLAZAR.Enabled = False BTNNUEVO.Enabled = False BTNCANCELAR.Enabled = True BTNMODIFICAR.Enabled = False BTNGUARDAR.Enabled = True BTNCONSULTAR.Enabled = False BTNVISTA.Enabled = False BTNIMPRIMIR.Enabled = FalseEndSubPrivateSub PERSONAL_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.LoadDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM PERSONAL", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) CONTROLA()Dim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext Filactual = 0CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndSub
PrivateSub BTNPRIMERO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPRIMERO.Click Filactual = 0 CARGARDATOS()EndSub
PrivateSub BTNANTERIOR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNANTERIOR.ClickIf Filactual = 0 ThenMessageBox.Show("Primer Registro")Else Filactual -= 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNSIGUIENTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNSIGUIENTE.ClickIf Filactual = (data.Tables("PERSONAL").Rows.Count - 1) ThenMessageBox.Show("Ultimo Registro")

Else Filactual += 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNULTIMO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNULTIMO.Click Filactual = (data.Tables("PERSONAL").Rows.Count - 1) CARGARDATOS()EndSub
PrivateSub BTNNUEVO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNNUEVO.ClickDim oDataRow AsDataRowDim NUM AsIntegerDim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext TXTCODPER.Enabled = True Filactual = (data.Tables("PERSONAL").Rows.Count - 1) oDataRow = data.Tables("PERSONAL").Rows(Filactual) NUM = Val(oDataRow("COD_PERSONAL")) NUM = NUM + 1 TXTCODPER.Text = NUM.ToString("000")TXTCODPER.Enabled = False I = 1 CMBCARGO.Text = "Seleccione" CMBESTADO.Text = "Seleccione" ACTIVA()CUANDOINGRESA() TXTNOMBRES.Focus()EndSub
PrivateSub BTNCANCELAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCANCELAR.ClickFilactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndSub
PrivateSub BTNMODIFICAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNMODIFICAR.ClickI = 2 ACTIVA() CUANDOINGRESA() TXTNOMBRES.Focus()EndSub
PrivateSub BTNGUARDAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNGUARDAR.ClickDim SEX, EST, FEC AsStringIf RDBMASCULINO.Checked = TrueThen SEX = "M"Else SEX = "F"EndIf

If RDBSOLTERO.Checked = TrueThen EST = "S"Else EST = "C"EndIf FEC = DTPFECHANAC.Value.DateIf I = 1 ThenIf TXTCODPER.Text <>""And TXTAPELLIDOS.Text <>""And TXTNOMBRES.Text <>""And TXTDNI.Text <>""And TXTTELEFONO.Text <>""And TXTHIJOS.Text <>""And TXTDIRECCION.Text <>""And CMBCARGO.Text <>""And CMBESTADO.Text <>""ThenTry stb.Length = 0 stb.Append("Insert Into PERSONAL (COD_PERSONAL,APELLIDOS,NOMBRES,DNI,DIRECCION,TELEFONO,CARGO,FECHA_NAC,SEXO,ESTADO_CIVIL,NRO_HIJOS,ESTADO) Values ('")stb.Append(TXTCODPER.Text) stb.Append("','") stb.Append(TXTAPELLIDOS.Text) stb.Append("','") stb.Append(TXTNOMBRES.Text) stb.Append("','") stb.Append(TXTDNI.Text) stb.Append("','") stb.Append(TXTDIRECCION.Text) stb.Append("','") stb.Append(TXTTELEFONO.Text) stb.Append("','") stb.Append(CMBCARGO.Text) stb.Append("','") stb.Append(FEC) stb.Append("','") stb.Append(SEX) stb.Append("','") stb.Append(EST) stb.Append("','") stb.Append(Val(TXTHIJOS.Text)) stb.Append("','") stb.Append(CMBESTADO.Text) stb.Append("')") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 Then MsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos del Personal")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTry

EndIfElseIf TXTCODPER.Text <>""And TXTAPELLIDOS.Text <>""And TXTNOMBRES.Text <>""And TXTDNI.Text <>""And TXTTELEFONO.Text <>""And TXTHIJOS.Text <>""And TXTDIRECCION.Text <>""And CMBCARGO.Text <>""And CMBESTADO.Text <>""ThenTry stb.Length = 0 stb.Append("Update PERSONAL set APELLIDOS='") stb.Append(TXTAPELLIDOS.Text) stb.Append("',NOMBRES='") stb.Append(TXTNOMBRES.Text) stb.Append("',DNI='") stb.Append(TXTDNI.Text) stb.Append("',DIRECCION='") stb.Append(TXTDIRECCION.Text) stb.Append("',TELEFONO='") stb.Append(TXTTELEFONO.Text) stb.Append("',CARGO='") stb.Append(CMBCARGO.Text) stb.Append("',FECHA_NAC='") stb.Append(FEC) stb.Append("',SEXO='") stb.Append(SEX) stb.Append("',ESTADO_CIVIL='") stb.Append(EST) stb.Append("',NRO_HIJOS='") stb.Append(Val(TXTHIJOS.Text)) stb.Append("',ESTADO='") stb.Append(CMBESTADO.Text) stb.Append("'Where COD_PERSONAL='") stb.Append(TXTCODPER.Text) stb.Append("'") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 ThenMsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos del Personal")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfEndIfEndSub
PrivateSub BTNBUSCAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNBUSCAR.ClickDim X AsInteger

Filactual = 0Dim oDataRow AsDataRowDoWhile Filactual <= (data.Tables("PERSONAL").Rows.Count - 1) oDataRow = data.Tables("PERSONAL").Rows(Filactual)If TXTBUSCAR.Text = oDataRow("COD_PERSONAL") ThenX = 1 CARGARDATOS() GRBCONSULTA.Visible = FalseExit DoEndIf Filactual += 1LoopIf X = 0 ThenMessageBox.Show("No Existe el Código Indicado")EndIf GRBCONSULTA.Visible = False BTNPRIMERO.Focus()EndSub
PrivateSub REPORTE_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles REPORTE.PrintPageDim J AsIntegerDim texto AsStringDim fuente AsNewFont("Courier New", 7) 'letra q menos consume tinta'para el color de letraDim brocha AsBrush = Brushes.Black'absisas y cordinadas para especificar la paginaDim x AsInteger = e.MarginBounds.Left = 10 'margen izquierdoDim y AsInteger = e.MarginBounds.Top = 10 'margen superior texto = " RELACION DEL PERSONAL QUE FORMA PARTE DE LA EMPRESA" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "--------------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "COD APELLIDOS NOMBRES DNI DIRECCION TELEFONO CARGO FECHA_NAC SEX E.CIV HIJOS ESTADO" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "--------------------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0For J = 0 To dvw.Count - 1'el nro 5 representa el espacio del campo stb.Append(dvw(J)(0).ToString.PadRight(5)) 'anexar de derecha a izquierdastb.Append(dvw(J)(1).ToString.PadRight(20)) stb.Append(dvw(J)(2).ToString.PadRight(18)) stb.Append(dvw(J)(3).ToString.PadRight(9))

stb.Append(dvw(J)(4).ToString.PadRight(28)) stb.Append(dvw(J)(5).ToString.PadRight(12)) stb.Append(dvw(J)(6).ToString.PadRight(15)) stb.Append(dvw(J)(7).ToString.PadRight(12)) stb.Append(dvw(J)(8).ToString.PadRight(4)) stb.Append(dvw(J)(9).ToString.PadRight(6)) stb.Append(dvw(J)(10).ToString.PadRight(5)) stb.Append(dvw(J)(11).ToString.PadRight(5))'devuleve todas las columnas a imprimir texto = stb.ToString'dibujar e imprimir e.Graphics.DrawString(texto, fuente, brocha, x, y)'controlar el interlineado y = y + fuente.GetHeight'q la cantidad de caracteres sea igual a cerostb.Length = 0NextEndSub
PrivateSub BTNCONSULTAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCONSULTAR.Click GRBCONSULTA.Visible = True TXTBUSCAR.Focus()EndSub
PrivateSub BTNVISTA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNVISTA.ClickDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM PERSONAL", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) data = NewDataSet() Cn.Open() adaptador.Fill(data, "PERSONAL") Cn.Close() dvw = data.Tables(0).DefaultView()Dim ppc AsNewPrintPreviewControl'vista preliminarppc.Document = REPORTE() 'REPORTE es el nombre del objeto ppc.Zoom = 1 'zoom tamaño normal ppc.Dock = DockStyle.Fill 'bordes de la paginaDim frmprevio AsNewFormWith frmprevio.Text = "VISTA PREVIA DEL REPORTE".WindowState = FormWindowState.Maximized .Controls.Add(ppc) .ShowDialog()EndWithEndSub
PrivateSub BTNIMPRIMIR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNIMPRIMIR.Click REPORTE.Print()EndSub
PrivateSub TXTNOMBRES_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTNOMBRES.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTNOMBRES.Text = ""Then MsgBox("Debe ingresar Datos") TXTNOMBRES.Focus()Else

TXTAPELLIDOS.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 200 And a <= 250 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTAPELLIDOS_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTAPELLIDOS.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTAPELLIDOS.Text = ""Then MsgBox("Debe ingresar Datos")TXTAPELLIDOS.Focus()Else TXTDNI.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 200 And a <= 250 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTDNI_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTDNI.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTDNI.Text = ""Then MsgBox("Debe ingresar Datos") TXTDNI.Focus()Else TXTDIRECCION.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTDIRECCION_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTDIRECCION.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTDIRECCION.Text = ""Then MsgBox("Debe ingresar Datos") TXTDIRECCION.Focus()Else TXTTELEFONO.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 200 And a <= 250 Or a >= 48 And a <= 57 Or a = 32 Or a = 8) Then e.Handled = True

EndIfEndIfEndSub
PrivateSub TXTTELEFONO_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTTELEFONO.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTTELEFONO.Text = ""Then MsgBox("Debe ingresar Datos") TXTTELEFONO.Focus()Else CMBCARGO.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 8 Or a = 45) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTHIJOS_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTHIJOS.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTHIJOS.Text = ""Then MsgBox("Debe ingresar Datos") TXTHIJOS.Focus()Else CMBESTADO.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub CMBCARGO_GotFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles CMBCARGO.GotFocusDim lee AsSqlDataReaderDim tabla AsNewSqlCommand("SELECT COD_CARGO, NOM_CARGO from CARGOS", Cn) Cn.Open() lee = tabla.ExecuteReader CMBCARGO.Items.Clear()While lee.Read CMBCARGO.Items.Add(lee.GetValue(1))EndWhile Cn.Close()EndSub
PrivateSub CMBESTADO_GotFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles CMBESTADO.GotFocus CMBESTADO.Items.Clear() CMBESTADO.Items.Add("ACTIVO")CMBESTADO.Items.Add("INACTIVO") CMBESTADO.Items.Add("PACACIONES") CMBESTADO.Items.Add("PERMISO") CMBESTADO.Text = "ACTIVO"

EndSubSub CONTROLA() data = NewDataSet() Cn.Open() adaptador.Fill(data, "EGRESOS") Cn.Close()EndSubSub CARGARDATOS()Dim oDataRow AsDataRow oDataRow = data.Tables("EGRESOS").Rows(Filactual) TXTCODREG.Text = oDataRow("COD_REG") CMBTIPODOC.Text = oDataRow("TIPO_DOCUMENTO") TXTNRODOCUMENTO.Text = oDataRow("NRO_DOCUMENTO") TXTMOTIVO.Text = oDataRow("MOTIVO") TXTIMPORTE.Text = Format(oDataRow("IMPORTE"), "###,##0.00") DTPFECHA.Value = oDataRow("FECHA")EndSubSub ACTIVA() CMBTIPODOC.Enabled = True TXTNRODOCUMENTO.Enabled = True TXTMOTIVO.Enabled = True TXTIMPORTE.Enabled = True DTPFECHA.Enabled = TrueEndSubSub DESACTIVA() CMBTIPODOC.Enabled = False TXTNRODOCUMENTO.Enabled = False TXTMOTIVO.Enabled = False TXTIMPORTE.Enabled = False DTPFECHA.Enabled = FalseEndSubSub CUANDOLEE() GRBDESPLAZAR.Enabled = True BTNNUEVO.Enabled = True BTNCANCELAR.Enabled = False BTNMODIFICAR.Enabled = True BTNGUARDAR.Enabled = False BTNELIMINAR.Enabled = True BTNCONSULTAR.Enabled = True BTNVISTA.Enabled = True BTNIMPRIMIR.Enabled = TrueEndSubSub CUANDOINGRESA() GRBDESPLAZAR.Enabled = False BTNNUEVO.Enabled = False BTNCANCELAR.Enabled = True BTNMODIFICAR.Enabled = False BTNGUARDAR.Enabled = True BTNELIMINAR.Enabled = False BTNCONSULTAR.Enabled = False BTNVISTA.Enabled = False BTNIMPRIMIR.Enabled = FalseEndSubPrivateSub EGRESOS_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) HandlesMyBase.LoadDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM EGRESOS", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) CONTROLA()Dim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen

X.Text = ""EndIfNext Filactual = 0CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndSub
PrivateSub BTNPRIMERO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNPRIMERO.Click Filactual = 0 CARGARDATOS()EndSub
PrivateSub BTNANTERIOR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNANTERIOR.ClickIf Filactual = 0 ThenMessageBox.Show("Primer Registro")Else Filactual -= 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNSIGUIENTE_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNSIGUIENTE.ClickIf Filactual = (data.Tables("EGRESOS").Rows.Count - 1) ThenMessageBox.Show("Ultimo Registro")Else Filactual += 1 CARGARDATOS()EndIfEndSub
PrivateSub BTNULTIMO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNULTIMO.Click Filactual = (data.Tables("EGRESOS").Rows.Count - 1) CARGARDATOS()EndSub
PrivateSub BTNNUEVO_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNNUEVO.ClickDim oDataRow AsDataRowDim NUM AsIntegerDim X AsControlForEach X In ControlsIfTypeOf X IsTextBoxThen X.Text = ""EndIfNext I = 1 TXTCODREG.Enabled = True Filactual = (data.Tables("EGRESOS").Rows.Count - 1) oDataRow = data.Tables("EGRESOS").Rows(Filactual) NUM = Val(oDataRow("COD_REG")) NUM = NUM + 1 TXTCODREG.Text = NUM.ToString("00000")TXTCODREG.Enabled = False ACTIVA() CUANDOINGRESA()

TXTNRODOCUMENTO.Focus()EndSub
PrivateSub BTNCANCELAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCANCELAR.ClickFilactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndSub
PrivateSub BTNMODIFICAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNMODIFICAR.ClickI = 2 ACTIVA() CUANDOINGRESA() TXTNRODOCUMENTO.Focus()EndSub
PrivateSub BTNGUARDAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNGUARDAR.ClickDim FEC AsString FEC = DTPFECHA.Value.DateIf I = 1 ThenIf TXTCODREG.Text <>""And TXTNRODOCUMENTO.Text <>""And TXTMOTIVO.Text <>""And TXTIMPORTE.Text <>""ThenTry stb.Length = 0 stb.Append("Insert Into EGRESOS (COD_REG,TIPO_DOCUMENTO,NRO_DOCUMENTO,MOTIVO,IMPORTE,FECHA) Values ('") stb.Append(TXTCODREG.Text) stb.Append("','") stb.Append(CMBTIPODOC.Text) stb.Append("','") stb.Append(TXTNRODOCUMENTO.Text) stb.Append("','") stb.Append(TXTMOTIVO.Text) stb.Append("','") stb.Append(Val(TXTIMPORTE.Text)) stb.Append("','") stb.Append(FEC) stb.Append("')") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 Then MsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos de Egresos")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS()

DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfElseIf TXTCODREG.Text <>""And TXTNRODOCUMENTO.Text <>""And TXTMOTIVO.Text <>""And TXTIMPORTE.Text <>""ThenTry stb.Length = 0 stb.Append("Update EGRESOS set TIPO_DOCUMENTO='") stb.Append(CMBTIPODOC.Text) stb.Append("',NRO_DOCUMENTO='") stb.Append(TXTNRODOCUMENTO.Text) stb.Append("',MOTIVO='") stb.Append(TXTMOTIVO.Text) stb.Append("',IMPORTE='") stb.Append(Val(TXTIMPORTE.Text)) stb.Append("',FECHA='") stb.Append(FEC) stb.Append("'Where COD_REG='") stb.Append(TXTCODREG.Text) stb.Append("'") Cn.Open() cmd.CommandText = stb.ToString reg = cmd.ExecuteNonQuery()If reg > 0 ThenMsgBox("Los Datos se Grabaron Correctamente", MsgBoxStyle.Information, "Puede continuar")ElseThrowNewException("No se Pudo Guardar los Datos de Egresos")EndIfCatch ex AsExceptionMessageBox.Show(ex.Message, ex.Source, MessageBoxButtons.OK, MessageBoxIcon.Error)FinallyIf Cn.State = ConnectionState.Open Then Cn.Close()stb.Length = 0 CONTROLA() Filactual = 0 CARGARDATOS() DESACTIVA() CUANDOLEE() BTNPRIMERO.Focus()EndTryEndIfEndIfEndSub
PrivateSub BTNBUSCAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNBUSCAR.ClickDim X AsInteger Filactual = 0Dim oDataRow AsDataRowDoWhile Filactual <= (data.Tables("EGRESOS").Rows.Count - 1) oDataRow = data.Tables("EGRESOS").Rows(Filactual)If TXTBUSCAR.Text = oDataRow("COD_REG") ThenX = 1 CARGARDATOS() GRBCONSULTA.Visible = FalseExit DoEndIf

Filactual += 1LoopIf X = 0 ThenMessageBox.Show("No Existe el Código Indicado")EndIf GRBCONSULTA.Visible = False BTNPRIMERO.Focus()EndSub
PrivateSub REPORTE_PrintPage(ByVal sender As System.Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) Handles REPORTE.PrintPageDim J AsIntegerDim texto AsStringDim fuente AsNewFont("Courier New", 7) 'letra q menos consume tinta'para el color de letraDim brocha AsBrush = Brushes.Black'absisas y cordinadas para especificar la paginaDim x AsInteger = e.MarginBounds.Left = 10 'margen izquierdoDim y AsInteger = e.MarginBounds.Top = 10 'margen superior texto = " LISTA DE LOS PAGOS REALIZADOS POR LA EMPRESA" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "-----------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "COD_REG TIPO_DOCUMENTO NRO_DOCUMENTO MOTIVO IMPORTE FECHA " e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0texto = "-----------------------------------------------------------------------------------------------------------------------------------" e.Graphics.DrawString(texto, fuente, brocha, x, y)y = y + fuente.GetHeight stb.Length = 0For J = 0 To dvw.Count - 1'el nro 5 representa el espacio del campo stb.Append(dvw(J)(0).ToString.PadRight(11)) 'anexar de derecha a izquierdastb.Append(dvw(J)(1).ToString.PadRight(17)) stb.Append(dvw(J)(2).ToString.PadRight(16)) stb.Append(dvw(J)(3).ToString.PadRight(50)) stb.Append(dvw(J)(4).ToString.PadRight(11)) stb.Append(dvw(J)(5).ToString.PadRight(11))'devuleve todas las columnas a imprimir texto = stb.ToString'dibujar e imprimir e.Graphics.DrawString(texto, fuente, brocha, x, y)'controlar el interlineado y = y + fuente.GetHeight'q la cantidad de caracteres sea igual a cerostb.Length = 0NextEndSub

PrivateSub BTNELIMINAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNELIMINAR.ClickDim oDataRow AsDataRow oDataRow = data.Tables("EGRESOS").Rows(Filactual)IfMessageBox.Show("Desea eliminar el Registro", "EGRESOS", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) = Windows.Forms.DialogResult.Yes ThenoDataRow.Delete()Dim oTablaBorrados AsDataTable oTablaBorrados = data.Tables("EGRESOS").GetChanges(DataRowState.Deleted) adaptador.Update(oTablaBorrados) data.Tables("EGRESOS").AcceptChanges()BTNPRIMERO.PerformClick()Exit SubEndIf CONTROLA()EndSub
PrivateSub BTNCONSULTAR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNCONSULTAR.Click GRBCONSULTA.Visible = True TXTBUSCAR.Focus()EndSub
PrivateSub BTNVISTA_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNVISTA.ClickDim Cmd AsNewSqlCommand("select getdate()", Cn) adaptador = NewSqlDataAdapter("SELECT * FROM EGRESOS", Cn)Dim oCommBuild AsSqlCommandBuilder = NewSqlCommandBuilder(adaptador) data = NewDataSet() Cn.Open() adaptador.Fill(data, "EGRESOS") Cn.Close() dvw = data.Tables(0).DefaultView()Dim ppc AsNewPrintPreviewControl'vista preliminarppc.Document = REPORTE() 'REPORTE es el nombre del objeto ppc.Zoom = 1 'zoom tamaño normal ppc.Dock = DockStyle.Fill 'bordes de la paginaDim frmprevio AsNewFormWith frmprevio.Text = "VISTA PREVIA DEL REPORTE".WindowState = FormWindowState.Maximized .Controls.Add(ppc) .ShowDialog()EndWithEndSub
PrivateSub BTNIMPRIMIR_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BTNIMPRIMIR.Click REPORTE.Print()EndSub
PrivateSub TXTNRODOCUMENTO_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTNRODOCUMENTO.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTNRODOCUMENTO.Text = ""Then MsgBox("Debe ingresar Datos") TXTNRODOCUMENTO.Focus()

Else TXTMOTIVO.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a >= 65 And a <= 90 Or a = 45 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTMOTIVO_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTMOTIVO.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTMOTIVO.Text = ""Then MsgBox("Debe ingresar Datos")TXTMOTIVO.Focus()Else TXTIMPORTE.Focus()EndIfElseIfNot (a >= 65 And a <= 90 Or a >= 97 And a <= 122 Or a >= 200 And a <= 250 Or a >= 48 And a <= 57 Or a = 32 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub TXTIMPORTE_KeyPress(ByVal sender AsObject, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TXTIMPORTE.KeyPressDim a AsInteger a = Asc(e.KeyChar)If a = 13 ThenIf TXTIMPORTE.Text = ""Then MsgBox("Debe ingresar Datos") TXTIMPORTE.Focus()Else DTPFECHA.Focus()EndIfElseIfNot (a >= 48 And a <= 57 Or a = 44 Or a = 8) Then e.Handled = TrueEndIfEndIfEndSub
PrivateSub CMBTIPODOC_GotFocus(ByVal sender AsObject, ByVal e As System.EventArgs) Handles CMBTIPODOC.GotFocus CMBTIPODOC.Items.Clear() CMBTIPODOC.Items.Add("BOLETA")CMBTIPODOC.Items.Add("FACTURA") CMBTIPODOC.Items.Add("RECIBO HONORARIOS") CMBTIPODOC.Items.Add("RECIBO OTROS")EndSub

CONCLUSIONES
RECOMENDACIONES
BIBLIOGRAFIA
INFORMATIGRAFIA
ANEXOS