Código fuente la vaca ana

31
1 Módulo de definción de constantes globales Module Globales 'Definición de una constate global para el salario mínimo legal vigente SMLV. Public Const SMLV = 580000 End Module Clase Basica Public Class Basica 'Definición de variables 'Variables cuyo contenido se leera en la clase Nomina Private Cedula, Nombres, Apellidos As String Private FechaNac As Date Private DptoNac, SigZod, EstCiv, NumH, Seccion, DiasT, NHED, NHEN, NHEDomF, Edad, TipSang As Short Private SBMA, Peso As Single 'Variables privadas que derivarán su contenido con las funciones de la clase Calculo. Private VrDia, VrHT, VrHED, VrHEN, VrHEDom, SalDev As Single 'Variables privadas que derivarán su contenido con las funciones de la clase Prestaciones. Private Pension, Salud As Single 'Variables de la clase Prima. Private PEdad, PAlim, PProd, PConSang, PPesada, PEsot, PRDF, PManu, SubsTransp As Single 'Variables privadas que derivarán su contenido con las funciones de la clase Total. Private TotHED, TotHEN, THEDomF, TotExtras, TotPrimas, TotDeducido, TotDevengado, Neto As Single 'Variables tipo contador para el control del ciclo del programa en la clase FrmNomina. Public i, Cantidad As Byte Public Property ControlCedula() As String 'Propiedad pública para la entrada y salida de información de la variable privada Cedula. Get Return Cedula End Get Set(ByVal value As String) Cedula = value End Set End Property Public Property ControlNombres() As String 'Propiedad pública para la entrada y salida de información de la variable privada Nombres. Get Return Nombres End Get

description

Código fuente la vaca ana

Transcript of Código fuente la vaca ana

Page 1: Código fuente la vaca ana

1

Módulo de definción de constantes globales

Module Globales 'Definición de una constate global para el salario mínimo legal vigente SMLV. Public Const SMLV = 580000 End Module

Clase Basica

Public Class Basica 'Definición de variables 'Variables cuyo contenido se leera en la clase Nomi na Private Cedula, Nombres, Apellidos As String Private FechaNac As Date Private DptoNac, SigZod, EstCiv, NumH, Seccion, DiasT, NHE D, NHEN, NHEDomF, Edad, TipSang As Short Private SBMA, Peso As Single 'Variables privadas que derivarán su contenido con las funciones de la clase Calculo. Private VrDia, VrHT, VrHED, VrHEN, VrHEDom, SalDev As Single 'Variables privadas que derivarán su contenido con las funciones de la clase Prestaciones. Private Pension, Salud As Single 'Variables de la clase Prima. Private PEdad, PAlim, PProd, PConSang, PPesada, PEsot, PRD F, PManu, SubsTransp As Single 'Variables privadas que derivarán su contenido con las funciones de la clase Total. Private TotHED, TotHEN, THEDomF, TotExtras, TotPrimas, Tot Deducido, TotDevengado, Neto As Single 'Variables tipo contador para el control del ciclo del programa en la clase FrmNomina. Public i, Cantidad As Byte Public Property ControlCedula() As String 'Propiedad pública para la entrada y salida de info rmación de la variable privada Cedula. Get Return Cedula End Get Set ( ByVal value As String ) Cedula = value End Set End Property Public Property ControlNombres() As String 'Propiedad pública para la entrada y salida de info rmación de la variable privada Nombres. Get Return Nombres End Get

Page 2: Código fuente la vaca ana

2

Set ( ByVal value As String ) Nombres = value End Set End Property Public Property ControlApellidos() As String 'Propiedad pública para la entrada y salida de info rmación de la variable privada Apellidos. Get Return Apellidos End Get Set ( ByVal value As String ) Apellidos = value End Set End Property Public Property ControlDptoNac() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada DptoNac que 'maneja los datos referentes al departamento de nac imiento. Get Return DptoNac End Get Set ( ByVal value As Short ) DptoNac = value End Set End Property Public Property ControlSigZod() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada SigZod que 'maneja los datos referentes al signo zodiacal. Get Return SigZod End Get Set ( ByVal value As Short ) SigZod = value End Set End Property Public Property ControlEstCiv() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada EstCiv que 'maneja los datos referentes al estado civil. Get Return EstCiv End Get Set ( ByVal value As Short ) EstCiv = value End Set End Property

Page 3: Código fuente la vaca ana

3

Public Property ControlNumH() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada NumH que 'maneja los datos referentes al número de hijos. Get Return NumH End Get Set ( ByVal value As Short ) NumH = value End Set End Property Public Property ControlSeccion() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada Seccion que 'maneja los datos referentes a la sección de trabaj o. Get Return Seccion End Get Set ( ByVal value As Short ) Seccion = value End Set End Property Public Property ControlSBMA() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada SBMA que 'maneja los datos referentes al salario básico mens ual asignado. Get Return SBMA End Get Set ( ByVal value As Single ) SBMA = value End Set End Property Public Property ControlDiasT() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada DiasT que 'maneja los datos referentes a los días trabajados. Get Return DiasT End Get Set ( ByVal value As Short ) DiasT = value End Set End Property Public Property ControlNHED() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada NHED que 'maneja los datos referentes al número de horas ext ras diurnas. Get Return NHED End Get

Page 4: Código fuente la vaca ana

4

