Contenido No se encontraron entradas de tabla de contenido. Proceso de Cambio de Nomina Este proceso funciona de la siguiente manera, tenemos la definición de una Fuente, es decir si el cambio se hará Individualmente, o de manera colectiva o de forma global de una Nómina a otra. Para ello se Creó una pantalla en la siguiente Ruta, Y nos entra al formulario Una vez seleccionada la fuente debe seleccionar la nómina a donde se desea cambiar, Hagamos un Ejemplo Conectándonos a la Base de datos Empleamos y pasando un solo Empleado, para verificar los cálculos que se hacen en todas las tablas del sistema, lo haremos de un tipo nomina 'MS' mensual que es de 30 días a un tipo de nómina 'SM' de 7 días, ya que si se intenta pasar empleados de un tipo de nómina a otra de la misma periodicidad solo tendríamos que cambiar todas las Tipo_Nom y Clase_nom, y prácticamente los cálculos de las tablas MSP, ASE, HSL, AHE, MQL, CPR, y NVS serían los mismos de la nómina origen. Para saber que empleados pertenecen a la nómina semanal y actualmente están activos, vemos las nóminas en la TNM Es decir todos los empleados activos de tipo_nom 'SM' están en la nómina semanal para pasarlos a cualquier nómina de tipo MS en este caso lo haremos hacia la nómina MS-GO-GEOPARCK MENSUAL Lo primero que hará este proceso es ver los acumulados del empleado que están en la ACU para este cliente existen 22 Registros Por cada registro de los que tenga en la ACU debe pasarlos a la CRP pero con el tipo_nom y Clase_nom de la nómina de destino a donde se quiere pasar y con la columna estado en '1', todas las demás columnas deben migrar tal cual estaban en la nómina de origen, y haciendo una verificación por cada registro de la ACU de que año, mes, periodo, tipo_nom y clase_nom no exista en la nómina de destino esto para que no duplique la data. Al final de este proceso entonces quedarían en la CPR los registros que antes tenía en la nómina anterior más los registros que logro pasar de la ACU a la CPR, es decir que si previamente la nómina de destino no tenía periodos de los que este empleado tenía en la ACU, debería pasar 22 registros ahora con tipo y clase del destino. Originalmente esta así la CPR 22 registros En este caso después del proceso se verá así, viéndose las anteriores y las nuevas Si el usuario dejo esta casilla en blanco Entonces se actualizan todas las tablas del sistema donde este el usuario y tenga el tipo_nom y clase_nom de origen lo cambia a la nómina de destino excluyendo las tablas ya procesadas y a las que que se le debe hacer tratamientos especiales (ACU, CPR, MSP, ASE, HSL, AHE, MLQ, NVS) Las Actualizaciones a las tablas especiales Antes de pasar a los cálculos especiales se calcula el factor Prácticamente es la división de 30/7 =4.28571 ese sería el valor del factor para nuestro ejercicio Tablas de Casos Especiales La tabla NVS Posee un tratamiento especial por que el empleado en este caso es el docto_ident y por eso el update de las columnas, tipo_nom y Clase_nom es distinto a las demás tablas. La tabla MSP Si el empleado posee registros en esa tabla, entonces verifica si los tnm.dias_p de la nómina de destino son igual a la msp.amortizacion El valor de la couta que tenga el empleado se le multiplica por el factor y luego se actualiza, el tipo_nom y clase_nom, para nuestro caso el empleado no tiene registros en esta tabla, así que no se espera hacer nada con ella. Tabla ASE Si el empleado posee Vr_Fijo entonces si en la columna porcent <=0 entonces actualiza el valor de Vr_fijo multiplicándola por el factor, para nuestro caso el empleado no tiene registros en esta tabla, así que no se espera hacer nada con ella. Tabla HSL Se le multiplica siempre por el factor la columna salario y se le cambia el tipo de nómina antes de correr el proceso Si multiplicamos el salario por el factor viene dando un sueldo mínimo prácticamente al correr el proceso vemos los campos actualizados. Tabla AHE Si el empleado prosee registros y adicionalmente AHE.Tipo_Cuota='P' y clase_nom y tipo_nom están en la nómina de origen entonces. Se multiplica la AHE.VR_Cuota * el Factor, y luego cambiamos el tipo_nom y Clase_nom por la nómina de destino, para nuestro caso el empleado no tiene registros en esta tabla, así que no se espera hacer nada con ella. Esto es lo que hace para un empleado individual para los casos que sea un colectivo entonces Seleccionamos las siguientes opciones Véase que como todos los empleados de una Agrupación pertenecen a una misma nomina entonces no se permite el cambio de nómina de origen solo la del destino, en caso de salir vacío el Campo de la nómina quiere decir que no hay empleados activos para pasar de nómina. Como puede haber muchos empleados en una agrupación el procedimiento internamente hace una tabla temporal con esos empleados y los procesara uno por uno como si se tratara de un proceso individual. Y en caso de pasar una nómina a otra Entonces El proceso colocara todo los empleados de la nómina de origen que este en estado activos y los colocara en la nómina de destino seleccionada, para ello el sistema crea al igual que proceso colectivo una tabla temporal donde ira tomando cada empleado para procesarlo, tenga en cuenta que este proceso pude demorar de 6 a 10 segundos por empleado. Aspectos Técnicos Para este proceso se creó el siguiente SP llamado PROC_CAMBIO_NOMINA Parámetros de entrada @Proceso= Es igual al tipo de proceso que se va a ejecutar "I" para un proceso individual, "C" para un proceso colectivo y "G" para un cambio global de nómina. @Empleado= allí va el dato correspondiente a emp.empleado @Agrupacion_Empleado=allí va org.Agrupacion solo cuando el org.tipo es igual a "E" antes de llamar este parámetro se debe verificar que existan empleados activos en esa agrupación. @Nomina_orgien= emp.tipo_nom+'-'emp.clase_nom se concatena el tipo y la case de la nómina de origen con un "-" de separación. @Nomina_Destino=nom.tipo_nom+'-'+clase_nom se concatena el tipo y la case de la nómina de origen con un "-" de separación. @AA= va en "1" si se quiere actualizar solo Acumulados y "0" si se quiere actualizar acumulados y todas las demás tablas del sistema, Ejemplo se los parámetros de entrada para llamar el SP para pasar un empleado Nótese que la agrupación va vacía. Para pasar una agrupación de empleados o colectivo No es necesario pasar la Nómina de origen pues el SP se encarga de buscarlas cada una por empleado, y el empleado también debe ir en vacío. En caso de ser Global Agrupación va vacía y el empleado también. Exec PROC_CAMBIO_NOMINA( @proceso,@Empleado,@Agrupacion_Empleado, @Nomina_Origen, @Nomina_Destino, @AA ); Este SP esta en la Cn_Emp Llamada PROC_CAMBIO_NOMINA Ejemplo de llamada desde la aplicación WEB cuando es individual, antes de hacer la llamada verificar los parámetros en cada caso. La llamada se hace desde el formulario BrwEmp_CAM_N está a dentro de la carpeta Auxiliares. PROCESO CAMBIO DE NOMINA CODIGO Modulo Proceso-Código Documento-Versión Software FECHA CREACION (DD/MM/AAAA) DD/MM/AAAA FECHA ACTUALIZACION (DD/MM/AAAA) DD/MM/AAAA VERSIÓN Nº (1, 2,3...) ELABORÓ Sede Medellín: Calle 16 # 41 -210 Edificio La Compañía Ofi. 706 Tel. (+57 4) 604 46 46 - (+57 4) 444 46 81 Fax. (+57 4) 311 39 10 Sede Bogotá: Calle 114A #45-32 Of. 246 Tel (+571) 744 11 30 Email: info@praxedes-group.com. Correo Envío de Solicitudes : helpdesk@praxedes-group.com