Saltar a contenido

Bloqueos: Liquidación, recibos y prestaciones

Catálogo histórico; no es el comportamiento vigente completo

Mensajes extraídos de 4073760e, no errores provocados en el build actual. La línea de origen solo corresponde a ese árbol. Para el corte 067ec7a21cf049451cd349ae473e872883f98e77, prevalecen las guías actualizadas por cambio integrado y sus recuperaciones. No usar una frase histórica de “no implementado” para negar una capacidad incorporada después (FSP, F220, conector nominal o asistentes).

Ficha de verificación

Catalogo generado el 2026-08-17 por lectura del arbol congelado 4073760e880a de dev-fase3 en xdiegob/PayrollBPS. Cada fila corresponde a un raise real localizado en el código, con su archivo y linea. No hay mensajes redactados para esta wiki.

Bloqueos del cálculo: preliquidación, recibo, liquidación definitiva, IBC, aportes y prestaciones sociales.

320 mensajes en 47 modelos. Pegue el texto del mensaje en el buscador para llegar directamente a su fila.

Como leer una fila

Cuando aparece dice en qué momento se dispara: al pulsar un botón, al crear, al modificar o por una validación automática. Origen es el archivo y la línea exactos del árbol congelado, para que cualquiera pueda comprobar el texto sin creerle a esta wiki. Las llaves {} marcan dónde el sistema inserta un valor concreto (un nombre, una fecha, un importe).

bps.acumulador.prestacion

Mensaje Cuando aparece Tipo Origen
La fase lectiva del aprendiz no causa prestaciones sociales; el acumulador desde recibo se bloquea hasta una fase que las habilite. Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:65
No puede causar un acumulador de una compania fuera de su contexto. Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:71
Los dias del periodo deben ser positivos. Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:74
Ya existe un acumulador de prestaciones para el empleado/compania/periodo (no se reejecuta: evita el doble conteo del recibo). Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:78
No hay recibo productivo del periodo para el empleado: el acumulador consume el recibo finalizado, no se inventan devengos. Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:87
Hay mas de un recibo productivo en el periodo (ambiguo): no se elige uno arbitrariamente ni se agregan recibos de meses distintos. Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:91
El recibo productivo no esta finalizado: el acumulador solo consume un recibo FINALIZADO (autoritativo). Finalice el recibo antes de causar. Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:96
El recibo no tiene devengos para acumular. Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:101
La linea de devengo '{}' del recibo no tiene un concepto trazable para clasificar por la matriz HU-014: no se acumula una base incompleta. Resuelva el concepto del devengo antes de causar. Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:106
Ya existe un acumulador para el empleado/compania/periodo (paralelo). Operación (causar_desde_recibo) Operación no permitida models/acumulador_recibo.py:134
El acumulador de prestaciones solo se crea por el servicio (causar). Al crear (create) Operación no permitida models/acumulador_prestacion.py:97
El acumulador de prestaciones es inmutable. Al modificar (write) Operación no permitida models/acumulador_prestacion.py:102
Los acumuladores de prestaciones no se eliminan. Al eliminar (unlink) Operación no permitida models/acumulador_prestacion.py:106
La fase lectiva del aprendiz no causa prestaciones sociales; el acumulador se bloquea hasta una fase que las habilite. Operación (causar) Operación no permitida models/acumulador_prestacion.py:164
No hay devengos para acumular en el periodo. Operación (causar) Operación no permitida models/acumulador_prestacion.py:170
Ya existe un acumulador de prestaciones para el empleado/compania/periodo. Operación (causar) Operación no permitida models/acumulador_prestacion.py:176
Ya existe un acumulador de prestaciones para el empleado/compania/periodo (creado en paralelo). Operación (causar) Operación no permitida models/acumulador_prestacion.py:209

bps.acumulador.prestacion.devengo

Mensaje Cuando aparece Tipo Origen
Los devengos del acumulador solo se crean por el servicio. Al crear (create) Operación no permitida models/acumulador_prestacion.py:239
Los devengos del acumulador son inmutables. Al modificar (write) Operación no permitida models/acumulador_prestacion.py:243
Los devengos del acumulador no se eliminan. Al eliminar (unlink) Operación no permitida models/acumulador_prestacion.py:247

bps.auditoria.base.parafiscal

Mensaje Cuando aparece Tipo Origen
La auditoría de base parafiscal solo se registra mediante el servicio (método auditar). Al crear (create) Operación no permitida models/auditoria_base_parafiscal.py:113
La auditoría de base parafiscal es inmutable: ejecute el servicio de nuevo para producir una traza posterior. Al modificar (write) Operación no permitida models/auditoria_base_parafiscal.py:119
Las auditorías de base parafiscal no se eliminan. Al eliminar (unlink) Operación no permitida models/auditoria_base_parafiscal.py:125
El empleado es obligatorio para auditar la base. Operación (auditar) Operación no permitida models/auditoria_base_parafiscal.py:196
La ventana de historia debe ser un número entero de meses mayor que cero. Operación (auditar) Operación no permitida models/auditoria_base_parafiscal.py:199

bps.auditoria.base.parafiscal.linea

Mensaje Cuando aparece Tipo Origen
Las líneas de la auditoría de base parafiscal solo se crean por el servicio. Al crear (create) Operación no permitida models/auditoria_base_parafiscal.py:314
Las líneas de la auditoría de base parafiscal son inmutables. Al modificar (write) Operación no permitida models/auditoria_base_parafiscal.py:320
Las líneas de la auditoría de base parafiscal no se eliminan. Al eliminar (unlink) Operación no permitida models/auditoria_base_parafiscal.py:324

bps.auditoria.base.parafiscal.wizard

Mensaje Cuando aparece Tipo Origen
No hay trazas de parafiscales en el período {} de la compañía {}: no se audita una base que todavía no se liquidó. Botón o acción (action_auditar) Operación no permitida models/auditoria_base_parafiscal.py:348

bps.calculo.aportes

Mensaje Cuando aparece Tipo Origen
Los aportes solo se calculan mediante el servicio (método calcular): no se crean fuera del servicio. Al crear (create) Operación no permitida models/calculo_aportes.py:117
La traza de aportes es inmutable: para recalcular, ejecute el servicio de nuevo (se crea una nueva traza, sin alterar la histórica). Al modificar (write) Operación no permitida models/calculo_aportes.py:124
Las trazas de aportes no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_aportes.py:131
El empleado es obligatorio para calcular los aportes. Operación (calcular) Operación no permitida models/calculo_aportes.py:218
No hay un cálculo de IBC persistido para el empleado en el período: los aportes no se calculan sin IBC. Operación (calcular) Operación no permitida models/calculo_aportes.py:230
El cálculo de IBC pertenece a otro empleado: no puede usarse para los aportes de este. Operación (calcular) Operación no permitida models/calculo_aportes.py:236
El cálculo de IBC pertenece a otra compañía. Operación (calcular) Operación no permitida models/calculo_aportes.py:241
El cálculo de IBC no corresponde al período. Operación (calcular) Operación no permitida models/calculo_aportes.py:245
El cálculo de IBC no tiene los subsistemas exigibles para los aportes. Operación (calcular) Operación no permitida models/calculo_aportes.py:263
El tipo de cotizante no cotiza salud ni pensión: no se crea una traza de aportes que parezca aplicable. Operación (calcular) Operación no permitida models/calculo_aportes.py:267
No hay parámetros anuales para {}: no se pueden calcular los aportes sin las tasas oficiales. Operación (calcular) Operación no permitida models/calculo_aportes.py:278
El empleado no tiene EPS asignada. Operación (calcular) Operación no permitida models/calculo_aportes.py:285
El empleado no tiene AFP (fondo de pensión) asignada. Operación (calcular) Operación no permitida models/calculo_aportes.py:287

bps.calculo.aportes.linea

Mensaje Cuando aparece Tipo Origen
Las líneas de aportes solo se crean por el servicio. Al crear (create) Operación no permitida models/calculo_aportes.py:408
Las líneas de aportes son inmutables. Al modificar (write) Operación no permitida models/calculo_aportes.py:412
Las líneas de aportes no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_aportes.py:416

bps.calculo.arl

Mensaje Cuando aparece Tipo Origen
El aporte de ARL solo se calcula mediante el servicio (método calcular): no se crea fuera del servicio. Al crear (create) Operación no permitida models/calculo_arl.py:84
La traza de ARL es inmutable: para recalcular, ejecute el servicio de nuevo (se crea una nueva traza, sin alterar la histórica). Al modificar (write) Operación no permitida models/calculo_arl.py:91
Las trazas de ARL no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_arl.py:98
El empleado es obligatorio para calcular el ARL. Operación (calcular) Operación no permitida models/calculo_arl.py:154
No hay un cálculo de IBC persistido para el empleado en el período. Operación (calcular) Operación no permitida models/calculo_arl.py:162
El cálculo de IBC pertenece a otro empleado: no puede usarse para el ARL de este. Operación (calcular) Operación no permitida models/calculo_arl.py:166
El cálculo de IBC pertenece a otra compañía. Operación (calcular) Operación no permitida models/calculo_arl.py:171
El cálculo de IBC no corresponde al período. Operación (calcular) Operación no permitida models/calculo_arl.py:175
El cálculo de IBC no tiene el subsistema de ARL. Operación (calcular) Operación no permitida models/calculo_arl.py:178
El empleado no tiene clase de riesgo ARL en la versión vigente del período: el ARL no se calcula sin clase. Operación (calcular) Operación no permitida models/calculo_arl.py:187

bps.calculo.fsp

Mensaje Cuando aparece Tipo Origen
El FSP solo se calcula mediante el servicio (método calcular): no se crea fuera del servicio. Al crear (create) Operación no permitida models/calculo_fsp.py:116
La traza de FSP es inmutable: para recalcular, ejecute el servicio de nuevo (se crea una nueva traza, sin alterar la histórica). Al modificar (write) Operación no permitida models/calculo_fsp.py:123
Las trazas de FSP no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_fsp.py:130
El empleado es obligatorio para calcular el FSP. Operación (calcular) Operación no permitida models/calculo_fsp.py:196
No hay un cálculo de IBC persistido para el empleado en el período: el FSP no se calcula sin IBC. Operación (calcular) Operación no permitida models/calculo_fsp.py:203
El cálculo de IBC pertenece a otro empleado: no puede usarse para el FSP de este. Operación (calcular) Operación no permitida models/calculo_fsp.py:208
El cálculo de IBC pertenece a otra compañía. Operación (calcular) Operación no permitida models/calculo_fsp.py:213
El cálculo de IBC no corresponde al período. Operación (calcular) Operación no permitida models/calculo_fsp.py:217
El cálculo de IBC no tiene el subsistema de pensión: el FSP cotiza sobre el IBC de pensión. Operación (calcular) Operación no permitida models/calculo_fsp.py:220
No hay parámetros anuales para {}: no se calcula el FSP sin la tasa oficial. Operación (calcular) Operación no permitida models/calculo_fsp.py:230
La tasa base del FSP ({}) debe estar entre 0 y 100. Operación (calcular) Operación no permitida models/calculo_fsp.py:237
No hay un tope de 4 SMMLV parametrizado para {}: no se evalúa el umbral del FSP. Operación (calcular) Operación no permitida models/calculo_fsp.py:241
PENDIENTE_FUENTE_FSP: las subcuentas fuenteadas no suman la tasa base anual. Operación (calcular) Operación no permitida models/calculo_fsp.py:257

bps.calculo.fsp.linea

Mensaje Cuando aparece Tipo Origen
Los componentes FSP solo se crean junto con el cálculo gobernado. Al crear (create) Operación no permitida models/calculo_fsp.py:341
Los componentes FSP son inmutables. Al modificar (write) Operación no permitida models/calculo_fsp.py:347
Los componentes FSP no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_fsp.py:351

bps.calculo.ibc

Mensaje Cuando aparece Tipo Origen
El IBC solo se calcula mediante el servicio (método calcular): no se crea ni se recalcula fuera del servicio. Al crear (create) Operación no permitida models/calculo_ibc.py:172
La traza del IBC es inmutable: para recalcular, ejecute el servicio. Al modificar (write) Operación no permitida models/calculo_ibc.py:179
Las trazas del IBC no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_ibc.py:185
El indicador de salario integral debe ser booleano. Operación (calcular) Operación no permitida models/calculo_ibc.py:257
PENDIENTE_FUENTE_TIPO_COTIZANTE: el trabajador es aprendiz y además tiene un tipo de cotizante con unidad propia ({}). El cruce de ambos regímenes no está fuenteado: corrija la versión contractual. Operación (calcular) Operación no permitida models/calculo_ibc.py:276

bps.calculo.ibc.subsistema

Mensaje Cuando aparece Tipo Origen
Las líneas de IBC por subsistema solo se crean por el servicio. Al crear (create) Operación no permitida models/calculo_ibc.py:435
Las líneas de IBC por subsistema son inmutables. Al modificar (write) Operación no permitida models/calculo_ibc.py:441
Las líneas de IBC por subsistema no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_ibc.py:445

bps.calculo.parafiscales

Mensaje Cuando aparece Tipo Origen
Los parafiscales solo se calculan mediante el servicio (método calcular): no se crean fuera del servicio. Al crear (create) Operación no permitida models/calculo_parafiscales.py:163
La traza de parafiscales es inmutable: para recalcular, ejecute el servicio de nuevo (se crea una nueva traza, sin alterar la histórica). Al modificar (write) Operación no permitida models/calculo_parafiscales.py:170
Las trazas de parafiscales no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_parafiscales.py:177
El empleado es obligatorio para calcular parafiscales. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:231
La fase lectiva del aprendiz no causa parafiscales; no se crea una traza que parezca aplicable. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:236
No hay un cálculo de IBC persistido para el empleado en el período. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:244
El cálculo de IBC pertenece a otro empleado: no puede usarse para los parafiscales de este. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:248
El cálculo de IBC pertenece a otra compañía. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:253
El cálculo de IBC no corresponde al período. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:257
El tipo de cotizante {} no cotiza parafiscales: no se crea una traza que parezca aplicable. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:272
El cálculo de IBC no trae el subsistema de parafiscales exigido por el tipo de cotizante {}. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:279
No hay parámetros anuales para {}: no se calculan parafiscales sin el total oficial. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:296
No hay Caja de Compensación Familiar asignada al empleado ni a la compañía: la CCF no se puede dirigir. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:305
Hay más de una determinación de exoneración 114-1 para el empleado en el período: indique cuál usar. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:320
La suma de los componentes de parafiscales ({}) no coincide con el total parametrizado ({}): revise el catálogo de tarifas. Operación (calcular) Operación no permitida models/calculo_parafiscales.py:356

bps.calculo.parafiscales.linea

Mensaje Cuando aparece Tipo Origen
Las líneas de parafiscales solo se crean por el servicio. Al crear (create) Operación no permitida models/calculo_parafiscales.py:450
Las líneas de parafiscales son inmutables. Al modificar (write) Operación no permitida models/calculo_parafiscales.py:456
Las líneas de parafiscales no se eliminan. Al eliminar (unlink) Operación no permitida models/calculo_parafiscales.py:460

bps.cesantias

Mensaje Cuando aparece Tipo Origen
El acumulador ya tiene cesantias causadas. Operación (causar) Operación no permitida models/prestaciones_calculo.py:133

bps.coherencia.parafiscal

Mensaje Cuando aparece Tipo Origen
La coherencia parafiscal solo se registra mediante el servicio de validación (método validar). Al crear (create) Operación no permitida models/coherencia_parafiscal.py:97
La traza de coherencia parafiscal es inmutable: registre una nueva validación si corresponde. Al modificar (write) Operación no permitida models/coherencia_parafiscal.py:104
Las trazas de coherencia parafiscal no se eliminan. Al eliminar (unlink) Operación no permitida models/coherencia_parafiscal.py:111
El cálculo de IBC pertenece a otro empleado: no puede usarse para validar la coherencia de este. Operación (validar) Operación no permitida models/coherencia_parafiscal.py:157
El cálculo de IBC pertenece a otra compañía. Operación (validar) Operación no permitida models/coherencia_parafiscal.py:162
El cálculo de IBC no corresponde al período validado. Operación (validar) Operación no permitida models/coherencia_parafiscal.py:166
Se requiere la base parafiscal para validar la coherencia. Operación (validar) Operación no permitida models/coherencia_parafiscal.py:173
La base parafiscal ({}) difiere del IBC de CCF ({}) en {}, por encima de la tolerancia ({}) [{}]. Registre una justificación documentada de la divergencia. Operación (validar) Operación no permitida models/coherencia_parafiscal.py:191

bps.excepcion.pension.extranjero

Mensaje Cuando aparece Tipo Origen
Las fechas de vigencia son obligatorias. Validación automática (_check_fechas) Validación models/excepcion_pension.py:139
La fecha hasta no puede ser anterior a la fecha desde. Validación automática (_check_fechas) Validación models/excepcion_pension.py:141
El empleado pertenece a la compania '{}' pero la excepcion es de '{}': no se mezclan companias. Validación automática (_check_compania) Validación models/excepcion_pension.py:149
La excepcion de pension del extranjero exige soporte documental vigente (P9): sin soporte no se aplica. Validación automática (_check_soporte_write) Validación models/excepcion_pension.py:158
Ya existe una excepcion de pension activa que se solapa con el rango {}–{} para el empleado: no se permiten excepciones superpuestas (evita ambiguedad de vigencia). Validación automática (_check_no_solapamiento) Validación models/excepcion_pension.py:182
La excepcion de pension del extranjero exige soporte documental (certificado de cotizacion/convenio) para registrarse (P9). Al crear (create) Validación models/excepcion_pension.py:193
La excepcion '{}' esta referenciada por trazas de aportes: no se borra (las trazas perderian su justificacion). Para retirarla del calculo, archivela (cambio auditado). Al eliminar (unlink) Validación models/excepcion_pension.py:257
No se duplica una excepcion de pension: registre un alta nueva con su propio soporte documental vigente y su motivo (P9). Operación (copy) Operación no permitida models/excepcion_pension.py:272

bps.exoneracion.114

Mensaje Cuando aparece Tipo Origen
La exoneración 114-1 solo se determina mediante el servicio (método determinar): no se crea fuera del servicio. Al crear (create) Operación no permitida models/exoneracion_114.py:135
La traza de exoneración 114-1 es inmutable: vuelva a ejecutar el servicio para una nueva determinación. Al modificar (write) Operación no permitida models/exoneracion_114.py:142
Las trazas de exoneración 114-1 no se eliminan. Al eliminar (unlink) Operación no permitida models/exoneracion_114.py:149
El empleado es obligatorio para determinar la exoneración 114-1. Operación (determinar) Operación no permitida models/exoneracion_114.py:187
No hay un cálculo de IBC persistido para el empleado en el período. Operación (determinar) Operación no permitida models/exoneracion_114.py:196
El cálculo de IBC pertenece a otro empleado: no puede usarse para la exoneración de este. Operación (determinar) Operación no permitida models/exoneracion_114.py:200
El cálculo de IBC pertenece a otra compañía. Operación (determinar) Operación no permitida models/exoneracion_114.py:205
El cálculo de IBC no corresponde al período. Operación (determinar) Operación no permitida models/exoneracion_114.py:209
El cálculo de IBC no tiene el subsistema de salud: no se evalúa el umbral de la exoneración 114-1. Operación (determinar) Operación no permitida models/exoneracion_114.py:212
No hay parámetros anuales para {}: no se evalúa el umbral de la exoneración 114-1. Operación (determinar) Operación no permitida models/exoneracion_114.py:222
No hay un tope de 10 SMMLV parametrizado para {}. Operación (determinar) Operación no permitida models/exoneracion_114.py:228

