Listado de Control de Fecha de Permanencia
De Wiki
Revisión del 09:45 31 ene 2012 de Mwilson (Discusión | contribuciones) (→Programa "prg_fec_permanencia.prg")
Contenido
FORMULARIO
INFORME
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