Diferencia entre revisiones de «Listado de Control de Fecha de Permanencia»

De Wiki
Saltar a: navegación, buscar
(MANUAL DEL USUARIO)
(TABLAS)
Línea 200: Línea 200:
 
|nro_legaj
 
|nro_legaj
 
|-
 
|-
|nro_cargo
+
|fec_alta
 
|-
 
|-
|codc_uacad
+
|fec_baja
 
|-
 
|-
|}
+
|codc_categ
| style="border:1px solid transparent" |
 
||
 
{| border="1" style="background:#ffffff" class="sortable wikitable"
 
|+ align="center" style="background:DarkSlateBlue; color:white"|<big>'''DH25'''</big>
 
|-
 
|nro_cargo
 
|-
 
|nro_liqui
 
|-
 
|codn_conce
 
|-
 
|tipo_noved
 
|-
 
|detallenovedad
 
|-
 
|nro_nove1
 
|-
 
|vig_nomes
 
|-
 
|vig_noano
 
 
|-
 
|-
 +
|fechapermanencia
 
|}
 
|}
 
|}
 
|}
 
  
 
==MANUAL DEL USUARIO==
 
==MANUAL DEL USUARIO==

Revisión del 10:57 1 feb 2012

FORMULARIO

frm_fec_permanencia.scx

Fmr Fec Permanencia.PNG

INFORME

frx_fec_permanencia.frx

Frx fec permanencia.PNG

CÓDIGO

Programa "prg_fec_permanencia.prg"

  *---------------------------------------------------------------------------------------------------------
  *--Parametros del Programa--------------------------------------------------------------------------------
  PARAMETERS mesVigente,anioVigente
  *---------------------------------------------------------------------------------------------------------
  *--Rutina de Inicialización-------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  CLEAR
  CLOSE TABLES all
  SET CENTURY ON
  SET DATE TO french
  **Se construye la variable fecha a partir de los campos "Mes" y "Año" que se completan en el formulario.
  **Dicha fecha será utilizada para traer los empleados que esten activos al periodo de busqueda.
  fecha="{^"+ALLTRIM(anioVigente)+"-"+PADL(ALLTRIM(mesVigente),2,"0")+"-01}"
  
  PUBLIC periodoVigente
  periodoVigente=ALLTRIM(mesVigente)+"/"+ALLTRIM(anioVigente)
  *---------------------------------------------------------------------------------------------------------
  *--Llamo a la pantalla de espera--------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  procesando=vm_formularios+"frmprocesando.scx"
  DO FORM &procesando
  *---------------------------------------------------------------------------------------------------------
  *--Traigo los datos de las tablas DH01 y DH03-------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  **Tabla DH01**
  consulta01="select nro_legaj,desc_appat,desc_nombr";
 		+" from dh01";
  		
  nom01=SYS(3)
  CREATE SQL VIEW &nom01;
  CONNECTION con_pampasql;
  AS &consulta01
  SELE SELE(1)
  USE &nom01 ALIAS v01
  *Creo Tabla
  tabla01=vm_bases_informes+"dh01Activos"
  *Creo Consulta
  SELECT *;
  FROM v01;
  INTO TABLE &tabla01
  *Destruyo Vista
  SELECT v01
  USE 
  DROP VIEW &nom01
  
  *SELECT dh01Activos
  *BROWSE
  *---------------------------------------------------------------------------------------------------------
  **Tabla DH03**
  consulta03="select nro_legaj,fec_alta,fec_baja,codc_categ,fechapermanencia";
  		+" from dh03";
  	
  nom03=SYS(3)
  CREATE SQL VIEW &nom03;
  CONNECTION con_pampasql;
  AS &consulta03
  SELE SELE(1)
  USE &nom03 ALIAS v03
  *Creo Tabla
  tabla03=vm_bases_informes+"dh03Activos"
  *Creo Consulta
  SELECT *;
  FROM v03;
  INTO TABLE &tabla03
  *Destruyo Vista
  SELECT v03
  USE 
  DROP VIEW &nom03
  
  *SELECT dh03Activos
  *BROWSE
  *---------------------------------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  *--Creo la Tabla Final------------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  tablaFinal=vm_bases_informes+"fechaPermanencia"
  
  SELECT *;
  FROM dh01Activos INNER JOIN dh03Activos;
  ON dh01Activos.nro_legaj=dh03Activos.nro_legaj; 
  WHERE (dh03Activos.fec_baja>=&fecha OR dh03Activos.fec_baja IS NULL);
  AND (VAL(dh03Activos.codc_categ) IN (3661,3662,3663,3664,3665,3666,3667,1,2,3,4,5,6,7,8,9,10,11));
  AND (dh03Activos.fechaperma<>dh03Activos.fec_alta OR dh03Activos.fechaperma IS NULL);
  ORDER BY dh01Activos.nro_legaj;
  INTO TABLE &tablaFinal
  *---------------------------------------------------------------------------------------------------------
  *--CIERRO EL CARTEL DE ESPERA------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  frmprocesando.release
  *---------------------------------------------------------------------------------------------------------
  *--MUESTRO LA TABLA GENERAL-------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  *SELECT fechaPermanencia
  *BROWSE
  *---------------------------------------------------------------------------------------------------------
  *--MUESTRO EL REPORTE FINAL-------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  IF(RECCOUNT("fechaPermanencia")==0)
  	MESSAGEBOX("Su consulta no genero resultados")
  ELSE
  	informe=vm_informes+"frx_fec_permanencia.frx"
  	report form &informe preview
  ENDIF

