Árvore de páginas

01. DATOS GENERALES


Línea de producto: Microsiga Protheus.
Segmento:Servicios - Mercado Internacional.
Módulo:SIGAGPE - Gestión de Personal.
Función:

Rutina

Descripción

GPEM040B.PRWBrowse de Empleados para Cálculo Rescisión Colectiva
GPEM042.PRWCálculo de Rescisión
GPEM630.PRXCálculo de Rescisión Colectiva
GPEXFOR1.PRXFunciones Genéricas  
GPEM022.PRX

Cálculo Modelo II

GPEM043.PRWRescisión Colectiva Modelo II
Pacote:7157 - PACOTE EXCLUSIVO PARA MENUS 12.1.30
Ticket:8245025
Issue:DMINA-8451 | DMINA-9288
Versión:12.1.17 | 12.1.23 | 12.1.25 |12.1.27


02. SITUACIÓN/REQUISITO

En la rescisión colectiva la pregunta “Tipo Rescisión” no contiene la consulta estándar S25MEX, no se visualizan las etiquetas de Fechas completas (Fecha Rescisión y Fecha Generación). Al realizar el proceso de generación de rescisión colectiva envía varios errores.


03. SOLUCIÓN

Se activa rutina GPEM040B para las rescisiones colectivas.

En la rutina de Rescisión Colectiva (GPEM630)

Dentro de la función GPEM630() se realiza la declaración de variables de retorno o referencia, también se declaran las variables para el proceso, procedimiento, periodo y número de pago, a estas variables se les asigna valor en el bloque de código bSet15.
Se asigna la consulta S25MEX de la tabla S025-Tipos de Finiquitos para el concepto de rescisión.

Se activa validación para el Tipo de Rescisión utilizando la función Gp630VldDat(), cambio que aplica solo para el país México.
Se activa solo la opción de “cálculo” del parámetro “Tipo de cálculo”, también se activa el parámetro “Causa de Baja” y se asigna su validación en la función Gp630VldDat().

En la función Gp630VldDat() se ajusta validación para que los datos informados para el Tipo de Rescisión existan en la tabla S025 - Tipos de Finiquitos y y la Causa de Baja de acuerdo a la tabla genérica 27 - Causas de Despido.
Se crea la función VldCalRes y se asigna al bloque de código bSet15.
Se deshabilita el folder "Rangos" cuando se accede desde la rutina GPEM040B

En la rutina GPEM040B dentro de la función Marca() se agrega una posición al array aMarcSRA que contendrán la matrícula del empleado para posteriormente dentro de la rutina GPEM630 en la función VldCalResC() obtener la matrícula y asignarla al filtro cExpFiltro como una instrucción SQL (RA_MAT IN (a,b,c, ec..)).

En la rutina GPEM042 en la función GPEM042() se declara la variable lRutAut variable utilizada para rutina automática.

En la rutina GPEM022 dentro de la función gpem022Processa() se declara la variable lGPEM630 que identifica si la petición origen es de la rutina GPEM630, también se valida que la variable lGPEM040B exista en memoria, de lo contrario se inicializa y verifica si el proceso de rescisión se genera desde la rutina GPEM040B y asigna el filtro cExpFiltro al query de la tabla SRA.
Se agrega estatus 3 para el cálculo de rescisión para empleados activos(RA_SITFOLH=” ”) y no activos (RA_SITFOLH=”D”), también se genera filtro(instrucción SQL) para el borrado de la tabla SRC en la función fDelMovSRC().

Se crea la función GRSRG630() que genera un query a la tabla SRG donde se detecta que el empleado tenga estatus de rescisión calculada o aplicada, dependiendo del estatus se agrega o modifica la tabla SRG e indica que el empleado no debe procesarse.

Se modifica la rutina GEPM043, en la función MenuDef la acción del botón "Rescisión colectiva" se direcciona a la rutina GPEM040B.

Todos los cambios se realizaron para país a México.


  1. Configurar parámetro MV_SITRES = 1
    Indica si la actualización de situación del empleado será: 1=Aplicación rescision,2=Calculo rescisión 3=No actualiza
  2. Asignar la rutina GPEM040B al menú Miscelanea / cálculos / Resc. Colect

  3. Contar con las configuraciones necesarias para el cálculo de nómina.

  4. Tener configurados los días derecho del empleo y ausencias.

  5. Contar con las configuraciones necesarias para realizar el proceso de cálculo de finiquitos.

  6. En el menú Actualizaciones > Definic. cálculo > Procesos (GPEA420)
    Configurar Proceso
    Cod. Proceso = "01"
    Desc. Proceso = "QUINCENAL"
    Procedim. = "01"
    Dias Por Per = "15"
    Tipo Sueldo = "M"
    Tipo Vacación = "1- En periodo"
    Vig Vacación = 2

  7. En el menú Actualizaciones > Definic. cálculo > Tipos de Procedim (GPEA162)
    Configurar Procedimiento para cálculo Finiquitos
    Procedimiento = "09"
    Desc. Proc = " cálculo DE FINIQUITOS "
    Origen = 2 - Usuario
    Arch. Maest = SRA - Empleados
    Tipo Proced = 4 – Rescisión

    Configurar Procedimiento para aplicación Finiquitos
    Procedimient = "10"
    Desc. Proc = " APLICACIÓN DE FINIQUITOS "
    Origen = 2 - Usuario
    Arch. Maest = SRA - Empleados
    Tipo Proced = A – Aplicación de Rescisión

  8. En el menú Actualizaciones > Definic. cálculo > Periodos (GPEA400)
    Configurar periodo para cálculo de finiquitos
    Cod. Proceso = "01"
    Desc. Proceso = "QUINCENAL"
    Cod. Periodo = " 202001"
    Número Pago = "01"
    Proceso = "01"
    Procedimient = "09"
    Mes SRD = "01"
    Año SRD = "2020"
    Fecha Inicial = " 01/01/2020"
    Fecha Final = " 31/12/2020"
    Fecha Pago = " 31/12/2020"
    Fecha Corte = " 31/12/2020"
    ¿Per Activo? = "Si"
    Estatus = "Normal"

    Configurar periodo para Aplicación de Finiquitos
    Cod. Proceso = "01"
    Desc. Proceso = "QUINCENAL"
    Cod. Periodo = " 202001"
    Número Pago = "01"
    Proceso = "01"
    Procedimient = "10"
    Mes SRD = "01"
    Año SRD = "2020"
    Fecha Inicial = " 01/01/2020"
    Fecha Final = " 15/01/2020"
    Fecha Pago = " 15/01/2020"
    Fecha Contab = ""
    ¿Per Activo? = "Si"
    Estatus = "Normal"

  9. En el menú Actualizaciones > Empleados > Empleados (GPEA010)
    Empleado Despedido
    Matricula = "000002"
    Nombre = "JUAN MANUEL DIAZ "
    Fecha ingreso =01/01/2016
    Cod. Proceso = "01"
    Sit. Planilla= "D"
    Fch. Despido = " 10/01/2020 "
    Fch. Bj IMSS = " 10/01/2020 "
    Causa baja = “1”
    Tipo Finiquito = "01"
    Tipo Pago = "M"

    Empleado en vacaciones
    Matricula = "000007"
    Nombre = "CRESCENCIO FLORES"
    Fecha ingreso =01/01/2016
    Cod. Proceso = "01"
    Sit. Planilla= "F"
    Fch. Despido = " / / "
    Fch. Bj IMSS = " / / "
    Causa baja = “”
    Tipo Pago = "M"

    Empleados estatus normal
    Matricula = "000006"
    Nombre = "JUAN GABRIEL RICO"
    Fecha ingreso =01/01/2016
    Cod. Proceso = "01"
    Fch. Despido = " / / "
    Fch. Bj IMSS = " / / "
    Causa baja = “”
    Tipo Pago = "M"

    Matricula = "000008"
    Nombre = "GLORIA MILAN "
    Fecha ingreso =01/01/2016
    Cod. Proceso = "01"
    Fch. Despido = " / / "
    Fch. Bj IMSS = " / / "
    Causa baja = “”
    Tipo Pago = "M"

    Matricula = "000009"
    Nombre = "JORGE CAMPOS"
    Fecha ingreso = 01/01/2016
    Cod. Proceso = "01"
    Fch. Despido = " / / "
    Fch. Bj IMSS = " / / "
    Causa baja = “”
    Tipo Pago = "M"

    Matricula = "000010"
    Nombre = "BENJAMIN ESPARZA"
    Fecha ingreso = 16/09/2016
    Cod. Proceso = "01"
    Fch. Despido = " / / "
    Fch. Bj IMSS = " / / "
    Causa baja = “”
    Tipo Pago = "M"

    Matricula = "000011"
    Nombre = "DAVID DELGADO"
    Fecha ingreso = 01/01/2016
    Cod. Proceso = "01"
    Fch. Despido = " / / "
    Fch. Bj IMSS = " / / "
    Causa baja = “”
    Tipo Pago = "M"

    Empleado con reingreso
    Matricula = "000012"
    Nombre = "JOSE ALBERTO CEVEDO"
    Fecha ingreso = 01/01/2016
    Cod. Proceso = "01"
    Fch. Despido = " / / "
    Fch. Bj IMSS = " / / "
    Causa baja = “”
    Tipo Pago = "M"
    Fecha Reingreso= "02/01/2020"
    Fecha Modifica = "02/01/2020"
  •  A).- Calcular rescisión masiva
  1. En el menú Miscelánea > cálculos > Resc. Colect. (GPEM040B)
    Seleccionar a los empleado 000008, 000009, 000010 y 000011, después dar clic en el botón “Calcular”



  2. Se abre una pantalla donde se configuran las siguientes preguntas:
    Tipo de cálculo = Calcular
    Proceso = 01 (no editable, se llena automáticamente)
    Procedimiento = 09 (no editable, se llena automáticamente)
    Periodo = 202001 (no editable, se llena automáticamente, relacionado al procedimiento)
    Número Pago = 01 (no editable, se llena automáticamente, relacionado al procedimiento)
    Fecha Inicio = 01/01/2020 (no editable, se llena automáticamente, relacionado al periodo)
    Fecha Fin = 31/12/2020 (no editable, se llena automáticamente, relacionado al periodo)
    Tipo Rescisión = 01 (seleccionar de la consulta S25MEX)
    Fecha Rescisión=15/01/2020
    Fecha Generación=15/01/2020
    Fecha Homologación=15/01/2020
    Fecha Pago=15/01/2020
    Causa Baja= 1 (seleccionar de la tabla 27)

  3. Dar clic en el botón "Grabar" 
    Se inicia el proceso de cálculo de rescisión, se calculan todos los empleados seleccionados.




  4. al termino del proceso el sistema indicará la finalización del proceso.



    En caso de haber errores en el cálculo el sistema indicará la revisión del log.
    El log se que puede ver desde el menú "Otras Acciones" en la opción "Logs"

  5. Validar que se hayan generado los registros del cálculo de la rescisión 
    En el menú Miscelánea > cálculos > Rescisión (GPEM042)
    Seleccionar uno de los empleados procesados ( 000008, 000009, 000010 o 000011) después dar clic en el botón “Visualizar” o "Modificar"


  6. Revisar que los siguientes campos se hayan afectado:
    "Fecha Generación (RG_DTGERAR)", "Estado (RG_EFETIVA)", "Fecha Despido (RG_DATADEM)", "Tipo Rescisión (RG_TIPORES)", "Fecha Homologación (RG_DATAHOM)", "Fecha Pago (RG_DTPAGO)" , "Días Vac Vencidas (RG_DFERVEN)", "Días Vac. Proporcionales (RG_DFERPRO)", "Causa de Baja (RG_TIPOAFA)"., "Proc. cálculo (RG_ROTEIR)", "Periodo (RG_PERIODO)", "Núm Pago (RG_SEMANA)", "Cod Proceso (RG_PROCES)" y "Proced. Aplicación (RG_APLROT)".

  7. Revisar que los ítems de cálculo se hayan generado correctamente 





  •  B).- Aplicar rescisión y recalcular
  1. En el menú Miscelánea > cálculos > Rescisión (GPEM042)
    Seleccionar al empleado 000008 después dar clic en el botón  "Modificar"
    Desde el menú “Otras acciones” seleccionar la opción “Aplicar rescisión”

    Se muestra una pantalla donde se informa automáticamente los datos del periodo activo (periodo, número de pago y procedimiento)



  2. Dar clic en el botón “Grabar” para confirmar la aplicación
    El estatus del empleado cambia a "Despedido" RA_SITFOLH ="D" (estatus cambia cuando parámetro MV_SITRES = 1)


  3. En el menú Miscelánea > cálculos > Resc. Colect. (GPEM040B)
    Seleccionar a los empleado 000008 (rescisión aplicada), 000009, 000010 y 000011, después dar clic en el botón “Calcular”


  4. Se abre una pantalla donde se configuran las siguientes preguntas:
    Tipo de cálculo = Calcular
    Proceso = 01 (no editable, se llena automáticamente)
    Procedimiento = 09 (no editable, se llena automáticamente)
    Periodo = 202001 (no editable, se llena automáticamente, relacionado al procedimiento)
    Número Pago = 01 (no editable, se llena automáticamente, relacionado al procedimiento)
    Fecha Inicio = 01/01/2020 (no editable, se llena automáticamente, relacionado al periodo)
    Fecha Fin = 31/12/2020 (no editable, se llena automáticamente, relacionado al periodo)
    Tipo Rescisión = 01 (seleccionar de la consulta S25MEX)
    Fecha Rescisión=15/01/2020
    Fecha Generación=15/01/2020
    Fecha Homologación=15/01/2020
    Fecha Pago=15/01/2020
    Causa Baja= 1 (seleccionar de la tabla 27)

  5. Dar clic en el botón "Grabar" 
    Se inicia el proceso de cálculo de rescisión, se calculan todos los empleados seleccionados a excepción del empleado 000008 que ya cuenta con una rescisión aplicada.

    Si el empleado tiene registro en la SRG con estatus “2 – Calculado” y el periodo (Proceso/Periodo/NumPago/Roteriro) del cálculo está abierto, el empleado se podrá calcular las veces que sea necesario. Esta acción actualiza la información de la tabla SRG y borra los registros SRC relacionados al empleado y al periodo para después insertar registros del nuevo cálculo.

    Si el empleado tiene rescisión aplicada "3 = Cerrado" ( RG_EFETIVA = 3)  y el periodo (Proceso/Periodo/NumPago/Roteriro) de aplicación está abierto, no se calcula a este empelado (no genera registros en SRG y SRC).

  •  C).- cálculo y recálculo de rescision 
  1. En el menú Miscelánea > cálculos > Resc. Colect. (GPEM040B)
    Seleccionar al empleado 000006 (sin cálculo de rescisión) y a los empleados  000010 y 000011(Calculados en el inciso A), después dar clic en el botón “Calcular”
  2. Se abre una pantalla donde se configuran las siguientes preguntas (se agregan los mismos filtros utilizados en el inciso A):
    Tipo de cálculo = Calcular
    Proceso = 01 (no editable, se llena automáticamente)
    Procedimiento = 09 (no editable, se llena automáticamente)
    Periodo = 202001 (no editable, se llena automáticamente, relacionado al procedimiento)
    Número Pago = 01 (no editable, se llena automáticamente, relacionado al procedimiento)
    Fecha Inicio = 01/01/2020 (no editable, se llena automáticamente, relacionado al periodo)
    Fecha Fin = 31/12/2020 (no editable, se llena automáticamente, relacionado al periodo)
    Tipo Rescisión = 01 (seleccionar de la consulta S25MEX)
    Fecha Rescisión=15/01/2020
    Fecha Generación=15/01/2020
    Fecha Homologación=15/01/2020
    Fecha Pago=15/01/2020
    Causa Baja= 1 (seleccionar de la tabla 27)

  3. Dar clic en el botón "Grabar" 
    Se inicia el proceso de cálculo de rescisión, se calculan todos los empleados seleccionados.
    Si el empleado tiene registro en la SRG con estatus “2 – Calculado” y el periodo (Proceso/Periodo/NumPago/Roteriro) del cálculo está abierto, el empleado se podrá calcular las veces que sea necesario. Esta acción actualiza información de la tabla SRG y  borra los registros SRC relacionados al empleado y al periodo para después insertar registros del nuevo cálculo.

  4. En el menú Miscelánea > cálculos > Rescisión (GPEM042)
    S
    eleccionar al empleado 000006 después dar clic en el botón  "Modificar" o "Visualizar"



    El empleado 000006 se calcula.



    Los empleados 000010 y 000011 son recalculados.

  •  D).- cálculo rescisión empleados con ausencia y actualización de valores en SRG.
  1. En el menú Miscelánea > cálculos > Resc. Colect. (GPEM040B)
    Seleccionar al empleado 000007 (con ausencia de vacaciones y sin cálculo de rescisión) y al empleado  000009 (con rescisión calculada en el inciso A), después dar clic en el botón “Calcular”


  2. Se abre una pantalla donde se configuran las siguientes preguntas:

    Tipo Rescisión = 02 (seleccionar de la consulta S25MEX)
    Fecha Rescisión=10/01/2020
    Fecha Generación=13/01/2020
    Fecha Homologación=14/01/2020
    Fecha Pago=14/01/2020
    Causa Baja= 2 (seleccionar de la tabla 27)
  3. Dar clic en el botón "Grabar" 
    Se calculan los empleados seleccionados.


  4. En el menú Miscelánea > cálculos > Rescisión (GPEM042)
    S
    eleccionar al empleado 000007 (con ausencia de vacaciones) después dar clic en el botón  "Modificar" o "Visualizar"

    Se generan sus registros de rescisión.




  5. Seleccionar al empleado 000009 (calculado en el inciso A) después dar clic en el botón  "Modificar" o "Visualizar"

    Los siguientes campos fueron afectados:
    "Fecha Generación (RG_DTGERAR)", "Estado (RG_EFETIVA)", "Fecha Despido (RG_DATADEM)", "Tipo Rescisión (RG_TIPORES)", "Fecha Homologación (RG_DATAHOM)", "Fecha Pago (RG_DTPAGO)" , "Días Vac Vencidas (RG_DFERVEN)", "Días Vac. Proporcionales (RG_DFERPRO)" y "Causa de Baja (RG_TIPOAFA)".




    Los ítems de cálculo se generan con la fecha de referencia (RC_DTREF) igual a la Fecha Pago (RG_DTPAGO).



  •  E).- Cálculo de rescisión en empleados con estatus baja y con reingreso.
  1. En el menú Actualizaciones > Empleados> Empleados (GPEA010)
    El empleado 000002 tiene estatus de baja (se da de baja desde formulario Empleados).







  2. El empleado 000012 cuenta con un reingreso.



  3. En el menú Actualizaciones > Empleados> Trayectoria Laboral(GPEA440)
    El empleado 000002 tiene una baja.


    El empleado 000012 tiene un reingreso 


  4. En el menú Miscelánea > cálculos > Rescisión (GPEM042)
    El empleado 000002 no tiene rescisión calculada.


    El empleado 000012 tiene rescisión aplicada para un periodo cerrado





  5. En el menú Miscelánea > cálculos > Resc. Colect. (GPEM040B)
    Seleccionar al empleado 000002 (con estatus baja) y al empleado 000012 (con reingreso), después dar clic en el botón “Calcular”



  6. Se abre una pantalla donde se configuran las siguientes preguntas:
    Tipo de cálculo = Calcular
    Proceso = 01 (no editable, se llena automáticamente)
    Procedimiento = 09 (no editable, se llena automáticamente)
    Periodo = 202001 (no editable, se llena automáticamente, relacionado al procedimiento)
    Número Pago = 01 (no editable, se llena automáticamente, relacionado al procedimiento)
    Fecha Inicio = 01/01/2020 (no editable, se llena automáticamente, relacionado al periodo)
    Fecha Fin = 31/12/2020 (no editable, se llena automáticamente, relacionado al periodo)
    Tipo Rescisión = 01 (seleccionar de la consulta S25MEX)
    Fecha Rescisión=15/01/2020
    Fecha Generación=15/01/2020
    Fecha Homologación=15/01/2020
    Fecha Pago=15/01/2020
    Causa Baja= 1 (seleccionar de la tabla 27)

  7. Dar clic en el botón "Grabar" 
    Se inicia el proceso de cálculo de rescisión, se calculan todos los empleados seleccionados.
  8. En el menú Miscelánea > Cálculos > Rescisión (GPEM042)
    Se calcula rescisión para el empleado 000002 (con estatus baja)




  9. Se calcula rescisión para el empleado 000012 (con reingreso).

    Si el empleado tiene rescisión aplicada "3 = Cerrado" ( RG_EFETIVA = 3)  y el periodo (Proceso/Periodo/NumPago/Roteriro) de aplicación está cerrado, debe insertar nuevos registros en las tablas  SRG y SRC






04. INFORMACIÓN ADICIONAL


¡IMPORTANTE!

Es importante asignar la rutina GPEM040B al menú Miscelanea / Calculos / Resc. Colect