{ PROGRAMA : CUMPLEANOS_1 OBJETIVO : LISTAR LOS EMPLEADOS QUE ESTAN DE CUMPLEANOS EN EL MES DESARROLLADO POR : ING. JUAN SOTO FECHA : ABRIL 20, 2018 } GLOBALS DEFINE idx,mes smallint, usuario,clave STRING, nombre_file CHAR(30) END GLOBALS MAIN DEFER INTERRUPT CALL STARTLOG("cumpleano.txt") CALL ARG_VAL(1) RETURNING usuario CALL ARG_VAL(2) RETURNING clave CALL ARG_VAL(3) RETURNING mes CONNECT to "smarmotech" USER usuario USING clave CALL cumpleanos() END MAIN FUNCTION cumpleanos() DEFINE rcumple RECORD nombre VARCHAR(100), departamento VARCHAR(100), dia SMALLINT END RECORD, archivo VARCHAR(20), HANDLER om.SaxDocumentHandler DISPLAY "data ",usuario," mes ",mes LET mes = MONTH(TODAY)+mes #LET mes = 12 IF mes = 13 THEN LET mes = 1 END IF DISPLAY " mes a ",mes DECLARE busca_cumple CURSOR FOR SELECT RTRIM(a.nom1_emp)||' '||a.apell1_emp,b.nom_dpto,DAY(a.fech_nac) FROM adtb00003 a,adtb00001 b WHERE a.departamento = b.departamento AND # DAY(a.fech_nac) = DAY(TODAY) AND MONTH(a.fech_nac) = mes AND a.status_t IS NULL # "file:///f:/master/IMAGENES/logo_cumple.png" LET idx=1 LET archivo = 'cumpleanos_1.4rp' FOREACH busca_cumple INTO rcumple.* IF idx = 1 THEN IF fgl_report_loadCurrentSettings(archivo) THEN -- load the .4rp file CALL fgl_report_selectDevice("PDF") CALL fgl_report_selectPreview(false) CALL fgl_report_setOutputFileName("cumpleanos_mes1.pdf") LET handler = fgl_report_commitCurrentSettings() -- commit changes START REPORT r_cumple_mes TO XML HANDLER HANDLER ELSE EXIT PROGRAM END IF END IF OUTPUT TO REPORT r_cumple_mes(rcumple.*) LET idx = idx + 1 END FOREACH IF idx > 1 THEN FINISH REPORT r_cumple_mes END IF END FUNCTION REPORT r_cumple_mes(x) DEFINE X RECORD nombre VARCHAR(100), departamento VARCHAR(100), dia SMALLINT END RECORD, fecha VARCHAR(10), chlable VARCHAR(100) FORMAT ON EVERY ROW SELECT a.descrip INTO fecha FROM mestable a WHERE a.mes = mes # LET fecha = MONTH(today) LET chlable='CUMPLEAŅOS DEL MES DE ',fecha PRINTX x.*,idx,chlable END REPORT