Botón "Procesar" (btnProcesar)

  *---------------------------------------------------------------------------------------------------------
  *--CAPTURO LOS VALORES DE LOS COMBO QUE SERAN PASADO AL PROGRAMA COMO PARAMETRO---------------------------
  *---------------------------------------------------------------------------------------------------------
  mesVigencia=THISFORM.cmbMes.value
  anioVigencia=THISFORM.cmbAnio.value
  *---------------------------------------------------------------------------------------------------------
  *--LLAMO AL PROGRAMA--------------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  programa=vm_programas + "prg_fec_permanencia.prg"
  DO &programa WITH mesVigencia,anioVigencia

Botón "Cancelar" (btnCancelar)

  THISFORM.Release

Botón "Ayuda"(btnAyuda)

  DECLARE INTEGER ShellExecute ;
  IN SHELL32.DLL ;
  INTEGER nWinHandle,;
  STRING cOperation,;
  STRING cFileName,;
  STRING cParameters,;
  STRING cDirectory,;
  INTEGER nShowWindow
  
  V_busca='R:\werken\docs\List_Fec_Permanencia.pdf'
  ShellExecute(0,"open",V_busca,"", Fullpath(""),0)

Combo "Año" (cmbAnio)

  *---------------------------------------------------------------------------------------------------------
  *--CARGO EL COMBO DE LOS AÑOS-----------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  FOR I=(YEAR(DATE())-10) TO YEAR(DATE())
  	THISFORM.cmbAnio.AddItem(STR(I))
  ENDFOR
  *---------------------------------------------------------------------------------------------------------
  *--SELECCIONO EL PRIMERO DE LOS ELEMENTOS DEL COMBO POR DEFECTO-------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  THISFORM.cmbAnio.SelectedID(11)=.T.

Combo "Mes" (cmbMes)

  *---------------------------------------------------------------------------------------------------------
  *--CARGO EL COMBO DE LOS MESES----------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  FOR I=1 TO 12
  	THISFORM.cmbMes.AddItem(STR(I))
  ENDFOR
  *---------------------------------------------------------------------------------------------------------
  *--SELECCIONO EL PRIMERO DE LOS ELEMENTOS DEL COMBO POR DEFECTO-------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  THISFORM.cmbMes.SelectedID(1)=.T.

TABLAS

Aquí se detallan las tablas con los campos utilizados de cada una.

DH01
nro_legaj
desc appat
desc_nombr
DH03
nro_legaj
fec_alta
fec_baja
codc_categ
fechapermanencia

MANUAL DEL USUARIO

El Sistema WERKEN permite generar un listado de los empleados no docentes activos que no tengan establecida la fecha de permanencia o que la misma sea distinta que la fecha de alta del empleado. Se tomaran los empleados que cumplan con condición de vigencia a aquellos que tengan un cargo vigente al periodo establecido en el formulario inicial. El informe generado por el sistema mostrará:

  • Legajo del empleado.
  • Apellido y nombre del mismo.
  • Categoría.
  • Fecha de Alta del Cargo
  • Fecha de Baja del Cargo
  • Fecha Permanencia.

Procedimiento de Uso

1. Ingresar al Sistema WERKEN.

2. Seleccionar la opción “01 - SUELDOS”.

3. Seleccionar “Listado de Control de Fecha de Permanencia”.

4. Presionar el botón “Ejecutar”.

5. Se abrirá el formulario presentado antes.

6. Seleccionar “Mes” (de vigencia) y “Año” (de vigencia).

7. Presionar el botón “Procesar”

8. Se genera el informe correspondiente.