Listado de Empleados por Título y Dependencia
Contenido
FORMULARIO
INFORME
CÓDIGO
Programa "ver_titulos_empleados.prg"
*--------------------------------------------------------------------------------------------------------- *--PARAMETROS DEL PROGRAMA-------------------------------------------------------------------------------- PARAMETERS dependencia,titulo,mesFinanc,anioFinanc,flagBuscarPorPeriodo *--------------------------------------------------------------------------------------------------------- *--SACO LA FECHA ACTUAL----------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- **Se utilizara la fecha actual para poder verificar que la fecha de baja del empleado es superior **a la de la emisión del informe. CLEAR CLOSE TABLES all SET CENTURY ON SET DATE TO french **Se recupera fecha del sistema, que serán utilizados para el proceso de recuperación de **empleados. fecha="'" + alltrim(str(year(date()))) +"-"+ padl(alltrim(str(month(date()))),2,"0")+"-01'" *--------------------------------------------------------------------------------------------------------- *--LLAMO AL CARTEL DE ESPERA------------------------------------------------------------------------------ *--------------------------------------------------------------------------------------------------------- procesando=vm_formularios+"frmprocesando.scx" DO FORM &procesando *--------------------------------------------------------------------------------------------------------- *--TRAIGO LOS DATOS DE LAS TABLAS DH01,DH03,DH06 y DH33--------------------------------------------------- *--------------------------------------------------------------------------------------------------------- **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; ORDER BY v01.nro_legaj; INTO TABLE &tabla01 *Destruyo Vista SELECT v01 USE DROP VIEW &nom01 *--------------------------------------------------------------------------------------------------------- **Tabla DH03** consulta03="select distinct nro_legaj,codc_uacad"; +" from dh03"; +" where dh03.fec_baja>="+fecha+" or dh03.fec_baja is NULL"; 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; ORDER BY v03.nro_legaj; INTO TABLE &tabla03 *Destruyo Vista SELECT v03 USE DROP VIEW &nom03 *--------------------------------------------------------------------------------------------------------- **Tabla DH06** consulta06="select nro_legaj,codc_titul,fec_emisi,cant_anos,sino_liqui,idtituloona,mes_financ,anio_financ"; +" from dh06" nom06=SYS(3) CREATE SQL VIEW &nom06; CONNECTION con_pampasql; AS &consulta06 SELECT SELECT (1) USE &nom06 ALIAS v06 *Creo Tabla tabla06=vm_bases_informes+"dh06Activos" *Creo Consulta SELECT *; FROM v06; ORDER BY v06.nro_legaj; INTO TABLE &tabla06 *Destruyo Vista SELECT v06 USE DROP VIEW &nom06 *SELECT dh06Activos *BROWSE *--------------------------------------------------------------------------------------------------------- **Tabla DH33** consulta33="select codc_titul,desc_titul,codc_nivel"; +" from dh33" nom33=SYS(3) CREATE SQL VIEW &nom33; CONNECTION con_pampasql; AS &consulta33 SELECT SELECT (1) USE &nom33 ALIAS v33 *Creo Tabla tabla33=vm_bases_informes+"dh33Activos" *Creo Consulta SELECT *; FROM v33; ORDER BY v33.codc_titul; INTO TABLE &tabla33 *Destruyo Vista SELECT v33 USE DROP VIEW &nom33 *--------------------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- *--CREO LA TRABLA EMPLEADOS POR DEPENDENCIA CON FILTRO POR TITULO DEL COMBO DEL FORMULARIO---------------- *--------------------------------------------------------------------------------------------------------- tabla1=vm_bases_informes+"tituloSeleccionado" IF(titulo=="TODOS") IF(flagBuscarPorPeriodo==1) condWhere="dh03Activos.codc_uacad=dependencia AND dh06Activos.anio_Finan>="+ALLTRIM(anioFinanc)+" AND dh06Activos.mes_Financ>="+ALLTRIM(mesFinanc) ELSE condWhere="dh03Activos.codc_uacad=dependencia" ENDIF ELSE IF(flagBuscarPorPeriodo==1) condWhere="dh06Activos.codc_titul=titulo AND dh03Activos.codc_uacad=dependencia AND dh06Activos.anio_Finan>="+ALLTRIM(anioFinanc)+" AND dh06Activos.mes_Financ>="+ALLTRIM(mesFinanc) ELSE condWhere="dh06Activos.codc_titul=titulo AND dh03Activos.codc_uacad=dependencia" ENDIF ENDIF SELECT *; FROM dh01Activos INNER JOIN(dh03Activos INNER JOIN; (dh06Activos INNER JOIN dh33Activos; ON dh06Activos.codc_titul=dh33Activos.codc_titul); ON dh03Activos.nro_legaj=dh06Activos.nro_legaj); ON dh01Activos.nro_legaj=dh06Activos.nro_legaj; WHERE &condWhere; ORDER BY dh06Activos.nro_legaj; INTO TABLE &tabla1 *SELECT tituloSeleccionado *BROWSE *--------------------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- *--CREO LA TRABLA EMPLEADOS POR DEPENDENCIA - MOSTRANDO SOLO LOS TITULOS DESCRIPTIVOS--------------------- *--------------------------------------------------------------------------------------------------------- tabla2=vm_bases_informes+"titulosDescriptivos" IF(titulo<>"TODOS") SELECT *; FROM dh01Activos INNER JOIN(dh03Activos INNER JOIN; (dh06Activos INNER JOIN dh33Activos; ON dh06Activos.codc_titul=dh33Activos.codc_titul); ON dh03Activos.nro_legaj=dh06Activos.nro_legaj); ON dh01Activos.nro_legaj=dh06Activos.nro_legaj; WHERE dh03Activos.codc_uacad=dependencia AND ALLTRIM(dh33Activos.codc_titul)<>"TITA"; AND ALLTRIM(dh33Activos.codc_titul)<>"TITB" AND ALLTRIM(dh33Activos.codc_titul)<>"TITC"; AND ALLTRIM(dh33Activos.codc_titul)<>"TITD" AND ALLTRIM(dh33Activos.codc_titul)<>"DOCF"; AND ALLTRIM(dh33Activos.codc_titul)<>"MAEF" AND ALLTRIM(dh33Activos.codc_titul)<>"ESPF"; AND ALLTRIM(dh33Activos.codc_titul)<>"DOCT" AND ALLTRIM(dh33Activos.codc_titul)<>"MAGI"; AND ALLTRIM(dh33Activos.codc_titul)<>"ESPE"; ORDER BY dh06Activos.nro_legaj; INTO TABLE &tabla2 ENDIF *SELECT titulosDescriptivos *BROWSE *--------------------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- *--FILTRO LA TABLA DE TITULOS DESCRIPTIVOS---------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- tablaDescripFiltro=vm_bases_informes+"descriptivosFiltrados" IF(titulo<>"TODOS") SELECT *; FROM titulosDescriptivos; WHERE nro_legaj_ IN(SELECT nro_legaj_ FROM tituloSeleccionado); INTO TABLE &tablaDescripFiltro ENDIF *SELECT descriptivosFiltrados *BROWSE *--------------------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- *--CREO LA TRABLA EMPLEADOS POR DEPENDENCIA - DESORDENADA------------------------------------------------- *--------------------------------------------------------------------------------------------------------- tablaGralDesordenada=vm_bases_informes+"estudioEmpDesordenada" IF(titulo<>"TODOS") SELECT *; FROM tituloSeleccionado; UNION; SELECT *; FROM descriptivosFiltrados; INTO TABLE &tablaGralDesordenada ENDIF *SELECT estudioEmpDesordenada *BROWSE *--------------------------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- *--CREO LA TRABLA EMPLEADOS POR DEPENDENCIA - ORDENADA---------------------------------------------------- *--------------------------------------------------------------------------------------------------------- tablaGral=vm_bases_informes+"estudioEmp" IF(titulo=="TODOS") SELECT *; FROM tituloSeleccionado; ORDER BY nro_legaj_; INTO TABLE &tablaGral ELSE SELECT *; FROM estudioEmpDesordenada; ORDER BY nro_legaj_; INTO TABLE &tablaGral ENDIF *--------------------------------------------------------------------------------------------------------- *--CIERRO EL CARTEL DE ESPERA------------------------------------------------------------------------------ *--------------------------------------------------------------------------------------------------------- frmprocesando.release *--------------------------------------------------------------------------------------------------------- *--MUESTRO LA TABLA GENERAL------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- *SELECT estudioEmp *BROWSE *--------------------------------------------------------------------------------------------------------- *--MUESTRO EL REPORTE FINAL------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- IF(RECCOUNT("estudioEmp")==0) MESSAGEBOX("Su consulta no genero resultados") ELSE informe=vm_informes+"frx_titulo_emp_depen.frx" report form &informe preview ENDIF
Botón "Buscar" (btnBuscar)
----------------------------------------------------------------------------------------------------- *--CAPTURO LOS VALORES DE LOS COMBO QUE SERAN PASADO AL PROGRAMA COMO PARAMETRO--------------------------- *--------------------------------------------------------------------------------------------------------- dependencia=THISFORM.cmbDependencia.value titulo=THISFORM.cmbTitulo.value mesFinanc=THISFORM.cmbMes.value anioFinanc=THISFORM.cmbAnio.value flagBuscarPorPeriodo=THISFORM.chkBuscarPeriodo.Value *--------------------------------------------------------------------------------------------------------- *--LLAMO AL PROGRAMA-------------------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- IF(ISNULL(titulo)=.T.) MESSAGEBOX("No ingreso dato") ELSE programa=vm_programas + "ver_titulos_empleados.prg" DO &programa WITH dependencia,titulo,mesFinanc,anioFinanc,flagBuscarPorPeriodo ENDIF
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\ListEmp_Titul_Y_Depen.pdf' ShellExecute(0,"open",V_busca,"", Fullpath(""),0)
Combo "Dependencia" (cmbDependencia)
CLEAR CLOSE TABLES all *--------------------------------------------------------------------------------------------------------- *--LLAMO AL CARTEL DE ESPERA------------------------------------------------------------------------------ *--------------------------------------------------------------------------------------------------------- procesando=vm_formularios+"frmprocesando.scx" DO FORM &procesando *--------------------------------------------------------------------------------------------------------- *--TRAIGO LOS DATOS DE LA TABLA DP18---------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- **Tabla DP21** consulta1="select *"; +" from dp18"; nom1=SYS(3) CREATE SQL VIEW &nom1; CONNECTION con_pampasql; AS &consulta1 SELE SELE(1) USE &nom1 ALIAS v01 *Creo Tabla tablaDependencias=vm_bases_informes+"dp18Dependencias" *Creo Consulta SELECT v01.codn_area; FROM v01; ORDER BY v01.codn_area; INTO TABLE &tablaDependencias *Destruyo Vista SELECT v01 USE DROP VIEW &nom1 *--------------------------------------------------------------------------------------------------------- *--CIERRO EL CARTEL DE ESPERA------------------------------------------------------------------------------ *--------------------------------------------------------------------------------------------------------- frmprocesando.release *--------------------------------------------------------------------------------------------------------- *--CARGA DE LAS OPCIONES DEL CMBDEPENDENCIA--------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- SELECT dp18Dependencias SCAN THISFORM.cmbDependencia.ADDITEM(PADL(ALLTRIM(STR(dp18Dependencias.codn_area)),2,"0")) ENDSCAN *--------------------------------------------------------------------------------------------------------- *--SELECCIONO POR DEFECTO EL PRIMER ITEM DEL COMBO-------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- THISFORM.cmbDependencia.SelectedID(1)=.T.
Combo "Titulo" (cmbTitulo)
*--------------------------------------------------------------------------------------------------------- *--CARGA DE LAS OPCIONES DEL CMBTITULO-------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- THISFORM.cmbTitulo.AddItem("TODOS") THISFORM.cmbTitulo.AddItem("TITA") THISFORM.cmbTitulo.AddItem("TITB") THISFORM.cmbTitulo.AddItem("TITC") THISFORM.cmbTitulo.AddItem("TITD") THISFORM.cmbTitulo.AddItem("MADF") THISFORM.cmbTitulo.AddItem("DOCF") THISFORM.cmbTitulo.AddItem("ESPF") THISFORM.cmbTitulo.AddItem("MAGI") THISFORM.cmbTitulo.AddItem("DOCT") THISFORM.cmbTitulo.AddItem("ESPE") *--------------------------------------------------------------------------------------------------------- *--SELECCIONO POR DEFECTO EL PRIMER ITEM DEL COMBO-------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- THISFORM.cmbTitulo.SelectedID(1)=.T.
Combo "Año" (cmbAnio)
*--------------------------------------------------------------------------------------------------------- *--CARGO EL COMBO DE LOS AÑOS----------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- FOR I=(YEAR(DATE())-10) TO YEAR(DATE()) THISFORM.cmbAnio.AddItem(STR(I)) ENDFOR *--------------------------------------------------------------------------------------------------------- *--SELECCIONO EL PRIMERO DE LOS ELEMENTOS DEL COMBO POR DEFECTO------------------------------------------- *--------------------------------------------------------------------------------------------------------- THISFORM.cmbAnio.SelectedID(11)=.T.
Combo "Mes" (cmbMes)
*--------------------------------------------------------------------------------------------------------- *--CARGO EL COMBO DE LOS MESES---------------------------------------------------------------------------- *--------------------------------------------------------------------------------------------------------- FOR I=1 TO 12 THISFORM.cmbMes.AddItem(STR(I)) ENDFOR *--------------------------------------------------------------------------------------------------------- *--SELECCIONO EL PRIMERO DE LOS ELEMENTOS DEL COMBO POR DEFECTO------------------------------------------- *--------------------------------------------------------------------------------------------------------- THISFORM.cmbMes.SelectedID(1)=.T.
MANUAL DEL USUARIO
El Sistema WERKEN permite generar un listado por dependencia, donde se listarán los empleados que poseen un título especifico. El informe generado por el sistema mostrará: Dependencia a la cual se asocia el informe. Datos de los empleados que cumplen con la condición de búsqueda.
Los datos de los empleados que se mostrarán son:
- Legajo.
- Apellido y nombre.
- Código del título.
- Descripción del título.
- Nivel de estudio (Nivel de estudio al que corresponde el título. Por ejemplo: Universitario de 5 años, Universitario de 3 años, Secundario Completo, etc.).
- Fecha de emisión del título.
- Duración (en años, de la carrera).
- Se Liquida? (Este campo indica si el título es tenido o no en cuenta para la liquidación de haberes).
- Código ONA.
Nota: El informe mostrará no solo los empleados que cumplan con la condición solicitada (Título y Dependencia), sino que solo mostrará los empleados que se encuentren activos (esto significa que mostrará los empleados cuya fecha de baja sea mayor a la del mes en el que se emitió el informe o dicha fecha no este asignada, valor nulo). Este informe también mostrará los títulos descriptivos que poseen las personas que cumplan con la condición de búsqueda. Además de lo mencionado anteriormente, será posible realizar una búsqueda mas detallada, donde se podrán mostrar solo los empleados que ademas de las condiciones previas cumplan con la fecha de solicitud de inicio de financiación de titulo (la cual mostrará los empleados donde la fecha registrada del empleado sea mayor o igual a la de la búsqueda).
Procedimiento de Uso
1. Ingresar al Sistema WERKEN.
2. Seleccionar la opción “01 - SUELDOS”.
3. Seleccionar “Listado de Empleados por Título y Dependencia”.
4. Presionar el botón “Ejecutar”.
5. Se abrirá el formulario presentado antes.
6. Seleccionar la “Dependencia” y el “Título”.
7. Si lo requiere, tildar “Buscar por periodo de inicio de financiación”. (Si cumple este ítem continuar con el instructivo. Caso seguir con el ítem 9 )
8. Seleccionar el “Mes” y “Año”.
9. Presionar el botón “Buscar”
10. Se genera el informe correspondiente.