Set ( ByVal value As Short ) NHED = value End Set End Property Public Property ControlNHEN() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada NHEN que 'maneja los datos referentes al número de horas ext ras nocturnas. Get Return NHEN End Get Set ( ByVal value As Short ) NHEN = value End Set End Property Public Property ControlNHEDomF() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada NHEDom que 'maneja los datos referentes al número de horas ext ras dominicales y festivos. Get Return NHEDomF End Get Set ( ByVal value As Short ) NHEDomF = value End Set End Property Public Property ControlTipSang() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada TipSang que 'maneja los datos referentes al tipo sanguineo del empleado. Get Return TipSang End Get Set ( ByVal value As Short ) TipSang = value End Set End Property Public Property ControlPeso() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada Peso que 'maneja los datos referentes al peso del empleado. Get Return Peso End Get Set ( ByVal value As Single ) Peso = value End Set End Property

Page 5: Código fuente la vaca ana

5

Public Property ControlFechaNac() As Date 'Propiedad pública para la entrada y salida de info rmación de la variable privada FechaNac que 'maneja los datos referentes a la fecha de nacimien to. Get Return FechaNac End Get Set ( ByVal value As Date ) FechaNac = value End Set End Property Public Property ControlEdad() As Short 'Propiedad pública para la entrada y salida de info rmación de la variable privada Edad que 'maneja los datos referentes a la edad del empleado . Get Return Edad End Get Set ( ByVal value As Short ) Edad = value End Set End Property Public Property ControlVrDia() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada VrDia que 'maneja los datos referentes al valor del día. Get Return VrDia End Get Set ( ByVal value As Single ) VrDia = value End Set End Property Public Property ControlVrHT() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada VrHT que 'maneja los datos referentes al valor hora de traba jo. Get Return VrHT End Get Set ( ByVal value As Single ) VrHT = value End Set End Property Public Property ControlVrHED() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada VrHED que 'maneja los datos referentes al valor hora extra di urna. Get Return VrHED

Page 6: Código fuente la vaca ana

6

End Get Set ( ByVal value As Single ) VrHED = value End Set End Property Public Property ControlVrHEN() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada VrHED que 'maneja los datos referentes al valor hora extra di urna. Get Return VrHEN End Get Set ( ByVal value As Single ) VrHEN = value End Set End Property Public Property ControlVrHEDom() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada VrHEDom que 'maneja los datos referentes al valor hora extra do minical y festivo. Get Return VrHEDom End Get Set ( ByVal value As Single ) VrHEDom = value End Set End Property Public Property ControlSalDev() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada SalDev que 'maneja los datos referentes al salario devengado. Get Return SalDev End Get Set ( ByVal value As Single ) SalDev = value End Set End Property Public Property ControlPension() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada Pension que 'maneja los datos referentes a la pensión. Get Return Pension End Get Set ( ByVal value As Single ) Pension = value End Set

Page 7: Código fuente la vaca ana

7

End Property Public Property ControlSalud() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada Salud que 'maneja los datos referentes a la salud. Get Return Salud End Get Set ( ByVal value As Single ) Salud = value End Set End Property Public Property ControlPEdad() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada PEdad que 'maneja los datos referentes a la prima de edad. Get Return PEdad End Get Set ( ByVal value As Single ) PEdad = value End Set End Property Public Property ControlPAlim() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada PAlim que 'maneja los datos referentes a la prima de alimenta ción. Get Return PAlim End Get Set ( ByVal value As Single ) PAlim = value End Set End Property Public Property ControlPProd() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada PProd que 'maneja los datos referentes a la prima de producci ón. Get Return PProd End Get Set ( ByVal value As Single ) PProd = value End Set End Property Public Property ControlPConSang() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada PConSang que 'maneja los datos referentes a la prima de consangu inidad. Get

Page 8: Código fuente la vaca ana

8

Return PConSang End Get Set ( ByVal value As Single ) PConSang = value End Set End Property Public Property ControlPPesada() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada PPesada que 'maneja los datos referentes a la prima pesada. Get Return PPesada End Get Set ( ByVal value As Single ) PPesada = value End Set End Property Public Property ControlPEsot() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada PEsot que 'maneja los datos referentes a la prima esotérica. Get Return PEsot End Get Set ( ByVal value As Single ) PEsot = value End Set End Property Public Property ControlPRDF() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada PRDF que 'maneja los datos referentes a la prima repleta de felicidad. Get Return PRDF End Get Set ( ByVal value As Single ) PRDF = value End Set End Property Public Property ControlPManu() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada PManu que 'maneja los datos referentes a la prima de manutenc ión. Get Return PManu End Get Set ( ByVal value As Single ) PManu = value

Page 9: Código fuente la vaca ana

9

End Set End Property Public Property ControlSubsTransp() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada SubsTransp que 'maneja los datos referentes al subsidio de transpo rte. Get Return SubsTransp End Get Set ( ByVal value As Single ) SubsTransp = value End Set End Property Public Property ControlTotHED() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada TotHED que 'maneja los datos referentes al total horas extras diurnas. Get Return TotHED End Get Set ( ByVal value As Single ) TotHED = value End Set End Property Public Property ControlTotHEN() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada TotHEN que 'maneja los datos referentes al total horas extras nocturnas. Get Return TotHEN End Get Set ( ByVal value As Single ) TotHEN = value End Set End Property Public Property ControlTHEDomF() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada TotHEDom que 'maneja los datos referentes al total horas extras dominicales y festivos. Get Return THEDomF End Get Set ( ByVal value As Single ) THEDomF = value End Set End Property Public Property ControlTotExtras() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada TotExtras que

Page 10: Código fuente la vaca ana

10

