Diferencia entre revisiones de «Listado de Jubilados Activos»
De Wiki
(→INFORME) |
(→CÓDIGO) |
||
Línea 10: | Línea 10: | ||
− | === | + | ===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 " | + | ===Botón "Procesar"=== |
− | ===Botón " | + | ===Botón "Cancelar"=== |
− | ===Botón " | + | ===Botón "Ayuda"=== |
Revisión del 09:11 31 ene 2012
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