Se te recomienda antes de hacer cualquier ejercicio leerlo completamente, al estarlo realizando anota todas las preguntas o dudas que te surjan para su aclaración en clase, así como los elementos nuevos que descubras.
Recuerda que no se trata de copiar y pegar o de transcribir contenidos, ante todo es descubrir su operatividad y comprobar su funcionalidad.
Se desea elaborar la boleta de pago de los trabajadores de una fábrica. Para ello se cuenta con los siguientes datos de entrada:
Apellidos y nombres del trabajador
Sueldo básico
Horas extras trabajadas
Además, se sabe que los trabajadores laboran en dos turnos: diurno y nocturno. Y que la tarifa por las horas extras diurnas es de 10 pesos y por las horas extras nocturnas es de 15 pesos.
Los descuentos a aplicar son sobre el sueldo básico y se obtienen de la siguiente manera:
dblRenta = dblSueldoBasico * 0.1
dblFonavi = dblSueldoBasico * 0.07
dblISR = dblSueldoBasico * 0.03
Finalmente el sueldo neto del trabajador se calcula mediante las siguientes expresiones:
dblIngresos = dblSueldoBasico + intHorasExtras * dblPagoHoraExtra
dblEgresos = dblRenta + dblFonavi + dblISR
dblSueldoNeto = dblIngresos - dblEgresos
El diseño de la interfaz deberá ser similar a la figura mostrada:
Para el desarrollo de esta aplicación, proceda a ubicar los siguientes controles en el formulario:
2 marcos
5 etiquetas
8 cajas de texto
2 botones de opción
3 casillas de verificación
3 botones de comando
Luego, proceda a establecer las propiedades según se indica a continuación:
Form1
Nombre | frmBoletaDePago |
BorderStyle | 3-Fixed Dialog |
Caption | Boleta de pago |
Moveable | False |
Label1
Nombre | lblTrabajador |
AutoSize | True |
Caption | Trabajador: |
Label2
Nombre | lblSueldoBasico |
AutoSize | True |
Caption | Sueldo Bruto |
Label3
Nombre | lblHorasExtras |
AutoSize | True |
Caption | Horas extras: |
Label4
Nombre | lblPagoHoraExtra |
AutoSize | True |
Caption | Pago hora extra |
Label5
Nombre | lblSueldoNeto |
AutoSize | True |
Caption | Sueldo neto |
Text1
Nombre | txtTrabajador |
Text | |
Text2
Nombre | txtSueldoBasico |
Text | |
Text3
Nombre | txtHorasExtras |
Text | |
Text4
Nombre | txtPagoHoraExtra |
BackColor | &H80000004& |
Text | |
Text5
Nombre | txtRenta |
BackColor | &H80000004& |
Locked | True |
Text | |
Text6
Nombre | txtFonavi |
BackColor | &H80000004& |
Locked | True |
Text | |
Text7
Nombre | txtISR |
BackColor | &H80000004& |
Locked | True |
Text | |
Text8
Nombre | txtSueldoNeto |
BackColor | &H80000004& |
Locked | True |
Text | |
option1
Nombre | optDiurno |
Caption | Diurno |
Value | True |
option2
Nombre | optNocturno |
Caption | Nocturno |
Value | False |
Check1
Nombre | chkRenta |
Caption | Renta |
Check2
Nombre | chkFonavi |
Caption | Fonavi |
Check3
Nombre | chkISR |
Caption | ISR |
Command1
Nombre | cmdAceptar |
Caption | &Aceptar |
Default | True |
Command2
Nombre | cmdLimpiar |
Caption | &Limpiar |
Command3
Nombre | cmdSalir |
Cancel | True |
Caption | &Salir |
Una vez establecidas las propiedades, proceda a ingresar el código que se indica a continuación:
Private Sub cmdAceptar_Click()
Dim dblSueldoBasico As Double
Dim intHorasExtras As Integer, dblPagoHoraExtra As Double
Dim dblRenta As Double, dblFonavi As Double, dblISR As Double
Dim dblIngresos As Double, dblEgresos As Double
Dim dblSueldoNeto As Double
dblSueldoBasico = Val(txtSueldoBasico.Text)
intHorasExtras = Val(txtHorasExtras.Text)
If optDiurno.Value Then
dblPagoHoraExtra = 10
End If
If optNocturno.Value Then
dblPagoHoraExtra = 15
End If
If chkRenta.Value Then
dblRenta = dblSueldoBasico * 0.1
Else
dblRenta = 0
End If
If chkFonavi.Value Then
dblFonavi = dblSueldoBasico * 0.07
Else
dblFonavi = 0
End If
If chkISR.Value Then
dblISR = dblSueldoBasico * 0.03
Else
dblISR = 0
End If
dblIngresos = dblSueldoBasico + intHorasExtras * dblPagoHoraExtra
dblEgresos = dblRenta + dblFonavi + dblISR
dblSueldoNeto = dblIngresos - dblEgresos
txtPagoHoraExtra.Text = Str(dblPagoHoraExtra)
txtRenta.Text = Str(dblRenta)
txtFonavi = Str(dblFonavi) : txtISR = Str(dblISR)
txtSueldoNeto = Str(dblSueldoNeto)
End Sub
Private Sub cmdSalir_Click()
End
End Sub
Guarde y ejecute su aplicación.
Anote sus observaciones:
- Que descubriste que sucede con el siguiente segmento de código:
If optDiurno.Value Then
dblPagoHoraExtra = 10
End If
If optNocturno.Value Then
dblPagoHoraExtra = 15
End If
- Consideras que es lo mismo utilizar opt y/o utilizar chk.
- En el siguiente segmento de código existe una condición, cuando se ejecutará la línea dblFonavi = 0.
If chkFonavi.Value Then
dblFonavi = dblSueldoBasico * 0.07
Else
dblFonavi = 0
End If
- Habiendo concluido el ejercicio. Describe la parte consideras necesario volver a repasar: