DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

9
REDES Y COMUNICACIONES VISUAL BASIC 6.0 JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO REALIZAR PROGRAMAS EN VISUAL BASIC QUE GENEREN REPORTES La generación de reportes en un proceso automatizado, nos permiten llevar un control y seguimiento de variables y valores de producción. Todos los lenguajes de programación nos permiten crear dichos reportes, ya sea usando archivos planos o bases de datos para guardar la información requerida. Los archivos planos pueden ser generados usando las plantillas CSV o simplemente haciendo separación de valores, en las bases de datos se utilizan varias plataformas como Access, SQL, Oracle, informix, etc. Con Visual Basic se pueden crear reportes en archivos planos y bases de datos, nos vamos referir en este caso a los archivos planos. Un archivo plano es aquel donde sus datos son representados por ASCII directos y la información en el contenido puede ser ordenada o no. REALIZAR UN PROGRAMA EN VISUAL BASIC 6, DONDE A PARTIR DE UN PROCESO AUTOMATICO SE ESTEN GENERANDO REPORTES PLANOS DE LA ACTIVIDAD DEL PROCESO... PROGRAMA EN VISUAL BASIC El proceso al que se le generarán los reportes es un dosificador el cual realiza una mezcla automática de varios elementos como arena, grava, agua y cemento en un tanque de almacenamiento para después entregarlos para su respectivo uso. FORMULARIO

description

Con Visual Basic se pueden crear reportes en archivos planos y bases de datos, nos vamos referir en este caso a los archivos planos. Un archivo plano es aquel donde sus datos son representados por ASCII directos y la información en el contenido puede ser ordenada o no.GUÍA DE APRENDIZAJE F08-6060-002 INSTRUCTOR- TUTOR: JAIME ALBERTO OCAMPO PEREZ

Transcript of DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

Page 1: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REALIZAR PROGRAMAS EN VISUAL BASIC QUE GENEREN REPORTES

La generación de reportes en un proceso automatizado, nos permiten llevar un control y seguimiento de variables y valores de producción. Todos los lenguajes de programación nos permiten crear dichos reportes, ya sea usando archivos planos o bases de datos para guardar la información requerida. Los archivos planos pueden ser generados usando las plantillas CSV o simplemente haciendo separación de valores, en las bases de datos se utilizan varias plataformas como Access, SQL, Oracle, informix, etc. Con Visual Basic se pueden crear reportes en archivos planos y bases de datos, nos vamos referir en este caso a los archivos planos. Un archivo plano es aquel donde sus datos son representados por ASCII directos y la información en el contenido puede ser ordenada o no. REALIZAR UN PROGRAMA EN VISUAL BASIC 6, DONDE A PARTIR DE UN PROCESO AUTOMATICO SE ESTEN GENERANDO REPORTES PLANOS DE LA ACTIVIDAD DEL PROCESO...

PROGRAMA EN VISUAL BASIC El proceso al que se le generarán los reportes es un dosificador el cual realiza una mezcla automática de varios elementos como arena, grava, agua y cemento en un tanque de almacenamiento para después entregarlos para su respectivo uso. FORMULARIO

Page 2: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

CODIGO FUENTE

Option Explicit Dim TARA As Single Dim PASO As Byte Dim TMETA As Single Dim TPESADO As Single Dim ACUMULADO As Single Sub PAUSA(TM As Single) Dim RT As Single RT = Timer Do Loop Until ((Timer - RT) >= TM) End Sub Private Sub Command1_Click() End End Sub Private Sub INICIO_Click() If Val(PBRUTO) > 0 Then Exit Sub If (Val(ARENA) + Val(GRAVA) + Val(CEMENTO) + Val(AGUA) > 1000) Then Exit Sub If (Val(ARENA) + Val(GRAVA) + Val(CEMENTO) + Val(AGUA) < 10) Then Exit Sub If PASO > 0 Then Exit Sub CICLO.FillColor = vbGreen ACUMULADO = PTOTAL GRABAR1 PASO = 1 TMETA = 0 TPESADO = 0 End Sub Private Sub PBRUTO_Change() If Val(PBRUTO) < 0 Then PBRUTO = 0 If Val(PBRUTO) > 1000 Then PBRUTO = 1000 VPBRUTO = Val(PBRUTO) End Sub Private Sub PTOTAL_Change() PTOTAL = Val(PTOTAL) End Sub Private Sub Timer1_Timer() Select Case PASO Case 1: V1OFF.Visible = 0 TARA = Val(PBRUTO) V1ON.Visible = 1 L1_1.BorderColor = vbBlue L1_2.BorderColor = vbBlue L1_3.BorderColor = vbBlue PASO = 2 Case 2:

Page 3: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

