Premio de Puntualidad

Navigation:  Recursos Humanos y Nómina > Catálogo de Prestaciones > Cálculos Locales >

Premio de Puntualidad

Previous pageReturn to chapter overviewNext page

dim drPrincipal as datarow = ds.tables("RRHH_NominaInfo").select(string.format("[IDNominaInfo]={0}", dr("IDNominaInfo")))(0)
dim SalarioDiario as Double = NDouble(drPrincipal("SalarioDiario"))
dim Sueldo as Double = 0

dim JornadaDr as DataRow = ds.tables("RRHH_Jornadas").select(string.format("[IDJornada]={0}", drPrincipal("IDJornadaNomina")))(0)
 
dim DiasTrabajables as double = NDouble(JornadaDr("DiasTrabajables"))
dim DiasJornada as double = NDouble(JornadaDr("DiasJornada"))
 
 
if NDouble(drPrincipal("SalarioDiario")) = 0 AND NDouble(drPrincipal("SalarioHora")) = 0 then
if NDouble(drPrincipal("IDPuesto")) = 0 then msgbox("No ha seleccionado la ningún Puesto"): exit sub
dim drPuesto as datarow = ds.tables("RRHH_Puestos").select(string.format("[IDPuesto]={0}", drPrincipal("IDPuesto")))(0)
 SalarioDiario =  NDouble(drPuesto("SalarioDiario"))
end if
 
If NDouble(drPrincipal("SalarioHora")) > 0 then
  SalarioDiario = NDouble(drPrincipal("SalarioHora")) * NDouble(drPrincipal("HorasDiarias"))
END IF
 
dim DiasTrab as double = NDouble(drPrincipal("DiasJornada")) + (((DiasJornada/DiasTrabajables)-1) * (NDouble(drPrincipal("DiasJornada")) - NDouble(drPrincipal("Faltas"))  - NDouble(drPrincipal("Incapcidades"))))-NDouble(drPrincipal("Faltas")) - NDouble(drPrincipal("Incapcidades"))
 
Sueldo = SYSTEM.MATH.ROUND(SalarioDiario * DiasTrab * .1)
 
dr("Importe")=Sueldo  
dr("ISRGravado")=Sueldo
dr("ISRExento")=0
dr("IMSSGravado")=Sueldo
dr("IMSSExento")=0