Fórmulas de componentes salariales
Cómo escribir, probar y corregir las fórmulas de los componentes salariales de tu planilla.
Usar con IA
Los servicios externos pueden no tener acceso a esta vista previa. Usa Copiar para IA.
Disponibilidad: Para utilizar Planilla, tu cuenta debe tener habilitada esta función y tu rol debe contar con los permisos correspondientes. Si la opción no aparece, contacta al soporte de Aragro.
Cada estructura de planilla está formada por componentes salariales: devengados (salario, séptimo, bonificaciones), deducciones (IGSS, ISR) y totales. Un componente puede ser un monto fijo o una fórmula. Esta guía explica cómo escribir esas fórmulas, cómo probarlas antes de completar la planilla y cómo resolver los errores más comunes.
Antes de empezar
Sección titulada «Antes de empezar»- Ten listos tus empleados y la estructura de planilla a la que pertenecen. Si aún no la tienes, revisa las preguntas frecuentes de Planilla.
- Escribe primero la regla en palabras o en Excel, con un empleado real de ejemplo y el resultado que esperas. Por ejemplo: “Juan asistió 10 días; su bonificación debe ser Q83.33”. Ese ejemplo es la forma más rápida de comprobar después que la fórmula está bien.
Cómo se arma una fórmula
Sección titulada «Cómo se arma una fórmula»Nombre y abreviatura
Sección titulada «Nombre y abreviatura»Cada componente tiene un nombre (el que aparece en la planilla y en los reportes) y una abreviatura. La abreviatura es la que usas para referirte a ese componente dentro de otras fórmulas, por ejemplo Vtrabajo o SeptPlanilla.
- Usa abreviaturas cortas, sin espacios ni tildes.
- Escríbelas en las fórmulas exactamente igual a como las definiste.
- Ordena la lista de componentes de forma lógica (datos base, devengados, deducciones y totales) para que sea fácil revisarla de arriba hacia abajo.
Variables del sistema
Sección titulada «Variables del sistema»Aragro calcula datos de cada empleado durante el período a partir de las órdenes de trabajo y las ausencias. Estas son algunas de las variables más usadas; la lista completa aparece en el panel Variables disponibles del editor de fórmulas.
| Variable | Qué representa |
|---|---|
attendedDays |
Días asistidos en el período. |
dailyWageList |
Lista de los pagos por jornada del período, uno por día. |
pieceworkWages |
Lista de los pagos a destajo del período. |
overtimePay |
Pago por horas extra. |
paidLeaves |
Días de ausencia pagada. |
holidays |
Días de asueto en el período. |
holidayPay |
Pago de los asuetos del período. |
activityDays |
Días trabajados por actividad. Se lee con GETNUM(activityDays, 'código'), usando el código de la actividad. |
Las variables que son listas (por ejemplo, dailyWageList y pieceworkWages) se usan dentro de funciones como SUM o COUNT, no solas.
Funciones y operadores
Sección titulada «Funciones y operadores»El editor muestra las funciones disponibles. Las más útiles para planilla son:
- Lógica:
IF,AND,OR,NOT,SWITCH,CASE - Números:
MIN,MAX,SUM,AVG,COUNT,ROUND,ROUNDUP,ROUNDDOWN,ABS,GETNUM - Listas:
FILTER,MAP,ALL,ANY,PLUCK - Comparación:
<,>,<=,>=,=
Usa punto para los decimales (119.21) y escribe los porcentajes como decimales: 4.83 % se escribe 0.0483.
Ejemplos
Sección titulada «Ejemplos»Estos ejemplos vienen de planillas agrícolas en Guatemala. Los montos y tasas son de ejemplo: confirma los valores vigentes con tu contador antes de usarlos.
Bonificación incentivo (Decreto 37-2001) por quincena
Sección titulada «Bonificación incentivo (Decreto 37-2001) por quincena»Paga Q8.33 por día asistido, redondeado hacia arriba, con un máximo de Q125 por quincena. Asistencia es un componente anterior igual a attendedDays.
MIN(ROUNDUP(8.333333333333333 * Asistencia, 0), 125)Bonificación adicional a destajo
Sección titulada «Bonificación adicional a destajo»Paga la diferencia cuando lo ganado a destajo más las horas extra supera el salario garantizado (Valor_trabajo). Si no lo supera, paga cero.
IF((SUM(pieceworkWages) - Valor_trabajo) + overtimePay <= 0, 0, (SUM(pieceworkWages) - Valor_trabajo) + overtimePay)Jornales trabajados
Sección titulada «Jornales trabajados»Cuenta los días en los que el empleado tuvo un pago por jornada mayor que cero.
COUNT(FILTER(dailyWageList, x, x > 0))IGSS laboral
Sección titulada «IGSS laboral»Aplica la cuota laboral sobre los devengados afectos.
(Vtrabajo + SeptPlanilla + Asuetoplanilla) * 0.0483Practica con la calculadora
Sección titulada «Practica con la calculadora»Escribe los días, el salario y lo ganado a destajo de un empleado para ver sus totales con las fórmulas de esta guía. Para probar tus propias fórmulas, abre Prueba tus propias fórmulas: el resultado se actualiza al instante y, si hay un error, te explica cómo corregirlo.
La calculadora interactiva está disponible en la versión web de esta guía.
Prueba antes de completar
Sección titulada «Prueba antes de completar»- Crea la entrada de planilla en estado Borrador y pulsa Generar Planilla.
- Busca a tu empleado de ejemplo y compara cada componente con el resultado que esperabas.
- Si necesitas revisar muchos empleados, exporta la entrada (Entrada de Planillas → Exportar) y compárala en Excel.
- Corrige la fórmula, vuelve a generar y repite hasta que todo coincida.
- Revisa también el nombre de la entrada: una entrada completada ya no se puede renombrar.
- Solo entonces pulsa Completar Entrada de Planillas. Para corregir una entrada completada hay que revertirla, lo que requiere permisos y la deja en estado Revertida.
Errores comunes
Sección titulada «Errores comunes»| Lo que pasa | Causa | Solución |
|---|---|---|
| Error de sintaxis en una comparación | Se escribió =< o =>. |
Escribe <= y >=. |
| “If has too few operands” | A un IF le falta una de sus tres partes, o quedó texto de prueba dentro de la fórmula. |
Usa siempre IF(condición, valor si se cumple, valor si no se cumple) y borra cualquier texto que no sea parte del cálculo. |
| “Too many closing parentheses” | Un paréntesis se cerró antes de tiempo, por ejemplo ROUNDUP(x), 0). |
Cuenta los paréntesis: ROUNDUP(x, 0). |
| Una variable o abreviatura no se reconoce | Está mal escrita o no existe en esa estructura. | Cópiala del panel Variables disponibles o de la lista de componentes. |
| El resultado sale negativo | La regla no contempla un caso, por ejemplo un empleado con pocos días. | No lo resuelvas solo con ABS(): cambia el signo y afecta a todos los componentes que usan ese resultado. Usa MAX(..., 0) solo si la regla de verdad es “nunca menos de cero”. Si no, define con tu ejemplo qué debe pagarse en ese caso y ajusta la fórmula. |
Si tienes alguna pregunta que este documento no haya resuelto, nos puedes contactar en el chat de Aragro o escribir a [email protected].