BOLETA DE PAGO

jueves, 13 de noviembre de 2008

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 soles y por las horas extras nocturnas es de 15 soles.
Los descuentos a aplicar son sobre el sueldo básico y se obtienen de la siguiente manera:

Renta = SueldoBasico * 0.1

Fonavi = SueldoBasico * 0.07

AFP = SueldoBasico * 0.03

Finalmente el sueldo neto del trabajador se calcula mediante las siguientes expresiones:

Ingresos = SueldoBasico + HorasExtras * PagoHoraExtra

Egresos = Renta + Fonavi + AFP

SueldoNeto = Ingresos - Egresos
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 S/.

Label3

Nombre
LblHorasExtras

AutoSize
True

Caption
Horas extras:

Label4

Nombre
LblPagoHoraExtra

AutoSize
True

Caption
Pago hora extra S/.

Label5

Nombre
LblSueldoNeto

AutoSize
True

Caption
Sueldo neto S/.

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
TxtAFP

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
ChkAFP

Caption
AFP

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 SueldoBasico As Double
Dim HorasExtras As Integer, PagoHoraExtra As Double
Dim Renta As Double, Fonavi As Double, AFP As Double
Dim Ingresos As Double, Egresos As Double
Dim SueldoNeto As Double
SueldoBasico = Val(TxtSueldoBasico)
HorasExtras = Val(TxtHorasExtras)
If OptDiurno Then
PagoHoraExtra = 10
End If
If OptNocturno Then
PagoHoraExtra = 15
End If
If ChkRenta.Value Then
Renta = SueldoBasico * 0.1
Else
Renta = 0
End If
If ChkFonavi.Value Then
Fonavi = SueldoBasico * 0.07
Else
Fonavi = 0
End If
If ChkAFP.Value Then
AFP = SueldoBasico * 0.03
Else
AFP = 0
End If
Ingresos = SueldoBasico + HorasExtras * PagoHoraExtra
Egresos = Renta + Fonavi + AFP
SueldoNeto = Ingresos - Egresos
TxtPagoHoraExtra = Str(PagoHoraExtra)
TxtRenta = Str(Renta)
TxtFonavi = Str(Fonavi) : TxtAFP = Str(AFP)
TxtSueldoNeto = Str(SueldoNeto)
End Sub

Private Sub CmdSalir_Click()
End
End Sub