bps.exoneracion.114.linea

Mensaje Cuando aparece Tipo Origen
Las líneas de exoneración 114-1 solo se crean por el servicio. Al crear (create) Operación no permitida models/exoneracion_114.py:299
Las líneas de exoneración 114-1 son inmutables. Al modificar (write) Operación no permitida models/exoneracion_114.py:305
Las líneas de exoneración 114-1 no se eliminan. Al eliminar (unlink) Operación no permitida models/exoneracion_114.py:309

bps.festivo

Mensaje Cuando aparece Tipo Origen
El rango es invalido (hasta < desde). Operación (contar_dias_habiles) Operación no permitida models/festivo.py:49
No hay festivos cargados para {} (PENDIENTE_FESTIVOS): el conteo automatico de dias habiles se bloquea para no asumir el calendario. Cargue el catalogo de festivos del ano con su fuente. Operación (contar_dias_habiles) Operación no permitida models/festivo.py:54

bps.fsp.escalon

Mensaje Cuando aparece Tipo Origen
La vigencia final del escalón no puede ser anterior a su inicio. Validación automática (_check_intervalo) Operación no permitida models/calculo_fsp.py:375
El límite superior del escalón debe superar el inferior. Validación automática (_check_intervalo) Operación no permitida models/calculo_fsp.py:378
El porcentaje adicional del escalón no puede ser negativo. Validación automática (_check_intervalo) Operación no permitida models/calculo_fsp.py:380

bps.intereses.cesantias

Mensaje Cuando aparece Tipo Origen
Las cesantias ya tienen intereses causados. Operación (causar) Operación no permitida models/prestaciones_calculo.py:226
Las cesantias ya tienen intereses causados (en paralelo). Operación (causar) Operación no permitida models/prestaciones_calculo.py:249

bps.liquidacion.cierre.version

Mensaje Cuando aparece Tipo Origen
El cierre tecnico de version solo se crea por el servicio (cerrar_version_contrato de la liquidacion). Al crear (create) Operación no permitida models/cierre_version.py:107
El cierre tecnico de version es INMUTABLE una vez aplicado (evidencia). Al modificar (write) Operación no permitida models/cierre_version.py:115
Los cierres tecnicos de version no se eliminan (son traza). Al eliminar (unlink) Operación no permitida models/cierre_version.py:120

bps.liquidacion.definitiva