If Val(PBRUTO) >= Val(ARENA) Then V1ON.Visible = 0 V1OFF.Visible = 1 L1_1.BorderColor = vbBlack L1_2.BorderColor = vbBlack L1_3.BorderColor = vbBlack DoEvents PAUSA 2 GRABAR2 "ARENA", Val(ARENA) V2OFF.Visible = 0 TARA = Val(PBRUTO) V2ON.Visible = 1 L2_1.BorderColor = vbBlue L2_2.BorderColor = vbBlue L2_3.BorderColor = vbBlue PASO = 3 End If Case 3: If Val(PBRUTO) >= Val(ARENA) + Val(CEMENTO) Then V2OFF.Visible = 1 V2ON.Visible = 0 L2_1.BorderColor = vbBlack L2_2.BorderColor = vbBlack L2_3.BorderColor = vbBlack DoEvents PAUSA 2 GRABAR2 "CEMENTO", Val(CEMENTO) V3OFF.Visible = 0 TARA = Val(PBRUTO) V3ON.Visible = 1 L3_1.BorderColor = vbBlue L3_2.BorderColor = vbBlue L3_3.BorderColor = vbBlue PASO = 4 End If Case 4: If Val(PBRUTO) >= Val(ARENA) + Val(CEMENTO) + Val(GRAVA) Then V3OFF.Visible = 1 V3ON.Visible = 0 L3_1.BorderColor = vbBlack L3_2.BorderColor = vbBlack L3_3.BorderColor = vbBlack DoEvents PAUSA 2 GRABAR2 "GRAVA", Val(GRAVA) V4OFF.Visible = 0 TARA = Val(PBRUTO) V4ON.Visible = 1 L4_1.BorderColor = vbBlue L4_2.BorderColor = vbBlue L4_3.BorderColor = vbBlue PASO = 5 End If Case 5: If Val(PBRUTO) >= Val(ARENA) + Val(CEMENTO) + Val(GRAVA) + Val(AGUA) Then V4OFF.Visible = 1

Page 4: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

V4ON.Visible = 0 L4_1.BorderColor = vbBlack L4_2.BorderColor = vbBlack L4_3.BorderColor = vbBlack DoEvents PAUSA 2 GRABAR2 "AGUA", Val(AGUA) V5OFF.Visible = 0 PTOTAL = ACUMULADO + Val(PBRUTO) V5ON.Visible = 1 L5.BorderColor = vbBlue L6.BorderColor = vbBlue L7.BorderColor = vbBlue PASO = 6 End If Case 6: If Val(PBRUTO) = 0 Then V5OFF.Visible = 1 V5ON.Visible = 0 L5.BorderColor = vbBlack L6.BorderColor = vbBlack L7.BorderColor = vbBlack CICLO.FillColor = vbBlack GRABAR3 GRABAR4 PASO = 0 End If End Select PNETO = Val(PBRUTO) - TARA If (V1ON.Visible Or V2ON.Visible Or V3ON.Visible Or V4ON.Visible) And Val(PBRUTO) < 1000 Then PBRUTO = PBRUTO + 1 If Val(PTOTAL) >= Val(PBRUTO) Then PTOTAL = PTOTAL + 1 Else PTOTAL = PTOTAL + 1 End If End If If V5ON.Visible And Val(PBRUTO) > 0 Then PBRUTO = PBRUTO - 1 End If End Sub Private Sub GRABAR1() Dim ARCH As String ARCH = "C:\" & Format(Now, "YYYYMMDD") & ".TXT" Close Open ARCH For Append As #1 Print #1, " " Print #1, "INICIO DE PRODUCCION" Print #1, "**********************************************************************************" Print #1, "HORA"; Tab(10); "MATERIAL"; Tab(20); "META"; Tab(28); "PESADO"; Tab(36); "ERROR" Print #1, " " Close End Sub

Page 5: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

Private Sub GRABAR2(V1 As String, V2 As Single) Dim ARCH As String ARCH = "C:\" & Format(Now, "YYYYMMDD") & ".TXT" Close Open ARCH For Append As #1 Print #1, Format(Now, "HH:MM:SS"); Tab(10); V1; Tab(20); V2; Tab(28); Val(PNETO); Tab(36); Format(((Val(PNETO) - V2) * 100 / V2), "0.00") Print #1, " " TMETA = TMETA + (V2) TPESADO = TPESADO + Val(PNETO) Close End Sub Private Sub GRABAR3() Dim ARCH As String ARCH = "C:\" & Format(Now, "YYYYMMDD") & ".TXT" Close Open ARCH For Append As #1 Print #1, " " Print #1, "TOTAL"; Tab(20); "TMETA"; Tab(27); "TPESADO"; Tab(36); "Error" Print #1, " " Print #1, Tab(20); Format(TMETA, "0.00"); Tab(28); Format(TPESADO, "0.00"); Tab(36); Format(((TPESADO - TMETA) * 100 / TMETA), "0.00") Print #1, " " Print #1, "FIN BACHE" Print #1, "**********************************************************************************************************" Close End Sub Private Sub GRABAR4() Dim ARCH As String ARCH = "C:\" & Format(Now, "YYYYMMDD") & ".TXT" Close Open ARCH For Append As #1 Print #1, " " Print #1, "ACUMULADO"; Tab(20); Format(Val(PTOTAL), "0.000") Close End Sub

PARA GENERAR REPORTES ESTAMOS UTILIZANDO EL PROCEDIMIENTO GRABAR1, GRABAR2, GRABAR3, GRABAR4.

Page 6: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

FUNCIONAMIENTO DEL PROGRAMA

1. Se introducen los valores de elementos a mezclar y se oprime inicio.

2. En ese instante se activan las válvulas de los tanques superiores para

entregar la cantidad indicada.

3. El tanque inferior acumula las cantidades de material para luego entregarlas por medio de otra válvula a otro tanque.

Page 7: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

4. Termina el ciclo

Page 8: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

5. Ubicación del reporte generado.

Page 9: DISEÑAR PROGRAMAS EN LENGUAJE ESTRUCTURADO

REDES Y COMUNICACIONES VISUAL BASIC 6.0

JOHN FREDY MARTINEZ CARDONA MANTENIMIENTO ELECTRÓNICO

En este archivo quedan grabados todos los ciclos de funcionamiento del programa. BIBLIOGRAFIA GUÍA DE APRENDIZAJE F08-6060-002 INSTRUCTOR- TUTOR: JAIME ALBERTO OCAMPO PEREZ