'maneja los datos referentes al total horas extras. Get Return TotExtras End Get Set ( ByVal value As Single ) TotExtras = value End Set End Property Public Property ControlTotPrimas() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada TotPrimas que 'maneja los datos referentes al total de las primas (sumatoria de todas éstas). Get Return TotPrimas End Get Set ( ByVal value As Single ) TotPrimas = value End Set End Property Public Property ControlTotDeducido() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada TotDeducido que 'maneja los datos referentes al total deducido. Get Return TotDeducido End Get Set ( ByVal value As Single ) TotDeducido = value End Set End Property Public Property ControlTotDevengado() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada TotDeducido que 'maneja los datos referentes al total devengado. Get Return TotDevengado End Get Set ( ByVal value As Single ) TotDevengado = value End Set End Property Public Property ControlNeto() As Single 'Propiedad pública para la entrada y salida de info rmación de la variable privada TotDeducido que 'maneja los datos referentes al neto. Get Return Neto End Get Set ( ByVal value As Single ) Neto = value

Page 11: Código fuente la vaca ana

11

End Set End Property End Class

Page 12: Código fuente la vaca ana

12

Clase Calculo

Public Class Calculo '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Título: Clase Calculo ' Descripción: Clase que contiene las funciones pú blicas para el cálculo de: valor día (VrDia), ' valor hora de trabajo (VrHT), valo r hora extra diurna (VrHED), valor hora extra ' nocturna (VrHEN), valor hora extra dominical (VrHEDom), y salario devengado (SalDev). ' Autor: Hector Enrique Guerrero Conde. ' URL: http://recursosfisicamecanica.blog spot.com/ ' Email: [email protected] ' Fecha creación: 26/10/2010 '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Public Function CalcVrdia( ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el val or del día. ' Parámetros: Salario básico mensual asignado (SBM A) por valor. ' Retorna: TmpVrDia. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 'Declaraciones locales Dim TmpVrDia As Single TmpVrDia = 0 TmpVrDia = SBMA / 30 'CalcVrdia = VrDia Return TmpVrDia End Function Public Function CalcVrHT( ByVal VrDia As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el val or de la hora de trabajo. ' Parámetros: Valor día (VrDia) por valor. ' Retorna: TmpVrHT. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpVrHT As Single TmpVrHT = 0 TmpVrHT = VrDia / 8 Return TmpVrHT End Function Public Function CalcVrHED( ByVal VrHT As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el val or de la hora extra diurna.

Page 13: Código fuente la vaca ana

13