Mensaje Cuando aparece Tipo Origen
Solo un administrador de nomina BPS aplica el cierre tecnico de version. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:168
No puede cerrar la version de una liquidacion de una compania fuera de su contexto. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:171
El cierre tecnico de version exige la liquidacion CERRADA (art. 64/65 resueltos y cierre productivo); estado actual: '{}'. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:175
El cierre tecnico de version exige un motivo. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:181
El cierre tecnico de version exige un soporte (referencia documental: acta, radicado, expediente). Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:183
La liquidacion cerrada no referencia una version de contrato (fuente faltante): no se aplica el cierre tecnico. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:188
La version de contrato no pertenece al empleado de la liquidacion (contradiccion entre fuentes): no se aplica el cierre tecnico. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:196
La version de contrato pertenece a otra compania (contradiccion): no se aplica el cierre tecnico. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:200
AMBIGUEDAD de version/contrato: la version vigente a la fecha de terminacion ({}) re-derivada hoy no coincide con la version que consumio la liquidacion cerrada. Revise las versiones del contrato antes de aplicar el cierre tecnico (no se elige una arbitrariamente). Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:205
El cierre tecnico de version de esta liquidacion ya fue aplicado el {}: no se duplica (idempotencia). Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:216
CONFLICTO: la version de contrato ya tiene un cierre tecnico aplicado por otra liquidacion ({}). No se aplica un segundo cierre sobre la misma version. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:219
El cierre tecnico de la version ya fue aplicado (en paralelo): no se duplica. Operación (cerrar_version_contrato) Operación no permitida models/cierre_version.py:247
La liquidacion definitiva solo se crea por el servicio (liquidar). Al crear (create) Operación no permitida models/liquidacion_definitiva.py:297
La liquidacion CERRADA es inmutable: no se modifica. Al modificar (write) Operación no permitida models/liquidacion_definitiva.py:321
La liquidacion definitiva es inmutable (use el flujo gobernado). Al modificar (write) Operación no permitida models/liquidacion_definitiva.py:325
Las liquidaciones definitivas no se eliminan (son traza). Al eliminar (unlink) Operación no permitida models/liquidacion_definitiva.py:329
La fecha de terminacion es obligatoria para liquidar. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:370
La causal de terminacion no esta normalizada en el catalogo (debe ser una de: {}). No se liquida con una causal libre o desconocida. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:376
No puede liquidar un empleado de una compania fuera de su contexto. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:382
El empleado no tiene una version de contrato vigente a la fecha de terminacion ({}): no se liquida con bases de otra fecha. Verifique el contrato. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:391
PENDIENTE_HU097: el empleado tiene una bandera de riesgo ACTIVA y no hay un gate juridico APROBADO para esta terminacion y CAUSAL (HU-091 CA-1). El gate aprobado debe coincidir en fecha y causal. El rol juridico debe completar y firmar el gate (HU-097A) antes de liquidar. No se expone el diagnostico ni el detalle clinico. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:405
Ya existe una liquidacion definitiva para el empleado/compania/periodo. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:414
No hay recibo productivo del periodo para el empleado: la liquidacion consume el recibo finalizado, no se inventan valores. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:422
Hay mas de un recibo productivo en el periodo (ambiguo): no se elige uno arbitrariamente. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:426
El recibo productivo no esta finalizado: la liquidacion solo consume un recibo FINALIZADO. Finalice el recibo antes de liquidar. Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:430
Ya existe una liquidacion para el empleado/compania/periodo (paralelo). Operación (liquidar) Operación no permitida models/liquidacion_definitiva.py:458
Solo un administrador BPS puede aprobar la liquidacion. Operación (aprobar) Operación no permitida models/liquidacion_definitiva.py:484
Solo se aprueba una liquidacion en borrador. Operación (aprobar) Operación no permitida models/liquidacion_definitiva.py:486
Solo un administrador BPS puede confirmar la liquidacion. Operación (confirmar) Operación no permitida models/liquidacion_definitiva.py:497
Solo se confirma una liquidacion aprobada: apruebe antes de confirmar. Operación (confirmar) Operación no permitida models/liquidacion_definitiva.py:499
Solo un administrador BPS puede marcar el riesgo residual. Operación (marcar_riesgo_residual) Operación no permitida models/liquidacion_definitiva.py:512
El motivo del riesgo residual es obligatorio. Operación (marcar_riesgo_residual) Operación no permitida models/liquidacion_definitiva.py:515
Solo un administrador BPS puede calcular la indemnizacion. Operación (calcular_indemnizacion) Operación no permitida models/liquidacion_definitiva.py:590
El tipo de contrato para la indemnizacion no es valido (debe ser: {}). Operación (calcular_indemnizacion) Operación no permitida models/liquidacion_definitiva.py:593
La liquidacion no tiene version de contrato: no se calcula. Operación (calcular_indemnizacion) Operación no permitida models/liquidacion_definitiva.py:613
El salario del contrato vigente a la terminacion no es positivo: no se calcula la indemnizacion con un salario asumido. Operación (calcular_indemnizacion) Operación no permitida models/liquidacion_definitiva.py:615
El divisor de dias del mes (parametros anuales de {}) no es valido: no se calcula el salario diario. Operación (calcular_indemnizacion) Operación no permitida models/liquidacion_definitiva.py:622
Indemnizacion de contrato de OBRA O LABOR (art. 64 CST) BLOQUEADA: el 'tiempo faltante para la culminacion de la obra' no es determinable con los datos del contrato (no hay fecha estimada de fin de obra). Calcular solo el minimo de 15 dias podria SUBESTIMAR la indemnizacion; no se asume. Deuda registrada (requiere el dato de duracion/avance de la obra). Operación (calcular_indemnizacion) Operación no permitida models/liquidacion_definitiva.py:627
Solo el administrador BPS o el rol juridico calculan la exposicion moratoria. Operación (calcular_exposicion_moratoria) Operación no permitida models/liquidacion_definitiva.py:743
La fecha de consulta ({}) es anterior a la terminacion ({}): no hay retardo que exponer. Operación (calcular_exposicion_moratoria) Operación no permitida models/liquidacion_definitiva.py:748
No hay salario de la version de contrato para la exposicion moratoria. Operación (calcular_exposicion_moratoria) Operación no permitida models/liquidacion_definitiva.py:753
El divisor de dias del mes no es valido para la exposicion. Operación (calcular_exposicion_moratoria) Operación no permitida models/liquidacion_definitiva.py:758
El SMMLV (parametros anuales de {}) no es valido: no se puede determinar el regimen de la moratoria (art. 65 CST diferencia por 1 SMMLV). Operación (calcular_exposicion_moratoria) Operación no permitida models/liquidacion_definitiva.py:763
Solo el rol juridico laboral decide la sancion moratoria (art. 65 CST). Operación (decidir_moratoria) Operación no permitida models/liquidacion_definitiva.py:795
La decision de moratoria debe ser 'aprobada' o 'no_aplica' (no automatica). Operación (decidir_moratoria) Operación no permitida models/liquidacion_definitiva.py:799
La decision de moratoria exige un motivo juridico. Operación (decidir_moratoria) Operación no permitida models/liquidacion_definitiva.py:804
La decision de moratoria exige un soporte/referencia documental (acta, concepto, radicado). Operación (decidir_moratoria) Operación no permitida models/liquidacion_definitiva.py:806
La moratoria APROBADA exige el valor aprobado explicito (el sistema no lo asume desde la exposicion): indique el valor decidido juridicamente. Operación (decidir_moratoria) Operación no permitida models/liquidacion_definitiva.py:811
El valor aprobado de moratoria debe ser mayor que cero. Operación (decidir_moratoria) Operación no permitida models/liquidacion_definitiva.py:816
Solo un administrador BPS puede cerrar la liquidacion. Operación (cerrar) Operación no permitida models/liquidacion_definitiva.py:839
Solo se cierra una liquidacion CONFIRMADA (apruebe y confirme antes de cerrar). Operación (cerrar) Operación no permitida models/liquidacion_definitiva.py:842
No se cierra con la indemnizacion (art. 64 CST) PENDIENTE: calcule la indemnizacion o declarela no aplicable antes de cerrar. Operación (cerrar) Operación no permitida models/liquidacion_definitiva.py:846
No se cierra con la sancion moratoria (art. 65 CST) sin decision juridica: apruebela (con valor/soporte) o declarela no aplicable antes de cerrar. Operación (cerrar) Operación no permitida models/liquidacion_definitiva.py:850
No tiene permiso para consultar la explicacion de la liquidacion. Operación (resumen_explicacion) Operación no permitida models/liquidacion_definitiva.py:873
No puede leer una liquidacion de una compania fuera de su contexto. Operación (resumen_explicacion) Operación no permitida models/liquidacion_definitiva.py:876
El banco de vacaciones de esta liquidacion ya esta resuelto ({}): no se compensa dos veces. Operación (compensar_vacaciones_definitivas) Operación no permitida models/liquidacion_vacaciones.py:110
El empleado conserva {} dias de vacaciones pendientes, pero la liquidacion no tiene provision con base de vacaciones (HU-060A): sin esa base no hay una valoracion coherente con la que ya se uso en el periodo y la compensacion se bloquea (no se elige otra base). Operación (compensar_vacaciones_definitivas) Operación no permitida models/liquidacion_vacaciones.py:121
La compensacion definitiva no dejo el banco de vacaciones en cero (quedan {} dias): no se declara cerrado. Operación (compensar_vacaciones_definitivas) Operación no permitida models/liquidacion_vacaciones.py:133
La compania exige cerrar el banco de vacaciones antes del cierre: el empleado conserva {} dias pendientes. Compense la liquidacion definitiva de vacaciones o registre su disfrute. Operación (cerrar) Operación no permitida models/liquidacion_vacaciones.py:154

bps.nomina.ejecutar.wizard

Mensaje Cuando aparece Tipo Origen
La operación de nómina solicitada no es válida. Botón o acción (action_ejecutar) Operación no permitida models/ejecucion_nomina_wizard.py:94

bps.novedad

