Listado de Jubilados Activos

De Wiki
Revisión del 09:13 31 ene 2012 de Mwilson (Discusión | contribuciones) (Botón "Cancelar")

Saltar a: navegación, buscar

FORMULARIO

Fmr Jub Act.PNG

INFORME

Frx jub act.PNG

CÓDIGO

Programa "prg_jub_act.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,tipo_estad";
            +" 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_carac,nro_cargo";
            +" 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+"jubiladosActivos"
  
  SELECT *;
  FROM dh01Activos INNER JOIN dh03Activos;
  ON dh01Activos.nro_legaj=dh03Activos.nro_legaj; 
  WHERE dh01Activos.tipo_estad="J" AND (dh03Activos.fec_baja>=&fecha OR dh03Activos.fec_baja IS NULL);
  ORDER BY dh01Activos.nro_legaj;
  INTO TABLE &tablaFinal
  *---------------------------------------------------------------------------------------------------------
  *--CIERRO EL CARTEL DE ESPERA------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  frmprocesando.release
  *---------------------------------------------------------------------------------------------------------
  *--MUESTRO LA TABLA GENERAL-------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  *SELECT jubiladosActivos
  *BROWSE
  *---------------------------------------------------------------------------------------------------------
  *--MUESTRO EL REPORTE FINAL-------------------------------------------------------------------------------
  *---------------------------------------------------------------------------------------------------------
  IF(RECCOUNT("jubiladosActivos")==0)
  	MESSAGEBOX("Su consulta no genero resultados")
  ELSE
  	informe=vm_informes+"frx_jub_act.frx"
  	report form &informe preview
  ENDIF
  

Botón "Procesar"

  *---------------------------------------------------------------------------------------------------------
  *--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_jub_act.prg"
  DO &programa WITH mesVigencia,anioVigencia

Botón "Cancelar"

  THISFORM.Release

Botón "Ayuda"