' Parámetros: Valor hora de trabajo (VrHT) por val or. ' Retorna: TmpVrHED. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpVHED As Single TmpVHED = 0 TmpVHED = VrHT + (VrHT * 0.5) Return TmpVHED End Function Public Function CalcVrHEN( ByVal VrHT As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el val or de la hora extra nocturna. ' Parámetros: Valor hora de trabajo (VrHT) por val or. ' Retorna: TmpVrHEN. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpVHEN As Single TmpVHEN = 0 TmpVHEN = VrHT + (VrHT * 0.75) Return TmpVHEN End Function Public Function CalcVrHEDom( ByVal VrHT As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el val or de la hora extra dominical y festivo. ' Parámetros: Valor hora de trabajo (VrHT) por val or. ' Retorna: TmpVrHEDomF. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpVHEDomF As Single TmpVHEDomF = 0 TmpVHEDomF = VrHT + (VrHT * 0.95) Return TmpVHEDomF End Function Public Function CalcSalDev( ByVal VrDia As Single , ByVal DiasT As Short ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el sal ario devengado. ' Parámetros: Valor día (VrDia) por valor y días t rabajados (DiasT) por valor. ' Retorna: TmpSalDev. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpSalDev As Single TmpSalDev = 0 TmpSalDev = VrDia * DiasT

Page 14: Código fuente la vaca ana

14

Return TmpSalDev End Function End Class

Page 15: Código fuente la vaca ana

15

Clase Descuento

Public Class Descuento '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Título: Clase Descuento ' Descripción: Clase que contiene las funciones pú blicas para el cálculo de las prestaciones ' sociales: pensión (CalcPension) y salud (CalcSalud). ' Autor: Hector Enrique Guerrero Conde. ' URL: http://recursosfisicamecanica.blog spot.com/ ' Email: [email protected] ' Fecha creación: 26/10/2010 '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Public Function CalcPension( ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el val or de la pensión. ' Parámetros: Salario básico mensual asignado (SBM A) por valor. ' Utiliza la constante global SMLV (S alario Minimo Legal Vigente), definida en ' el módulo Globales.vb ' Retorna: TmpPension. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpPension As Single TmpPension = 0 If ((SBMA >= SMLV) And (SBMA < (2 * SMLV))) Then 'Si SBMA >= (SMLV) y SBMA < (2 × SMLV), entonces Pe nsión = SBMA × 2.58%. TmpPension = SBMA * 0.0258 ElseIf ((SBMA >= (2 * SMLV) And (SBMA < (4 * SMLV)))) Then 'Si SBMA >= (2 × SMLV) y SBMA < (4 × SMLV), entonce s Pensión = SBMA × 3.58%. TmpPension = SBMA * 0.0358 ElseIf ((SBMA >= (4 * SMLV)) And (SBMA < (6 * SMLV))) Then 'Si SBMA >= (4 × SMLV) y SBMA < (6 × SMLV), entonce s Pensión = SBMA × 4.58%. TmpPension = SBMA * 0.0458 ElseIf ((SBMA >= (6 * SMLV)) And (SBMA < (8 * SMLV))) Then 'Si SBMA >= (6 × SMLV) y SBMA < (8 × SMLV), entonce s Pensión = SBMA × 5.58%. TmpPension = SBMA * 0.0558 ElseIf ((SBMA >= (8 * SMLV)) And (SBMA < (10 * SMLV))) Then 'Si SBMA >= (8 × SMLV) y SBMA < (10 × SMLV), entonc es Pensión = SBMA × 6.58%. TmpPension = SBMA * 0.0658 ElseIf ((SBMA >= (10 * SMLV)) And (SBMA < (12 * SMLV))) Then 'Si SBMA >= (10 × SMLV) y SBMA < (12 × SMLV), enton ces Pensión = SBMA × 7.58%. TmpPension = SBMA * 0.0758 ElseIf (SBMA >= (12 * SMLV)) Then 'Si SBMA >= (12 × SMLV) entonces Pensión = SBMA × 8 .58%. TmpPension = SBMA * 0.0858

Page 16: Código fuente la vaca ana

16

End If Return TmpPension End Function Public Function CalcSalud( ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el val or de la salud. ' Parámetros: Salario básico mensual asignado (SBM A) por valor. ' Utiliza la constante global SMLV Sa lario Minimo Legal Vigente, definida en ' el módulo Globales.vb ' Retorna: TmpSalud. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpSalud As Single TmpSalud = 0 If ((SBMA >= SMLV) And (SBMA < (2 * SMLV))) Then 'Si SBMA >= (SMLV) y SBMA < (2 × SMLV), entonces Sa lud = SBMA × 3.14%. TmpSalud = SBMA * 0.0314 ElseIf ((SBMA >= (2 * SMLV) And (SBMA < (4 * SMLV)))) Then 'Si SBMA >= (2 × SMLV) y SBMA < (4 × SMLV), entonce s Salud = SBMA × 1.59%. TmpSalud = SBMA * 0.0159 ElseIf ((SBMA >= (4 * SMLV)) And (SBMA < (6 * SMLV))) Then 'Si SBMA >= (4 × SMLV) y SBMA < (6 × SMLV), entonce s Salud = SBMA × 2.65%. TmpSalud = SBMA * 0.0265 ElseIf ((SBMA >= (6 * SMLV)) And (SBMA < (8 * SMLV))) Then 'Si SBMA >= (6 × SMLV) y SBMA < (8 × SMLV), entonce s Salud = SBMA × 3.58%. TmpSalud = SBMA * 0.0358 ElseIf ((SBMA >= (8 * SMLV)) And (SBMA < (10 * SMLV))) Then 'Si SBMA >= (8 × SMLV) y SBMA < (10 × SMLV), entonc es Salud = SBMA × 9.79%. TmpSalud = SBMA * 0.0979 ElseIf ((SBMA >= (10 * SMLV)) And (SBMA < (12 * SMLV))) Then 'Si SBMA >= (10 × SMLV) y SBMA < (12 × SMLV), enton ces Salud = SBMA × 3.23%. TmpSalud = SBMA * 0.0323 ElseIf (SBMA >= (12 * SMLV)) Then 'Si SBMA >= (12 × SMLV) entonces Salud = SBMA × 8.4 6%. TmpSalud = SBMA * 0.0846 End If Return TmpSalud End Function End Class

Page 17: Código fuente la vaca ana

17

Clase Filtro

Public Class Filtro '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Título: Clase Filtro ' Descripción: Clase que contiene las funciones pú blicas para la validación de la entrada ' de información a las diferentes va riables del programa ' Autor: Hector Enrique Guerrero Conde. ' URL: http://recursosfisicamecanica.blog spot.com/ ' Email: [email protected] ' Fecha creación: 09/09/2008 '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Public Function LeeNumeroReal( ByVal Msj As String , ByVal LimInf As Double , ByVal LimSup As Double ) As Double '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real para leer solo núm eros reales. ' Despliega un mensaje pasado por parámetro por valor a ' través de la variable Msj y filtra el dato e ntrado en ' un rango determinado mayor o igual al límite inferior ' (LimInf) y menor o igual al límite superior (LimSup). ' En caso de detectar valores no numéricos despl iega un ' mensaje de error. ' Parámetros: Msj, Liminf, LimSup por valor. ' Retorna: Numero. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Declaración de variables locales. Dim Bandera As Boolean Dim Numero As Double Dim TmpNumero As String Bandera = True ' La bandera se vuelve verdadera. Do ' Este ciclo se repite hasta que la bandera pase a ser falsa ' Se lee el dato como una cadena de caracteres. TmpNumero = InputBox(Msj) If Not IsNumeric(TmpNumero) Then ' Si el dato entrado no es un número. MsgBox( "!Error, solo debe ingresar números!" ) Else ' En caso de que el dato entrado sea un número ' se asigna dicho valor a la variable Numero ' transformandolo a double con la función CDbl(). Numero = CDbl (TmpNumero) ' Una vez cambiado a formato double se procede ' a verificar que éste en el rango especificado. If (Numero < LimInf) Or (Numero > LimSup) Then ' Si el número entrado es menor que el límite infer ior

Page 18: Código fuente la vaca ana

18

' o mayor que el límite superior pasados por paráme tro ' entonces despliega un mensaje de error. MsgBox( "!Error!, dato fuera de rango" ) Else ' Si no ' En caso de encontrarse en el rango correcto, ento nces ' la bandera se vuelve falsa. Bandera = False End If ' Fin de la sentencia condicional. End If Loop Until (Bandera = False ) ' Fin del ciclo. Return Numero ' Retorna el número leido. End Function ' Fin LeeNumeroReal. Public Function LeeNumeroEntero( ByVal Msj As String , ByVal LimInf As Double , ByVal LimSup As Double ) As Integer '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real para leer solo núm eros enteros. ' Despliega un mensaje pasado por parámetro por valor a ' través de la variable Msj y filtra el dato e ntrado en ' un rango determinado mayor o igual al límite inferior ' (LimInf) y menor o igual al límite superior (LimSup). ' En caso de detectar valores no numéricos despl iega un ' mensaje de error. ' Parámetros: Msj, Liminf, LimSup por valor. ' Retorna: Numero. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 'Declaración de variables locales. Dim Bandera As Boolean Dim Numero As Integer Dim TmpNumero As String Bandera = True ' La bandera se vuelve verdadera Do ' Este ciclo se repite hasta que la bandera pase a ser falsa ' Se lee el dato como una cadena de caracteres. TmpNumero = InputBox(Msj) If Not IsNumeric(TmpNumero) Then ' Si el dato entrado no es un número. MsgBox( "!Error, solo debe ingresar números!" ) Else ' En caso de que el dato entrado sea un número ' se asigna dicho valor a la variable Numero ' transformandolo a entero con la función CInt(). Numero = CInt (TmpNumero) ' Una vez cambiado a formato double se procede ' a verificar que este en el rango especificado. If (Numero < LimInf) Or (Numero > LimSup) Then ' Si el número entrado es menor que el límite infer ior ' o mayor que el límite superior pasados por paráme tro

Page 19: Código fuente la vaca ana

19

' entonces despliega un mensaje de error. MsgBox( "!Error!, dato fuera de rango" ) Else ' Si no ' En caso de encontrarse en el rango correcto, ' la bandera se vuelve falsa. Bandera = False End If ' Fin de la sentencia condicional. End If Loop Until (Bandera = False ) ' Fin del ciclo. Return Numero ' Retorna el número leido. End Function ' Fin LeeNumeroEntero. End Class

Page 20: Código fuente la vaca ana

20

Clase Lista

Public Class Lista '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Título: Clase Lista ' Descripción: Clase que contiene las funciones pú blicas para la impresión de los nombres de las list as de: ' departamento geográfico, signo zod iacal, estado civil, sección y tipo sanguineo. ' Autor: Hector Enrique Guerrero Conde. ' URL: http://recursosfisicamecanica.blog spot.com/ ' Email: [email protected] ' Fecha creación: 28/10/2010 '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Public Function CalcNombreDepartamento( ByVal DptoNac As Short ) As String '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo texto o cadena que eval ua el nombre del ' departamento de acuerdo al parámetr o entrado. ' Parámetros: DptoNac. ' Retorna: TmpNombreDpto. ' Creado: 28/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpNombreDpto As String TmpNombreDpto = "" Select Case DptoNac Case 1 : TmpNombreDpto = "1.Amazonas" Case 2 : TmpNombreDpto = "2.Antioquia" Case 3 : TmpNombreDpto = "3.Arauca" Case 4 : TmpNombreDpto = "4.Atlántico" Case 5 : TmpNombreDpto = "5.Bolívar" Case 6 : TmpNombreDpto = "6.Boyacá" Case 7 : TmpNombreDpto = "7.Caldas" Case 8 : TmpNombreDpto = "8.Caquetá" Case 9 : TmpNombreDpto = "9.Casanare" Case 10 : TmpNombreDpto = "10.Cauca" Case 11 : TmpNombreDpto = "11.Cesar" Case 12 : TmpNombreDpto = "12.Chocó" Case 13 : TmpNombreDpto = "13.Córdoba" Case 14 : TmpNombreDpto = "14.Cundinamarca" Case 15 : TmpNombreDpto = "15.Guainía" Case 16 : TmpNombreDpto = "16.Guaviare" Case 17 : TmpNombreDpto = "17.Huila" Case 18 : TmpNombreDpto = "18.La Guajira" Case 19 : TmpNombreDpto = "19.Magdalena" Case 20 : TmpNombreDpto = "20.Meta" Case 21 : TmpNombreDpto = "21.Nariño"

Page 21: Código fuente la vaca ana

21

Case 22 : TmpNombreDpto = "22.Norte de Santander" Case 23 : TmpNombreDpto = "23.Putumayo" Case 24 : TmpNombreDpto = "24.Quindio" Case 25 : TmpNombreDpto = "25.Risaralda" Case 26 : TmpNombreDpto = "26.San Andrés y Providencia" Case 27 : TmpNombreDpto = "27.Santander" Case 28 : TmpNombreDpto = "28.Sucre" Case 29 : TmpNombreDpto = "29.Tolima" Case 30 : TmpNombreDpto = "30.Valle del Cauca" Case 31 : TmpNombreDpto = "31.Vaupés" Case 32 : TmpNombreDpto = "32.Vichada" End Select Return TmpNombreDpto End Function Public Function CalcNombreSignoZodiacal( ByVal SigZod As Short ) As String '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo texto o cadena que eval ua el nombre del ' signo zodiacal de acuerdo al paráme tro entrado. ' Parámetros: SigZod. ' Retorna: TmpNombreSignoZod. ' Creado: 28/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpNombreSignoZod As String TmpNombreSignoZod = "" Select Case SigZod Case 1 : TmpNombreSignoZod = "1.Aries" Case 2 : TmpNombreSignoZod = "2.Tauro" Case 3 : TmpNombreSignoZod = "3.Géminis" Case 4 : TmpNombreSignoZod = "4.Cancer" Case 5 : TmpNombreSignoZod = "5.Leo" Case 6 : TmpNombreSignoZod = "6.Virgo" Case 7 : TmpNombreSignoZod = "7.Libra" Case 8 : TmpNombreSignoZod = "8.Escorpión" Case 9 : TmpNombreSignoZod = "9.Sagitario" Case 10 : TmpNombreSignoZod = "10.Capricornio" Case 11 : TmpNombreSignoZod = "11.Acuario" Case 12 : TmpNombreSignoZod = "12.Piscis" End Select Return TmpNombreSignoZod End Function Public Function CalcNombreEstadoCivil( ByVal EstCiv As Short ) As String '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo texto o cadena que eval ua el nombre del ' estado civil de acuerdo al parámetr o numérico entrado.

Page 22: Código fuente la vaca ana

22

' Parámetros: EstCiv. ' Retorna: TmpNombreEstCiv. ' Creado: 28/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpNombreEstCiv As String TmpNombreEstCiv = "" Select Case EstCiv Case 1 : TmpNombreEstCiv = "1.Soltero(a)" Case 2 : TmpNombreEstCiv = "2.Casado(a)" Case 3 : TmpNombreEstCiv = "3.Unión libre" Case 4 : TmpNombreEstCiv = "4.Divorciado(a)" Case 5 : TmpNombreEstCiv = "5.Viudo(a)" Case 6 : TmpNombreEstCiv = "6.Religioso(a)" End Select Return TmpNombreEstCiv End Function Public Function CalcNombreSeccion( ByVal Seccion As Short ) As String '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo texto o cadena que eval ua el nombre de la ' sección de trabajo de acuerdo al pa rámetro numérico entrado. ' Parámetros: Seccion. ' Retorna: TmpNombreSeccion. ' Creado: 28/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpNombreSeccion As String TmpNombreSeccion = "" Select Case Seccion Case 1 : TmpNombreSeccion = "1.Producción" Case 2 : TmpNombreSeccion = "2.Mercadeo" Case 3 : TmpNombreSeccion = "3.Transporte" Case 4 : TmpNombreSeccion = "4.Administración" End Select Return TmpNombreSeccion End Function Public Function CalcNombreTipoSanguineo( ByVal TipSang As Short ) As String '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo texto o cadena que eval ua el nombre del ' tipo sanguineo de acuerdo al paráme tro numérico entrado. ' Parámetros: TipSang. ' Retorna: TmpNombreTipoSanguineo. ' Creado: 28/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpNombreTipoSanguineo As String TmpNombreTipoSanguineo = ""

Page 23: Código fuente la vaca ana

23

Select Case TipSang Case 1 : TmpNombreTipoSanguineo = "1.A+" Case 2 : TmpNombreTipoSanguineo = "1.A-" Case 3 : TmpNombreTipoSanguineo = "1.B+" Case 4 : TmpNombreTipoSanguineo = "1.B-" Case 5 : TmpNombreTipoSanguineo = "1.AB+" Case 6 : TmpNombreTipoSanguineo = "1.AB-" Case 7 : TmpNombreTipoSanguineo = "1.O+" Case 8 : TmpNombreTipoSanguineo = "1.O-" End Select Return TmpNombreTipoSanguineo End Function End Class

Page 24: Código fuente la vaca ana

24

Clase Prima

Public Class Prima '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Título: Clase Prima ' Descripción: Clase que contiene las funciones pú blicas para el cálculo de: subsidio de transporte ( SubsTransp) ' edad del empleado (Edad), prima de edad (PEdad), prima de alimentación (PAlim), prima de producción ' (PProd), prima de consanguinidad ( PConSang), prima pesada (PPes), y prima estotérica (PEsot). ' Autor: Hector Enrique Guerrero Conde. ' URL: http://recursosfisicamecanica.blog spot.com/ ' Email: [email protected] ' Fecha creación: 26/10/2010 '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Public Function CalcSubsTransp( ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el sub sidio de transporte. ' Parámetros: Salario básico mensual asignado (SBM A). ' Retorna: TmpSubsTransp. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpSubsTransp As Single TmpSubsTransp = 0 If (SBMA < (2 * SMLV)) Then 'Si SBMA <= (2 × SMLV), entonces Subsidio de transp orte = SBMA × 12.34%; 'sino Subsidio de transporte = 0. TmpSubsTransp = SBMA * 0.1234 End If Return TmpSubsTransp End Function Public Function CalcEdad( ByVal FechaNac As Date ) As Integer '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo entero que calcula la e dad del empleado. ' Parámetros: Fecha de nacimiento (FechaNac) como fecha hora por valor. ' Retorna: TmpEdad. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpEdad As Integer Dim FechaActual As Date TmpEdad = 0 FechaActual = Now 'Toma la fecha actual del sistema. 'La función DateDiff devuelve un valor Long que esp ecifica el número de 'intervalos de tiempo entre dos valores Date. TmpEdad = DateDiff(DateInterval.Year, Fecha Actual, FechaNac)

Page 25: Código fuente la vaca ana

25

TmpEdad = TmpEdad * (-1) Return TmpEdad End Function Public Function CalcPEdad( ByVal Edad As Short , ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula la pri ma de edad. ' Parámetros: Edad como entero corto por valor, sa lario básico mensual asignado (SBMA) ' como real por valor. ' Retorna: TmpEdad. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpPEdad As Single TmpPEdad = 0 If (Edad >= 18) And (Edad < 30) Then 'Si edad >=18 y edad <30, entonces Prima de edad = SBMA × 1%. TmpPEdad = SBMA * 0.01 ElseIf (Edad >= 30) And (Edad < 40) Then 'Si edad >=30 y edad <40, entonces Prima de edad = SBMA × 1.5%. TmpPEdad = SBMA * 0.015 ElseIf (Edad >= 40) And (Edad < 50) Then 'Si edad >=40 y edad <50, entonces Prima de edad = SBMA × 2%. TmpPEdad = SBMA * 0.02 ElseIf (Edad >= 50) And (Edad < 60) Then 'Si edad >=50 y edad <60, entonces Prima de edad = SBMA × 2.5%. TmpPEdad = SBMA * 0.025 ElseIf (Edad >= 60) Then 'Si edad >=60, entonces Prima de edad = SBMA × 3%. TmpPEdad = SBMA * 0.03 End If Return TmpPEdad End Function Public Function CalcPAlim( ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula la pri ma de alimentación. ' Parámetros: Salario básico mensual asignado (SBM A) como real por valor. ' Retorna: TmpPAlim. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpPAlim As Single TmpPAlim = 0 If ((SBMA >= SMLV) And (SBMA < (2 * SMLV))) Then 'Si SBMA >= (SMLV) y SBMA < (2 × SMLV), entonces Pr ima de alimentación = SBMA × 10.55%. TmpPAlim = SBMA * 0.1055 ElseIf ((SBMA >= (2 * SMLV) And (SBMA < (4 * SMLV)))) Then

Page 26: Código fuente la vaca ana

26

'Si SBMA >= (2 × SMLV) y SBMA < (4 × SMLV), entonce s Prima de alimentación = SBMA × 9.86%. TmpPAlim = SBMA * 0.0986 ElseIf ((SBMA >= (4 * SMLV)) And (SBMA < (6 * SMLV))) Then 'Si SBMA >= (4 × SMLV) y SBMA < (6 × SMLV), entonce s Prima de alimentación = SBMA × 6.15%. TmpPAlim = SBMA * 0.0615 ElseIf ((SBMA >= (6 * SMLV)) And (SBMA < (8 * SMLV))) Then 'Si SBMA >= (6 × SMLV) y SBMA < (8 × SMLV), entonce s Prima de alimentación = SBMA × 4.38%. TmpPAlim = SBMA * 0.0438 End If Return TmpPAlim End Function Public Function CalcPProd( ByVal Seccion As Short , ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula la pri ma de producción. ' Parámetros: Sección como entero corto por valor. ' Salario básico mensual asignado (SB MA) como real por valor. ' Retorna: TmpPProd. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpPProd As Single TmpPProd = 0 If (Seccion = 1) Then 'Se le asigna el 3.25% del SBMA a todo el personal de la sección de producción. TmpPProd = SBMA * 0.0325 End If Return TmpPProd End Function Public Function CalcPConSang( ByVal TipSang As Short , ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula la pri ma de consanguinidad. ' Parámetros: Tipo sanguineo (TipSang) como entero corto por valor. ' Salario básico mensual asignado (SB MA) como real por valor. ' Retorna: TmpPConSang. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpPConSang As Single TmpPConSang = 0 If (TipSang = 6) Or (TipSang = 3) Then 'Si el tipo de sangre es AB- (6) o B+ (3) se le asi gna el 2% del SBMA. TmpPConSang = SBMA * 0.02 End If Return TmpPConSang End Function

Page 27: Código fuente la vaca ana

27

Public Function CalcPPes( ByVal Peso As Short , ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula la pri ma pesada. ' Parámetros: Peso como entero corto por valor. ' Salario básico mensual asignado (SB MA) como real por valor. ' Retorna: TmpPPes. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpPPes As Single TmpPPes = 0 If (Peso Mod 7 = 0) Or (Peso Mod 13 = 0) Then 'Si el peso es un múltiplo de 7 o de 13 entonces se le asigna el 5% del SBMA TmpPPes = SBMA * 0.05 End If Return TmpPPes End Function Public Function CalcPEsot( ByVal SigZod As Short , ByVal EstCiv As Short , ByVal TipSang As Short , ByVal Edad As Short , ByVal NHEDomF As Short , ByVal TotHED As Short , ByVal TotHEN As Short , ByVal NumH As Short , ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula la pri ma esoterica. ' Parámetros: Signo zodiacal (SigZod) como entero corto por valor. ' Estado civil (EstCiv) como entero c orto por valor. ' Tipo sanguineo (TipSang) como enter o corto por valor. ' Edad como entero corto por valor. ' Número de horas extras dominicales y festivos (NHEDomF) como entero corto por valor. ' Total de horas extras dominicales ( TotHED) como entero corto por valor. ' Total de horas extras nocturnas (To tHEN) como entero corto por valor. ' Número de hijos (NumH) como entero corto por valor. ' Salario básico mensual asignado (SB MA) como real por valor. ' Retorna: TmpPEsot. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpPEsot As Single TmpPEsot = 0 If (SigZod = 1) And (EstCiv = 1) Then 'Si el empleado es del signo ARIES y el estado civi l es SOLTERO se le asigna el 4.19% del SBMA. TmpPEsot = SBMA * 0.0419 ElseIf (SigZod = 3) And ((EstCiv = 2) Or (EstCiv = 4)) Then 'Si el empleado es del signo GEMINIS y el estado ci vil es CASADO o DIVORSIADO, se le asigna el 7.16% d el SBMA. TmpPEsot = SBMA * 0.0716 ElseIf (SigZod = 5) And ((EstCiv = 1) Or (EstCiv = 3)) And ((TipSang = 3) Or (TipSang = 2)) Then 'Si el empleado es del signo LEO y el estado civil es SOLTERO o UNION LIBRE y su Tipo de Sangre es O+ o A-, 'se le asigna el 9.39% del SBMA. TmpPEsot = SBMA * 0.0939 ElseIf (SigZod = 7) And ((TipSang = 6) Or (TipSang = 3)) And ((Edad Mod 2 <> 0) And (Edad Mod 3 = 0)) Then

Page 28: Código fuente la vaca ana

28

'Si el empleado es del signo LIBRA y el tipo sanguí neo es AB- o B+ y la edad es un número impar múltip lo de 3, 'se le asigna el 9.37% del SBMA. TmpPEsot = SBMA * 0.0937 ElseIf ((SigZod = 9) Or (SigZod = 8)) And (NHEDomF >= 12) Then 'Si el empleado es del signo SAGITARIO o ESCORPION y el número de horas extras dominicales y festivos es >=12, 'se le asigna el 5.10% del SBMA. TmpPEsot = SBMA * 0.051 ElseIf ((SigZod = 12) Or (SigZod = 4)) And (TotHED >= TotHEN) And (NumH Mod 5 = 0) Then 'Si el empleado es del signo PISCIS o CANCER y el T otal extras diurnas es mayor que el Total extras no cturnas, 'se le asigna el 5.82% del SBMA. TmpPEsot = SBMA * 0.0582 End If Return TmpPEsot End Function Public Function CalcPManu( ByVal NumH As Short , ByVal SBMA As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula la pri ma de manutención. ' Parámetros: Número de hijos (NumH) como entero c orto por valor. ' Salario básico mensual asignado (SB MA) como real por valor. ' Retorna: TmpPManu. ' Creado: 27/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpPManu As Single TmpPManu = 0 TmpPManu = (NumH * 0.025) * SBMA Return TmpPManu End Function End Class

Page 29: Código fuente la vaca ana

29

Clase Total

Public Class Total '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Título: Clase Total ' Descripción: Clase que contiene las funciones pú blicas para el cálculo de los totales de la nómina: ' total horas extras diurnas (TotHED ), total horas extras nocturnas (TotHEN), total hor as ' extras dominicales y festivos (THE DomF), total extras (TotExtras), total primas (TotP rimas), ' total devengado (TotDevengado), to tal deducido (TotDeducido), neto a pagar (Neto). ' Autor: Hector Enrique Guerrero Conde. ' URL: http://recursosfisicamecanica.blog spot.com/ ' Email: [email protected] ' Fecha creación: 26/10/2010 '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Public Function CalcTotHED( ByVal VrHED As Single , ByVal NHED As Short ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el tot al horas extras diurnas. ' Parámetros: Valor hora extra diurna (VrHED) como real por valor. ' Número de horas extras diurnas (NHE D) como entero corto por valor. ' Retorna: TotHED. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpTotHED As Single TmpTotHED = 0 TmpTotHED = VrHED * NHED Return TmpTotHED End Function Public Function CalcTotHEN( ByVal VrHEN As Single , ByVal NHEN As Short ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el tot al horas extras nocturnas. ' Parámetros: Valor hora extra nocturnas (VrHEN) c omo real por valor. ' Número de horas extras nocturnas (N HEN) como entero corto por valor. ' Retorna: TotHEN. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpTotHEN As Single TmpTotHEN = 0 TmpTotHEN = VrHEN * NHEN Return TmpTotHEN End Function Public Function CalcTHEDomF( ByVal VrHEDomF As Single , ByVal NHEDomF As Short ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Page 30: Código fuente la vaca ana

30

' Resumen: Función de tipo real que calcula el tot al horas extras dominicales y festivos. ' Parámetros: Valor hora extra dominical y festivo (VrHEDomF) como real por valor. ' Número de horas extras dominicales y festivos (NHEDomF) como entero corto por valor. ' Retorna: TotHEN. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpTHEDomF As Single TmpTHEDomF = 0 TmpTHEDomF = VrHEDomF * NHEDomF Return TmpTHEDomF End Function Public Function CalcTotExtras( ByVal TotHED As Single , ByVal TotHEN As Single , ByVal THEDomF As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el tot al de horas. ' Parámetros: Valor hora extra dominical y festivo (VrHEDomF) como real por valor. ' Total de horas extras diurnas (TotH ED) como real por valor. ' Total de horas extras nocturnas (To tHEN) como real por valor. ' Total de horas extras dominicales y festivos (THEDomF) como real por valor. ' Número de horas extras dominicales y festivos (NHEDomF) como entero corto por valor. ' Retorna: TmpTotExtras. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpTotExtras As Single TmpTotExtras = 0 TmpTotExtras = TotHED + TotHEN + THEDomF Return TmpTotExtras End Function Public Function CalcTotPrimas( ByVal PEdad As Single , ByVal PAlim As Single , ByVal PProd As Single , ByVal PManu As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el tot al de primas. ' Parámetros: Prima de edad (PEdad) como real por valor. ' Prima de alimentación (PAlim) como real por valor. ' Prima de producción (PProd) como re al por valor. ' Prima de manutención (PManu) como r eal por valor. ' Retorna: TmpTotPrimas. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpTotPrimas As Single TmpTotPrimas = 0 TmpTotPrimas = PEdad + PAlim + PProd + PMan u Return TmpTotPrimas End Function Public Function CalcTotDevengado( ByVal SalDev As Single , ByVal TotPrimas As Single , ByVal SubsTransp As Single , ByVal TotExtras As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Page 31: Código fuente la vaca ana

31

' Resumen: Función de tipo real que calcula el tot al devengado. ' Parámetros: Salario devengado (SalDev) como real por valor. ' Total primas (TotPrimas) como real por valor. ' subsidio de transporte (SubsTtansp) como real por valor. ' Total extras (TotExtras) como real por valor. ' Retorna: TmpTotDevengado. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpTotDevengado As Single TmpTotDevengado = 0 TmpTotDevengado = SalDev + TotPrimas + Subs Transp + TotExtras Return TmpTotDevengado End Function Public Function CalcTotDeducido( ByVal Pension As Single , ByVal Salud As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el tot al deducido. ' Parámetros: Pensión (Pension) como real por valo r. ' Salud como real por valor. ' Retorna: TmpTotDeducido. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpTotDeducido As Single TmpTotDeducido = 0 TmpTotDeducido = Pension + Salud Return TmpTotDeducido End Function Public Function CalcNeto( ByVal TotDevengado As Single , ByVal TotDeducido As Single ) As Single '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ' Resumen: Función de tipo real que calcula el net o a pagar. ' Parámetros: Total devengado (TotDevengado) como real por valor. ' Total deducido (TotDeducido) como r eal por valor. ' Retorna: TmpNeto. ' Creado: 26/10/2010. '- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Dim TmpNeto As Single TmpNeto = 0 TmpNeto = TotDevengado + TotDeducido Return TmpNeto End Function End Class