Mensaje Cuando aparece Tipo Origen
No se puede eliminar una novedad con pre-work-entries tecnicas asociadas (traza inmutable). Anule la novedad en su lugar. Al eliminar (unlink) Operación no permitida models/work_entry.py:132

bps.preliquidacion

Mensaje Cuando aparece Tipo Origen
La preliquidacion solo se crea por el servicio (preliquidar). Al crear (create) Operación no permitida models/preliquidacion.py:246
La preliquidacion es inmutable. Al modificar (write) Operación no permitida models/preliquidacion.py:262
Las preliquidaciones no se eliminan. Al eliminar (unlink) Operación no permitida models/preliquidacion.py:266
Ya existe una preliquidacion para el empleado/compania/periodo. Operación (preliquidar) Operación no permitida models/preliquidacion.py:360
Hay una traza FSP M05 persistida para un régimen que ahora la excluye; la preliquidación se bloquea para no dejar evidencia autoritativa sin consumir. Operación (preliquidar) Operación no permitida models/preliquidacion.py:384
Hay una traza de parafiscales M05 persistida para un régimen que ahora la excluye; la preliquidación se bloquea para no dejar evidencia autoritativa sin consumir. Operación (preliquidar) Operación no permitida models/preliquidacion.py:389
Ya existe una preliquidacion para el empleado/compania/periodo (creada en paralelo). Operación (preliquidar) Operación no permitida models/preliquidacion.py:452
Decision de revision no soportada. Una decision humana solo puede registrar una excepcion revisada (que NO desbloquea el consumo) o rechazar; una incoherencia queda siempre bloqueada. Botón o acción (action_resolver_incoherencia) Operación no permitida models/preliquidacion.py:533
El motivo de la decision es obligatorio. Botón o acción (action_resolver_incoherencia) Operación no permitida models/preliquidacion.py:538
Solo se puede decidir una preliquidacion incoherente. Botón o acción (action_resolver_incoherencia) Operación no permitida models/preliquidacion.py:540
La preliquidacion ya tiene un desenlace de revision registrado; no se sobrescribe. Cree una nueva traza futura si el proceso lo requiere. Botón o acción (action_resolver_incoherencia) Operación no permitida models/preliquidacion.py:545
Solo un operador o administrador de nomina BPS puede generar la traza de deducciones del periodo (HU-126). Operación (generar_deducciones_periodo) Operación no permitida models/preliquidacion.py:742
No puede generar la traza de deducciones de un empleado de otra compania. Operación (generar_deducciones_periodo) Operación no permitida models/preliquidacion.py:748
Ya existe una traza de deducciones para el periodo pero no corresponde a las deducciones activas o es incompatible con el salario/deducciones de ley actuales; por su inmutabilidad no se recalcula. La re-liquidacion gobernada de la traza queda pendiente. Operación (generar_deducciones_periodo) Operación no permitida models/preliquidacion.py:765

bps.preliquidacion.consistencia

Mensaje Cuando aparece Tipo Origen
La validacion de consistencia solo se crea por el servicio (validar). Al crear (create) Operación no permitida models/consistencia.py:78
La validacion de consistencia es inmutable. Al modificar (write) Operación no permitida models/consistencia.py:83
Las validaciones de consistencia no se eliminan. Al eliminar (unlink) Operación no permitida models/consistencia.py:87

bps.preliquidacion.consistencia.hallazgo

Mensaje Cuando aparece Tipo Origen
Los hallazgos solo se crean por el servicio. Al crear (create) Operación no permitida models/consistencia.py:252
Los hallazgos de consistencia son inmutables. Al modificar (write) Operación no permitida models/consistencia.py:256
Los hallazgos de consistencia no se eliminan. Al eliminar (unlink) Operación no permitida models/consistencia.py:260

bps.preliquidacion.linea

Mensaje Cuando aparece Tipo Origen
Las lineas de preliquidacion solo se crean por el servicio. Al crear (create) Operación no permitida models/preliquidacion.py:866
Las lineas de preliquidacion son inmutables (no editables). Al modificar (write) Operación no permitida models/preliquidacion.py:871
Las lineas de preliquidacion no se eliminan. Al eliminar (unlink) Operación no permitida models/preliquidacion.py:875

bps.prestacion.mixin

Mensaje Cuando aparece Tipo Origen
Esta traza de prestaciones solo se crea por su servicio. Al crear (create) Operación no permitida models/prestaciones_calculo.py:75
Las trazas de prestaciones son inmutables. Al modificar (write) Operación no permitida models/prestaciones_calculo.py:79
Las trazas de prestaciones no se eliminan. Al eliminar (unlink) Operación no permitida models/prestaciones_calculo.py:83

bps.prima.servicios

Mensaje Cuando aparece Tipo Origen
El semestre debe ser '1' o '2'. Operación (causar) Operación no permitida models/prestaciones_calculo.py:304
El acumulador ya tiene prima causada para ese semestre. Operación (causar) Operación no permitida models/prestaciones_calculo.py:307

bps.promedio.variable

Mensaje Cuando aparece Tipo Origen
El promedio variable solo se crea por el servicio. Al crear (create) Operación no permitida models/promedio_variable.py:74
El promedio variable es inmutable. Al modificar (write) Operación no permitida models/promedio_variable.py:78
Los promedios variables no se eliminan. Al eliminar (unlink) Operación no permitida models/promedio_variable.py:82
La ventana es invalida (hasta < desde). Operación (calcular) Operación no permitida models/promedio_variable.py:96
No hay historico de devengos para la ventana: el promedio de salario variable no se puede calcular (PENDIENTE_HU026/recibo). No se asume. Operación (calcular) Operación no permitida models/promedio_variable.py:98
Ya existe un promedio para el empleado/compania/ventana. Operación (calcular) Operación no permitida models/promedio_variable.py:105
El historico no tiene devengos salariales (suma a prestaciones) en la ventana: no se calcula el promedio. Operación (calcular) Operación no permitida models/promedio_variable.py:119
Ya existe un promedio para el empleado/compania/ventana (en paralelo). Operación (calcular) Operación no permitida models/promedio_variable.py:138

bps.promedio.variable.componente

Mensaje Cuando aparece Tipo Origen
Los componentes del promedio solo se crean por el servicio. Al crear (create) Operación no permitida models/promedio_variable.py:166
Los componentes del promedio son inmutables. Al modificar (write) Operación no permitida models/promedio_variable.py:170
Los componentes del promedio no se eliminan. Al eliminar (unlink) Operación no permitida models/promedio_variable.py:174

bps.proporcionalidad.ibc

