Escolar Documentos
Profissional Documentos
Cultura Documentos
Proyecto:
H. Matamoros, Tamps.
Semestre 9
H. Matamoros, Tamps.
Residencias
ITM 2014
NDICE
Agradecimientos 1
Introduccin 2
Residencias
ITM 2014
Residencias
ITM 2014
eliminar
serial .72
4.2.2.2.1.4 Creacin de un procedimiento de bsqueda
de coincidencias de patrn de caracteres . 73
4.2.2.3 Programacin en Microsoft Visual Studio 2010 .. 75
4.2.3 Noviembre 85
4.2.3.1 Inicio de Pruebas . 85
4.2.3.1.1 Reporte 86
4.2.3.1.2 Caja Parcial . 95
4.2.3.1.3 Delete ... 95
4.2.3.1.4 Update 100
4.2.3.1.5 Men Count .. 101
Residencias
ITM 2014
Residencias
ITM 2014
AGRADECIMIENTOS
Gracias a todos los que ayudaron y colaboraron en la realizacin de este proyecto.
A mi asesor externo, Dionicio Mata, quien me ayudo a resolver mis dudas en cuestin
de la programacin, y tambin que abri las puertas de la empresa CTS Electro de
Matamoros divisin EMS, para que pudiera realizar mis residencias en dicho lugar.
Gracias al personal de Produccin que gracias a ellos me ayudaron a mejorar an ms
la aplicacin, sin ellos y sin sus comentarios no podra haber desarrollado el programa,
A mis compaeros de trabajo que me brindaron un excelente ambiente de trabajo.
Y en especial, un agradecimiento grande a mi Institucin que me permiti estudiar en
sus aulas y que me ayudo a desarrollarme tal como lo soy ahora.
A todos, gracias porque me permitieron entrar a sus vidas y conocerlos, y este es el
resultado de nuestro trabajo y esfuerzo.
Residencias
ITM 2014
INTRODUCCIN
En la actualidad, es difcil encontrar a personas que les guste la programacin, adems
de que es un poco tedioso el hecho de estar sentado y programando, si bien no haces
ningn esfuerzo fsico, tu mente est trabajando porque tienes que estar pensando en
la lgica de como programaras una sintaxis.
El
necesidad de tener un mejor control de las piezas escaneadas por da, adems de
tratar evitar incidentes de etiquetas repetidas o cualquier otro problema que pudiera
generar problemas de tiempo muerto, o simplemente tiempo perdido.
El proyecto se desarroll en un entorno de programacin, todo va a ser electrnico,
nada ser en papel ya que adems de que este proyecto trabajara para tener un mejor
control, tambin es un proyecto de paperless (o de ahorro de papel), ya que ahora se
planea utilizar todos los reportes en lugar de hacer en papel dejarlos electrnicamente.
La informacin se guard en una base de datos de Microsoft SQL server 2008, toda la
informacin necesaria la contendr esta base de datos.
Los reportes se exportaron en una hoja de Excel, ya que a los ingenieros y tcnicos de
calidad les es ms viable utilizar esos datos en esa interfaz de Microsoft.
Cada una de las aplicaciones del programa desarrollado, fueron realizadas o
mejoradas en cuanto se probaba el programa.
Residencias
ITM 2014
CAPITULO I
GENERALIDADES DEL PROYECTO
Residencias
ITM 2014
Residencias
ITM 2014
1.2 Objetivos
El principal objetivo del proyecto es tener un control (historial) de todo lo que est
sucediendo en la planta, en que proceso va la pieza, evaluar si la pieza es buena o
no, recaudar los datos necesarios para que calidad haga uso de ellos, adems de
responder las preguntas que fueron escritas en el prrafo anterior.
Reducir tiempos muertos al buscar etiquetas repetidas.
Evitar etiquetas repetidas.
Evitar material fuera del flujo de produccin.
Estandarizar las aplicaciones que tienen para cada lnea de produccin.
Mejorar el proceso en produccin.
1.3 Justificacin
Al realizar este proyecto la empresa tendr un control total de las piezas con las que
trabaja, podr realizar un reporte en el cual podr ver qu tal va la produccin en
tiempo real, este software ayudara a resolver o a detectar pequeos bug en el
proceso, lo cual implica que al detectarlos podremos hacer acciones correctivas
para poder hacer una mejora, o hasta realizar proyectos de mejora continua.
Residencias
ITM 2014
CAPITULO II
FUNDAMENTOS TEORICOS.
Residencias
ITM 2014
FUNDAMENTOS TEORICOS.
2.1 Introduccin a los fundamentos Tericos.
Para poder producir las tablillas que el cliente demanda la empresa trabaja con lneas
de produccin SMT, que por sus siglas en ingles significan: Surface-mount
technology (SMT) o traducido al espaol es tecnologa de montaje superficial, que
son mquinas que se encargan de ensamblar las tablillas o PCB, que en ingles
significa printed circuit board (PCB) o traducido al espaol tarjeta de circuito
impreso; en los cuales se insertan todos los componentes que utilizara la tablilla, pero
hay que tener en cuenta que cada uno de los componentes son muy pequeos es por
eso que la maquina SMT los inserta, ya que es controlada por un programa el cual se
basa en coordenadas para poder insertar los componentes en el lugar que se desea de
la tablilla o PCB.
Para hablar un poco ms sobre esto veamos informacin a detalle:
Este artculo fue encontrado en la pgina web:
http://www.ladelec.com/teoria/informacion-tecnica/1220-que-es-la-tecnologia-demontaje-superficial-smt
La tecnologa de montaje superficial (SMT - ingls - Surface Mount Technology) es el
proceso de construir circuitos electrnicos, en que los componentes estn soldados
directamente sobre la superficie de una placa de circuito impreso (PCB). Dentro de la
tecnolgica, el montaje superficial ha substituido a la tcnica de la tecnologa de
agujero pasante (through hole); el mtodo utilizado en el proceso de instalar
componentes con cables almbricos en agujeros de la tarjeta del PCB, atravesando la
placa de un lado a otro.
La tecnologa SMD es diferente, las conexiones se realizan mediante contactos en la
superficie inferior de la placa- terminaciones metlicas alrededor de la placa. Las dos
tecnologas pueden ser usadas en el mismo circuito impreso para componentes que no
estn hechos para el SMD tales como los trasformadores y semiconductores de alta
potencia en disipadores de energa trmica.
Residencias
ITM 2014
Trmino de
Trmino Entero
SMT
SMD
psivos
and
componentes
electro-mecnicos)
SMT
SMA
SMC
SMP
SME
Residencias
ITM 2014
Residencias
ITM 2014
especfico SMD, una placa breakout puede ser utilizado. Adicionalmente, protoplacas
en estilo de tablero alistonado puede ser esgrimido, algunos de que incluyen electrodos
para componentes SMD con tamao estndar. Para la fabricacin de prototipos, un tipo
de fabricacin llamada dead bug puede ser utilizado (este proceso tiene mucha
informacin pero en ingls).
Las conexiones de soldadura para los dispositivos de montaje superficial pueden ser
daadas por compuestos potting pasando por ciclos trmicos. Las dimensiones de
soldadura de uniones SMT rpidamente se hacen ms pequeas mientras desarrolla la
tecnologa de fabricacin ultra-fina. La fiabilidad de uniones de soldadura se pone ms
concertantes, cada vez menos soldadura permitida por cana unin. Hacer el nulo
(voiding) es un problema asociado con las uniones de soldadura, cuando refluyamos
una pasta soldadura en la aplicacin SMT. La existencia de aquellos nulos puede
degenerar la fuerza de la ligada, eventualmente lleva al fracaso de la ligada.
SMT no es adecuado y no sirve para partes grandes, alta-potencia, o alta tensin- por
ejemplo con la circuitera de alta potencia. Es comn combinar SMT y la tecnologa de
agujero pasante con los trasformadores y semiconductores de alta potencia en
disipadores de energa trmica, capacitores grandes, fusiles, conectores. En fin la
tecnologa SMT es inadecuada para la conexin de componentes que estn sujetos a
estrs mecnico, tal como conectores que estn utilizados para la interfaz con
dispositivos externos que estn frecuentemente conectados y desconectados.
10
Residencias
ITM 2014
No fue sino hasta la dcada del 80 en que la tecnologa de montaje superficial, SMT,
se empezo a utilizar ampliamente. Una vez que comenz a ser utilizada, el cambio de
componentes convencionales a los componentes superficiales (SMD) se llev a cabo
rpidamente en vista de las enormes ganancias que se podran hacer empleando
tecnologa SMT.
2.1.2 Por qu SMT?
Las placas de circuitos electrnicos producidos en masa necesitan ser fabricadas de
una manera altamente mecanizada para alcanzar el menor coste de fabricacin. Los
componentes tradicionales no se prestan a este planteamiento, aunque un grado de
mecanizacin era posible las terminaciones (leads o pines) del componente
necesitaban ser pre-formadas. Adems, las conexiones mediante cables traen
inconvenientes inevitables desde cortes a posicionamiento errneo, todo esto trae
aparejado una merma considerable en las tasas de produccin.
Fue razonable que los cables que haban sido tradicionalmente utilizados para las
conexiones no eran necesarios para la construccin de placas de circuito impreso y en
lugar de tener componentes con pines colocados a travs de agujeros, podan ser
soldados directamente sobre pads en el PCB. La disminucin de la cantidad de los
agujeros, y el ahorro del estao metalizado usados en los mismos, tambin tuvo su
impacto al momento de disminuir los costos de la produccin.
Esta nueva tecnologa fue llamada SMT dado que los componentes se montaban en la
superficie de la plaqueta, en vez de tener conexiones a travs de los agujeros y los
dispositivos
(componentes)
utilizados
fueron
denominados SMD.
Esta
nueva
tecnologa fue adoptada muy rpidamente, ya que permita utilizar un mayor grado de
mecanizacin, y un ahorro alto en los costes de fabricacin.
Para poder emplear la tecnologa de montaje superficial, se necesit un conjunto
completamente nuevo de componentes electrnicos y un cambio bastante grande en la
forma en que se diseaban los esquemticos.
11
Residencias
ITM 2014
12
Residencias
ITM 2014
13
Residencias
ITM 2014
Para los chips ms pequeos, encapsulados como el SOIC (Small Outline Integrated
Circuit) pueden ser utilizados. Son la versin SMT del clsico DIL (Dual In Line)
tambin llamados DIP, por ejemplo se los usan en la conocida serie lgica 74XXX.
Adems, hay versiones ms pequeas incluyendo TSOP (Thin Small Outline Package)
y SSOP (Shrink Small Outline Package).
aplicaciones.
En
lugar
de
tener
las
14
Residencias
ITM 2014
que
se
encarga
de
montar
los
componentes en el PCB.
15
Residencias
ITM 2014
AOI YESTECH
Deteccin visual, se encarga de examinar cada
uno de los PCB, pasa o no pasa.
que
se
encarga
de
soldar
los
Esta
mquina
es
capaz
de
16
Residencias
ITM 2014
que
componentes
se
en
encarga
los
de
PCBs
soldar
cuando
los
son
Computadora
Equipo de oficina que funciona como
interface entre el usuario y la etiqueta, en
ella se capturara la etiqueta para su
respectivo almacenamiento.
Escner
Equipo de cmputo con el que se escanean las etiquetas.
17
Residencias
ITM 2014
rea de HLA:
Empaque de todos los productos ya terminados, inspeccin de calidad.
rea de PTH:
Ensamble y soldadura manual de componentes.
18
Residencias
2.3
UN
POCO
DE
HISTORIA
SOBRE
ITM 2014
EL
LENGUAJE
DE
PROGRAMACIN
2.3.1 Visual Basic.
19
Residencias
ITM 2014
Visual Basic contiene un entorno de desarrollo integrado o IDE que integra editor de
textos para edicin del cdigo fuente, un depurador, un compilador (y enlazador) y un
editor de interfaces grficas o GUI.
2.3.1.1 Historia
Todas las versiones de Visual Basic para Windows son muy conocidas, aunque la
Microsoft Visual Basic 1.0 desarrollada para el sistema operativo MS-DOS (ediciones
Profesional y Estndar), que data de 1992, fue menos difundida. Esta provea un
entorno que, aunque en modo texto, inclua un diseador de formularios en el que se
podan arrastrar y soltar distintos controles.
La ltima versin que slo generaba aplicaciones de 16 bits fue la 3.0, y no inclua una
biblioteca detallada de componentes para toda clase de usos. Durante la transicin de
los sistemas Windows 3.11 a Windows 95, en 1995, hizo su aparicin la versin 4.0 de
Visual Basic; sta poda generar programas tanto de 16 como de 32 bits, a partir del
mismo cdigo fuente, aunque a costa de un gran aumento en el tamao de los archivos
necesarios en tiempo de ejecucin ("runtime"). Adems, se sustituyeron los controles
denominados VBX por los nuevos OCX. Con la siguiente versin, la 5.0, se estuvo a
punto de implementar por primera vez la posibilidad de compilar a cdigo nativo,
obteniendo una mejora de rendimiento considerable. Tanto esa como la sucesora 6.0
soportaban ciertas caractersticas propias de los lenguajes orientados a objetos, pero
carecan de algunas importantes, tales como herencia y sobrecarga; pero, de hecho, no
fue pensado como lenguaje orientado a objetos. La versin 6.0, que puede generar
cdigo ejecutable directo en 32 bits, contina aun utilizndose masivamente, y es
compatible con las ltimas versiones de los sistemas Windows, como Windows 7 y
Windows 8.
Visual Basic evolucion para integrar la plataforma .NET; all perdi su propia identidad
como lenguaje nico adquirible, pasando a integrar un paquete de productos, llamado
precisamente Microsoft .NET; dentro de ese paquete o framework se encuentra el
nuevo y llamado Visual Basic .NET, que trabaja sobre el entorno Microsoft Visual
Semi-Automatizacin de Control de Datos de Produccin
20
Residencias
ITM 2014
Studio. Esta nueva versin del lenguaje posee profundas diferencias en la forma de
programar respecto de Visual Basic 6, pero gran semejanza en su sintaxis bsica.
Cabe mencionar que, aunque fue menos conocido, se desarroll tambin una versin
gratuita de Visual Basic 5.0, orientada al desarrollo de controles y componentes; su
nombre especfico era Microsoft Visual Basic 5.0 Control Creation Edition (Visual Basic
5 CCE). Tambin hubo versiones orientadas al desarrollo de aplicaciones para
dispositivos mviles basados en Windows CE y Pocket PC, conocidas como Embedded
(Visual Basic).
2.3.1.2 Versiones
Visual Basic 1.0 para Windows se liber en mayo de 1991.
Visual Basic 1.0 para MS-DOS fue liberada en septiembre de 1992. Poco popular, este
lenguaje no era compatible con Visual Basic para Windows, ya que constitua en
realidad la siguiente versin de los compiladores BASIC vigentes para DOS,
denominados QuickBASIC y BASIC PDS (Profesional Development System). Usaba
una interfaz de texto, con caracteres ASCII extendidos que daban la apariencia de una
interfaz grfica.
Visual Basic 2.0 fue liberado en noviembre de 1992. Vena en versiones Standard y
Professional. El entorno de programacin era ms fcil de usar que el anterior, y su
velocidad de proceso fue mejorada. En particular, los formularios se convirtieron en
objetos instanciables, sentando as los conceptos fundamentales para mdulos de
clase, que ms tarde se ofreceran en la versin 4.
Visual Basic 3.0 sali al mercado en verano de 1993, en versiones Standard y
Profesional. Inclua la versin 1.1 de Microsoft Jet Database Engine, que permita
acceso a bases de datos Access.
Visual Basic 4.0, surgida en agosto de 1995, fue la primera versin que generaba
aplicaciones tanto de 16 como de 32 bits para Windows. Haba incompatibilidades
entre las distintas realeases de esta versin que causaban fallas de instalacin y
problemas de operacin. Mientras las anteriores utilizaban controles VBX, con la 4.0 se
21
Residencias
ITM 2014
Visual Basic 6.0, salido a mediados de 1998, muy mejorado, increment el nmero de
reas1 e incluy la posibilidad de crear aplicaciones basadas en Web. Microsoft retir
el soporte de VB6 en marzo de 2008, pero a pesar de ello las aplicaciones que genera
son compatibles con plataformas ms modernas, como Windows Vista, Windows
Server 2008, Windows 7 y Windows 8.2 3
El soporte estndar para Microsoft Visual Basic 6.0 finaliz el 31 de marzo de 2005,
pero el extendido termin en marzo de 2008.4 La comunidad de usuarios de Visual
Basic expres su grave preocupacin y se firm una peticin para mantener el producto
22
Residencias
ITM 2014
dynamic-link
library);
en
algunos
casos
reside
en
el
archivo
llamado
MSVBVMxy.DLL (siglas de "MicroSoft Visual Basic Virtual Machine x.y", donde x.y es la
versin) y en otros en VBRUNXXX.DLL ("Visual Basic Runtime X.XX"). Estas
bibliotecas DLL proveen las funciones bsicas implementadas en el lenguaje,
conteniendo rutinas en cdigo ejecutable que son cargadas bajo demanda en tiempo
de ejecucin. Adems de las esenciales, existe un gran nmero de bibliotecas del tipo
DLL con variedad de funciones, tales como las que facilitan el acceso a la mayora de
las funciones del sistema operativo o las que proveen medios para la integracin con
otras aplicaciones.
Dentro del mismo Entorno de desarrollo integrado (IDE) de Visual Basic se puede
ejecutar el programa que est desarrollndose, es decir en modo intrprete (en realidad
pseudo-compila el programa muy rpidamente y luego lo ejecuta, simulando la funcin
de un intrprete puro). Desde ese entorno tambin se puede generar el archivo en
cdigo ejecutable (exe); ese programa as generado en disco puede luego ser
ejecutado sin requerir del ambiente de programacin (incluso en modo stand alone),
aunque s ser necesario que las libreras DLL requeridas por la aplicacin desarrollada
se encuentren tambin instaladas en el sistema para posibilitar su ejecucin.
El propio Visual Basic provee soporte para empaquetado y distribucin; es decir,
permite generar un mdulo instalador que contiene al programa ejecutable y las
bibliotecas DLL necesarias para su ejecucin. Con ese mdulo la aplicacin
23
Residencias
ITM 2014
24
Residencias
ITM 2014
El panel de controles, que aunque es mvil normalmente est ubicado a la derecha, por
defecto cuenta con los siguientes controles:
PictureBox - Caja de imgenes
25
Residencias
ITM 2014
Label - Etiqueta
Este componente se utiliza para desplegar textos o mensajes estticos dentro de las
formas, textos tales como encabezados, solicitud al usuario del programa para que
proporcione algn dato o informacin (edad, dame sueldo, etc.), en cierta forma hace
las funciones de printf, cout, writeln, print, display, etc., pero solo cuando se consideran
en su parte de mensajes.
Tambin es un objeto en Visual Basic y por tanto tiene asociados sus propias
propiedades y eventos, al mismo tiempo como se est usando dentro del objeto form1,
muchas propiedades que se definan para el objeto Form1, el objeto Label1 las va a
heredar.
Si bien es cierto que el objeto se llama Label, pero cuando se ponen dentro de una
forma Visual Basic los va numerando automticamente, si se ponen tres Labels en
Form1, ellos se llaman, simbolizan, procesan o programan como Label1, Label2,
Label3.
TextBox - Caja de texto
En los programas de computadora, una caja de texto, campo de texto o caja de entrada
de texto es un elemento comn de una interfaz grfica de usuario, tambin como el
correspondiente tipo de widget usado al programar GUIs. El propsito de la caja de
texto es permitir al usuario la entrada de informacin textual para ser usada por el
programa.
Las pautas para la interfaz de usuario recomiendan usar una caja de texto de una sola
lnea cuando solo una lnea de entrada es requerida, y una caja de texto multi-lnea
solo si ms de una lnea de entrada puede ser requerida. Las cajas de texto no
editables pueden servir al propsito simplemente de exhibir texto.
26
Residencias
ITM 2014
Tambin se le conoce como marco o panel, observar que incluye una pestaa, donde
se describe en forma lgica todos los controles que agrupa, por ejemplo captura,
cuestionario, datos, etc.
Solo se deber recordar colocar primero todos los paneles en la forma y encima de
ellos los componentes que contendrn.
Es decir se puede dividir una sola ventana en varias partes, por ejemplo en un panel se
ponen los componentes donde se capturan los datos de un problema junto con el botn
de OK, y en otro panel se construye la salida, otro ejemplo se crea un panel para
capturar los datos de un empleado incluyendo sueldo diario y das trabajados y un
segundo panel contiene su cheque semanal de pago (problema sugerido tambin).
CommandButton - Botn de comando
27
Residencias
ITM 2014
El componente CheckBox de Visual Basic permite seleccionar una opcin al usuario del
programa o tomar una decisin, directamente en pantalla.
Los componentes checkbox, son las cajas donde el usuario toma una decisin o realiza
una seleccin.
28
Residencias
ITM 2014
29
Residencias
ITM 2014
Existen muchas ocasiones en donde el usuario del programa tiene que proporcionar
datos que provienen de un conjunto finito y muy pequeo de posibles respuestas, esto
significa que cada vez que se ejecute el programa, el usuario estar proporcionando las
mismas respuestas.
Ejemplo de esta clase de datos, son Municipio en BC, las posibles respuestas solo son
(Tecate, Tijuana, Mexicali, Ensenada, Rosarito), otro ejemplo es Sexo (Hombre, Mujer),
etc.
Para situaciones como esta, existen componentes que permiten programar por
adelantado las posibles respuestas, y el usuario solo debe seleccionar la respuesta
apropiada, en lugar de tener que escribirla.
Este componente ComboBox nos permite definir en primera instancia un conjunto de
datos o valores respuestas asociados a una caja de edicin cualesquiera, as ahora el
usuario tendr la oportUNIDAD VISUAL BASIC de seleccionar un dato del conjunto de
datos o respuestas ya predefinido.
Este componente ComboBox tiene dos partes, una parte de encabezado, para poner el
nombre del grupo de respuestas (por ejemplo municipios, sexo, etc.), que se carga
usando la propiedad Text del componente.
La segunda parte es la lista de opciones o respuestas que se debe cargar al tiempo de
diseo de la ventana, en el momento de poner el componente ComboBox1, solo hacer
click a un lado de la propiedad list, en la pgina de propiedades y cargar la primera
respuesta y enter, luego click otra vez a un lado de propiedad list, cargar segunda
respuesta y enter, luego click otra vez a un lado de la propiedad list cargar tercera
respuesta y enter, y as sucesivamente, como ya se indico es para cuando son pocas
respuestas de antemano conocidas.
30
Residencias
ITM 2014
31
Residencias
ITM 2014
2.4.1 Versiones
2.4.1.1 Visual Basic 2008 (VB 9.0)
Para esta versin se aadieron varias novedades, incluyendo:
Soporte para LINQ
Expresiones lambda
Literales XML
Semi-Automatizacin de Control de Datos de Produccin
32
Residencias
ITM 2014
Visual Basic 2010 ofrece soporte para entorno de ejecucin dinmico. VB 2010 forma
parte de Microsoft Silverlight. Visual Basic es un lenguaje de programacin que permite
realizar diferentes programas de registro anudados.
33
Residencias
ITM 2014
34
Residencias
ITM 2014
35
Residencias
ITM 2014
El IDE de Visual Studio 2008 permite trabajar contra 3 .NET frameworks diferentes:
.NET Framework 2.0
.NET Framework 3.0
.NET Framework 3.5
Tambin es muy fcil de usar gracias al desarrollo de hardware.
Adems, integra el framework ASP.NET AJAX para el desarrollo de AJAX..
36
Residencias
ITM 2014
Microsoft SQL Server es un sistema para la gestin de bases de datos producido por
Microsoft basado en el modelo relacional. Sus lenguajes para consultas son T-SQL y
ANSI SQL. Microsoft SQL Server constituye la alternativa de Microsoft a otros potentes
sistemas gestores de bases de datos como son Oracle, PostgreSQL o MySQL.
Soporte de transacciones.
Este sistema incluye una versin reducida, llamada MSDE con el mismo motor de base
de datos pero orientado a proyectos ms pequeos, que en sus versiones 2005 y 2008
pasa a ser el SQL Express Edition, que se distribuye en forma gratuita.
Es comn desarrollar completos proyectos complementando Microsoft SQL Server y
Microsoft Access a travs de los llamados ADP (Access Data Project). De esta forma
37
Residencias
ITM 2014
2.5.2 Programacin
2.5.2.1 T-SQL
T-SQL (Transact-SQL) es el principal medio de interaccin con el Servidor. Permite
realizar las operaciones claves en SQL Server, incluyendo la creacin y modificacin
de esquemas de la base de datos, la introduccin y edicin de los datos en la base de
datos, as como la administracin del servidor como tal. Esto se realiza mediante el
envo de sentencias de T-SQL y declaraciones que son procesadas por el servidor y los
resultados (o errores) regresan a la aplicacin cliente.
38
Residencias
ITM 2014
datos, incluyendo ADO u OLE DB. Cliente Nativo de SQL puede tambin usarse
directamente, pasando por alto las capas de acceso de datos.
2.5.3 Desventajas
En versiones de 32 bits, SQL Server usa Address Windowing Extension (AWE) para
hacer el direccionamiento por encima de 4GB. Esto le impide usar la administracin
dinmica de memoria, y slo le permite alojar un mximo de 64 GB de memoria
compartida. Esta limitacin es exclusiva de sistemas operativos 32 bits; en sistemas
operativos 64bits, la memoria mxima que se puede direccionar en Edicin Estandard
es 64Gb y en Edicin Enterprise 4Tb.
Microsoft SQL Server slo maneja compresin de datos en la Edicin Enterprise.
Microsoft SQL Server requiere de un sistema operativo Microsoft Windows, por lo que
no puede instalarse, por ejemplo, en servidores Linux.
39
Residencias
ITM 2014
CAPITULO III
CARACTERIZACION DEL AREA DE TRABAJO
40
Residencias
ITM 2014
Informacin de la empresa
41
Residencias
ITM 2014
42
Residencias
ITM 2014
Aeroespacial
Equipo industrial
Infraestructura de comunicaciones
3.1.2.3 Servicios
Backplane montaje
43
Residencias
ITM 2014
3.1.3 Polticas
3.1.3.1 Poltica de Calidad:
CTS est comprometido a proveer productos y servicios de clase mundial que excedan
las expectativas de nuestros clientes a travs del mejoramiento continuo en calidad,
entrega y valor del producto.
Llevando a cabo por medio de:
Con enfoque al cliente, entregando un servicio superior que exceda sus
expectativas
Trabajo en equipo, promoviendo un ambiente de colaboracin entre nuestros
empleados, nuestros clientes y nuestros proveedores.
Sistemas y entrenamientos que nos diferencian y exceden estndares de
calidad, seguridad, salud, regulatorios y ambientales.
3.1.3.2 Poltica Ambiental:
Estamos dedicados a tratar el ambiente con cuidado y reconociendo que es un asunto
global en la naturaleza.
Estamos comprometidos al mejoramiento continuo en el manejo ambiental.
Los fundamentos de nuestra poltica son:
Prevencin de la contaminacin a travs de mtodos de reduccin de
desperdicios, substitucin de materiales, actividades de reciclaje y otros mtodos
aceptables.
Cumplimiento con las regulaciones y legislaciones ambientales relevantes y
otros requerimientos a los cuales nos suscribimos.
Objetivos y metas que consideren los aspectos ambientales para mejorar el
desarrollo y manejo ambiental como parte integral de nuestras decisiones de negocio.
44
Residencias
ITM 2014
45
Residencias
ITM 2014
3.1.5.2 Funciones.
Mis funciones como residente son:
Cotizaciones de material.
46
Residencias
ITM 2014
CAPITULO IV
DESCRIPCION DE LAS ACTIVIDADES DESARROLLADAS
47
Residencias
ITM 2014
Periodo
Septiembre 2013
Septiembre 2013
Inicio de Pruebas.
Diciembre 2013
48
Residencias
ITM 2014
Paso 3. El PCB entra a la maquina SMT, esta mquina se encarga de ensamblar cada
uno de los componentes que contiene cada rollo de feeders, que son los que alimentan
a la mquina de cada componente.
Paso 4. Despus del proceso anterior, el PCB entra al horno donde se soldn las
piezas a la tablilla.
Paso 5. Una vez que sale del horno pasan a una mquina de inspeccin visual que en
la planta la llamamos AOI, esta mquina inspecciona a la tablilla y evala si es una
pieza bueno o no.
Paso 6. Una vez que la pieza es liberada, un operador la escanea, y hace una segunda
evaluacin sobre la pieza, la escanea como buena o si es lo contrario, lo que hace es
re-trabajarla.
Paso 7. Algunos de los materiales son materiales que no deben de tener
contaminantes, como por ejemplo el flux, entonces pasan a una lavadora donde se
lavan a veces con agua y jabn, y otras veces solo con agua o alguna solucin propia.
Paso 8. Algunas tablillas trabajan con dos lados, un lado Top y un lado Bottom, si es
necesario trabajar con un lado Top, se vuelve a iniciar el proceso.
Paso 9. Una vez que salen de la lavadora por segunda vez (algunos casos), el material
se transporta a otras reas de ensamble o de trabajo.
Paso 10. La tablilla pasa a un rea de pruebas, donde se le somete a pruebas de
temperatura y tambin de visin.
Paso 11. Personal del departamento de calidad hace inspeccin de las piezas y evala
si son buenas o malas por tercera vez.
Paso 12. El material liberado por calidad est listo para ser empaquetado y enviado a la
bodega.
Esto es en cuestin del proceso de SMT. An hay ms procesos donde podramos
poner estaciones de rastreo. Ver hoja de anexos para los diagramas de flujo.
49
Residencias
ITM 2014
Este software ya estaba en la empresa, solo se hizo la utilizacin del servidor con el
que ya contaba, y as poder crear las bases de datos necesarias para cada lnea de
produccin.
Una vez abierto el programa se abre una ventana, que te pide contrasea, usuario y
nombre del servidor, ya que es en donde el programa va a buscar las bases de datos.
50
Residencias
ITM 2014
Una vez iniciado sesin se puede observar una ventana como esta:
Para la creacin de una nueva base de datos es necesario que se dirija a Databases
51
Residencias
ITM 2014
52
Residencias
ITM 2014
Una vez cargada la nueva base de datos se podr observar en el listado de bases de
datos.
Para agregar tablas hay que dar clic en la base de datos, dejar que desplegu todos los
submens, y daremos clic en New Table
53
Residencias
ITM 2014
con
podremos
poner
propiedades
la
que
las
de
cada
columna.
ms
menos
as,
Y as quedara finalmente la base de datos con tablas vacas, ahora queda solo
llenarlas o que la aplicacin desarrollada se encargue de vaciar la informacin dentro
de las tablas.
54
Residencias
ITM 2014
4.2.2 Octubre
4.2.2.1 Requisitos para la creacin de la aplicacin
Antes de crear la aplicacin, se aprendi a utilizar el software Microsoft SQL Server
2008, donde se me ense a utilizar los procedimientos, tablas y las bases de datos,
una vez teniendo practica y conocimientos necesarios, estamos listos para poder recibir
opiniones y requisitos de como queran que se desarrollara el programa.
Algunos de los requisitos pedidos por los ingenieros fueron:
55
Residencias
ITM 2014
Realizar re-trabajos.
Poder exportar el reporte de cada caja con su nmero de serial, fecha y hora de
empaque y quien fue la persona que escaneo.
El programa debe de ser capaz de poder identificar que numero de semana es,
el ao, e identificar la sigla que nos identifica como cts.
Una vez teniendo esta informacin se indic que el formato de las tablas en Microsoft
SQL Server 2008 seria de la siguiente manera, tendran un Datetime (Fecha y hora)
del momento en el que se empaco, Model (nombre del modelo), PCB Number (en
algunos casos se utilizan mismo PCB en dos diferentes modelos, lo que amerita tener
una columna as), Serial (Columna de captura del nmero de serial) que razones
obvias este ser un nmero nico y no podr repetirse, Employee esta columna
contendr el nmero de empleado que escanea el producto y por ultimo Box el cual
contendr el nmero de caja en la que se empaco el producto terminado.
Al trmino de la realizacin de las tablas quedaron as:
56
Residencias
ITM 2014
57
Residencias
ITM 2014
Para empezar el nuevo proyecto hay que abrir Microsoft Visual Basic 2010, aparecer
la siguiente ventana:
58
Residencias
ITM 2014
En la cual daremos clic en New Project no aparecer una ventana como la que
aparece a continuacin y damos clic en Windows Forms Application, damos clic en ok.
59
Residencias
ITM 2014
Para iniciar la aplicacin tendr un men principal donde pondr todos los modelos de
un producto en especfico, los cuales sern seleccionados con un combobox.
60
Residencias
ITM 2014
se
muestren
los
datos
introducidos.
Se abrira una ventana como en la imagen donde se podran almacenar cada uno de los
modelos a mostrar dentro del combobox.
61
Residencias
ITM 2014
En un principio se hicieron varios formularios con los que se trabajaba cada modelo,
pero, con el inicio de implementacin de variables globales se pudieron implementar
solamente un formulario de captura para todos los modelos, cuando en un principio se
usaba un formulario por modelo, y como contamos con alrededor de 20 modelos o ms
por familia de productos, entonces sera un poco difcil estar cambiando en todos los
formularios uno por uno, de manera que nos tomara un tiempo mayor modificarlo, y ya
con formularios de captura con variables globales es muy sencillo modificar porque la
variable global tomara el valor necesario para cada modelo del producto.
Como pueden darse cuenta, el programa te pide fecha y hora que por default se pone
en el textbox o cuadro de texto, el nmero de parte o modelo, el total de piezas es la
cantidad total de piezas escaneadas en el programa, y el nmero de empleado,
tambin se muestra el nmero de la caja en la que van as como el nmero de piezas
que contiene dentro de la caja
62
Residencias
ITM 2014
Tambin se agregan unos submens Reportes, Caja parcial, Eliminar serial, Actualizar
tabla, Conteo, Encontrar serial y l acerca de.
Hay que tener en cuenta que lo nico que hara el empleado con el programa seria
escanear el serial y su nmero de empleado. Todos los dems datos se llenan
automticamente. A continuacin se muestra la tabla que se llenara con esta pantalla:
63
Residencias
ITM 2014
64
Residencias
ITM 2014
En SQL hay dos formas de capturar datos, una muy sencilla y otra un poco tediosa, la
primera es muy sencilla y a la vez es tediosa, y trata de tener que teclear campo por
campo el dato que necesitamos, la otra forma un poco tediosa pero al final sencilla, es
creando procedimientos en SQL, los procedimientos los usamos segn mi experiencia
con el programa, los utilizamos para poder hacer ms sencilla la captura de datos en
las tablas ya que con solo tener un procedimiento, podremos capturar toda la
65
Residencias
ITM 2014
informacin que se encuentra dentro del entorno Visual Basic a la tabla contenida en
SQL Server 2008.
Para poder crear un procedimiento en
Microsoft SQL Server 2008 es necesario
irse a Programmability, y de all a Stored
Procedures.
Que es la carpeta donde todos los
procedimientos realizados en el programa
de SQL se guardan para poder hacer uso
de los mismos cuando se desee.
Haciendo clic izquierdo en la carpeta de
Stored Procedures, se desplegara una
lista
entera
de
los
procedimientos
66
Residencias
ITM 2014
SQL,
tiene
una
interfaz
67
Residencias
ITM 2014
Una vez que aparece esta ventana ya es posible introducir el procedimiento, que en
este caso los procedimientos utilizados para cada una de los procesos de la aplicacin
son:
4.2.2.2.1.1 Insertar la informacin de la aplicacin a la tabla:
USE [thales]
GO
/****** Object: StoredProcedure [dbo].[insertarp25166401]
11:32:52 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
Create proc [dbo].[insertarp25166401]
(
@fecha varchar(100),
@parte varchar(50),
@piezas varchar(50),
@serie varchar(50),
@empleado varchar(50),
@caja int
)
as begin
68
Residencias
ITM 2014
69
Residencias
ITM 2014
11:33:27 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
Create proc [dbo].[24915101_byserial]
@serie varchar(50)
as
select*from p24915101
where serie = @serie
70
Residencias
ITM 2014
71
Residencias
ITM 2014
11:34:17 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
Create PROCEDURE [dbo].[eliminar_25273102]
@serie varchar(50)
as
delete from p25273102
where serie = @serie
El cdigo anterior es un ejemplo usado en la aplicacin, a continuacin se explicara tal
y como est la sintaxis.
*** Usa la base de datos.
USE [NOMBRE DE LA BASE DE DATOS]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
72
Residencias
ITM 2014
GO
*** Crea el procedimiento.
create PROCEDURE [dbo].[NOMBRE DEL PROCEDIMIENTO]
*** Nombre de las variables que contendrn los datos, junto con su formato.
@VARIABLE FORMATO(50)
As
*** Eliminar de la table, donde la columna sea igual a la variable.
delete from NOMBRE DE LA TABLA
where COLUMNA = @VARIABLE
11:34:40 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
Create proc [dbo].[buscar_p253812]
@serie varchar(50)= '%'
73
Residencias
ITM 2014
as
select * from p253812
where serie like @serie + '%'
El cdigo anterior es un ejemplo usado en la aplicacin, a continuacin se explicara tal
y como est la sintaxis.
*** Usa la base de datos.
USE [NOMBRE DE LA BASE DE DATOS]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
*** Crea el procedimiento
create proc [dbo].[NOMBRE DEL PROCEDIMIENTO]
*** Nombre de las variables que contendrn los datos, junto con su formato.
@VARIABLE FORMATO(50)= '%'
as
*** Selecciona todas las columnas de la tabla.
select * from NOMBRE DE LA TABLA
*** Donde donde la columna coincida con los valores de la variable.
where COLUMNA like @VARIABLE + '%'
74
Residencias
ITM 2014
Como ya hemos visto el empleado solo escaneara el nmero de serial del producto
terminado, enseguida el escner enva un ENTER automtico, la misma aplicacin
salta de TEXTBOX para poder seguir escaneado su nmero de empleado.
Al dar este ltimo ENTER por el empleado se activa una parte del programa que se
encarga de guardar los datos, pero en lenguaje de Visual Basic.
Semi-Automatizacin de Control de Datos de Produccin
75
Residencias
ITM 2014
End Class
76
Residencias
ITM 2014
Una vez puesto el cdigo principal podemos a empezar a programar cada una de las
herramientas que usamos en nuestro formulario, como
77
Residencias
ITM 2014
.AddWithValue("@serie", TextBox4.Text)
.AddWithValue("@empleado", TextBox5.Text)
.AddWithValue("@caja", lblbox.Text)
End With
cmd.ExecuteNonQuery()
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
End Try
conexion.Close()
End Sub
Explicando las lneas de cdigo:
Sub Nombre de la funcin ()
Try
*** Inicio de la conexin.
conexion.Open()
Dim cmd As SqlCommand
*** Se realiza la conexin con el procedimiento.
cmd = New SqlCommand(NOMBRE DEL PROCEDIMIENTO, conexion)
cmd.CommandType = CommandType.StoredProcedure
78
Residencias
ITM 2014
79
Residencias
ITM 2014
Una vez finalizado el paso de agregar el registro, el programa sigue corriendo otra
funcin la cual es mostrar ya que inmediatamente de que se agrega el registro, el
DATAGRIDVIEW entra y actualiza la tabla que se muestra. A continuacin el condigo
de mostrar:
*** En esta parte del cdigo no se utiliz un procedimiento de SQL, ya que
encontramos que podamos realizar el procedimiento desde el mismo entorno de Visual
Basic.
Sub mostrar()
Try
*** Declaramos una variable que funcionara como el procedimiento.
Dim sql As String
*** Se le da el valor a la variable con el procedimiento que desearemos hacer, en este
caso seleccionaremos fecha, parte, serie, empleado y caja de la tabla y los ordenara
por fecha descendente, lo que significa que se mostrara el ultimo registro escaneado.
sql = "select Fecha,Parte,Serie,Empleado,Caja from " & mod1 & " order by
fecha desc"
*** Se realiza la conexin con el procedimiento.
Dim da As New SqlDataAdapter(sql, conexion)
Dim ds As New DataSet
da.Fill(ds, mod1)
*** Mostramos la informacin nueva en el DATAGRIDVIEW.
DataGridView1.DataSource = ds.Tables(mod1)
80
Residencias
ITM 2014
Catch ex As Exception
MsgBox(ex.Message & "If ")
End Try
End Sub
Para conocer la ltima caja escaneada se utiliza otro procedimiento creado en Visual
Basic.
'Esta parte del cdigo se encarga de seleccionar la ltima caja escaneada
Sub ultimacaja()
'Se declara una variable donde se almacenara la informacin del procedimiento.
Dim sql As String
'Se le da el valor a la variable con el procedimiento deseado, que en este caso es
selecciona y muestra el top 1 de la columna caja de la tabla y ordnalo
descendentemente, por lo que se seleccionara el ltimo nmero de caja.
sql = "select top 1 caja from " & mod1 & " order by caja desc"
Try
'Se declara una variable llamada valor con la cual se tomara ese nmero de caja de
SQL y se transmitir a la pantalla de la aplicacin.
Dim valor As String
Dim da As New SqlDataAdapter(sql, conexion)
Dim ds As New DataSet
81
Residencias
ITM 2014
da.Fill(ds, mod1)
'La variable declarada tomara el valor del top 1 de la caja.
valor = ds.Tables(0).Rows(0).Item("caja") & ""
'Por ltimo se deposita ese valor de la caja en el LABEL donde va el nmero de caja.
lblbox.Text = valor
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Critical)
End Try
End Sub
Para saber la cantidad de piezas contenida en la caja se utiliza este cdigo el cual
utiliza tambin un procedimiento utilizado en Visual Basic.
'Este fragmento de cdigo cuenta la cantidad de piezas escaneadas por el sistema y
que estn fsicamente dentro del de la caja.
Sub caja()
Dim cmd As SqlCommand
'Se declara una variable con la que se har el conteo de las piezas con el
procedimiento.
Dim SelectSQl As String
'Se llena la variable con el procedimiento deseado, que en este caso es selecciona y
cuenta de la columna serie de la base de datos y tabla donde el nmero de caja es
lblbox.text, que viene siendo el nmero de caja.
82
Residencias
ITM 2014
83
Residencias
ITM 2014
'Inmediatamente de que se termina el conteo de las piezas entra otra funcin que se
encarga del control del conteo de las cajas.
cajaconteo()
End Try
End Sub
'Fragmento de cdigo que se encarga de contar el total de la piezas escaneadas, si la
cantidad es igual a 120 se le suma un uno a la caja, el contador de las piezas cambia a
cero y lanza un mensaje diciendo que la caja se ha llenado.
Sub cajaconteo()
If lblinside.Text = "120" Then
lblbox.Text = lblbox.Text + 1
lblinside.Text = "0"
MsgBox("Full box" & vbNewLine & "New box starts", MsgBoxStyle.Information)
End If
End Sub
Estos fueron los cdigos base a partir de donde arranco la aplicacin. A medida que
comenzaron las pruebas vinieron nuevas opciones del programa as como su
complejidad en la programacin.
84
Residencias
ITM 2014
4.2.3 Noviembre
4.2.3.1 Inicio de pruebas.
El prototipo del programa inicio pruebas en noviembre, antes de iniciar con las pruebas
se inici la toma de tiempo en la lnea de produccin, para saber cunto es lo que
tardaban la gente de produccin en realizar el empaque y adems de resolver
problemas que llegaran a resultar en el proceso.
La mayora de los tiempos tomados antes de la implementacin del programa fueron de
48:58 min, este tiempo es un promedio, aqu se tienen en cuenta que hubo problemas
de captura, seriales repetidos, etc., estos datos fueron obtenidos en el mes de octubre,
esta idea de tomar tiempos fue de mi asesor externo Dionicio Mata.
La meta es que con este programa disminuyamos la cantidad de tiempo de captura y
de empaque, as como reducir los errores por etiquetas repetidas y bsqueda de
material para auditar.
A continuacin se mostraran las diferentes mejoras que se le agregaron a la aplicacin.
85
Residencias
ITM 2014
86
Residencias
ITM 2014
87
Residencias
ITM 2014
Esta parte de la aplicacin te muestra una ventana donde te pide el nmero de caja, y
el nmero de parte o modelo a cargar en el reporte, tiene un botn (SHOW), el cual se
encargara de buscar la informacin provista por el usuario, adems al final de la
bsqueda mostrara la cantidad total de las piezas dentro de la caja.
88
Residencias
ITM 2014
Este es el cdigo utilizado para cada una de las funciones de esta parte de la
aplicacin.
'Librera de Visual Basic que se encarga de importar los datos y procedimientos de
SQL.
Imports System.Data.SqlClient
'Librera de Excel que se encarga de exportar los datos del DATAGRIDVIEW.
Imports Microsoft.Office.Interop
Public Class Reports
'conexin de Visual Basic con SQL Server 2008.
Public
conexion
As
New
SqlConnection("Data
89
Residencias
ITM 2014
90
Residencias
ITM 2014
'cdigo para el botn exportar a Excel, primero verifica el modelo y despus manda
llamar el comando de exportar.
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
If ComboBox1.Text = "p25155501" Then
exportar251555()
End If
End Sub
Private Sub releaseObject(ByVal obj As Object)
Try
System.Runtime.InteropServices.Marshal.ReleaseComObject(obj)
obj = Nothing
Catch ex As Exception
obj = Nothing
Finally
GC.Collect()
End Try
End Sub
'cdigo para exportar a Excel.
Sub exportar251555()
Dim xlApp As Excel.Application
Dim xlWorkBook As Excel.Workbook
91
Residencias
ITM 2014
el
archivo
la
siguiente
direccin
xlApp.Workbooks.Open(Filename:="V:\CrossDept\EMSDBScanning\THALES\MASTER
1555.xls", UpdateLinks:=False, ReadOnly:=True)
'xlWorkBook.Worksheet("sheet1").activate()
xlWorkSheet = xlWorkBook.Sheets("sheet1")
For i As Integer = 1 To NCol
For h As Integer = 10 To 30
xlWorkSheet.Cells.Item(1, i) = DataGridView1.Columns(i - 1).Name.ToString
xlWorkSheet.Cells.Item(1, i).HorizontalAlignment = 3
h=h+1
' ProgressBar1.Value = h
Next
Next
For Fila As Integer = 0 To NRow - 1
92
Residencias
ITM 2014
2,
Col
1)
DataGridView1.Rows(Fila).Cells(Col).Value
Next
' ProgressBar1.Value = Fila
'ProgressBar1.Value = ProgressBar1.Value + 1
Next
xlWorkSheet.Rows.Item(1).Font.Bold = 5
xlWorkSheet.Rows.Item(1).HorizontalAlignment = 3
'xlworksheet.Columns.Style = "TEXT"
xlWorkSheet.Columns.AutoFit()
xlApp.Application.Visible = True
xlWorkSheet = Nothing
xlWorkSheet = Nothing
releaseObject(xlApp)
releaseObject(xlWorkBook)
releaseObject(xlWorkSheet)
'ProgressBar1.Value = 195
'MsgBox("Exportado con exito")
Try
93
Residencias
ITM 2014
Catch ex As Exception
Finally
MsgBox("Succesfully exported", MsgBoxStyle.Information)
' ProgressBar1.Visible = False
End Try
End Sub
End Class
El resultado de todo esto es la hoja de Excel con todos los nmeros de serial como se
muestra, recordemos que se los datos se vacan en la hoja 1 y de esa hoja se toman
los datos para llenar el formato mostrado a continuacin:
94
Residencias
ITM 2014
Algunos seriales eran necesarios ser eliminados, o porque calidad los haba detectado
como piezas malas, u otra razn por la que produccin deseara eliminar una pieza, es
porque se haban pasado de la cantidad correcta, en caso de tener que mandar una
caja parcial.
Al hacer clic en este men se abrir una ventana como esta:
95
Residencias
ITM 2014
96
Residencias
ITM 2014
97
Residencias
ITM 2014
98
Residencias
ITM 2014
99
Residencias
ITM 2014
4.2.3.1.4 Update
100
Residencias
ITM 2014
Esta opcin es para realizar un conteo rpido de cuantas piezas han sido escaneadas
en el transcurso del da, al dar clic en esta opcin se abrir una ventana como la
siguiente:
101
Residencias
ITM 2014
102
Residencias
ITM 2014
ComboBox1.Focus()
End Sub
'Esta funcin se encarga de realizar la bsqueda de la siguiente consulta, selecciona
todos los campos del nmero de parte donde la fecha que es un campo, este entre la
fecha inicial y la final.
Sub Piezasxhora()
Try
Dim sql As String
conexion.Open()
sql = "select * "
sql &= "from " & ComboBox1.SelectedItem & " "
'sql &= "where fecha like '" & TextBox1.Text & "' + '%' "
sql &= "where fecha between '" & TextBox1.Text & "' and '" & TextBox2.Text &
"'"
Dim da As New SqlDataAdapter(sql, conexion)
Dim ds As New DataSet
da.Fill(ds, ComboBox1.SelectedItem)
DataGridView1.DataSource = ds.Tables(ComboBox1.SelectedItem)
Catch ex As Exception
MsgBox(ex.Message + "Check if some field are missing")
End Try
103
Residencias
ITM 2014
conexion.Close()
End Sub
'control del contador, se encarga de llamar a la funcin piezas por hora la cual es la que
contabilizara.
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Piezasxhora()
'una vez realizada la consulta visual hace un conteo de las filas, quitando una que es la
que queda en blanco, ya que el datagridview siempre deja una casilla libre para poder
agregar un registro ms, cosa que se le ha negado realizar ya que el datagridview est
bloqueado para ser editable.
Label1.Text = DataGridView1.RowCount - 1
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
Me.Close()
End Sub
104
Residencias
ITM 2014
DataGridView1.DataSource = Nothing
ComboBox1.Text = "
End Sub
'control del datetimepicker1, se encarga de poner en el texbox1 el siguiente formato:
"MM/dd/yyyy hh:mm tt".
Private Sub DateTimePicker1_TextChanged(ByVal sender As Object, ByVal e As
System.EventArgs) Handles DateTimePicker1.TextChanged
Me.TextBox1.Text = Format(Me.DateTimePicker1.Value, "MM/dd/yyyy hh:mm tt")
End Sub
'control del datetimepicker2, se encarga de poner en el texbox2 el siguiente formato:
"MM/dd/yyyy hh:mm tt".
Private Sub DateTimePicker2_TextChanged(ByVal sender As Object, ByVal e As
System.EventArgs) Handles DateTimePicker2.TextChanged
Me.TextBox2.Text = Format(Me.DateTimePicker2.Value, "MM/dd/yyyy hh:mm tt")
End Sub
End Class
105
Residencias
ITM 2014
Esta ltima funcin se utiliza para buscar el historial de un serial, en caso de que haya
sido regresado, hay dos formas de buscar el serial, una por el serial dentro de la caja,
en caso de que sepamos qu nmero de caja es y la otra opcin es buscar el serial
dentro de toda la base de datos.
106
Residencias
ITM 2014
107
Residencias
ITM 2014
Para buscar un nmero de serial en todas las piezas escaneadas, basta con poner solo
el nmero de parte o modelo.
108
Residencias
ITM 2014
Este es el cdigo usado por la misma aplicacin para realizar esta funcin.
'librera de uso de archivos de SQL en Visual.
Imports System.Data.SqlClient
Public Class frmfind
'conexin de Visual Basic con SQL Server 2008.
Public conexion As New SqlConnection("Data
source=MX12O700211\SQLEXPRESS; Initial catalog=thales; Integrated Security=
false; user id=standard; password=standard; multipleactiveresultsets=true")
Dim a As String
Private Sub bttreturn_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles bttreturn.Click
Me.Hide()
End Sub
Private Sub bttexit_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles bttexit.Click
Me.Hide()
End
End Sub
Private Sub btthelp_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btthelp.Click
AboutBox1.Show()
End Sub
109
Residencias
ITM 2014
110
Residencias
ITM 2014
txtfullinside.Text = ""
cmbpartselect.Text = ""
txtboxnumber.Focus()
End If
End Sub
'consulta para la bsqueda de la pieza por el nmero de caja, que en este caso sera
seleccionar todos los campos del nmero de parte, donde la caja es igual al
textboxnumber.
Sub consulta()
Dim selectsql As String = "select * "
selectsql &= "from " & cmbnumpart.SelectedItem & " "
If Not String.IsNullOrEmpty(txtboxnumber.Text) Then
selectsql &= " where caja='" & txtboxnumber.Text & "'"
End If
Dim cmd As New SqlCommand(selectsql, conexion)
Try
conexion.Open()
Dim adapter As New SqlDataAdapter(cmd)
Dim ds As New DataSet
adapter.Fill(ds, cmbnumpart.SelectedItem)
datareport.DataSource = ds.Tables(cmbnumpart.SelectedItem)
Catch ex As Exception
111
Residencias
ITM 2014
112
Residencias
ITM 2014
113
Residencias
ITM 2014
114
Residencias
ITM 2014
buscar()
End If
End If
End Sub
'Se encarga de realizar la bsqueda del serial ingresado utilizando el procedimiento
creado en SQL Server 2008.
Sub buscar1()
Dim da As New SqlDataAdapter
Dim ds As New DataSet
Try
conexion.Open()
da = New SqlDataAdapter(a, conexion)
da.SelectCommand.CommandType = CommandType.StoredProcedure
da.SelectCommand.Parameters.AddWithValue("@serie", txtfullinside.Text)
ds.Clear()
da.Fill(ds)
Label1.Text = ds.Tables(0).Rows(0).Item("serie") & ""
Dim dt As New DataTable
da.Fill(dt)
datareport.DataSource = dt
Catch ex As Exception
115
Residencias
ITM 2014
116
Residencias
ITM 2014
4.2.4 Diciembre
4.2.4.1 Implementacin de la aplicacin.
117
Residencias
ITM 2014
V. RESULTADOS OBTENIDOS
118
Residencias
ITM 2014
5.1 Resultados:
Con la realizacin e implementacin de la aplicacin, se tomaron los tiempos de nuevo
lanzando los resultados esperados, mejoramiento en el proceso de empacado, mejor y
mayor respuesta en cuestin a etiquetas repetidas, el tiempo resultante con esta
mejora fue de 17:56 min.
Optimizando as el proceso de captura y empaquetado en un 63%.
119
Residencias
ITM 2014
120
Residencias
ITM 2014
6.1 Alcances.
6.2 Limitaciones.
121
Residencias
ITM 2014
122
Residencias
ITM 2014
7.1 Conclusiones.
En conclusin, la aplicacin resulto todo un xito, cumpli con las expectativas, que
aunque se esperaba que sobrepasara las mismas, por el tiempo solo llego a cumplir las
ms bsicas.
La empresa quedo muy conformada con el trabajo realizado en mis residencias.
7.2 Recomendaciones.
Para realizar, o mejorar el proyecto ser necesario o indispensable que se utilicen
variables globales, para que as puedan utilizar menos formularios, tambin como
recomendacin ser bueno que al igual que en el cdigo de VISUAL BASIC, se
utilizaran los procedimientos dentro del cdigo, y no en Microsoft SQL Server 2008,
para que as disminuyan el tiempo de programacin, y el tiempo sobrante se invierta en
mejora continua del proyecto para as poder llegar al mximo potencial de la aplicacin,
que al final su objetivo principal es generar una ayuda a los auditores de calidad,
gerentes e ingenieros una vista en tiempo real de cmo va el proceso, analizar la
cantidad de produccin del da y producto terminado.
123
Residencias
ITM 2014
ANEXOS
124