Diferencia entre revisiones de «Listado de Jubilados Activos»

De Wiki
Saltar a: navegación, buscar
(Botón "Ayuda")
(CÓDIGO)
Línea 115: Línea 115:
 
    
 
    
  
===Botón "Procesar"===
+
===Botón "Procesar" (btnProcesar)===
  
 
   *---------------------------------------------------------------------------------------------------------
 
   *---------------------------------------------------------------------------------------------------------
Línea 128: Línea 128:
 
   DO &programa WITH mesVigencia,anioVigencia
 
   DO &programa WITH mesVigencia,anioVigencia
  
===Botón "Cancelar"===
+
===Botón "Cancelar" (btnCancelar)===
  
 
   THISFORM.Release
 
   THISFORM.Release
  
===Botón "Ayuda"===
+
===Botón "Ayuda" (btnAyuda)===
  
 
   DECLARE INTEGER ShellExecute ;
 
   DECLARE INTEGER ShellExecute ;
Línea 145: Línea 145:
 
   V_busca='R:\werken\docs\List_Jub_Act.pdf'
 
   V_busca='R:\werken\docs\List_Jub_Act.pdf'
 
   ShellExecute(0,"open",V_busca,"", Fullpath(""),0)
 
   ShellExecute(0,"open",V_busca,"", Fullpath(""),0)
 +
 +
===Combo "Año" (cmbAnio)===
 +
===Combo "Mes" (cmbMes)===

Revisión del 09:16 31 ene 2012

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" (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_jub_act.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_Jub_Act.pdf'
  ShellExecute(0,"open",V_busca,"", Fullpath(""),0)

Combo "Año" (cmbAnio)

Combo "Mes" (cmbMes)