Mensaje Cuando aparece Tipo Origen
La proporcionalidad de IBC solo se determina mediante el servicio (método calcular): no se crea fuera del servicio. Al crear (create) Operación no permitida models/proporcionalidad_ibc.py:116
La traza de proporcionalidad es inmutable: vuelva a ejecutar el servicio para una nueva determinación. Al modificar (write) Operación no permitida models/proporcionalidad_ibc.py:123
Las trazas de proporcionalidad no se eliminan. Al eliminar (unlink) Operación no permitida models/proporcionalidad_ibc.py:130
El empleado es obligatorio para la proporcionalidad de IBC. Operación (calcular) Operación no permitida models/proporcionalidad_ibc.py:215
No hay parámetros anuales para {}: no se determina la proporcionalidad sin SMMLV ni divisor. Operación (calcular) Operación no permitida models/proporcionalidad_ibc.py:225
El divisor de días del mes debe ser mayor que cero. Operación (calcular) Operación no permitida models/proporcionalidad_ibc.py:231
El retiro es anterior al ingreso dentro del período: días ambiguos. Operación (calcular) Operación no permitida models/proporcionalidad_ibc.py:247
Una novedad no tiene código de tipo: no se puede determinar su efecto sin la fuente del catálogo (HU-041A). Operación (calcular) Operación no permitida models/proporcionalidad_ibc.py:260
El tipo de novedad '{}' no existe o no está vigente en {}: no se determina su efecto sin fuente parametrizada. Operación (calcular) Operación no permitida models/proporcionalidad_ibc.py:266
La novedad '{}' no indica los días: sin la fuente de días no se determina su efecto (no se asume 0). Operación (calcular) Operación no permitida models/proporcionalidad_ibc.py:273
Los días cotizados de {} ({}) quedaron fuera de rango. Operación (calcular) Operación no permitida models/proporcionalidad_ibc.py:298

bps.proporcionalidad.ibc.novedad

Mensaje Cuando aparece Tipo Origen
Las novedades de proporcionalidad solo se crean por el servicio. Al crear (create) Operación no permitida models/proporcionalidad_ibc.py:357
Las novedades de proporcionalidad son inmutables. Al modificar (write) Operación no permitida models/proporcionalidad_ibc.py:363
Las novedades de proporcionalidad no se eliminan. Al eliminar (unlink) Operación no permitida models/proporcionalidad_ibc.py:367

bps.provision.prestacion

Mensaje Cuando aparece Tipo Origen
La provision solo se crea por el servicio (provisionar). Al crear (create) Operación no permitida models/provision_prestacion.py:97
La provision de prestaciones es inmutable. Al modificar (write) Operación no permitida models/provision_prestacion.py:101
Las provisiones de prestaciones no se eliminan. Al eliminar (unlink) Operación no permitida models/provision_prestacion.py:105
Compania fuera del contexto del usuario: no se provisiona el periodo. Operación (provisionar) Operación no permitida models/provision_prestacion.py:116
El acumulador ya tiene provision. Operación (provisionar) Operación no permitida models/provision_prestacion.py:119
El acumulador ya tiene provision (en paralelo). Operación (provisionar) Operación no permitida models/provision_prestacion.py:167

bps.recibo

Mensaje Cuando aparece Tipo Origen
El recibo productivo solo se crea por el servicio (generar). Al crear (create) Operación no permitida models/recibo.py:145
El recibo productivo es inmutable (use el flujo gobernado). Al modificar (write) Operación no permitida models/recibo.py:152
Los recibos productivos no se eliminan (son traza). Al eliminar (unlink) Operación no permitida models/recibo.py:156
No puede generar un recibo de una compania fuera de su contexto. Operación (generar) Operación no permitida models/recibo.py:242
Ya existe un recibo productivo para el empleado/compania/periodo. Operación (generar) Operación no permitida models/recibo.py:247
No hay preliquidacion para el empleado/compania/periodo: el recibo productivo consume la preliquidacion tecnica, no se inventa. Operación (generar) Operación no permitida models/recibo.py:253
Hay mas de una preliquidacion para el periodo (ambigua): no se elige una arbitrariamente. Operación (generar) Operación no permitida models/recibo.py:257
Ya existe un recibo para el empleado/compania/periodo (creado en paralelo). Operación (generar) Operación no permitida models/recibo.py:287
Solo un administrador de nomina BPS puede finalizar un recibo. Operación (finalizar) Operación no permitida models/recibo.py:302
El recibo ya esta finalizado: no se vuelve a finalizar. Operación (finalizar) Operación no permitida models/recibo.py:305

bps.recibo.linea

Mensaje Cuando aparece Tipo Origen
Las lineas del recibo solo se crean por el servicio. Al crear (create) Operación no permitida models/recibo.py:337
Las lineas del recibo productivo son inmutables. Al modificar (write) Operación no permitida models/recibo.py:341
Las lineas del recibo productivo no se eliminan. Al eliminar (unlink) Operación no permitida models/recibo.py:345

bps.salario.periodo

Mensaje Cuando aparece Tipo Origen
La traza de vigencia salarial solo se crea por el servicio (resolver). Al crear (create) Operación no permitida models/salario_vigencia.py:93
La traza de vigencia salarial es inmutable. Al modificar (write) Operación no permitida models/salario_vigencia.py:98
Las trazas de vigencia salarial no se eliminan. Al eliminar (unlink) Operación no permitida models/salario_vigencia.py:102
El periodo es invalido (hasta < desde). Operación (resolver) Operación no permitida models/salario_vigencia.py:164
No puede resolver la vigencia salarial de una compania fuera de su contexto. Operación (resolver) Operación no permitida models/salario_vigencia.py:167
El empleado {} no tiene ninguna version de contrato con salario vigente en el periodo: no se resuelve la vigencia salarial y no se inventa un valor. Operación (resolver) Operación no permitida models/salario_vigencia.py:177

bps.salario.periodo.segmento

Mensaje Cuando aparece Tipo Origen
Los segmentos solo los crea el servicio de vigencia. Al crear (create) Operación no permitida models/salario_vigencia.py:236
Los segmentos de vigencia salarial son inmutables. Al modificar (write) Operación no permitida models/salario_vigencia.py:240
Los segmentos de vigencia salarial no se eliminan. Al eliminar (unlink) Operación no permitida models/salario_vigencia.py:244

bps.tipo.cotizante

