Listado de Jubilados Activos
De Wiki
Contenido
FORMULARIO
INFORME
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