Traducir código de VB a lenguaje latino (entendible)
Hol, estoy checando un codigo que es de PUBLIC FUNCTION el cual tiene ciertas variables como
By val "dato" as double, optional by val dato2 as double
Etc etc
Lo que me gustaría saber es que alguien me explique como se interpreta
Y porque el uso de las variables
Espero su apoyo para poder entender, ya entre a varias páginas de internet para leer las variables pero no me queda claro al 100%
Espero su ayuda gracias
Public Function impuestos_patron(ByVal integrado As Double, Optional ByVal salario_base As Double, Optional ByVal prima_dominical As String) Dim smgdf, cuota_fija, exc_smgdt, prestaciones, excedente, impuestos, tope As Double Dim gastos_med, riesgo_tra, invalidez, guarderia, retiro, cesantia_vejez As Double Dim infonavit, impuesto_nomina, pd, imp_estatal As Double smgdf = 73.04 'SALARIO MINIMO GENERAL DISTRITO FEDERAL '----------- IMPUESTOS QUE PAGA EL PATRON cuota_fija = 20.4 'CUOTA FIJA DEL PATRON exc_smgdt = 0.011 'EXCEDENTE 3 SMGDF prestaciones = 0.007 'PRESTACIONES DINERO gastos_med = 0.0105 'GASTOS MEDICOS riesgo_tra = 0.005377 'RIESGO DE TRABAJO invalidez = 0.0175 'INVALIDEZ Y VIDA guarderia = 0.01 'GUARDERIA retiro = 0.02 'RETIRO cesantia_vejez = 0.0315 'CESANCIA Y VEJEZ infonavit = 0.05 'INFONAVIT impuesto_nomina = 0.025 'IMPUESTO SOBRE NOMINA tope = smgdf * 3 excedente = 0 If salario_base > tope Then excedente = (integrado - tope) * exc_smgdt End If pd = 0 If prima_dominical = "S" Or prima_dominical = "s" Then pd = salario_base * 0.25 / 7 End If imp_estatal = (salario_base + (salario_base * 0.05) + (salario_base * 0.15) + pd) * impuesto_nomina impuestos = (smgdf * (cuota_fija / 100)) + excedente + (integrado * prestaciones) + (integrado * gastos_med) + _ (integrado * riesgo_tra) + (integrado * invalidez) + (integrado * guarderia) + _ (integrado * retiro) + (integrado * cesantia_vejez) + (integrado * infonavit) + imp_estatal 'MsgBox "CUOTA FIJA : " & (smgdf * (cuota_fija / 100)) & " EXCEDENTE " & excedente & _ " PRESTACIONES " & (integrado * prestaciones) & " GASTOS MEDICOS " & (integrado * gastos_med) & _ " RIESGOS " & (integrado * riesgo_tra) & " INVALIDEZ " & (integrado * invalidez) & _ " GUARDERIA " & (integrado * guarderia) & _ " RETIRO " & (integrado * retiro) & " CESANTIA " & (integrado * cesantia_vejez) & _ " INFONAVIT " & (integrado * infonavit) & " IMPUESTO NOMINA " & imp_estatal impuestos_patron = Format(impuestos, "0.00") End Function Public Function impuestos_empleado(ByVal integrado As Double, Optional ByVal salario_base As Double) Dim exc_smgdt, prestaciones, gastos_med, invalidez, cesantia_vejez As Double Dim excedente, impuestos, tope, smgdf As Double smgdf = 73.04 '-------- IMPUESTOS QUE PAGA EL EMPLEADO exc_smgdt = 0.004 'EXCEDENTE 3 SMGDF prestaciones = 0.0025 'PRESTACIONES DINERO gastos_med = 0.00375 'GASTOS MEDICOS invalidez = 0.00625 'INVALIDEZ Y VIDA cesantia_vejez = 0.01125 'CESANTIA Y VEJEZ tope = smgdf * 3 excedente = 0 If salario_base > tope Then excedente = (integrado - tope) * exc_smgdt End If impuestos = excedente + (integrado * prestaciones) + (integrado * gastos_med) + (integrado * invalidez) + (integrado * cesantia_vejez) 'MsgBox "EXCDENTE " & excedente & " PRESTACIONES " & (integrado * prestaciones) & "GASTOS MEDICOS " & (integrado * gastos_med) & " INVALIDEZ " & (integrado * invalidez) & " CESANTIA " & (integrado * cesantia_vejez) impuestos_empleado = Format(impuestos, "0.00") End Function
2 Respuestas
Respuesta de Dante Amor
1
Respuesta de Joseka Peñito
1