Mensaje Cuando aparece Tipo Origen
El tipo de cotizante '{}' no puede estar ACTIVO con la planilla PILA pendiente (M08). Use 'activo_local' mientras el TXT productivo y el operador sigan bloqueados. Validación automática (_check_planilla_activo) Validación models/tipo_cotizante.py:156
El tipo de cotizante '{}' cotiza por semanas pero no declara la clave de catálogo del IBC semanal. Validación automática (_check_claves_de_base) Validación models/tipo_cotizante.py:171
El tipo de cotizante '{}' cotiza por mes completo pero no declara la clave de catálogo del IBC mensual. Validación automática (_check_claves_de_base) Validación models/tipo_cotizante.py:176
No existe el tipo de cotizante '{}'. Operación (unidad_subsistema) Validación models/tipo_cotizante.py:188
Subsistema '{}' no soportado por el tipo de cotizante. Operación (unidad_subsistema) Validación models/tipo_cotizante.py:193
Los días deben ser un entero no negativo. Operación (semanas_desde_dias) Validación models/tipo_cotizante.py:205
Los días no pueden ser fraccionarios. Operación (semanas_desde_dias) Validación models/tipo_cotizante.py:208
Los días cotizados no pueden superar 30 (tope mensual del mecanismo de semanas, Decreto 2616/2013): {}. Operación (semanas_desde_dias) Validación models/tipo_cotizante.py:213
PENDIENTE_FUENTE_ELEGIBILIDAD_TIPO_COTIZANTE: el trabajador está declarado con OTROS EMPLEADORES, de modo que su ingreso mensual no se puede determinar sin la certificación del IBC de los demás (caso B05-C008). El tipo de cotizante {} no se aplica por defecto: cargue la fuente o retire la declaración del tipo. Operación (evaluar_elegibilidad) Validación models/tipo_cotizante.py:322
No hay parámetros anuales para {}: no se resuelve el régimen del tipo de cotizante sin SMMLV oficial. Operación (regimen_de_empleado) Validación models/tipo_cotizante.py:449

bps.vacaciones.base

Mensaje Cuando aparece Tipo Origen
La base de vacaciones solo se crea por el servicio. Al crear (create) Operación no permitida models/vacaciones.py:425
La base de vacaciones es inmutable. Al modificar (write) Operación no permitida models/vacaciones.py:429
Las bases de vacaciones no se eliminan. Al eliminar (unlink) Operación no permitida models/vacaciones.py:433
El acumulador ya tiene base de vacaciones. Operación (calcular) Operación no permitida models/vacaciones.py:444
El acumulador ya tiene base de vacaciones (en paralelo). Operación (calcular) Operación no permitida models/vacaciones.py:467

bps.vacaciones.movimiento

Mensaje Cuando aparece Tipo Origen
Los movimientos de vacaciones solo se crean por el servicio. Al crear (create) Operación no permitida models/vacaciones.py:382
Los movimientos de vacaciones son inmutables. Al modificar (write) Operación no permitida models/vacaciones.py:386
Los movimientos de vacaciones no se eliminan. Al eliminar (unlink) Operación no permitida models/vacaciones.py:390

bps.vacaciones.obligacion

Mensaje Cuando aparece Tipo Origen
La obligacion de disfrute solo se crea por el servicio de vacaciones. Al crear (create) Operación no permitida models/vacaciones_obligacion.py:127
La obligacion de disfrute solo se modifica por el servicio (programar/cumplir). Al modificar (write) Operación no permitida models/vacaciones_obligacion.py:133
Las obligaciones de disfrute no se eliminan. Al eliminar (unlink) Operación no permitida models/vacaciones_obligacion.py:140
La obligacion ya esta cumplida: no se reprograma. Operación (programar) Operación no permitida models/vacaciones_obligacion.py:214
El rango programado es invalido (hasta < desde). Operación (programar) Operación no permitida models/vacaciones_obligacion.py:219
El disfrute se programa hasta el {}, despues del plazo legal que vence el {} (art. 187 CST): no se acepta la programacion. Operación (programar) Operación no permitida models/vacaciones_obligacion.py:221
El rango programado tiene {} dias habiles y la obligacion exige {} CONTINUOS (art. 190 CST): programar fracciones menores no cumple el minimo. Operación (programar) Operación no permitida models/vacaciones_obligacion.py:228
La ausencia Time Off es de otro empleado: no programa esta obligacion. Operación (programar) Operación no permitida models/vacaciones_obligacion.py:233

bps.vacaciones.saldo

Mensaje Cuando aparece Tipo Origen
El saldo de vacaciones solo se crea por el servicio. Al crear (create) Operación no permitida models/vacaciones.py:140
El saldo de vacaciones no se edita manualmente (es derivado). Al modificar (write) Operación no permitida models/vacaciones.py:144
Los saldos de vacaciones no se eliminan. Al eliminar (unlink) Operación no permitida models/vacaciones.py:148
Los dias de servicio deben ser positivos. Operación (causar) Operación no permitida models/vacaciones.py:197
Ya existe una causacion de vacaciones para el empleado en el periodo {} a {}: no se duplica (el saldo no se infla). Operación (causar) Operación no permitida models/vacaciones.py:208
El rango {} a {} no tiene dias habiles (solo domingos/festivos). Operación (disfrutar_rango) Operación no permitida models/vacaciones.py:270
Los dias a compensar deben ser positivos. Operación (compensar) Operación no permitida models/vacaciones.py:306
Saldo insuficiente: pendientes {} dias, compensacion {}. Operación (compensar) Operación no permitida models/vacaciones.py:309
Compensacion en dinero limitada al 50%% del saldo: maximo {} dias (art. 189 CST mod. Ley 1429/2010 art. 20). Compensar de mas es renuncia de derechos: bloqueado. Operación (compensar) Operación no permitida models/vacaciones.py:315
La compensacion en dinero exige acuerdo escrito adjunto (soporte). Sin soporte no se liquida. Operación (compensar) Operación no permitida models/vacaciones.py:320
Hay una obligacion de disfrute abierta por una compensacion anterior ({} dias, estado {}): el saldo restante debe disfrutarse antes de volver a compensar en dinero (art. 189 CST mod. art. 20 Ley 1429/2010). Operación (compensar) Operación no permitida models/vacaciones_obligacion.py:342

bps.work.entry

Mensaje Cuando aparece Tipo Origen
Las pre-work-entries solo se crean por el servicio (generar). Al crear (create) Operación no permitida models/work_entry.py:70
Las pre-work-entries son inmutables. Al modificar (write) Operación no permitida models/work_entry.py:75
Las pre-work-entries no se eliminan. Al eliminar (unlink) Operación no permitida models/work_entry.py:79